国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

單片機(jī)畢業(yè)設(shè)計 stm32寵物自動喂食系統(tǒng)

這篇具有很好參考價值的文章主要介紹了單片機(jī)畢業(yè)設(shè)計 stm32寵物自動喂食系統(tǒng)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。


0 簡介

Hi,大家好,學(xué)長今天向大家介紹一個 單片機(jī)項目

基于stm32的寵物自動喂食系統(tǒng)

大家可用于 課程設(shè)計 或 畢業(yè)設(shè)計

1 系統(tǒng)說明

為了解決主人不在家而無法正常對寵物進(jìn)行飲水喂食, 導(dǎo)致寵物身體不健康這一情況, 為此學(xué)長設(shè)計了寵物自動飲水喂食器。

寵物自動飲水喂食器主要由單片機(jī)最小系統(tǒng)、 水位檢測系統(tǒng)、 溫度檢測系統(tǒng)、 飼料檢測系統(tǒng)、 按鍵控制系統(tǒng)、 LCD1602 液晶顯示系統(tǒng)組成。

單片機(jī)系統(tǒng)需要正常工作必須保證最小系統(tǒng)工作正常, 寵物自動飲水喂食器的飲水過程是通過超聲波檢測水位, 若檢測到的水位低于設(shè)定水位就開啟加水功能;

通過 DS18B20 溫度傳感器檢測當(dāng)前溫度, 若檢測到的溫度低于設(shè)定溫度則開啟加溫功能; 液晶屏顯示當(dāng)前水位及溫度和設(shè)定水位及溫度。 喂食過程是通過光電傳感器檢測飼料是否存在, 若檢測到飼料不存在, 則開啟加飼料功能。

2 背景意義

隨著我國社會經(jīng)濟(jì)水平的快速發(fā)展以及城市化進(jìn)程的不斷加速, 很明顯我國國民的生活水平不斷得到提高, 而寵物業(yè)也因此得到飛速的發(fā)展。 現(xiàn)如今家庭寵物的飼養(yǎng)已經(jīng)成為城市居民生活消遣的新方式, 而且飼養(yǎng)寵物的觀念也與以往大不相同, 其中寵物的喂養(yǎng)就是人們最為關(guān)心的問題。 不過目前寵物主要還是依靠人工進(jìn)行喂養(yǎng)。 而且隨著人們生活水平不斷的提高, 人們開始側(cè)重于精神的追求, 很多年輕人和老年人都會收養(yǎng)自己的寵物, 但是年輕人大多時間都忙于工作, 老年人可能由于記憶或者身體不便等原因, 有時候可能顧及不到自己的寵物, 那么寵物很有可能因為缺水或者饑餓而導(dǎo)致不健康成長或者死亡。 如果是這樣的話對于寵物的傷害是非常大的。 因此就急需一種能自動加水喂食的裝置, 以保證寵物飲食正常。 人們可以在對寵物喂水和喂料上無需發(fā)費(fèi)多余的時間即可很好的照顧自己的寵物, 具有極大的市場價值和經(jīng)濟(jì)效益。

3 系統(tǒng)設(shè)計

學(xué)長設(shè)計的是寵物自動飲水喂食器, 它主要要實現(xiàn)自動加水加溫喂食功能。 即檢測到的水位與溫度低于我的設(shè)定值, 就開啟加水加溫喂食功能, 還能按鍵調(diào)整設(shè)定水位與溫度, 并能顯示設(shè)定與檢測水位與溫度值。 在電路設(shè)計中, 系統(tǒng)主要由主控器,測溫模塊, 水位檢測模塊, 食物檢測模塊, 顯示模塊, 按鍵模塊和加溫加水喂食模塊組成。

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

3.1 總體方案

通過數(shù)字溫度傳感器 DS18B20、 HC-SR04 超聲波傳感器及 TLN104/TLP104 紅外對管光電傳感器對溫度、 水位和食物存在進(jìn)行檢測, 將采集到的信號傳送給STM32單片機(jī)進(jìn)行處理, 若檢測的溫度或水位低于設(shè)定溫度值或水位值, 或沒有檢測到食物信號, 單片機(jī)將控制加溫加水喂食電路進(jìn)行工作, 按鍵電路用于對溫度及水位報警值進(jìn)行設(shè)定, LCD1602 顯示電路用于顯示檢測的溫度水位及設(shè)定的溫度和水位信息值, 系統(tǒng)方框圖如下所示

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

