單片機綜合應用舉例_第1頁
單片機綜合應用舉例_第2頁
單片機綜合應用舉例_第3頁
單片機綜合應用舉例_第4頁
單片機綜合應用舉例_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、存儲器擴展示例 MCS-51單片機:有片內(nèi)程序存儲器(4KB64KB) 片內(nèi)ROM不夠用時須擴展外部存儲器 8031單片機:無片內(nèi)程序存儲器,必需使用外部擴展外部數(shù)據(jù)存儲芯片X5045 多功能芯片:上電復位、看門狗、EEPROM CS/WDI:片選/看門狗線 SI/SO:數(shù)據(jù)輸入/輸出線 SCK:時鐘線 WP寫保護外部數(shù)據(jù)存儲芯片AT24系列 I2C總線結構(串行EEPROM) WC寫保護,SDA、SCL與單片機I/O相連,通過軟件程序模擬I2C時序應用示例 單片機控制的多路搶答器單片機控制的多路搶答器 單片機控制的洗衣機搶答器基本介紹搶答器基本介紹l 按鍵搶答,LED數(shù)碼顯示,聲音提示,定時

2、(搶答)時間設定,倒計時顯示,按鍵清除l專用LED驅(qū)動芯片MAX7219l硬件電路分為:數(shù)碼管顯示電路聲音提示電路鍵盤電路設置電路單片機電路硬件電路介紹 數(shù)碼管顯示 一片MAX7219和3個數(shù)碼管(共陰極) MAX7219的DIN、CLK、LOAD分別與單片機的P2.4,P2.2,P2.3相連 U5用來顯示按鍵者的編號,U6、U7在倒計時時顯示還有多長時間,如果有犯規(guī),則顯示FF硬件電路介紹 時間設定電路 撥碼開關U3作為倒計時的選擇信號 撥碼開關U3有4個開關,分別與單片機的P3.7,P3.6,P3.5,P3.4相連,倒計時時間分別為10s,8s,6s,4s 設置時間時,P3.7優(yōu)先級最高,

3、P3.4優(yōu)先級最低硬件電路介紹 按鍵電路 獨立式按鍵連接。Key1-4為搶答鍵,Key5為主持按鍵 聲音提示電路 由蜂鳴器和三極管組成。在特定的條件下發(fā)出蜂鳴聲 單片機電路 通過讀取P3.7-3.3決定倒計時時間;讀取P1.3-1.0決定按鍵狀況;通過P2.4-2.2控制顯示模塊;通過P0.1控制蜂鳴器程序設計 主持人通過撥碼開關選定倒計時時間 有參與者在規(guī)定時間內(nèi)按鍵,則蜂鳴器響一聲,數(shù)碼管顯示按鍵編號 如果主持人未按下?lián)尨疰I,有參與者按下自己的按鍵,則蜂鳴器響,U5顯示犯規(guī)編號,U6、U7顯示“FF” 規(guī)定時間內(nèi)無人按鍵,倒計時清零 一次搶答完畢,主持人按鍵,顯示清零,恢復初始狀態(tài)程序設計

4、 模塊化編程 按鍵掃描程序模塊 掃描鍵盤,讀取按鍵值。判斷主持人按鍵是否啟動,是否有參與者按鍵及相應的按鍵處理 顯示程序模塊 報警程序模塊:控制蜂鳴器發(fā)聲 主程序 調(diào)用相關子程序?qū)崿F(xiàn)系統(tǒng)初始化、鍵盤掃描、信息顯示等開始讀取倒計時時間設置開始搶答有鍵按下按鍵處理結束本輪搶答倒計時時間到超時處理犯規(guī)處理有鍵按下YYYNNYNYN1.顯示程序void delay_20ms(void) /延時20msvoid max7219_reset(void) /初始化MAX7219void write_reg(uchar reg,uchar sdata)/寫入命令void write_digit(uchar d

5、igit,uchar number) /顯示數(shù)字void send_data(uchar byte) /MAX7219的驅(qū)動程序void display_time(void)/顯示倒計時剩余時間2.按鍵掃描程序bit control_key(void)/檢測主持人是否按鍵if(KEY5=1)/如果KEY5為高說明沒有按鍵 return 1;/返回1,表示沒有按鍵動作else/如果KEY5為低說明可能有按鍵動作 delay_20ms();/延時20ms,去抖動if(KEY5=1)/如果20ms后KEY5變?yōu)楦唠娖绞歉蓴_ return 1;/返回1else/如果20ms后仍為低電平確認有按鍵動作

6、return 0;/返回0子程序get_key_num()用于檢測是否有參賽者按動答題按鍵。程序代碼如下: uchar get_key_num()/檢測哪個參賽者按鍵uchar key_state=0;key_state=P1;key_state&=0 x0f;/讀取P1口的低四位if(key_state=0 x0f)/若均為高電平,說明無人按鍵return 0;/返回1elsekey_state=0 xff;if(key_state&0 x01) return 1;/如果KEY1被按下,返回1 else if(key_state&0 x02) return 2;/如果

7、KEY2被按下,返回2else if(key_state&0 x04) return 3;/如果KEY3被按下,返回3else return 4;/如果KEY4被按下,返回4子程序key_handle()用于對答題按鍵進行處理。程序代碼如下:void key_handle(uchar key_number)/按鍵處理write_digit(DIGIT0,key_number);/顯示按鍵者號碼buz_on();應用示例 單片機控制的多路搶答器 單片機控制的洗衣機單片機控制的洗衣機硬件設計介紹 水位檢測模塊 通過水位浮子檢測水位,在特定時刻通過連接的INT1引腳向CPU發(fā)出中斷請求 電機控制模塊 一端連接P1.0,控制正轉(zhuǎn),一端連P1.1,控制反轉(zhuǎn) 電控水龍頭,一只連P3.0控制進水,一只P3.1出水 顯示按鍵模塊 LED顯示2個,P0控制顯示高位,P2控制顯示低位 4個按鍵(2*2矩陣式),通過INT0申請中斷 P1.2控制蜂鳴器程序設計 由單片機控制進水閥的開關完成進水 由單片機控制電機正轉(zhuǎn)/反轉(zhuǎn)來完成洗滌 由單片機控制排水閥的開關完成排水 由單片機控制電機的高速旋轉(zhuǎn)完成脫水系統(tǒng)初始化按下啟動鍵計算每次洗衣時間打開進水閥門水放滿關閉進水閥門啟動電機轉(zhuǎn)動定時時間到NY

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論