標題: co傳感器程序-顯示氣體濃度 [打印本頁]
作者: 950912 時間: 2016-1-14 13:00
標題: co傳感器程序-顯示氣體濃度
#include <reg52.h>
#include <stdio.h>
//**************定義管腳***************//
//sbit P0_7=P0^7; //小數點
sbit P1_0_A=P1^0; //與74LM138的A相連接
sbit P1_1_B=P1^1; //與74LM138的B相連接
sbit P1_2_C=P1^2; //與74LM138的C相連接
sbit SAT=P1^3; //SAT是A/D轉換啟動信號,輸入高電平有效
sbit OE=P1^4; //OE為輸出允許信號,高電平有效
sbit EOC=P3^2; //A/D轉換結束信號,轉換結束時,此端輸出一個高電平
sbit LED_RED=P1^5; //低電平點亮
sbit LED_BLUE=P1^6; //低電平點亮
sbit SPEAKER=P1^7; //高電平報警
unsigned int DATA;
//****************七段碼*****************//--->高電平點亮七段碼
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f,0x80};
void Xint0() interrupt 0 using 1 //中斷INT0函數
{
OE=1;
DATA=P2;
OE=0;
}
//****************延時函數******************//
void delay_1ms(unsigned int i)
{
unsigned char x, j;
for(j=0;j<i;j++)
for(x=0;x<=148;x++);
}
//************ADC0809轉換函數**************//
void ADC0809()
{
SAT=0;
EOC=1;
delay_1ms(1);
SAT=1;
EOC=0;
delay_1ms(1);
SAT=0;
EOC=1;
delay_1ms(5);
}
//*************Display函數*******************//
//--->Display函數的功能:將采集到的電壓值轉換為實際氣體濃度值進行顯示
void Display(unsigned int date)
{
unsigned int ge,shi,bai,qian;
qian=date/1000%10;//--->提取千位
bai=date/100%10; //--->提取百位
shi=date/10%10; //--->提取十位
ge=date%10; //--->提取個位
P1_2_C=0; //C
P1_1_B=0; //B
P1_0_A=0; //A --->選擇千位數碼管
P0=table[qian]; //--->將千位的數據送給千位
delay_1ms(3);
P1_2_C=0;//C
P1_1_B=0;//B
P1_0_A=1;//A --->選擇百位數碼管
P0=table[bai]; //--->將百位的數據送給百位
delay_1ms(3);
//P0=table[10]; //--->點亮小數點
//delay_1ms(3);
P1_2_C=0;//C
P1_1_B=1;//B
P1_0_A=0;//A --->選擇十位數碼管
P0=table[shi]; //--->將十位的數據送給十位
delay_1ms(3);
//P0=table[10]; //--->點亮小數點
//delay_1ms(3);
P1_2_C=0;//C
P1_1_B=1;//B
P1_0_A=1;//A --->選擇個位數碼管
P0=table[ge]; //--->將個位的數據送給個位
delay_1ms(3);
}
//*****************主函數******************//
void main()
{
ET0=0;
IT0=1; //設INT0為邊沿觸發
EX0=1; //中斷INT0允許
EA=1; //開放中斷
while(1)
{
ADC0809();
DATA=DATA*4; //數據的處理
Display(DATA);
if(DATA<400) //--->判斷是否需要報警
{
SPEAKER=0; //--->不報警
LED_BLUE=0;
}
else if (DATA>=800)
{
SPEAKER=1;//--->嚴重報警
LED_RED=0;
LED_BLUE=1;
delay_1ms(2);
SPEAKER=0;
LED_RED=1;
delay_1ms(2);
SPEAKER=1;
LED_RED=0;
}
else
{
SPEAKER=1; //--->一般報警
LED_RED=1;
LED_BLUE=1;
delay_1ms(2);
SPEAKER=0;
delay_1ms(2);
SPEAKER=1;
}
}
}
作者: 榆林上校 時間: 2016-4-21 10:53
是CO2氣體檢測吧
作者: samking 時間: 2017-5-18 02:34
mark一下。
歡迎光臨 (http://www.zg4o1577.cn/bbs/) |
Powered by Discuz! X3.1 |
主站蜘蛛池模板:
精品九九九
|
久久伊人亚洲
|
久久亚洲91|
午夜大片|
日本黄色大片免费
|
久久久涩
|
91精品久久久久久久久久
|
久久久久久成人
|
国产资源在线播放
|
日韩在线一区二区三区
|
国产精品无码久久久久
|
www.一级片|
久久成人精品一区二区三区
|
久久精品视频网站
|
av黄色在线|
超级乱淫av片免费播放
|
嫩草视频在线看
|
日韩精品成人在线
|
欧美精品在线一区
|
黄片毛片|
羞羞视频一区二区
|
中文字幕第二十页
|
亚洲va国产日韩欧美精品色婷婷
|
亚洲一区二区三区在线免费
|
日韩快播电影网
|
亚洲精品资源
|
91一区二区|
中文字幕国产视频
|
日韩一区二区三区四区五区六区
|
一级毛片免费
|
亚洲九九精品
|
成人免费av在线
|
国产精品久久av
|
超碰97人人人人人蜜桃
|
美女一级毛片
|
91精品久久久久久久久中文字幕
|
男女羞羞免费网站
|
亚洲国产aⅴ精品一区二区
免费观看av
|
国产精品一二区
|
98久久|
日韩欧美三区
|