日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【单片机毕业设计】【mcuclub-jj-053】基于单片机的宠物喂食器的设计

發布時間:2024/3/24 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【单片机毕业设计】【mcuclub-jj-053】基于单片机的宠物喂食器的设计 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近設計了一個項目基于單片機的寵物喂食器系統,與大家分享一下:

一、基本介紹

項目名:寵物喂食器
項目編號:mcuclub-jj-053
單片機類型:STC89C52、STM32F103C8T6
具體功能:
1、通過DS1302獲取時間
2、通過AT24C02存儲設定的投喂時間
3、通過按鍵可修正實時時間、添加或刪除投喂時間、查看投喂時間
4、當投喂時間到達時,蜂鳴器報警提醒(2s),并開啟兩個繼電器(喂食、喂水)
5、通過顯示屏顯示數據
拓展功能:通過藍牙模塊手機端可分別控制兩個繼電器及蜂鳴器報警

二、51實物圖

單片機型號:STC89C52

板子為綠色PCB板,兩層板,厚度1.2,上下覆銅接地。元器件基本上為插針式,個別降壓芯片會使用貼片式。

供電接口:TYPE-C

?

三、51仿真圖

仿真軟件版本:proteus8.9

電路連線方式:網絡標號連線方式

注意:部分實物元器件仿真中沒有,仿真中會用其他工作原理相似的元件代替,這樣可能導致實物程序和仿真程序不一樣

?

?四、32實物圖

單片機型號:STM32F103C8T6

板子為綠色PCB板,兩層板,厚度1.2,上下覆銅接地。元器件基本上為插針式,個別降壓芯片會使用貼片式。

供電接口:TYPE-C

?

?五、原理圖

軟件版本:AD2013

電路連線方式:網絡標號連線方式

注意:原理圖只是畫出了模塊的引腳圖,而并不是模塊的內部結構原理圖

?

?六、PCB圖

由原理圖導出,封裝很大一部分都是作者自己繪制,不提供封裝庫,只提供連接好的源文件。中間有一個項目編號,隱藏在單片機底座下,插入單片機后不會看到。

兩層板,上下覆銅接地。

?

七、系統框圖

本設計以單片機為核心控制器,加上其他模塊一起組成此次設計寵物喂食器的整個系統,其中包括中控部分、輸入部分和輸出部分。中控部分采用了單片機控制器,其主要作用是獲取輸入部分的數據,經過內部處理,邏輯判斷,最終控制輸出部分。輸入由四部分組成,第一部分是時鐘模塊,通過該模塊獲取當前的時間;第二部分是存儲模塊,通過該模塊存儲投喂時間;第三部分是按鍵模塊,用戶可以根據自己的需求設置定時投喂時間等信息;第四部分是供電模塊,通過該模塊可給整個系統進行供電。輸出由三部分組成,第一部分是顯示模塊,通過該模塊可以顯示監測的數據以及設置的閾值;第二部分是繼電器模塊,通過繼電器控制投喂實物或者水;第三部分是聲光報警模塊,定時投喂時間到達進行報警提醒。除此之外,藍牙模塊既作為輸入又作為輸出,藍牙模塊和手機進行連接,可以將監測的數據傳輸到用戶手機端,用戶也可以通過手機端發送指令控制繼電器的工作及其模式的切換。具體系統框圖如圖所示。

?

?八、軟件設計流程

系統的主流程圖如圖所示。在主程序中:首先對各個模塊進行初始化,隨后進入while主循環,在主循環中,首先進入第一個函數按鍵函數,該函數主要分為兩部分,第一部分為調用按鍵掃描函數獲取按鍵鍵值,第二部分通過鍵值進行相應的處理操作,包括切換界面、設置時間、開關水等;緊接著進入第二個函數監測函數,該函數主要通過調用相應的驅動函數獲取測量值,并通過藍牙模塊將監測的數據傳輸到手機端,用戶也可以通過手機端發送指令,設備根據用戶發送的指令執行對應的處理;緊接著進入第三個函數顯示函數,該函數顯示監測值及閾值;最后進入第四個函數處理函數,判斷當前時間是否是投喂時間,如果是,開始投喂5S,且開啟兩秒蜂鳴器,手動喂食,定時到達時,關閉繼電器

?

?九、部分程序展示

軟件版本:keil5

邏輯程序和驅動程序分開,分布于main.c和其他.c文件

void Manage_function(void) {uchar i = 0;if(flag_display == 0) //測量界面{if(flag_time_feed == 0){for(i = 0; i < set_feed_count; i++) //判斷當前時間是否是投喂時間,如果是,開始投喂5S,且開啟兩秒蜂鳴器{if(p_feeddata[i].time_shi == ds1302_buf[4] && p_feeddata[i].time_fen == ds1302_buf[5] && ds1302_buf[6] == 0){BEEP = 0;RELAY_TS = 0;RELAY_WS = 0;beep_crtl = 1;flag_timer_begin = 1;flag_time_feed = 1;break;}}}else{if(flag_1s < 2){if(time_num % 20 == 0)BEEP = ~BEEP;}else{BEEP = 1;beep_crtl = 0;if(flag_1s >= 5){flag_timer_begin = 0;flag_time_feed = 0;flag_1s = 0;RELAY_TS = 1;RELAY_WS = 1;}}}if(flag_time_feed == 0 && flag_manu == 1) //手動喂食,定時到達時,關閉繼電器{if(flag_1s >= 3){flag_timer_begin = 0;flag_manu = 0;RELAY_TS = 1;RELAY_WS = 1;beep_crtl = 0;BEEP = 1;}else{if(beep_crtl == 1){if(time_num % 20 == 0)BEEP = ~BEEP;}}}}else //設置界面{BEEP = 1;RELAY_TS = 1;RELAY_WS = 1;} }

總結

以上是生活随笔為你收集整理的【单片机毕业设计】【mcuclub-jj-053】基于单片机的宠物喂食器的设计的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。