3.2 硬件設(shè)計

3.2.1 STC89C52

單片機(jī) STC89C52 是從傳統(tǒng) MCS51 基礎(chǔ)上進(jìn)行升級過來, 在內(nèi)部資源分布上更加豐富, 比如時鐘模塊, 單片機(jī)管腳第 2 功能等。使用其他的芯片也是ok的。

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

3.2.2 CLS150TD舵機(jī)

舵機(jī)選用達(dá)盛舵機(jī)科技有限公司生產(chǎn)的CLS150TD型號的舵機(jī),實物圖及尺寸如圖所示。該型號舵機(jī)運(yùn)行溫度在-15℃~70℃,工作電壓范圍為4.8v-6.8v,驅(qū)動方式為PWM波,脈沖范圍為500~2500 μsec,控制角度為:360°。

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)
工作原理:通過給舵機(jī)的信號線(橙黃色)輸入周期為20ms的PWM波,通高電平時間:0.5-2.5ms可以使舵機(jī)旋轉(zhuǎn)0~360°。如圖所示。

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

3.2.3 壓力傳感器

壓力傳感器選用電阻應(yīng)變式壓力傳感器,以電阻應(yīng)變計為轉(zhuǎn)換元件,由彈性敏感元件、電阻應(yīng)變計、補(bǔ)償電阻和外殼組成,彈性敏感元件受到所測量的力而產(chǎn)生變形,并使附著其上的電阻應(yīng)變計一起變形。電阻應(yīng)變計再將變形轉(zhuǎn)換為電阻值的變化,從而可以測量壓力的變化,再通過A/D轉(zhuǎn)換模塊,即可得到被測物體的重量。所需接線的引腳為:EXC+、EXC-、SIC+、SIC-。實物圖、引腳如圖所示。

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)
寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

3.2.4 HX711 A/D模塊

A/D模塊選用HX711芯片,主要實現(xiàn)將壓力傳感器檢測到的電壓信號轉(zhuǎn)換成STM32可讀的數(shù)字信號。所需連接的引腳:AVDD引腳、GND引腳、INA+引腳、INA-引腳、DT引腳、SCK引腳、VCC引腳。HX711模塊實物圖如圖所示。

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

3.2.5 供電及穩(wěn)壓

供電使用3S鋰電池作為整體裝置的供電,3S鋰電池可以提供11.1v的電壓。3S鋰電池實物如圖所示。

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

3.2.6 TLN104/TLP104 紅外對管光電傳感器模塊介紹

該傳感器模塊對環(huán)境光線適應(yīng)能力強(qiáng), 其具有一對紅外線發(fā)射與接收管, 發(fā)射管發(fā)射出一定頻率的紅外線, 當(dāng)檢測方向遇到障礙物時, 紅外線反射回來被接收管接收,經(jīng)過比較器電路處理之后, 綠色指示燈會亮起, 同時信號輸出接口輸出數(shù)字信號(一個低電平信號) , 可通過電位器旋鈕調(diào)節(jié)檢測距離, 有效距離范圍 2~30cm, 工作電壓為 3. 3V-5V。 實物圖如

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

3.2.7 其他硬件模塊

DS18B20和LCD本片文章學(xué)長不在復(fù)述

3.3 軟件實現(xiàn)

3.3.1 主程序邏輯

首先先給單片機(jī)上電, 系統(tǒng)軟件設(shè)計需先對 LCD1602 與 T0、 T1 先初始化, 然后進(jìn)行溫度與水位讀取轉(zhuǎn)換, 其次按鍵掃描, 再完成對寵物自動飲水喂食器的溫度和水位檢測以及判斷是否含有食物。 如果當(dāng)檢測的溫度或者水位低于設(shè)定值 29 ℃ 或 15cm或者沒有檢測到食物, 將使喂食器自動實現(xiàn)加溫加水以及喂食功能, 以此不斷運(yùn)行。主函數(shù)的功能就是對程序設(shè)計中使用的變量及模塊初始化并將各功能子模塊進(jìn)行調(diào)用。

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

