亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码
標題:
藍牙接受單片機的煙霧溫度數據信息,這是一個主程序,求注釋
[打印本頁]
作者:
喵帕斯zz
時間:
2019-5-12 15:53
標題:
藍牙接受單片機的煙霧溫度數據信息,這是一個主程序,求注釋
程序如下,部分沒注釋,哥哥們能幫我注釋一下嗎
#include <reg52.h> //頭文件
#include <LCD1602.h> //頭文件
#include "DS18B20.h" //頭文件
#include <ADC0832.H> //頭文件
#define uint unsigned int //宏定義
#define uchar unsigned char //宏定義
sbit key1=P3^2; //按鍵定義
sbit key2=P3^3; //按鍵定義
sbit key3=P3^4; //按鍵定義
sbit key4=P3^5; //按鍵定義
sbit beer=P2^4; //蜂鳴器定義
sbit ledbai=P2^1; //LED定義
sbit hong=P2^0; //LED定義
char data Tim[16]="T:00.0C Y:00000";//顯示數組
char data Tes[16]="TH:30C YH:03000";//顯示數組
int tmp,th=30,yh=3000; //變量定義
int tk; //變量定義
long yw; //變量定義
/***********************************************************
函數名稱:Print_Char
函數功能:發送單個字符
入口參數:ch 出口參數:無
***********************************************************/
void Print_Char(uchar ch)//發送單個字符
{
SBUF=ch; //送入緩沖區
while(TI!=1); //等待發送完畢
TI=0; //軟件清零
}
/***********************************************************
函數名稱:Print_Str
函數功能:發送字符串
入口參數:*str 出口參數:無
***********************************************************/
void Print_Str()//發送字符串
{
uchar i;
for(i=0;i<16;i++) //發送第1組數據
{
Print_Char(Tim[i]);
}
Print_Char(' ');
Print_Char(' ');
for(i=0;i<16;i++) //發送第1組數據
{
Print_Char(Tes[i]);
}
}
/***********************************************************
函數名稱:Ini_UART
函數功能:串口初始化、定時器初始化
入口參數:無 出口參數:無
***********************************************************/
void Ini_UART(void)//串口初始化、定時器初始化
{
TMOD = 0x20;
SCON = 0x50;
TH1 = 0xFD;
TL1 = TH1;
PCON = 0x00;
TR1 = 1;
EA = 1;
ES = 1;
}
void caiji() //采集數據子函數
{
tmp=ReadTemperature()/10;
tk=Adc0832(0);
yw=10000-970.0*(160-tk)/13.0;//讀AD轉換結果
if(yw>10000)yw=10000;
else if(yw<300)yw=300;
}
void delay_ms(uint ms)// 延時子函數
{
while(ms--)
{
unsigned char a,b;
for(b=4;b>0;b--)
for(a=113;a>0;a--);
}
}
void keyscan() //按鍵掃描函數
{
//-----------------------------key1----------------------------
if(key1==0)
{
th++;
if(th>99)th=99;
}
//-----------------------------key2----------------------------
if(key2==0)
{
th--;
if(th<0)th=0;
}
//-----------------------------key3----------------------------
if(key3==0)
{
yh++;
if(yh>9999)yh=9999;
}
//-----------------------------key4----------------------------
if(key4==0)
{
yh--;
if(yh<0)yh=0;
}
}
void display() //顯示函數
{
Tim[2]=tmp/100+'0'; //顯示處理
Tim[3]=tmp%100/10+'0';
Tim[5]=tmp%10+'0';
Tim[11]=yw/10000+'0'; //顯示處理
Tim[12]=yw%10000/1000+'0';
Tim[13]=yw%1000/100+'0';
Tim[14]=yw%100/10+'0';
Tim[15]=yw%10+'0';
Tes[3]=th/10+'0'; //顯示處理
Tes[4]=th%10+'0';
//顯示處理
Tes[11]=yh/10000+'0';
Tes[12]=yh%10000/1000+'0';
Tes[13]=yh%1000/100+'0';
Tes[14]=yh%100/10+'0';
Tes[15]=yh%10+'0';
ShowString(0,Tim); //顯示第0行
ShowString(1,Tes); //顯示第1行
}
void jiance() //檢測報警子函數
{
if(tmp/10>th||yw>yh)
{
hong=0;
beer=0;
// GSM_TEXT_SMS();
delay_ms(2000);
}
else {beer=1;hong=1;}
}
/***********************************************************
函數名稱:main
函數功能:主函數
***********************************************************/
uchar res;
void UARTInterrupt(void) interrupt 4
{
if(RI)
{
RI = 0;
res=SBUF;
}
else
TI = 0;
}
void main()
{
char hh;
tk=Adc0832(0);
yw=10000-970.0*(160-tk)/11.0;//讀AD轉換結果
tmp=ReadTemperature()/10; tmp=ReadTemperature()/10; tmp=ReadTemperature()/10; tmp=ReadTemperature()/10;
Ini_UART();
InitLcd();
tmp=ReadTemperature()/10; tmp=ReadTemperature()/10; tmp=ReadTemperature()/10; tmp=ReadTemperature()/10;
tk=Adc0832(0);
delay_ms(1000);
// Print_Str();
yw=10000-970.0*(160-tk)/11.0;//讀AD轉換結果
yw=10;
tmp=10;
while(1)
{
caiji(); //采集數據子函數
display(); //顯示子函數
jiance(); //檢測報警據子函數
keyscan(); //按鍵掃描子函數
hh++;if(hh>5){hh=0;EA=0;Print_Str();EA=1;}
if(res=='0')ledbai=0;
else if(res=='1')ledbai=1;
復制代碼
作者:
supormao
時間:
2020-1-4 10:23
代碼不全吧
作者:
流星2019
時間:
2020-1-4 16:18
寫的人是覺得這個沒必要注釋,因為這個是主函數部分,不是溫度傳感器,藍牙的配置過程,都是一些調用,沒必要注釋,你哪個地方沒看懂指出來說就行,我們也不知道你問啥。
歡迎光臨 (http://www.denmoz.com/bbs/)
Powered by Discuz! X3.1