欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
STM32+DS18B20恒溫控制程序 蜂鳴器報警
[打印本頁]
作者:
sakuralap
時間:
2020-1-5 09:21
標題:
STM32+DS18B20恒溫控制程序 蜂鳴器報警
內含報警指示燈+恢復按鍵,原本是打算用LCD顯示,但是由于硬件LCD引腳沒設計連成一片,導致CLD驅動代碼不好寫,遂改用串口調試助手顯示。
單片機源程序如下:
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "led.h"
#include "lcd.h"
#include "ds18b20.h"
#include "beep.h"
int main(void)
{
u8 t=0;
float temperature;
int x;
delay_init(); //延時函數初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設置中斷優先級分組為組2:2位搶占優先級,2位響應優先級
uart_init(115200); //串口初始化為 115200
LED_Init();
LCD_init();
BEEP_Init(); //初始化蜂鳴器端口
while(DS18B20_Init()) //檢測DS18B20是否存在
{
// LED0=1;
}
// LED0=0;
while(1)
{
// if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_0))
// x=0;
// else
// x=1;
/**LED3電源顯示燈**/
GPIO_SetBits(GPIOA,GPIO_Pin_6);
delay_ms(100);
GPIO_ResetBits(GPIOA,GPIO_Pin_6);
delay_ms(100);
Wcmd(0x80+0x40+1);
Wdat('H');
BEEP=0; //平時使它不報警
BAOJIN=1;//報警LED置高,使它平時不亮
// GPIO_SetBits(GPIOA,GPIO_Pin_5);
if(t%10==0) //每100ms讀取一次
{
temperature=DS18B20_Get_Temp();
printf(" 當前溫度為 %2.4f",temperature*0.0625);
printf(" 攝氏度");
printf("\r\n");
/**PA5當溫度大于多少時使蜂鳴器BEEP響 PA7紅光LED閃爍BAOJIN **/
if((temperature*0.0625>=10)&&GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_0))///**********報警值設置*****////
{
BEEP=0;
BAOJIN=1; //報警
delay_ms(100);//延時300ms
BEEP=1;
BAOJIN=0;
delay_ms(300);//延時300ms
printf(" 超過規定溫度,開始報警,紅燈閃爍,危險!請撤離\r\n");
printf("\r\n");
}
}
}
}
復制代碼
所有資料51hei提供下載:
18B20數字溫度傳感器實驗.7z
(195.67 KB, 下載次數: 107)
2020-1-5 12:57 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
HWL0541
時間:
2020-2-25 15:23
下來了,謝謝樓主
作者:
sugar235050
時間:
2020-5-9 01:23
有原理圖就好了
作者:
太空人吃喜之郎
時間:
2020-5-16 09:29
感謝樓主
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1