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

正文內(nèi)容

智能電風扇畢業(yè)論文--基于單片機的智能落地電風扇的設計-所有專業(yè)(編輯修改稿)

2025-02-24 12:19 本頁面
 

【文章內(nèi)容簡介】 所示。 從軟件層角度來說,就是根據(jù)前一刻的風扇狀態(tài)以及用戶的輸入來確定當前時刻所要輸出的風類型和風速。 從軟件驅(qū)動層角度來說,就是根據(jù)軟件層確定的當前時刻風類型和風速量化所要輸出的風速值。 從硬件驅(qū)動層角度來說,對于風速轉(zhuǎn)速的控制,最終是 1 根線的選通以線上可控硅導中斷入口 保護現(xiàn)場SETB 24H, 0 ?01?n ?100?N ?00,26 ?H 中斷返回 回復現(xiàn)場 還原初始化數(shù)據(jù) 開 F a n l 及其顯示,CLR 24H,0 關(guān) F a n l及其顯示 通時間的控制,也就是說,將軟件驅(qū)動層量化出的風速值。轉(zhuǎn)換成 1 根線的選通以及選通的線上可控硅的導通時間。 人機接口 本部分功能主要便于用戶使用電風扇,使用戶只 要簡單的操作,就能實現(xiàn)需要的全部功能,主要有以下幾個方面組成: 鍵盤操作模塊 在電風扇底座部分也有一個 2*3 小鍵盤,按鍵功能分配如圖 所示: 圖 523 風扇控制面板示意圖 可以進行風的強度,類型,定時等系統(tǒng)設置。與之對應的是鍵盤掃描處理模塊?;舅枷肴缦拢? 如果有按鍵按下,中斷處理子程序首先進行掃描按鍵,得到對應的正確的鍵盤掃描碼,然后根據(jù)鍵盤掃描碼得到對應的按鍵號,置有按鍵標志,并將按鍵號保持在全局變量中。系統(tǒng)不停的判斷有按鍵標志,如果沒有則跳過,如果有按鍵按下,則進 行響應的按鍵處理,同時實時的在 LED 上顯示,并將最終結(jié)果反饋到系統(tǒng)各部分。 對應的鍵盤處理過程的軟件流程圖如圖 424 所示。 風型 風強 定時 搖頭 增加 減小 圖 424 鍵盤處理過程的軟件流程圖 不等 不等 不等 相等 相等 相等 相等 相等 標志位處理程序 鍵值與( 01H)比較 鍵值與( 02H)比較 鍵值與( 03H)比較 鍵值與( 04H)比較 鍵值與( 05H)比較 其它鍵不處理 處理 K5 子程序 處理 K4 子程序 處理 K3 子程序 處理 K2 子程序 處理 K1 子程序 返回主程序 清處標志位 No No Yes Yes 開始初始化 主程序 延時 10s 進入待機模式 有鍵閉合時進入中斷系統(tǒng) 鍵盤中斷處理程序 讀列線有鍵閉合 讀行線有鍵閉合 延時消抖動 取按鍵編號 存鍵值 發(fā)送 RET1 紅外收 /發(fā)模塊 紅外發(fā)射程序流程圖如圖 524 所示。 圖 424 紅外發(fā)射程序流程圖 紅外接收軟件使用輸入捕捉中斷處理紅外遙控信號,根據(jù)不同的紅外編碼,可以完成調(diào)節(jié)風速,風型,時間,照明等功能。 紅外中斷服務程序流程圖 如圖 425所示。 圖 425紅外中斷服務程序流程圖 N N N Y Y Y 中斷開始 從端口讀一位 讀取數(shù)據(jù)完成 保存到數(shù)據(jù)字中 中斷結(jié)束 檢驗正確 檢驗正確 復位、清空數(shù)據(jù)字 置位結(jié)束標志 附錄:程序清單 typedef unsigned char byte。 typedef unsigned int word。 //以下管腳配置 //ds18b20 部分 sbit DQ =P3^4。 //顯示部分 sbit DB=P2^0。 sbit CP=P2^1。 //發(fā)光顯示部分 sbit LED_dingshi=P0^0。 sbit LED_shoudong =P0^1。 sbit LED_zidong=P0^2。 sbit LED_kuai =P0^3。 sbit LED_zhong =P0^4。 sbit LED_man =P0^5。 //鍵盤定義部分 define wujian 0x3f sbit KEY1=P1^0 。 //狀態(tài)轉(zhuǎn)換 /啟動 sbit KEY2=P1^1 。 //+10 / 1 sbit KEY3=P1^2 。 //10 / 2 sbit KEY4=P1^3 。 // 3 sbit KEY5=P1^4 。 // 0 確定 //繼電器控制部分 sbit JDQ1=P2^4。 //0 表示開通, 1 表示關(guān)斷 sbit JDQ2=P2^5。 sbit JDQ3=P2^6。 //蜂鳴器部分 sbit call=P2^7。 //低電平鳴叫 include include extern void delay(word useconds) { for(。useconds0。useconds)。 } static byte ow_reset(void) { byte presence。 EA=0。 DQ = 0。 // pull DQ line low delay(45)。 // leave it low for 480us //551us DQ = 1。 // allow line to return high delay(4)。// wait for presence //61us presence = DQ。 // get presence signal delay(40)。 // wait for end of timeslot //491us EA=1。 return(presence)。 // presence signal returned } // 0=presence, 1 = no part static byte read_byte(void) { byte i。 byte value = 0。 EA=0。 for (i=8。i0。i) { value=1。 DQ = 0。 // pull DQ low to start timeslot DQ = 1。 // then return high {unsigned char i。 for(i=0。i2。i++)。}//11us if(DQ)value|=0x80。 delay(6)。// wait for rest of timeslot } EA=1。 return(value)。 } static void write_byte(char val) { byte i。 EA=0。 for (i=8。 i0。 i) // writes byte, one bit at a time { DQ = 0。 // pull DQ low to start timeslot DQ=0。 DQ = valamp。0x01。 //6US delay(5)。// hold value for remainder of timeslot //74us DQ = 1。 val=val1。 } EA=1。 delay(5)。 } word Read_Temperature(void) { union{ byte c[2]。 word x。 }temp。 ow_reset()。 write_byte(0xCC)。 // Skip ROM write_byte(0xBE)。 // Read Scratch Pad [1]=read_byte()。 [0]=read_byte()。 ow_reset()。 write_byte(0xCC)。 //Skip ROM write_byte(0x44)。 // Start Conversion return 。 } extern byte Real_Tem(void) { word wen。 wen=Read_Temperature()。 return((wen4)amp。0x00ff)。 } include include //數(shù)據(jù)區(qū) define time_default 41 byte dingshi_time=time_default。//存放定時時間 39。39。39。39。39。39。 bit flag_dingshi=0。 //0 表示沒有定時 word dingshi_jishu3=1000。//1000*60=1 分鐘 // bit flag_dingshi_delay=0。//1 表示有 byte dingshi_delay=100。 // define hwx_delay_const 3 //人體感應延時時間 byte hwx_delay=
點擊復制文檔內(nèi)容
教學課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1