一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于STM32設(shè)計的門禁照相機

DS小龍哥-嵌入式技術(shù) ? 來源:DS小龍哥-嵌入式技術(shù) ? 作者:DS小龍哥-嵌入式技 ? 2023-06-22 10:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、項目介紹

當(dāng)前文章介紹基于STM32設(shè)計的門禁照相機,本項目提供了一種更加智能、安全、便捷的門禁解決方案。門禁照相機采用STM32F103ZET6 MCU作為主控芯片,配合2.8寸LCD顯示屏、OV7725數(shù)字?jǐn)z像頭、SD卡和模擬門鈴按鍵等外設(shè)模塊,實現(xiàn)了攝像頭畫面實時顯示、門鈴觸發(fā)拍照、圖片存儲等功能。

在使用該門禁照相機時,來訪客人只需按下門鈴按鍵,攝像頭即可自動拍攝照片并保存到SD卡中。同時,用戶也可以通過LCD屏幕進行時間調(diào)整和本地圖片瀏覽等操作,提高了門禁系統(tǒng)的可操作性和用戶體驗。

門禁照相機的設(shè)計為了提高門禁系統(tǒng)的安全性和智能化程度,解決傳統(tǒng)門禁系統(tǒng)存在的諸多問題。通過采用數(shù)字?jǐn)z像頭替代傳統(tǒng)貓眼,并實現(xiàn)照片自動拍攝和存儲功能,有效提高了門禁系統(tǒng)的安全性。同時,通過LCD屏幕進行時間調(diào)整和本地圖片瀏覽等操作,實現(xiàn)了門禁系統(tǒng)的智能化,提高了用戶的使用體驗。

image-20230615205237018

二、硬件設(shè)計

本照相機的主要硬件包括 STM32F103ZET6 MCU、3.5寸 LCD 顯示屏、OV7725 數(shù)字?jǐn)z像頭、SD 卡和一個模擬門鈴的按鍵。

(1)STM32F103ZET6 MCU

STM32F103ZET6 MCU 是本照相機的主控芯片,它可以通過 GPIO 口驅(qū)動其他外設(shè)模塊。

(2)3.5寸 LCD 顯示屏

3.5寸 LCD 顯示屏可以實時顯示攝像頭捕捉的畫面,并且支持多個頁面的切換。

(3)OV7725 數(shù)字?jǐn)z像頭

OV7725 數(shù)字?jǐn)z像頭可以采集來訪客人的畫面,并將其實時顯示在 LCD 顯示屏上。

(4)SD 卡

SD 卡用于存儲照相機拍攝的照片,照片的名稱由當(dāng)前時間日期命名。

(5)模擬門鈴的按鍵

模擬門鈴的按鍵用于觸發(fā)照相機拍攝照片。

三、軟件設(shè)計

3.1 技術(shù)要求

(1)實時顯示畫面

本照相機通過 OV7725 數(shù)字?jǐn)z像頭捕捉來訪客人的畫面,并通過3.5寸 LCD 顯示屏實時顯示。

(2)拍照并保存到 SD 卡

當(dāng)有來訪者按下模擬門鈴按鍵時,照相機會拍攝照片并保存到 SD 卡中,照片名稱以當(dāng)前時間日期命名。

3.2 軟件流程

(1) 初始化STM32F103ZET6 MCU及外部設(shè)備; (2) 啟動OV7725 數(shù)字?jǐn)z像頭; (3) 開啟LCD; (4) 進入主循環(huán): a. 讀取按鍵狀態(tài)是否是門鈴被按下; b. 若發(fā)現(xiàn)門鈴按下,則照相機開始拍照并將照片保存到 SD 卡; c. 更新屏幕上的內(nèi)容。

3.3 代碼實現(xiàn)

代碼實現(xiàn)過程:

(1) 初始化STM32F103ZET6 MCU及外部設(shè)備;

(2) 啟動OV7725 數(shù)字?jǐn)z像頭,并設(shè)置其采集參數(shù);

(3) 初始化 SD 卡,并在 SD 卡上創(chuàng)建一個文件夾用于存儲照片;

(4) 開啟LCD,并設(shè)置其顯示參數(shù);

(5) 進入主循環(huán),讀取按鍵狀態(tài)并更新屏幕上的內(nèi)容;

(6) 當(dāng)發(fā)現(xiàn)門鈴被按下時,開始拍照并將照片保存到 SD 卡中。

四、代碼實現(xiàn)

4.1 整體代碼框架

