freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于at89c51的氣體濃度測(cè)量顯示及報(bào)警系統(tǒng)課程設(shè)計(jì)(編輯修改稿)

2024-09-30 17:35 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 圖 8電路總體設(shè)計(jì)模塊圖 主機(jī) 選用 單片機(jī) AT89C51 來實(shí)現(xiàn),利用單片機(jī)軟件編程靈活、自由度大的特點(diǎn),力求用軟件完善各種控 制 。本系統(tǒng)選用的 AT89C51 芯片時(shí)鐘 為 12MHz,運(yùn)算速度快,控制功能完善 ;選用氣體傳感器 MQ5來實(shí)現(xiàn)氣體濃度的采集;選用 ADC0808 來實(shí)現(xiàn)模 擬量與數(shù)字量的轉(zhuǎn)換;選用 LCD1602 來實(shí)現(xiàn)氣體濃度的顯示;選用蜂鳴器和 LED 燈來 實(shí)現(xiàn)報(bào)警。 數(shù)據(jù)采集 模塊 的設(shè)計(jì) 數(shù)據(jù) 采集 電路主要由 氣體傳感器 MQ5和滑動(dòng)變阻器 組成。 由 MQ5感測(cè)空氣中的有害氣體濃度的 變化,經(jīng)過其內(nèi)部器件處理將氣體濃度這個(gè)模擬信號(hào)轉(zhuǎn)換成對(duì)應(yīng)的電信號(hào), MQ5 輸出的電信號(hào)通過滑動(dòng)變阻器的調(diào)節(jié)改變進(jìn)入 ADC0808 的電信號(hào)值。數(shù)據(jù)采集模塊如圖 9 所示。 AT89C51控制實(shí)現(xiàn)報(bào)警與顯示 氣體傳感 器采集氣 體濃度值 ADC0808 將模擬量轉(zhuǎn)換為數(shù)字量 LCD1602顯示 LED 燈顯示,蜂鳴器報(bào)警 哈爾濱商業(yè)大學(xué)課程設(shè)計(jì) 10 圖 9 數(shù)據(jù)采集 電路 的設(shè)計(jì) 外部的模擬信號(hào)量需要轉(zhuǎn)變成數(shù)字量才能進(jìn)一步的由 單片機(jī)進(jìn)行處理。 ADC0808可以非常方便的處理輸入的模擬信號(hào)量。 ADC通過逐次比較( successive approximation)方式,將輸入端的模擬電壓轉(zhuǎn)換成 8位的數(shù)字量。 數(shù)據(jù)轉(zhuǎn)換模塊如圖10所示。 圖 10 數(shù)據(jù)轉(zhuǎn)換模塊 while(1) { ST = 0。 delay1ms(1)。 ST = 1。 delay1ms(1)。 ST = 0。//寄存器 SAR 復(fù)位,啟動(dòng) ADC0809 while(1) { 哈爾濱商業(yè)大學(xué)課程設(shè)計(jì) 11 if(EOC == 1)//ADC0808 轉(zhuǎn)換結(jié)束后改引腳為高低平 { OE = 1。//輸出允許信號(hào)為 1時(shí)表示把 ADC0808 采集的數(shù)據(jù)輸出 getdata=P0。//把采集到的數(shù)據(jù)送到 P0口處理 OE = 0。//又打開 ADC0808 讓繼續(xù)開始轉(zhuǎn)換 } } } 顯示 及報(bào)警 模塊 的設(shè)計(jì) 經(jīng)由單片機(jī)處理后的數(shù)字量通過 LCD1602 進(jìn)行顯示當(dāng)前的氣體濃度值,同時(shí)如果當(dāng)前的氣體濃度對(duì)人體無害,則綠燈亮;如果當(dāng)前的氣體濃度對(duì)人體有害,則紅燈亮同時(shí)蜂鳴器報(bào)警。 顯示及報(bào)警模塊如圖 11所示 。 圖 11 顯示及 報(bào)警模塊 void init_play()//初始化顯示 { lcd_init()。 wr_(0x80)。//第 1行第一列 display(str1)。 //顯示 Consentration 哈爾濱商業(yè)大學(xué)課程設(shè)計(jì) 12 wr_(0xc0)。 //第二行第一列 display(str2)。 //顯示空格 wr_(0xc9)。 //第二行第九列 display(str3)。//顯示 ppm } void show_Concentration()//濃度值顯示 { disdata[0]=con/1000+0x30。 //千位 數(shù) disdata[1]=con%1000/100+0x30。//百位數(shù) disdata[2]=con%100/10+0x30。//十位數(shù) disdata[3]=con%10+0x30。//個(gè)位數(shù) if(disdata[0]==0x30) disdata[0]=0x20。//如果千位為 0,不顯示 if(disdata[1]==0x30) disdata[1]=0x20。//如果千位為 0,百位為 0 也不顯示 if(disdata[2]==0x30) disdata[2]=0x20。//如果千位為 0,百位為 0,十 位為 0 也不顯示 wr_(0xc3)。 wr_dat(disdata[0])。//顯示千位 wr_(0xc4)。 wr_dat(disdata[1])。//顯示百位 wr_(0xc5)。 wr_dat(disdata[2])。//顯示十位 wr_(0xc6)。 wr_dat(disdata[3])。//顯示個(gè)位 } show_Concentration()。//LCD1602 顯示 if(con 320)//如果采集到的濃度小于 320 不報(bào)警 { G_LED=0。 R_LED=1。 SPK=1。 } 哈爾濱商業(yè)大學(xué)課程設(shè)計(jì) 13 else //如果濃度大于 320 則聲光報(bào)警 { G_LED=1。 R_LED=0。 SPK=0。 } break。//跳出繼續(xù)進(jìn)行 ADC0808 的采集 系統(tǒng) 的軟件設(shè)計(jì) 系統(tǒng)的軟件設(shè)計(jì) 系統(tǒng)的軟件由主程序模塊、 數(shù)據(jù)采集 模塊和 顯示 報(bào)警 模塊三大模塊組成 。在主程序中首先給定參數(shù)值,然后通過 啟動(dòng) AD轉(zhuǎn)換 循環(huán)顯示當(dāng)前 電壓 。 4,2 編程環(huán)境 KeilC51 KeilC51 是一種專為 8051 單片機(jī)設(shè)計(jì)的高級(jí)語言 C編譯器,支持符合 ANSI 標(biāo)準(zhǔn)的 C 語言程序設(shè)計(jì),同時(shí)針對(duì) 8051 單片機(jī)自身特點(diǎn)作了一些特殊擴(kuò)展。 C 語言對(duì)語法的限制不太嚴(yán)格 ,用戶在編寫程序時(shí)有較大的空間,但它畢竟還是一種程序設(shè)計(jì)語言,與其他計(jì)算機(jī)語言一樣,采用 C語言進(jìn)行程序設(shè)計(jì)時(shí),仍需要遵從一定的語法規(guī)則。 KeilC51 編譯器支持標(biāo)準(zhǔn) C 語言的數(shù)據(jù)類型,另外還根據(jù) 8051 單片機(jī)的特點(diǎn)擴(kuò)展了 bit、 sbit、 sfr、 sfr16 數(shù)據(jù)類型。 KeilC51 編譯器支持兩種指針類型:一般指針和基于存儲(chǔ)器的指針。一般指針需要占 3 個(gè)字節(jié),基于存儲(chǔ)器的指針只需要 1~2 個(gè)字節(jié)。一般指針具有良好的兼容性但運(yùn)行速度較慢,基于存儲(chǔ)器的指 針是 C51 編譯器專門針對(duì) 8051 單片機(jī)存儲(chǔ)器特點(diǎn)進(jìn)行的擴(kuò)展,它只適用于 8051 單片機(jī),但具有較高的運(yùn)行速度。 軟件流程框圖 哈爾濱商業(yè)大學(xué)課程設(shè)計(jì) 14 N N Y N Y 圖 12 軟件流程圖 初始化 啟動(dòng) A/D轉(zhuǎn)換 轉(zhuǎn)換完成? 結(jié)束 濃度是否超過320ppm 開始 LCD1602顯示 綠燈亮 紅燈亮,蜂鳴器報(bào)警 哈爾濱商業(yè)大學(xué)課程設(shè)計(jì) 15 系統(tǒng)程序 ( 1)主程序 void main()//主函數(shù) { Init()。//定時(shí)器
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1