久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
單片機數碼管和報警故障處理程序
[打印本頁]
作者:
tjdk2if
時間:
2022-12-30 14:10
標題:
單片機數碼管和報警故障處理程序
#include"reg52.h"
#include "public.h"
#include "key.h" //開關
#include "iic.h" //TM1637_Display
//全局變量
static u8 Flag_oil=0; //油位報警標志位Flag_oil=1,低油位報警
static u8 Flag_start=0; //正常點火,掃描一次標志位
static u8 Flag_Lighter=0; //關閉點火器標志位
static u8 Flag_fire1=0; //火焰檢測標志位 火焰正常 Flag_fire1=2
static u8 Flag_fire2=0; //2次火焰檢測標志位 火焰正常 Flag_fire2=2
static u8 Flag_fire3=0; //點火報警和顯示器沖突
static u8 Flag_stop=0; //關機顯示工作時間
static u8 buf_Fire[5]; //火焰檢測次數數據保存
u8 num_Fire1; //火焰檢測結果處理
u8 num_Fire2; //火焰檢測結果處理
static u8 K=0; //火焰檢測次數
u16 ms,second,min,hour;
u16 ms1,second1; //火焰正常檢測
/*******************************************************************************
* 函 數 名 : T1_init()
*******************************************************************************/
void T1_init()
{
TMOD|=0X10;//選擇為定時器0模式,工作方式1
TH1=(65535-50000)/256; // 50ms
TL1=(65535-50000)%256;
ET1=1;//打開定時器1中斷允許
EA=1;//打開總中斷
TR1=1;//打開定時器
}
void T1_time() interrupt 3 // 50ms
{
TH1=(65535-50000)/256;
TL1=(65535-50000)%256;
ms++;
ms1++;
if((ms>=20)&&(Pump_Fan_Y0==0)) // 1s &&(Pump_Fan_Y0==0)
{
ms=0;
second++;
if(second>=60)
{
second=0;
min++;
}
}
if(((Pump_Fan_Y0==0)&&(Flag_oil==0)&&(Flag_fire3==0))||((Flag_stop==1)&&(Flag_oil==0)))
{
TM1637_Display(min/10,min%10,second/10,second%10,1);
}
if(Flag_oil==1)
{
TM1637_Display(0,0,14,1,1);
}
if(Flag_fire3==1)
{
TM1637_Display(0,0,14,2,1);
}
if((ms1>=20)&&((Flag_fire1==2)||(Flag_fire2==2))) // 1s &&(Pump_Fan_Y0==0)
{
ms1=0;
second1++;
if(second1>=60)
{
second1=0;
}
}
}
//油位檢測函數
void oil_scan()
{ u8 D;
if(OilDetct_X1==0)//油位檢測
{ delay_ms(1000);
if(OilDetct_X1==0)//油位檢測
{
SolenV_Y1=1;
Lighter_Y2=1;
Flag_oil=1;
for(D=0;D<7;D++)
{
Alarm_Y3=0;
delay_ms(200);
Alarm_Y3=1;
delay_ms(200);
}
}
}
if(OilDetct_X1==1)//油位檢測,正常油位
{Flag_oil=0;}
}
//開始函數
void turn_on()
{
Key_Scan();
if((Key_Scan())&&(OilDetct_X1==1))
{
if(Flag_start==0)
{
Pump_Fan_Y0=0;
delay_ms(3000);
SolenV_Y1=0;
delay_ms(2000);
if(Flag_Lighter==0) //點火器關閉標志位
Lighter_Y2=0;
Flag_Lighter=1;
if(Lighter_Y2==0)
{
delay_ms(8000);//點火器延長時間
Lighter_Y2=1;
}
Flag_start=1;
Flag_stop=0;
}
}
}
//停止函數
void turn_off()
{
if((Key_Scan()==0)&&(Flag_start==1))
{
SolenV_Y1=1;
Lighter_Y2=1;
delay_ms(2000);
Pump_Fan_Y0=1;
Flag_start=0;
Flag_Lighter=0;
K=0;
Flag_oil=0;
Flag_fire2=0;
Flag_fire1=0;
Flag_fire3=0;
Flag_stop=1;
}
}
//火焰檢測是否點著
void fire_test()
{
u8 L=0; //報警閃爍
if(Flag_start==1)
{
delay_ms(2000);
if(FireDetct_X2==0&&K<1)
{
Flag_fire1=2;
++K;
} //第一次點火成功標志位
else if(FireDetct_X2==1&&K<1)
{
++K;
Lighter_Y2=0;
delay_ms(2000);
Lighter_Y2=1;
if(FireDetct_X2==0)
{Flag_fire2=2;} //第二次點火成功標志位
delay_ms(2000); //火焰檢測時間
if((FireDetct_X2==1)&&(Flag_fire2!=2)) ////第二次點火不成功標志位
{
SolenV_Y1=1;
Lighter_Y2=1;
Flag_fire3=1;
for(L=0;L<7;L++)
{
Alarm_Y3=0;
delay_ms(200);
Alarm_Y3=1;
delay_ms(200);
}
}
}
}
}
//點著以后檢測火焰
void fire_scan()
{ u8 P;
if((Flag_fire1==2)||(Flag_fire2==2))
{
if(second%8==0)
{
if(FireDetct_X2==0)
{
Flag_fire1=2;
Flag_fire2=2;
}
if(FireDetct_X2==1)
{
SolenV_Y1=1;
Lighter_Y2=1;
Flag_fire3=1;
for(P=0;P<7;P++)
{
Alarm_Y3=0;
delay_ms(200);
Alarm_Y3=1;
delay_ms(200);
}
Flag_fire1=0;
Flag_fire2=0;
}
}
}
}
void main()
{
TM1637_Display(0,0,0,0,1);
Key_Scan();
T1_init();
GPIO_init();
while(1)
{
fire_scan();
oil_scan();
turn_on();
turn_off();
fire_test();
}
}
作者:
35456
時間:
2023-1-3 21:23
向大佬致敬,向大佬學習。
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
av在线视
|
龙珠z国语版在线观看
|
久久亚洲欧美日韩精品专区
|
日日干干
|
欧美日韩视频一区二区
|
欧美综合视频
|
久久久精品视
|
午夜免费观看网站
|
一区二区三区精品视频
|
国产精品入口久久
|
99视频网
|
精品国产乱码久久久久久闺蜜
|
日韩精品在线观看一区二区
|
成人小视频在线观看
|
国产高清视频在线观看
|
国产高清精品在线
|
亚洲一区视频在线
|
在线中文字幕视频
|
亚洲欧美日韩成人在线
|
国产电影一区二区三区爱妃记
|
亚洲免费观看视频
|
婷婷久久五月天
|
人人九九
|
国产99热精品
|
日本特黄a级高清免费大片 国产精品久久性
|
国产一级在线观看
|
日本黄色不卡视频
|
亚洲a一区
|
av一二三区
|
91精品91久久久
|
亚州中文字幕
|
91黄在线观看
|
久久网一区二区三区
|
精品久久网
|
中文精品视频
|
久久久久无码国产精品一区
|
欧美日产国产成人免费图片
|
欧美久久精品一级c片
|
成人精品一区
|
xxxxx黄色片 欧美一区免费
|
精品久久久久一区二区国产
|