微控制器求方案,微控制器 求 方案

時間 2021-08-30 10:29:00

1樓:匿名使用者

這是一個利用溫感db18b20做的溫控系統!程式跟電路如下:系統描述:在lcd1602上實時顯示時鐘,溫度,溼度,系統執行時間。利用ds18b20

檢測當前溫度,通過和設定引數的比較,給isd1420發出報警脈衝,通過

功率放大器lm386 驅動喇叭報警。

#include

#include

#define uchar unsigned char

#define uint unsigned int#define busy 0x80 //lcd忙檢測標誌

#define dataport p0 //定義p0口為lcd通訊埠

#define playe_addr xbyte[0xbfff] //語音報警地址sbit red_alarm=p1^0; //紅色指示燈

sbit write_alarm=p1^1; //白色指示燈

sbit green_alarm=p1^2; //綠色指示燈

sbit p1_4=p1^4; //時鐘調整

sbit p1_5=p1^5; //時鐘加

sbit p1_6=p1^6; //時鐘減sbit dq = p1^7; //定義ds18b20通訊埠

sbit lcm_rs=p2^0; //資料/命令端

sbit lcm_rw=p2^1; //讀/寫選擇端

sbit lcm_en=p2^2; //lcd使能訊號

sbit ad_busy=p3^2; //adc中斷方式介面

sbit recled_eoc=p3^5; //isd1420放音結束查詢標誌

sbit out=p3^7;uchar ad_data; //ad取樣值儲存

uchar seconde=0; //定義並初始化時鐘變數

uchar minite=0;

uchar hour=12;

uchar mstcnt=0;

uchar temp1,temp2,temp; //溫度顯示變數

uchar t,set;

uchar t;

bit on_off;

bit outflag;uchar code str0=;

uchar code str1=;void delay_lcm(uint); //lcd延時子程式

void initlcm( void); //lcd初始化子程式

void lcd_wait(void); //lcd檢測忙子程式

void writecommandlcm(uchar wclcm,uchar busyc); //寫指令到icm子函式

void writedatalcm(uchar wdlcm); //寫資料到lcm子函式

void displayonechar(uchar x,uchar y,uchar ddata); //顯示指定座標的一個字元子函式

void displaylistchar(uchar x,uchar y,uchar code *ddata); //顯示指定座標的一串字元子函式

void init_timer0(void); //定時器初始化

void displayfun1(void);

void displayfun2(void);

void displayfun3(void);

void displayfun4(void);

void keyscan(void ); //鍵盤掃描子程式

void set_adj(void);

void inc_key(void);

void dec_key(void);

void delay_18b20(unsigned int i);

void init_ds18b20(void) ;

uchar readonechar(void);

void writeonechar(unsigned char dat);

void readtemperature(void);

void ad0809(void);

void playalarm(void);

/*********延時k*1ms,12.000mhz**********/void delay_lcm(uint k)

return(dat);

}/*************ds18b20寫一個位元組****************/ void writeonechar(uchar dat)

}/**************讀取ds18b20當前溫度************/void readtemperature(void)

/***************液晶顯示子函式1正常顯示*****************/void displayfun1(void)

else }

/************液晶顯示子函式2***************/void displayfun2(void)

/**************液晶顯示子函式3*****************/void displayfun3(void)

/**************液晶顯示子函式4 *****************/void displayfun4(void)

/**************鍵盤掃描子函式******************/void keyscan(void)

{uchar xx; //區域性變數

p1=0xff;

if(p1!=0xff)

{delay_lcm(30);

if(p1!=0xff)

{ xx=p1;

2樓:匿名使用者

這是個簡單的數論問題,微控制器隨便選,不需要什麼高檔的片。具體怎麼設計得看你那邊電子稱介面和要求的輸出方式

微控制器問題,微控制器問題

船長 12mhz 12 1s 1ms 1000065536 10000 55536 d8f0mov tmod,01h t0工作方式1mov tl0,0f0h t0初值mov th0,0d8 h t0初值setb tr0 啟動t0 setb et0 允許t0中斷 setb ea 開總中斷 龍宇防盜監控...

微控制器題目求詳解

mov a,20h anl a,15 call toasc mov 21h,a mov a,20h swap a anl a,15 call toasc mov 22h,a sjmp toasc 轉換程式,請樓主自己寫一個原創的。retend 題目可能主要考2分方面 1.16進位制數轉ascii碼 ...

微控制器原理的參考文獻有哪些,急求關於微控制器的外文參考文獻五篇,不要具體內容,只要標題,作者,年份,型別等就可以了

唐可愛 1 李廣弟等 微控制器基礎 北京航空航天出版社,2001.7 2 樓然苗等 51 系列微控制器設計例項 北京航空航天出版社,2003.3 3 唐俊翟等 微控制器原理與應用 冶金工業出版社,2003.9 4 劉瑞新等 微控制器原理及應用教程 機械工業出版社,2003.7 5 吳國經等 微控制器...