#include "stm32f10x.h"
 #include "sdio_sdcard.h"
 #include "ff.h"
 ?
 /* 定義一些宏和變量 */
 ?
 int main(void) {
     /* 初始化系統(tǒng)時鐘(例如使用 HSE 8MHz 作為系統(tǒng)時鐘) */
     /* 初始化 GPIO 端口、SDIO、LCD、OV7725 等外設(shè)模塊 */
     /* 初始化 SD 卡,并在其上創(chuàng)建用于存儲照片的文件夾 */
 ?
     while(1) {
         /* 讀取門鈴按鍵狀態(tài) */
         if(/* 檢測到門鈴被按下 */) {
             /* 拍攝照片并保存到 SD 卡中,照片名以當(dāng)前時間日期命名 */
         }
 ?
         /* 更新屏幕顯示內(nèi)容,包括實時攝像頭畫面、時間日期、照片預(yù)覽等 */
     }
 }

4.2 拍照存儲

下面是采用 STM32 的HAL 庫設(shè)計的代碼,控制OV7725 拍照保存為 BMP 圖片到 SD 卡中。

#include "stm32f1xx_hal.h"
 #include "sdio_sdcard.h"
 #include "ff.h"
 #include "ov7725.h"
 ?
 extern SD_HandleTypeDef hsd;
 extern DCMI_HandleTypeDef hdcmi;
 extern DMA_HandleTypeDef hdma_dcmi;
 ?
 FATFS fs;
 FIL file;
 UINT bw;
 ?
 /* 定義一些宏和變量 */
 ?
 int main(void) {
     /* 初始化系統(tǒng)時鐘(例如使用 HSE 8MHz 作為系統(tǒng)時鐘) */
     /* 初始化 GPIO 端口、SDIO、LCD、OV7725 等外設(shè)模塊 */
     /* 初始化 SD 卡,并在其上創(chuàng)建用于存儲照片的文件夾 */
 ?
     while(1) {
         /* 讀取門鈴按鍵狀態(tài) */
         if(/* 檢測到門鈴被按下 */) {
             /* 拍攝照片并保存到 SD 卡中,照片名以當(dāng)前時間日期命名 */
             HAL_GPIO_WritePin(OV7725_RESET_GPIO_Port, OV7725_RESET_Pin, GPIO_PIN_SET); // 復(fù)位 OV7725
             HAL_Delay(50);
             HAL_GPIO_WritePin(OV7725_RESET_GPIO_Port, OV7725_RESET_Pin, GPIO_PIN_RESET);
 ?
             ov7725_init(); // 初始化 OV7725
 ?
             HAL_DCMI_Start_DMA(&hdcmi, DCMI_MODE_SNAPSHOT, (uint32_t)RGB565_buffer, (uint32_t)(CAMERA_RWIDTH * CAMERA_RHEIGH), 1); // 開始采集
 ?
             HAL_DMA_PollForTransfer(&hdma_dcmi, HAL_DMA_FULL_TRANSFER, 1000); // 等待采集完成
 ?
             /* 將 RGB565 數(shù)據(jù)轉(zhuǎn)換成 BMP 格式 */
             uint16_t bmp_header[54/2] = {0x4D42, 54+CAMERA_RWIDTH*CAMERA_RHEIGH*3, 0, 0, 54,
                                           40, CAMERA_RWIDTH, CAMERA_RHEIGH, 1, 24, 0, CAMERA_RWIDTH*CAMERA_RHEIGH*3, 0, 0, 0, 0};
             uint8_t bmp_data[CAMERA_RWIDTH*CAMERA_RHEIGH*3];
             uint16_t i = 0, j = 0;
             for(i = 0; i < 54/2; i++) {
                 bmp_data[i*2] = bmp_header[i]; // 拷貝 BMP 文件頭
                 bmp_data[i*2+1] = bmp_header[i] > >8;
             }
             for(i = 0; i < CAMERA_RWIDTH*CAMERA_RHEIGH; i++) {
                 bmp_data[54+i*3+0] = RGB565_buffer[i] > >8; // RGB565 轉(zhuǎn)換為 BMP 格式的 RGB 24位色
                 bmp_data[54+i*3+1] = RGB565_buffer[i] > >3;
                 bmp_data[54+i*3+2] = RGB565_buffer[i]< < 3;
             }
 ?
             /* 保存 BMP 圖片到 SD 卡中 */
             if(f_mount(&fs, SD_Path, 1) == FR_OK) { // 掛載 SD 卡
                 char filename[20];
                 /* 將文件名設(shè)置為當(dāng)前時間日期,例如"202206151243.bmp" */
                 sprintf(filename, "%04d%02d%02d%02d%02d%02d.bmp", year, month, day, hour, minute, second);
 ?
                 if(f_open(&file, filename, FA_CREATE_ALWAYS | FA_WRITE) == FR_OK) { // 創(chuàng)建文件并寫入數(shù)據(jù)
                     f_write(&file, bmp_data, sizeof(bmp_data), &bw);
                     f_close(&file);
                 }
             }
 ?
             HAL_Delay(1000); // 防止連續(xù)拍照
         }
 ?
         /* 更新屏幕顯示內(nèi)容,包括實時攝像頭畫面、時間日期、照片預(yù)覽等 */
     }
 }
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17984

    瀏覽量

    367097
  • STM32
    +關(guān)注

    關(guān)注

    2293

    文章

    11032

    瀏覽量

    365049
  • 照相機
    +關(guān)注

    關(guān)注

    0

    文章

    69

    瀏覽量

    27300
  • 門禁
    +關(guān)注

    關(guān)注

    1

    文章

    175

    瀏覽量

    30141
  • STM32F103ZET6
    +關(guān)注

    關(guān)注

    9

    文章

    67

    瀏覽量

    21741
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    STM32照相機

    嵌入式相機照相機攝影攝像
    愛轉(zhuǎn)的光凌
    發(fā)布于 :2021年11月10日 23:07:36

    迷你STM32照相機OV7670

    迷你STM32照相機OV7670
    發(fā)表于 04-01 12:21

    迷你STM32照相機(OV7670

    迷你STM32照相機(OV7670
    發(fā)表于 06-10 11:22

    求一種基于STM32F4開發(fā)板的簡易照相機項目方案

    怎樣去設(shè)計一種基于STM32F4開發(fā)板的簡易照相機?對基于STM32F4開發(fā)板的簡易照相機設(shè)計有哪些要求?
    發(fā)表于 07-26 09:53

    照相機用簡易閃光燈電路

    照相機用簡易閃光燈電路
    發(fā)表于 04-13 12:03 ?1457次閱讀
    <b class='flag-5'>照相機</b>用簡易閃光燈電路

    怎樣識照相機閃光燈電路

    怎樣識照相機閃光燈電路
    發(fā)表于 08-28 15:04 ?1288次閱讀
    怎樣識<b class='flag-5'>照相機</b>閃光燈電路

    典型照相機閃光燈電路原理圖

    典型照相機閃光燈電路原理圖
    發(fā)表于 08-28 15:05 ?8284次閱讀
    典型<b class='flag-5'>照相機</b>閃光燈電路原理圖

    快修照相機電子閃光燈技巧

    快修照相機電子閃光燈技巧
    發(fā)表于 08-28 15:58 ?1668次閱讀
    快修<b class='flag-5'>照相機</b>電子閃光燈技巧

    照相機應(yīng)如何選擇電池?

    照相機應(yīng)如何選擇電池?        普通的傻瓜照相機可用一般的堿性電池,其效果較好;數(shù)碼相機等高科技產(chǎn)品由于對電流強度等要求較高
    發(fā)表于 10-28 15:33 ?1002次閱讀

    照相機

    照相機 教學(xué)所需要的照片、幻燈片和投影片多數(shù)是通過攝影獲得的,因此,照相機及其使用是制作投影軟件的基礎(chǔ)。
    發(fā)表于 11-18 15:32 ?4256次閱讀
    <b class='flag-5'>照相機</b>

    照相機測光電路圖

    照相機測光電路圖 B為測光元件,前面裝有由粗到密的山柵。
    發(fā)表于 11-19 16:18 ?1235次閱讀
    <b class='flag-5'>照相機</b>測光電路圖

    照相機輔助閃光燈電路圖

    照相機輔助閃光燈電路圖
    發(fā)表于 11-19 16:21 ?1470次閱讀
    <b class='flag-5'>照相機</b>輔助閃光燈電路圖

    照相機鏡頭遮光罩

    照相機鏡頭遮光罩           
    發(fā)表于 12-23 11:43 ?1331次閱讀

    LDO能否提高小型照相機的照片質(zhì)量

    數(shù)字照相電子設(shè)備變得越來越便攜,集成了高質(zhì)量的解決方案。照相機應(yīng)用的高性能與小型尺寸常常受到照相機中為互補金屬氧化物半導(dǎo)體(CMOS)圖像傳感器供電的低壓差(LDO)穩(wěn)壓器的影響。
    發(fā)表于 11-30 11:20 ?1157次閱讀

    “無人機”到底是“會飛的照相機”還是“帶照相機的飛行器”?

    深圳海關(guān)關(guān)稅處介紹,“無人機”如果按照“帶照相機的飛行器”歸類,就必須按“飛行器”進行監(jiān)管,這樣一來各國的貿(mào)易管制條件會比較嚴(yán)格,容易形成非關(guān)稅貿(mào)易壁壘;但是如果按照“會飛的照相機”歸類,就可以按“照相機”來進行監(jiān)管,各國對
    的頭像 發(fā)表于 11-06 11:19 ?8381次閱讀