3.3.2 按鍵監(jiān)聽模塊

硬件電路中使用 4 個獨(dú)立按鍵用來作為溫度和水位閥值的設(shè)定裝置, 由于采用獨(dú)立式接法, 因此只需要判斷對應(yīng)的輸入電平即可確認(rèn)按鍵是否按下以及是哪個按鍵按下。 凡是在按鍵處理的過程中都需要對其消抖處理, 因為按鍵在按下和松開的過程中會產(chǎn)生抖動, 如果不進(jìn)行消抖處理, 那么當(dāng)按鍵按下后就判斷其狀態(tài), 這個很有可能是按鍵抖動所產(chǎn)生的誤操作。 由于硬件電路中并沒有做消抖處理, 所以需要通過軟件來進(jìn)行消抖。

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

3.3.3 溫度數(shù)據(jù)讀取

硬件電路中使用了單總線接口的數(shù)字溫度傳感器 DS18B20 作為喂食器的溫度檢測裝置, 由于我們使用的單片機(jī)沒有單總線接口, 必須通過管腳來模擬時序通信。 根據(jù)溫度傳感器的初始化及讀寫時序圖可以模擬, 溫度傳感器在讀寫數(shù)據(jù)的時候是先讀寫低位, 然后再是高位。 所以需要一個循環(huán)函數(shù)及移位操作來讀寫 8 次。 然后通過發(fā)送溫度轉(zhuǎn)換及讀取命令就可以讀取到溫度數(shù)據(jù), 讀取到的溫度數(shù)據(jù)還需要對其進(jìn)行處理才能轉(zhuǎn)換為實際的溫度。 溫度轉(zhuǎn)換讀取流程圖如圖

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

3.3.4 超聲波檢測水位

硬件電路中使用了 HC-SR04 超聲波傳感器模塊來檢測水位的變化, 由于使用超聲波來測距需要對時間進(jìn)行計算, 所以需要使用到單片機(jī)內(nèi)的定時器功能, 通過定時器計算超聲波返回的高電平持續(xù)時間就可以計算距離, 水位距離檢測流程圖如圖

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

3.3.5 LCD1 602 顯示模塊

在對 LCD 液晶初始化的時候我們需要了解其具有步驟, 根據(jù)數(shù)據(jù)手冊可以知道,要對 LCD1602 液晶初始化, 首先需要一段時間的延時, 然后根據(jù)個人要求選擇具體的顯示模式, 可以選擇顯示光標(biāo)或者光標(biāo)閃爍等, 最后需要對 LCD 進(jìn)行一次清屏, 將內(nèi)部 RAM 的數(shù)據(jù)全部清除, 等待下一次的顯示。 初始化結(jié)束以后根據(jù)時序編寫寫命令函數(shù)和寫數(shù)據(jù)函數(shù), 最后就是使用這 2 個函數(shù)來進(jìn)行數(shù)據(jù)顯示, 流程圖如圖

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

4 實現(xiàn)效果

將電源接口接外電源 5V 供電, 按下上電按鈕, 電源指示燈亮起, 系統(tǒng)通電正常工作。 LCD1602 顯示設(shè)定的水位 15. 0 與溫度值 29, 如圖
寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

當(dāng)用 HC-RC04 超聲波傳感器檢測到的水位低于設(shè)定水位 15mm 時, 就驅(qū)動加水電路, 即加水綠燈亮起, 液晶屏顯示檢測到的水位值; 當(dāng)用 DS18B20 檢測到的溫度低于設(shè)定溫度 29℃時, 驅(qū)動加溫電路, 即加溫紅燈亮起, 液晶屏顯示檢測到的溫度值。

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)
當(dāng)用 TLN104/TLP104 紅外對管光電傳感器在 5cm 內(nèi)檢測不到食物存在時, 就驅(qū)動喂食電路, 即喂食黃燈亮起

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)

