今天朋友做畢業設計,讓我幫他寫下程式,花了兩個小時,給了他們乙個模板,雖然很簡單,但是還是拿出來分享吧,適用於初學者。高手不要忘下看了
要求:液晶屏顯示.四個按鍵分別控制選擇設定值位數,加一,減一。報警功能開關鍵
lcd.c檔案
#include
#define lcd1602_4pins
#define lcd1602_datapins p0
sbit lcd1602_e=p2^7;
sbit lcd1602_rw=p2^5;
sbit lcd1602_rs=p2^6;
#define uchar unsigned char
#define uint unsigned int
void lcd1602_delay1ms(uint c) //誤差 0us
}}void lcdwritecom(uchar com) //寫入命令
void lcdwritedata(uchar dat)//寫入資料
void lcdinit() //lcd初始化子程式
main.c檔案: /*
*cs_ :片選使能,低電平晶元使能。
*ch0 :模擬輸入通道 0,或作為 in+/-使用。
*ch1 :模擬輸入通道 1,或作為 in+/-使用。
*gnd :晶元參考 0 電位(地)。
*di :資料訊號輸入,選擇通道控制。
*do :資料訊號輸出,轉換資料輸出。
*clk :晶元時鐘輸入。
*vcc/ref :電源輸入及參考電壓輸入(復用)。
*/#include
#define uchar unsigned char
#define uint unsigned int
sbit key1=p1^4; /* 報警值設定位選擇器 */
sbit key2=p1^5;/* 報警值加一 */
sbit key3=p1^6; /* 報警值減一*/
sbit key4=p1^7; /* 報警功能開關鍵*/
sbit led1=p2^0; /* 報警指示燈led1*/
sbit led2=p2^1; /* 報警指示燈led2*/
sbit beep=p2^2; /* 蜂鳴器報警*/
sbit adc_cs=p1^0; /* adc使能管腳 */
sbit adc_clk=p1^1; /* adc時鐘訊號管腳 */
sbit adc_io=p1^2; /* adc輸入輸出管腳*/
void lcd1602_delay1ms(uint c); //誤差 0us
void lcdwritecom(uchar com); /*lcd1602寫入8位命令子函式*/
void lcdwritedata(uchar dat); /*lcd1602寫入8位資料子函式*/
void lcdinit();/*lcd1602初始化子程式*/
unsigned char *buff=" max value :";
unsigned int set_value=100; /* 報警值預設設定為100 ,三位數字*/
unsigned int adc_value=0;
unsigned char key_scan() /* 按鍵掃瞄函式 */
}while((key1 ==0)||(key2 ==0)||(key3 ==0)||(key4 ==0));
return key_num; //將讀取到鍵值的值返回
}void all_init(void)
case 2:
case 1:
case 2:
default:break;
}key_num=0;
break;
} case 3:
case 1:
case 2:
default:break;
} key_num=0;
break;
} case 4:
default:break;
}set_value=set_value_ hundreds*100+set_value_ decade*10+set_value_ single;
lcdwritecom(0x80+sizeof(buff));
lcdwritedata(set_value/100); /* 寫入百位 */
lcdwritedata((set_value%100)/10); /* 寫入十位 */
lcdwritedata(set_value%10);/* 寫入個位 */
if(beep_on_off==1)
else
}else}}
基於AT89C52和MQ 2的煙霧報警器設計
摘要 介紹了一種基於at89c52 微控制器和mq 2 型半導體電阻式煙霧感測器的煙霧報警器設計。該煙霧報警器具有聲光報警 濃度顯示以及與上位機串列埠通訊等功能。其結構簡單,低廉,效能穩定,具有較好的實用價值。隨著社會高速發展,火災對於人類的生產生活造成了巨大的危害。煙霧報警器是用來監測環境中煙霧的...
基於51微控制器的火災報警器
1.系統功能 火災報警器,主要檢測溫度和煙霧,再通過微控制器控制相應的報警和驅動負載。通過液晶顯示當前的煙霧值和溫度值,通過按鍵設定相應的閥值。主要包括以下幾項功能 1 火情探測功能 為了提高火災報警的準確性和及時性,火災報警系統需要使用各種方法進行火災探測。在實際使用中,根據不同的防火場所,使用者...
微控制器自動水滿報警器
摘 要 i abstract 1 引言 1 2電路原理圖 1 3工作原理 1 4 元件引數選擇 2 5 pcb設計流程 2 6 pcb板的3d顯示 4 7安裝與除錯 4 7.1 理論分析 4 7.2 實際除錯過程 6 8 結論 6 參考文獻 6 致 謝 9 自動水滿報警器 摘 要自動水滿報警器是當今...