通過按鍵可設(shè)置水位上下限范圍為 0cm—20cm; 溫度上下限范圍 0℃~+125℃,根據(jù)用戶需求可通過按鍵去調(diào)整設(shè)定水位與溫度值

寵物喂食器的單片機(jī)采用什么做的呢,單片機(jī),嵌入式,畢業(yè)設(shè)計,單片機(jī),stm32,寵物自動喂食系統(tǒng)文章來源地址http://www.zghlxwxcb.cn/news/detail-775644.html

5 關(guān)鍵代碼

#include <at89x52.h> 
#include <intrins.h>
#include "LCD1602display.h"
#define TX P1_3 //定義串行通信的數(shù)據(jù)發(fā)送
#define RX P1_4 //定義串行通信的數(shù)據(jù)接收
#define uchar unsigned char
#define uint unsigned int
sbit P4_0=0xc0; //定義 P4 口
//按鍵定義
sbit DS18B20_up =P2^1;
sbit DS18B20_down =P2^0;
sbit Watet_up =P3^6;
sbit Watet_down =P3^5;
//切換定義
sbit wendu=P3^4;
sbit DS=P1^5; //定義 DS18B20 接口
sbit Light=P3^7; //定義光電傳感器接口
//定義加水加溫加料驅(qū)動接口
sbit hot=P2^2; //紅燈
sbit water=P2^3;//綠燈
sbit food=P2^4; //黃燈
void Delay400Ms(void);//延時 400 毫秒函數(shù)
// unsigned char code Range[] ="H: ";
unsigned char code ASCII[13] = "0123456789.-M";
unsigned char code table[]="H: ";//unsigned char code table[]="H:000.0cm";
//unsigned char code table1[]="!!! Out of range";
//unsigned char code ASCII[13] = "0123456789.";
unsigned char code table1[]=" temp: ";
unsigned char disbuff[4]={0,0,0,0};//用于分別存放距離的值 0.1mm、 mm、 cm 和 m 的unsigned char disbuff1[4]={0,0,0,0};//用于分別存放距離的值 0.1mm、 mm、 cm 和 m 的unsigned char disbuff2[4]={0,0,0,0};//用于分別存放距離的值 0.1mm、 mm、 cm 和 m 的//unsigned char disbuff1[2]={0,0};
//unsigned char disbuff2[2]={0,0};
void Count(void);//距離計算函數(shù)
void key() ;  
unsigned int time=0;//用于存放定時器時間值
unsigned int S=0;//用于存放距離的值
unsigned int H=0,V1=150,V2=29.0,V2_T;
bit flag =0; //量程溢出標(biāo)志位
int rang=0;
//unsigned int i=0,H1=29,L1=30,fan;
/*************延時子函數(shù) *******************************************/
void delayb(uint count)
{ uint i;
while(count)
{
i=200;
while(i>0)
i--;
count--;
}
}
/*************DS18B20 初始化*******************************************/
void dsreset(void)
{
uint i;
DS=0;
i=103; //延時最短 480us(計算機(jī)運(yùn)行的時間)
while(i>0)i--;
DS=1; //等待 16-60us, 收到低電平一個約 60-240us 則復(fù)位成功
i=4;
while(i>0)i--;
}
/*************讀一位*************************************************/
bit tmpreadbit(void)
{
uint i;
bit dat;
DS=0; //將總線拉低, 要在 1us 之后釋放總線
i++; //小延時一下
DS=1; //釋放總線后的 15us 內(nèi) DS18B20 會發(fā)送內(nèi)部數(shù)據(jù)位
i++;i++;
dat=DS;
i=8; //一個字節(jié)共 8 位
while(i>0)i--;
return (dat); //將一個字節(jié)數(shù)據(jù)返回
}
/*************讀一個字節(jié)*************************************************/
uchar tmpread(void)
{
uchar i,j,dat;
dat=0;
for(i=1;i<=8;i++)
{
j=tmpreadbit();
dat=(j<<7)|(dat>>1); //讀出的數(shù)據(jù)最低位在最前面, 這樣剛好//一個字節(jié)在 DAT}
return(dat); //將一個字節(jié)數(shù)據(jù)返回
}
/*************寫一個字節(jié)*************************************************/
void tmpwritebyte(uchar dat)
{
uint i;
uchar j;
bit testb;
for(j=1;j<=8;j++)
{
testb=dat&0x01;
dat=dat>>1;
if(testb) // 寫 1 部分
{
DS=0;
i++;i++;
DS=1;
i=8;
 while(i>0)i--;
}
else
{
DS=0; //寫 0 部分
i=8;
 while(i>0)i--;
DS=1;
i++;i++;
}
}
}
/*********** 發(fā)送 溫 度轉(zhuǎn) 換 命令
***********************************************/
void tmpchange(void)
{
dsreset(); //初始化 DS18B20
delayb(1); //延時
tmpwritebyte(0xcc); // 跳過序列號命令
tmpwritebyte(0x44); //發(fā)送溫度轉(zhuǎn)換命令
}
int tmp()
{
int temp;
uchar a,b;
dsreset();
delayb(1);
tmpwritebyte(0xcc);
tmpwritebyte(0xbe); //發(fā)送讀取數(shù)據(jù)命令
a=tmpread(); //連續(xù)讀兩個字節(jié)數(shù)據(jù)
b=tmpread();
temp=b;
temp<<=8;
temp=temp|a;  //兩字節(jié)合成一個整型變量。
return temp; //返回溫度值
}
/******* 讀 取 溫 度 傳 感 器 的序 列 號
***************************************************/
void readrom()  //只有一片 DS18B20, 不需要讀序列號, 本程序中沒有用到此函數(shù)
{
uchar sn1,sn2;
dsreset();
delayb(1);
tmpwritebyte(0x33);
sn1=tmpread();
sn2=tmpread();
}
void key()
{ 
if(Water_up==0)
{
 //Delay1ms(40);
if(Watet_up==0)
{//V1=12;
 //Delay1ms(40);
 V1++;
 //V1=V1*10;
 if(V1==200)V1=0;
while(!Watet_up) ;
}
}
if(Water_down==0) //如果檢測到低電平, 說明按鍵按下
{
//Delay1ms(40);
if(Watet_down==0) //再次確認(rèn)按鍵是否按下, 沒有按下則退出
{ //Delay1ms(40);
 V1--; //V2=V2*10;
 if(V2==100)V1=150;
while(!Watet_down); //等待按鍵釋放
}
}
if(DS18B20_up==0)
{//V1=12;
 //Delay1ms(40);
 V2++;
 //V1=V1*10;
 if(V2==15)V2=15;
while(!DS18B20_up) ;
}
if(DS18B20_down==0)
{//Delay1ms(40);
if(DS18B20_down==0)
{ //Delay1ms(40);
 V2--; //V2=V2*10;
 if(V2==0)V2=15;
while(!DS18B20_down) ;
}
}
}

/********距離計算程序***************/
void Conut(void)
 {
 time=TH0*256+TL0; //轉(zhuǎn)成 16 進(jìn)制
 TH0=0;
 TL0=0;
 S=time*0.58;//先算出一共的時間是多少微秒。
S=S*0.17;//此時計算到的結(jié)果為毫米, 并且是精確到毫米的后兩位了, 有兩個小
數(shù)點(diǎn)
H=210-S;
 //V=(3.14*3.3*3.3)*H;
 if((H<V1)&&(H>0)) //觸發(fā)低水位警戒線, 進(jìn)水
  water=0;
 else water=1;
//LCD 顯示
 {  key() ;
disbuff[0]=H%10;
 disbuff[1]=H/10%10;
disbuff[2]=H/100%10;
 disbuff[3]=H/1000;
 DisplayListChar(0, 1, table);
 DisplayOneChar(2, 1, ASCII[disbuff[3]]);
 DisplayOneChar(3, 1, ASCII[disbuff[2]]); 
 DisplayOneChar(4, 1, ASCII[disbuff[1]]);
DisplayOneChar(5, 1, ASCII[10]);
 DisplayOneChar(6, 1, ASCII[disbuff[0]]);
 disbuff1[0]=V1%10;
 disbuff1[1]=V1/10%10;
 disbuff1[2]=V1/100%10;
 disbuff1[3]=V1/1000;
 disbuff2[0]=V2%10;
 disbuff2[1]=V2/10%10;
 disbuff2[2]=V2/100%10;
disbuff2[3]=V2/1000;
//  DisplayListChar(0, 0,Range); 
 DisplayOneChar(2, 0, ASCII[disbuff1[3]]);
 DisplayOneChar(3, 0, ASCII[disbuff1[2]]); 
 DisplayOneChar(4, 0, ASCII[disbuff1[1]]);
DisplayOneChar(5, 0, ASCII[10]);
DisplayOneChar(6, 0, ASCII[disbuff1[0]]);
DisplayOneChar(8, 0, ASCII[disbuff2[3]]);
 DisplayOneChar(9, 0, ASCII[disbuff2[2]]); 
 DisplayOneChar(10, 0, ASCII[disbuff2[1]]);
//DisplayOneChar(11, 0, ASCII[10]);
 DisplayOneChar(11, 0, ASCII[disbuff2[0]]);
 }
 }

/*************主程序********************/
void main(void)
{
unsigned long a;
 //unsigned long a;
 uint t;
 float tt,f_temp;
Delay1ms(10); //啟動等待, 等 LCM 講入工作狀態(tài)
 LCMInit(); //LCM 初始化
 //Delay1ms(5);//延時片刻
//  DisplayListChar(0, 0, Range);
 DisplayListChar(0, 0, table);
// DisplayListChar(0, 1, table1);
TMOD=0x61;//設(shè) T0 為方式 1, GATE=0; T1 為方式 2, C/T=1(計數(shù)功能)
EA=1; //中斷總允許位
TH0=0;
TL0=0;
ET0=1; //T0 中斷允許
 TR0=0; //T0 不工作
TH1=0XE7;
TL1=0XE7;
 TR1=1;ET1=1;
 while(1)
 { //if(wendu==0)   
{
tmpchange(); //溫度轉(zhuǎn)換
 Delay1ms(10);
 tt=tmp()/16;  //得到十進(jìn)制溫度值
//f_temp=tt*10; 
  t=tt;
  disbuff[0]=t/100;//顯示百位值
   t=t%100;
   disbuff[1]=t/10; //顯示溫度十位值
   //t=t%10;
   disbuff[2]=t%10;  //顯示溫度個位值
  //  disbuff[3]=t%10;  //顯示小數(shù)點(diǎn)后一位
if(t<V2)
 hot=0;
else hot=1;
// if(t>V2){hot=0;}
// else if (0<t<V2){hot=1;}
// else if(t<0){;}
// else {hot=1;}
DisplayListChar(0, 1, table);
 DisplayOneChar(9, 1, ASCII[disbuff[1]]);
DisplayOneChar(10, 1, ASCII[disbuff[2]]);
  //while(!wendu) ;
 Delay1ms(50);//延時片刻
}
//else
{
 if(Light==0)
food=1;
 else food=0;
  key() ;
 Delay1ms(10);
  RX=1;// 為了讓讀引腳電平穩(wěn)定, 最好先置 1 再讀取。
 StartModule();
for(a=5000;a>0;a--)//a 的值也會限制檢測距離, a 的值越大, 檢測時間間隔越長
{ 
key() ;
 if(RX==1) //判斷 RX 是否等于 1 了, 如果等于 1 就啟動定時器計數(shù)
  {
Timer_Count();
  }
 }
 } 
}
}

6 最后

到了這里,關(guān)于單片機(jī)畢業(yè)設(shè)計 stm32寵物自動喂食系統(tǒng)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 單片機(jī)畢業(yè)設(shè)計 stm32四軸飛行器設(shè)計與實現(xiàn)

    單片機(jī)畢業(yè)設(shè)計 stm32四軸飛行器設(shè)計與實現(xiàn)

    Hi,大家好,今天向大家介紹一個學(xué)長做的單片機(jī)項目 基于stm32的四軸飛行器設(shè)計 大家可用于 課程設(shè)計 或 畢業(yè)設(shè)計 這次嘗試制作一個四旋翼飛控的過程 這個飛控是基于STM32,整合了MPU6050,即陀螺儀和重力加速計,但沒有融合電子羅盤; 這是飛控程序的控制流程(一個執(zhí)行

    2024年02月14日
    瀏覽(14)
  • 單片機(jī)畢業(yè)設(shè)計 stm32空氣質(zhì)量檢測儀

    單片機(jī)畢業(yè)設(shè)計 stm32空氣質(zhì)量檢測儀

    Hi,大家好,學(xué)長今天向大家介紹一個 單片機(jī)項目 基于STM32的空氣質(zhì)量檢測儀 大家可用于 課程設(shè)計 或 畢業(yè)設(shè)計 如今人們大約 80%的時間是在室內(nèi)度過的, 室內(nèi)空氣質(zhì)量與我們每個人的工作和生活都息息相關(guān), 因此對生活環(huán)境的空氣質(zhì)量提出了更高的要求。 針對霧霾、 室內(nèi)

    2023年04月27日
    瀏覽(26)
  • 單片機(jī)畢業(yè)設(shè)計 stm32發(fā)送短信消息(GMS模塊)

    單片機(jī)畢業(yè)設(shè)計 stm32發(fā)送短信消息(GMS模塊)

    Hi,大家好,學(xué)長今天向大家介紹如何使用GMS模塊,達(dá)到單片機(jī)發(fā)送短信的效果,應(yīng)用場景非常廣泛 ** 單片機(jī)發(fā)送短信消息(GMS模塊)** 大家可用于 課程設(shè)計 或 畢業(yè)設(shè)計 GSM模塊使用上海SIMcom公司的SIM900高精度無線GSM/GPRS完全四頻芯片,使用SMT封裝且融 合了高性能的ARM926EJ

    2024年02月07日
    瀏覽(52)
  • stm32畢業(yè)設(shè)計 火災(zāi)報警系統(tǒng)設(shè)計與實現(xiàn) - 單片機(jī) 物聯(lián)網(wǎng)

    stm32畢業(yè)設(shè)計 火災(zāi)報警系統(tǒng)設(shè)計與實現(xiàn) - 單片機(jī) 物聯(lián)網(wǎng)

    Hi,大家好,學(xué)長今天向大家介紹一個 單片機(jī)項目 基于單片機(jī)的火災(zāi)報警系統(tǒng)設(shè)計與實現(xiàn) 大家可用于 課程設(shè)計 或 畢業(yè)設(shè)計 選題指導(dǎo),項目分享: https://gitee.com/yaa-dc/warehouse-1/blob/master/iot/README.md 火災(zāi)是指在時間或空間上失去控制的燃燒所造成的災(zāi)害。在各種災(zāi)害中,火災(zāi)是

    2024年02月04日
    瀏覽(88)
  • 畢業(yè)設(shè)計|基于STM32單片機(jī)的語音識別控制智能停車場設(shè)計

    畢業(yè)設(shè)計|基于STM32單片機(jī)的語音識別控制智能停車場設(shè)計

    演示視頻 https://www.bilibili.com/video/BV1bC4y1579d/?spm_id_from=333.999.0.0vd_source=0fb8a603c3cd84c0c72e5fa5d4201605 本系統(tǒng)采用stm32f103c8t6單片機(jī)+晶振電路+復(fù)位電路+電源電路+車位檢測電路+OLED顯示電路+繼電器控制電路+語音識別電路構(gòu)成。 1,通過紅外對管模塊實時檢測車位是否占用,車位分為

    2024年02月04日
    瀏覽(115)
  • [畢業(yè)設(shè)計] 基于單片機(jī)的智能快遞柜設(shè)計與實現(xiàn) - stm32 物聯(lián)網(wǎng)

    [畢業(yè)設(shè)計] 基于單片機(jī)的智能快遞柜設(shè)計與實現(xiàn) - stm32 物聯(lián)網(wǎng)

    Hi,大家好,這里是丹成學(xué)長,今天向大家介紹一個 單片機(jī)項目 基于單片機(jī)的智能快遞柜設(shè)計與實現(xiàn) 大家可用于 課程設(shè)計 或 畢業(yè)設(shè)計 單片機(jī)-嵌入式畢設(shè)選題大全及項目分享: https://blog.csdn.net/m0_71572576/article/details/125409052 一般來說,傳統(tǒng)快遞服務(wù)方式是人對人,即快遞員進(jìn)

    2024年01月16日
    瀏覽(114)
  • 【畢業(yè)設(shè)計】基于STM32的智能藥箱系統(tǒng)設(shè)計與實現(xiàn) - 物聯(lián)網(wǎng) 單片機(jī)

    【畢業(yè)設(shè)計】基于STM32的智能藥箱系統(tǒng)設(shè)計與實現(xiàn) - 物聯(lián)網(wǎng) 單片機(jī)

    Hi,大家好,這里是丹成學(xué)長,今天向大家介紹一個學(xué)長做的單片機(jī)項目 基于STM32的智能藥箱系統(tǒng)設(shè)計與實現(xiàn) 大家可用于 課程設(shè)計 或 畢業(yè)設(shè)計 單片機(jī)-嵌入式畢設(shè)選題大全及項目分享: https://blog.csdn.net/m0_71572576/article/details/125409052 照顧老人, 特別是提醒老人準(zhǔn)時吃藥已經(jīng)成

    2024年02月01日
    瀏覽(92)
  • 【畢業(yè)設(shè)計】基于單片機(jī)的智能魚缸系統(tǒng)設(shè)計與實現(xiàn) - 嵌入式 物聯(lián)網(wǎng) stm32 51單片機(jī) 智能魚缸

    【畢業(yè)設(shè)計】基于單片機(jī)的智能魚缸系統(tǒng)設(shè)計與實現(xiàn) - 嵌入式 物聯(lián)網(wǎng) stm32 51單片機(jī) 智能魚缸

    Hi,大家好,今天向大家介紹一個 單片機(jī)項目, 大家可用于 課程設(shè)計 或 畢業(yè)設(shè)計 基于單片機(jī)的智能魚缸系統(tǒng)設(shè)計與實現(xiàn) ?? 項目分享與指導(dǎo): https://gitee.com/sinonfin/sharing 近年以來,隨著我國綜合實力飛速飆升,人們對物質(zhì)和精神生活質(zhì)量的要求也不斷提升,各式各樣的智能

    2024年02月04日
    瀏覽(95)
  • 單片機(jī)畢業(yè)設(shè)計 stm32智能溫控風(fēng)扇設(shè)計與實現(xiàn) - 嵌入式 物聯(lián)網(wǎng)

    單片機(jī)畢業(yè)設(shè)計 stm32智能溫控風(fēng)扇設(shè)計與實現(xiàn) - 嵌入式 物聯(lián)網(wǎng)

    Hi,大家好,學(xué)長今天向大家介紹一個 單片機(jī)項目 基于stm32的智能溫控風(fēng)扇設(shè)計與實現(xiàn) 大家可用于 課程設(shè)計 或 畢業(yè)設(shè)計 隨著科技的日新月異,智能家居逐漸走入普通家庭,風(fēng)扇作為基本的家用電器也將成為智能家居的一部分。這里介紹的是以STM32單片機(jī)為控制單元并結(jié)合嵌

    2024年02月09日
    瀏覽(95)
  • 【畢業(yè)設(shè)計】基于單片機(jī)的智能溫控農(nóng)業(yè)大棚系統(tǒng) - 物聯(lián)網(wǎng) stm32

    【畢業(yè)設(shè)計】基于單片機(jī)的智能溫控農(nóng)業(yè)大棚系統(tǒng) - 物聯(lián)網(wǎng) stm32

    Hi,大家好,這里是丹成學(xué)長,今天向大家介紹一個 單片機(jī)項目 基于單片機(jī)的智能溫控農(nóng)業(yè)大棚系統(tǒng) 大家可用于 課程設(shè)計 或 畢業(yè)設(shè)計 單片機(jī)-嵌入式畢設(shè)選題大全及項目分享: https://blog.csdn.net/m0_71572576/article/details/125409052 近年來我國的溫室控制取得了 長足的進(jìn)步, 首先在

    2024年02月02日
    瀏覽(98)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包