




已閱讀5頁,還剩31頁未讀, 繼續免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
本 科 生 畢 業 論 文 學 院 電信學院 專 業 電子信息工程 屆 別 2010 屆畢業生 題 目 電磁爐控制系統單片機模擬 學生姓名 學 號 指導教師 教 務 處 制 電磁爐控制系統單片機模擬 1 目 錄 引言 3 加熱原理 3 工作過程 3 電磁爐的智能控制部件 單片機 3 電磁爐設計要求 3 AT89C51 單片機設計端口定義 4 1MCS-51 單片機概述 5 1.1AT89C51 主要特性 5 1.2AT89C51 最小應用系統 5 1.3MCS-51 內部結構 6 1.4AT89C51 管腳圖 6 1.5 管腳功能 6 電磁爐內部模塊 7 2.1 電源 電路模 塊 7 2.1.1 主電源電路 7 2.1.2 副電源 7 2.1.3 穩壓電路 7 2.2 控制模塊 7 2.2.1 PWM 脈寬 調制 輸出電路 7 2.2.2 鍵盤模塊 11 2.2.3 多路開關狀態指示 14 2.2.4 定時模塊 15 2.2.5 LED 顯示模塊 17 2.3 檢測模塊 22 2.3.1 A/D、 D/A 轉換模塊 23 2.3.2 過壓、欠壓檢測模塊 23 2.3.3 過流檢測模塊 23 2.3.4 溫度檢測模塊 24 2.3.5 鍋檢測與小物件檢測模塊 24 2.3.6 加熱開關控制 25 2.3.7 蜂鳴器驅動電路 25 2.3.8 風扇模塊 27 3 單片機軟件編程及調試 27 3.1 單片機語言集成開發平臺 27 3.1.1u Vision2 集成開發環境 27 3.1.2Keil C51 開發單片機應用程序的步驟 28 結論 28 致謝 28 參考文獻 29 附表 1 單 片機指令 30 附表 2 LED 字型碼表 35 電磁爐控制系統單片機模擬 2 電磁爐控制系統單片機模擬 摘要: 本文研究的 電磁爐控制核心部件是 AT89C51 單片機,將預先編好指令信息輸入單片機內部 ROM 后,在工作狀態下,電磁爐就能智能的去完成管理和控制工作。本文介紹了電磁爐的工作原理、設計要求,并提出用 AT89C51單片機來設計電磁爐,詳細介紹電磁爐中某些模塊的設計。主要介紹了風鍵盤掃描,顯示面板控制,功率控制,溫度控制,風扇、蜂鳴器控制, 定時控制等設計。 關鍵詞 :電磁爐,單片機,控制 前言 隨著人類文明的發展,家用電器越來越多的進入人們的生活中,特別是近幾年單片機的出現更是使得家電得以突飛猛進的發展。電磁爐是現代家庭烹飪食物的先進電子炊具,不但使用起來非常方便、快捷,可用來進行煮、炸、煎、蒸、炒等各種烹調操作 ,而且還安全清潔,因此受到人們的親咪。 加熱原理: 變壓器有一個缺點就是鐵芯在磁場感應中會產生渦流,而渦流流動需要克服鐵芯的內阻,于是鐵芯便會發熱,從而影響變壓器的效率。恰恰相反,電磁爐就是引用這一原理對食品進行加熱的。它利用高頻 的電流通過環形線圈,從而產生無數封閉磁場力,當磁場那磁力線通過鍋的底部,既會產生無數小渦流,使鍋體本生自行高速發熱,然后再加熱鍋內食物。 工作過程: 電流電壓經過整流器轉換為直流電,又經高頻電力轉換裝置使直流電變為超過音頻的高頻交流電,將高頻交流電加在扁平空心螺旋狀的感應加熱線圈上,由此產生高頻交變磁場。其磁力線穿透灶臺的陶瓷臺板而作用于金屬鍋。在烹飪鍋體內因電磁感應就有強大的渦流產生。渦流克服鍋體的內阻流動時完成電能向熱能的轉換,所產生的焦耳熱就是烹調的熱源。 電磁爐的智能控制部件 單片機: 隨著微型計 算機的發展,特別是單片機的誕生,使得各種家用電器的品質有了極大的改變,實現了智能化的控制。電磁爐的 MCU 采用 AT89C51 芯片,在外圍電路的組合下,將預先編好的程序寫入 AT89C51 單片機的程序存儲器中,在工作模式下,單片機就會執行相應的指令,從而使電磁爐完成相應的控制。 電磁爐設計要求: 用 AT89C51單片機設計電磁爐所具有的性能 : 1、定溫加熱:在保溫 70至 260之間,共分為六檔火力選擇(燒烤、煎炸、蒸煮、火鍋、炒菜、爆炒),每檔都能都能達到精確定溫;自動烹調功能,滿足各種烹飪需要;一種保溫模式:文火:一種自動工作模式:燒水。 2、火力選擇:功率從 300W 2100W 的范圍內,共分為 14 檔火力,每檔均有穩定的功率,手動定溫選擇,實現快速調節火力。 3、時間預約:可以實現 1720 分鐘預約開機功能, 1180 分鐘的定時關機功能。 4、多種保護措施:系統采用過流檢測保護電路、過壓檢測保護電路、過溫檢測保護電路等多種保護措施; 電磁爐控制系統單片機模擬 3 5、 鍋具自動識別:當爐面無鍋或使用非鐵磁材料鍋具時,電磁爐自動識別,不予加熱。 6、 小物自動識別:當湯匙等小件物品放置于灶具上時,電磁爐自動識別,不予加熱。 7、 空燒防止 :使用中若持續二小時內未有按鍵動作,電磁爐自動判別為使用者遺忘,自動關機防止事故。 8、散熱功能:開機啟動同時啟動風扇,關閉電源后風扇繼續工作大約一分鐘左右,保護電磁爐內部電路過熱損壞, 9、報警電路:系統設置了故障報警功能,方便故障查找及檢修; 系統含有自檢程序,方便生產測試。 10、采用開關電源,使系統能夠在 180250V的電壓范圍內正常工作; AT89C51 單片機設計端口定義: P0.0 接顯示模塊 LED字段 P0.1 接顯示模塊 LED字段 P0.2 接顯示模塊 LED字段 P0.3 接顯示模塊 LED字段 P0.4 接顯示模塊 LED字段 P0.5 接顯示模塊 LED字段 P0.6 接顯示模塊 LED字段 P0.7 接多路開關指示電路的發光二極管(對應查詢式接口鍵盤的某個按鍵,當某個按鍵按下時,單片機輸出高電平,對應的發光二極管發光) P1.0 接 4*4掃描鍵盤接口 P1.1 接 4*4掃描鍵盤接口 P1.2 接 4*4掃描鍵盤接口 P1.3 接 4*4掃描鍵盤接口 P1.4 接 4*4掃描鍵盤接口 P1.5 接 4*4掃描鍵盤接口 P1.6 接 4*4掃描鍵盤接口 P1.7 接 4*4掃描鍵盤接口 P2.0 接 LED模塊模塊的公共端 P2.1 接 LED模塊模塊的公共端 P2.2 接 LED模塊模塊的公共端 P2.3 接 LED模塊模塊的公共端 P2.4 接多路開關指示電路的發光二極管(對應查詢式接口鍵盤的某個按鍵,當某個按鍵按下時,單片機輸出高電平,對應的發光二極管發光) P2.5 接多路開關指示電路的發光二極管(對應查詢式接口鍵盤的某個按鍵,當某個按鍵按下時,單片機輸出高電平,對應的發光二極管發光) P2.6 接多路開關指示電 路的發光二極管(對應查詢式接口鍵盤的某個按鍵,當某個按鍵按下時,片機輸出高電平,對應的發光二極管發光) P2.7 接多路開關指示電路的發光二極管(對應查詢式接口鍵盤的某個按鍵,當某個按鍵按下時,單片機輸出高電平,對應的發光二極管發光) P3.0 接蜂鳴器驅動電路。 P3.1 接過壓、欠壓模塊檢測。 P3.2 接多路開關指示電路的發光二極管(對應查詢式接口鍵盤的某個按鍵,當某個按鍵按下時,單片機輸出高電平,對應的發光二極管發光) P3.3 接 4*4中斷式查詢按鍵模塊公共段 P3.4 接溫度檢測電 路(檢測電路檢測到溫度過高時,將其轉換為高電平輸入單片機,單片機做出相應控制) P3.5 接鍋檢測電路。(檢測電路通過檢測電路的電流變化可以判斷無鍋時,或不合適加熱物件的將其轉換為高電平輸入單片機,單片機控制切斷加熱電源) P3.6 接電流檢測電路。(檢測電路檢測到電流過高時,將其信后轉換為高電平輸入單片機,單片機做出相應控制) P3.7 接加熱控制開關,當輸出低電平時電磁爐停止加熱,當輸出高電平時電磁爐加熱。 XTAL1 時鐘引腳 1 電磁爐控制系統單片機模擬 4 XTAL2 時鐘引腳 2 RST 復位電路 GND 接地 VCC 接 +5V電源 EA/VPP ALE/PROG PESN 1 MCS-51 單片機概述 單片機【 MCU( Micro Controller Unit)】也被稱為“微控制器”、“嵌入式控制器”,是在一個集成芯片中,集成有微處理器( CPU)、存儲器( RAM 和 ROM)、基本 I/O 接口以及定時 /計數部件,即在一個芯片上實現一臺微型計算機的基本功能,對于簡單控制對象,只需要單片機作為控制核心,不需要增加別的外部設備和擴展某些 I/O 接口就能實現。對于復雜的系統,單片機的應用和 I/O接口擴展也很方便。 1.1 AT89C51單片機主要特性 與 MCS-51 兼容 4K/8K字節可編程閃爍存儲器 全靜態工作: 0Hz-24Hz 三級程序存儲器鎖定 128*8位內部 RAM 32可編程 I/O線 兩個 16位定時器 /計數器 5個中斷源 可編程串行通道 低功耗的閑置和掉電模式 片內振蕩器和時鐘電路 1.2 AT89C51單片機最小應用系統 1.3 AT89C51單片機內部結構 電磁爐控制系統單片機模擬 5 1.4 AT89C51管腳圖 1.5 管腳功能 電源管腳: VCC(40腳 ):接 5V; VSS( 20 腳):接地; 時鐘信號腳: XTAL1(19腳 ):外部時鐘信號腳; XTAL2(18腳 ):外部時鐘信號腳; 控制線: RST/V pd(9 腳 ):當作 RST 使用時,為復位輸入端;當作為 V pd 使用時,當 VCC 掉電下,可作備用電源。 V pp( 31 腳):為訪問內部或外部程序儲存器的選擇號。對片內 RPROM 編程時, V pp MCS-51單片機的管腳接入 21V 編程電壓。 ALE/( 30腳):當訪問外部儲存器時, ALE信號的負跳變將 P0 口上的低 8位送入地址鎖存器,不訪問 外部儲存器時, ALE 端仍以固定的振蕩頻率的 1/6 速率輸出正脈沖信號。當對片內 EPROM編程時,該管腳 PROG 用于輸入編程脈沖。 電磁爐控制系統單片機模擬 6 輸入 /輸出口線: P0( 32 39 腳),既可接地址鎖存器作低 8位地址 I/O 使用也可以作數據 I/O使用。能驅動 8個 LSTTL負載。 P1( 1 8腳):具有內部上位電阻的 8位準雙向 I/O,可驅動 4個 LSTTL 負載。 P2( 21 28腳): 8位具有內部上位電阻的準雙向 I/O,在接收外部存儲器時, P2作為地址高8位。能驅動 4個 LSTTL負載。 P3( 10 17 腳): 8位具有內部上位電 阻的準雙向 I/O,其每一位又有特殊功能 . P3口特殊功能: P3 端口 對應特殊功能引腳 實現功能 P3.0 RXD 串行口輸入端。 P3.1 TXD 串行口輸出端 P3.2 INTO 外部中斷 0輸入端,低電平有效 P3.3 INT1 外部中斷 1輸入端,低電平有效。 P3.4 T0 定時 /計數器 0外部事件計數輸入端。 P3.5 T1 定時 /計數器 1外部事件計數輸入端。 P3.6 WR 外部數據存儲器寫選通信號,低電平有效。 P3.7 RD 外部數據存儲器讀選通信號,低電平有效。 電 磁爐內部模塊 2.1 電路模塊 2.1.1主電源電路 電源電路 PWM電路 A/D 轉換 鍵盤模塊 LED 模塊 過壓、欠壓檢測 鍋、小物件檢測 溫度檢測 報警電路 風扇電路 AT89C51 單片 機 電磁爐控制系統單片機模擬 7 交流電 200V 經過前端濾波處理,通過通過橋型整流,變成 310V 左右的直流電,通過 MCU 控制IGB T 功率管的導通和關閉來控制電磁爐加熱線圈的工作狀態。 2.1.2 副電源 開關電源提供有 +5V, +18V 兩種穩壓回路,其中橋式整流后的 +18V 供 IGBT 的驅動回路,同步比較 IC LM339和風扇驅動回路使用,由三端穩壓電路穩壓后的 +5V供主控 MCU使用。 2.1.3穩壓電路 2.2控制模塊 2.2.1 PWM脈寬 調制 輸出電路 ( 1) PWM脈寬調制電路原理 T89C51單片機通過控制 PWM 脈沖的寬與窄 , 控制送至振蕩電路的加熱功率控制電壓,控制了電磁爐控制系統單片機模擬 8 IGBT導通時間的長短 ,就可以控制了加熱功率的大小。 PWM 是一種對模擬信號電平進行數字編碼的方法。通過高分辨率計數器的使用,方波的占空比被調制用來對一個具 體模擬信號的電平進行編碼。 PWM 信號仍然是數字的,因為在給定的任何時刻,滿幅值的直流供電要么完全有,要么完全無。電壓或電流源是以一種通或斷的重復脈沖序列被加到模擬負載上去的。只要帶寬足夠,任何模擬值都可以使用 PWM 進行編碼。 采用脈寬調制(PWM)方式可以使負載在工作時得到滿電源電壓,這樣有利于克服 IGBT 功率管內在的線圈電阻而使 IGBT功率管產生更大的力矩。 CPU 輸出 PWM 脈沖到由 R30 、 C27 、 R31 組成的積分電路 , PWM 脈沖寬度越寬 ,C28 的電壓越高 ,C29 的電壓也跟著升高 , 送到振蕩電路 (G 點 ) 的控制電壓隨著 C29 的升高而升高 , 而 G 點輸入的電壓越高 , V7 處于 ON 的時間越長 , 電磁爐的加熱功率越大 , 反之越小。 “ CPU 通過控制 PWM 脈沖的寬與窄 , 控制送至振蕩電路 G 的加熱功率控制電壓,控制了 IGBT 導通時間的長短 , 結果控制了加熱功率的大小”。 ( 2)電磁爐功率控制程序 / PWM 控制電磁爐功率大小程序 / 利用定時器 控制產生占空比可變的 PWM 波 / 按 K1(“ -”), PWM 值增加,則占空比減小 ,輸出功率減小。 / 按 K2(“ +” ), PWM 值減小,則占空比增加 ,輸出功率增加。 /*/ 包含文件 /*/ #include #include /*/ 端口定義 /*/ sbit K1 =P10; /增加鍵 sbit K2 =P11 ; /減少鍵 unsigned char PWM=0x7f ; /賦初值 void Beep(); void delayms(unsigned char ms); void delay(unsigned char t); /*/ 主程序 /*/ void main() P1=0xff; TMOD=0x21 ; 電磁爐控制系統單片機模擬 9 TH0=0xfc ; /1ms延時常數 TL0=0x66 ; /頻率調節 TH1=PWM ; /脈寬調節 TL1=0 ; EA=1; ET0=1; ET1=1; TR0=1 ; while(1) do if(PWM!=0xff) PWM+ ;delayms(10); else Beep() ; while(K1=0); do if(PWM!=0x02) PWM- ;delayms(10); else Beep() ; while(K2=0); /*/ / 定時器 0中斷服務程序 . /*/ void timer0() interrupt 1 TR1=0 ; TH0=0xfc ; TL0=0x66 ; TH1=PWM ; TR1=1 ; P0=0x00 ; /啟動輸出 /*/ / 定時器 1中斷服務程序 /*/ void timer1() interrupt 3 TR1=0 ; P0=0xff ; /結束輸出 電磁爐控制系統單片機模擬 10 2.2.2 鍵盤模塊 ( 1)鍵盤接 口方式 鍵盤接口可以分為獨立式鍵盤接口和行列式鍵盤接口,在單片機接口允許的條件下可以采用獨立式按鍵接口,而在按鍵較多的情況下可以采用行列式鍵盤接口。 獨立式鍵盤接口 單鍵盤按鍵較少時最佳的接口方式是獨立式按鍵接法,即每一個 I/O 口上只接一個按鍵,按鍵的另一端接電源或接地。獨立式鍵盤的實現是利用單片機 I/O 口讀取口的電平高低來判斷是否有按鍵按下。按鍵的一端接地,另一端接一個 I/O 口程序開始時將此 I/O 口置于高電平,平時無按鍵按下時 I/O 口保護高電平。當有鍵按下時此 I/O 口與地短路,迫使 I/O 口為低電平,程序 通過查詢此 I/O口的電平狀態就可以判斷是次按鍵是否按下。 獨立式盤接口可分為查詢方式的獨立式按鍵電路(下左圖)和中斷式的獨立按鍵電路(下右圖)。 查詢方式的獨立式按鍵電路 查詢方式的獨立式按鍵電路 行列式按鍵 所謂矩陣式就是說 用 I/O口線組成行、列結構,按鍵設置在行列的交點上。用 3 3的行列結構可構成 9 個鍵的鍵盤, 4 4 行列結構可構成 16 個鍵的鍵盤。因此,在按鍵數量較多時,可以節省 I O口線。 電磁爐控制系統單片機模擬 11 a 逐點掃描法 設 P1 口的低 4 位置為 0,高 4 為置為 1,當無案件時,高位中的高電平會和低位中的低電平短路。此時高位中的高電平會被拉低,即高 4 位中有 0 出現。當單片機讀 P1 口的值不為 F0H時則表示有鍵按下,經過去抖動處理后開始掃描這一個按鍵的位置。先把 P1 的高 4 位置 0,低 4位置 1,下面置低第 1 列線并置高第 1 行,之后再讀第 1 行的電平,為高電平說明為高說明不是第 1 行第 1 列的鍵按下,跳到下一個點 (第 1行第 2列 )的掃描。為低電平則說明第 1 行第 1列的按鍵被按下,并調用相應程序。 b 逐行掃描法 和逐點掃描的方法相似,只是數據的處理以一行的 4 位數據直接處理,也就是先使能第 1 行(置低電平),然后看那一列的數據變成低電平了,如果高四位的數據沒有變成低電平則使能下一行。找到了按鍵所在的行并測出列數據就可以調用相應的處理程序。 c 全局掃描法 全局掃描是先設 P1 的高 4位置 1,低 4位置 0,即 F0H,然后讀取 P1口的數據如果不為 F0H說明有按鍵按下,經過延時去除抖動后讀出 P1 口的值,因為低 4位是 0,無論是否按下都不會影響它,只有高 4位被改變。將數據送入寄存器后再把 P1的狀態反過來,將 P1 的高 4位置 0,低 4位置 1,即 F0H,再讀一次數據。這時高 4 位的值是 0 依 然不變。這樣兩次讀取我們就得到了 2個字節的數據( XXXX0000 和 0000XXXX, X 為讀到的數據),最后我們將這兩個數相或(將兩個半字節數據融合為一個字節),就得到了一個新的字節,用這個字節和我們設定的數據比較來決定按鍵。 (2)電磁爐中的按鍵設置 因為電磁爐設計中共設置啦六種加熱模式,而功率可加可減,預約和定時功能,總開關。共設置啦 11個按鍵。( 5個按鍵為空閑)可以選用行列式按鍵電路( 4*4)共占用 9個 I/O口。 ( 3) 消除抖動 通常所用的按鍵為輕觸機械開關,正常情況下按 鍵的接點是斷開的,當我們按壓按鈕時,由于機械觸點的彈性作用,一個按鍵開關在閉合時不會馬上穩定地接通,在斷開時也不會一下子斷開。因而機械觸點在閉合及斷開的瞬間均伴隨有一連串的抖動,這種抖動一般是在 1020 毫秒之間這種不穩定的抖動時間對人類來說太快了,而對單片機來說則是漫長的,為了提高系統的穩定性必須去除或避開它目前的技術有硬件去除抖動和軟件去除抖動。硬件去除抖動就是用部分電路對抖動部分加以處理, 但實現難度大成本高,我們一般采用軟件去除抖動,實現方法是先查詢按鍵當有 電磁爐控制系統單片機模擬 12 低電平出現時立即延時 10200毫秒以避 開抖動,延時結束后再讀一次 I/O口的值這次的值如果為1表示低電平的時間不到 10200毫秒,視為干擾信后,當讀出的值是 0時則表示有按鍵按下,調用相應的處理程序。 (4) 程序 ORG 0000H TEST: MOV P1,#0F0H ; P1.0 P1.3輸出 0, P1.4 P1.7輸出 1,作輸入位 MOV A,P1 ;讀鍵盤,檢測有無鍵按下 ANL A,#0F0H ; 屏蔽 P1.0 P1.3,檢測 P1.4 P1.是否全為 1 CJNE A, #0F0H,HAVE ; P1.4 P1.7不全為 1,有鍵按下 SJMP TEST ; P1.4 P1.7全為 1,無鍵按下,重檢測鍵盤 HAVE: MOV A,#0FE ;有鍵按下,逐行掃描鍵盤,置掃描初值 NEXT: MOV B,A ;掃描碼暫存于 B MOV P1,A ;輸出掃描碼 READ: MOV A,P1 ;讀鍵盤 ANL A,#0F0H ; 屏蔽 P1.0 P1.3,檢測 P1.4 P1.是否全為 1 CJNE A, 0F0H,YES ; P1.4 P1.7不全為 1,該行有鍵按下 MOV A,B ;被掃行無鍵按下,準備查下一行 RL A ;置下一行掃描碼 CJNE A,#0EFH,NEXT ;未掃到到最后一行循環 YES: ACALL DAY ;延時去抖動 AREAD: MOV A,P1 ;再讀鍵盤 ANL A,#0F0H ;屏蔽 P1.0 P1.3,保留 P1.4 P1.7(列碼 ) MOV R2,A ;暫存列碼 MOV A, B ANL A,#0FH ;取行掃描碼 ORL A,R2 ;行碼、列碼合并為鍵編碼 YES1: MOV B,A ;鍵編碼存于 B LJMP SAM38 ;轉鍵分析處理程序 電磁爐控制系統單片機模擬 13 2.2.3 多路開關狀態指示 在電磁爐的按鍵按下時要求按下的按鍵下的指示燈發光,設計通過在 AT89S51 單片機的(P2.4、 P2.5、 P2.6、 P2.7、 P3.2、 P0.7)接發光二級管,按鍵外查詢時接口按鍵的對應按鍵。 下面是一種簡單的設計電路, P2.0 P1.3 接四個發光二極管 L1 L4, P1.4 P1.7 接了四個開關 K1 K4,編程將開關的狀態反映到發光二極管上。(開關閉合,對應的燈亮,開關斷開,對應的燈 ) (1) 電路原理圖 (2) 線路連接 把 AT89C51單片機的 P1.0 P1.3用導線連接到“八路發光二極管指示模塊”區域中的 L1 L4端口上。 把單片機的 P1.4 P1.7用導線連接到“四路撥動開關”區域中的 K1 K4端口上。 ( 3)程序設計思路 a 開關狀態檢測 對于開關狀態檢測,相對單片機來說,是輸入關系,我們可輪流檢測每個開關狀態,根據每個開關的狀態讓相應的發光二極管指示,可以采用 JB P1.X, REL或 JNB P1.X, REL指令來完成;也可以一次性檢測四路開關狀態,然后讓其指示,可以采用 MOV A, P1指令 一次把 P1端口的狀態全部讀入,然后取高 4位的狀態來指示。 b 輸出控制 根據開關的狀態,由發光二極管 L1 L4來指示,我們可以用 SETB P1.X和 CLR P1.X指令來完成,也可以采用 MOV P1, 1111XXXXB方法一次指示。 (4)程序 ORG 00H START: JB P1.4,NEXT1 CLR P1.0 SJMP NEX1 電磁爐控制系統單片機模擬 14 NEXT1: SETB P1.0 NEX1: JB P1.5,NEXT2 CLR P1.1 SJMP NEX2 NEXT2: SETB P1.1 NEX2: JB P1.6,NEXT3 CLR P1.2 SJMP NEX3 NEXT3: SETB P1.2 NEX3: JB P1.7,NEXT4 CLR P1.3 SJMP NEX4 NEXT4: SETB P1.3 NEX4: SJMP START END 2.2.4定時模塊 在 AT89S51單片機的 P0和 P2端口分別接有兩個共陰數碼管, P0口驅動顯示秒時間的十位,而 P2口驅動顯示秒時間的個位。 (1) 電路原理圖 (2) 線路連接 把單片機的 P0.0/AD0 P0.7/AD7端口用 8芯排線連接到“四路靜態數碼顯示模塊”區域中的任一個 a h端口上;要求: P0.0/AD0對應著 a, P0.1/AD1對應著 b, P0.7/AD7對應著 h。 電磁爐控制系統單片機模擬 15 把“單片機系統”區域中的 P2.0/A8 P2.7/A15端口用 8芯排線連接到“四路靜態數碼顯示模塊”區域中的任一個 a h端口上;要求: P2.0/A8 對應著 a, P2.1/A9對應著 b, P2.7/A15對應著 h。 ( 3)設計思路 在設計過程中我們 用一個存儲單元作為秒計數單元,當一秒鐘到來時,就讓秒計數單元加1,當秒計數達到 60時,就自動返回到 0,從新秒計數。 對于秒計數單元中的數據要把它十位數和個數分開,方法仍采用對 10 整除和對 10 求余。 在數碼上顯示,仍通過查表的方式完成。 一秒時間的產生在這里我們采用軟件精確延時的方法來完成,經過精確計算得到 1秒時間為 1.002秒。延時一秒的程序為: DELY1S: MOV R5,#100 D2: MOV R6,#20 D1: MOV R7,#248 DJNZ R7,$ DJNZ R6,D1 DJNZ R5,D2 RET ( 4)程序框圖 ( 5) 程序 Second EQU 30H ORG 0 START: MOV Second,#00H NEXT: MOV A,Second MOV B,#10 DIV AB MOV DPTR,#TABLE 電磁爐控制系統單片機模擬 16 MOVC A,A+DPTR MOV P0,A MOV A,B MOVC A,A+DPTR MOV P2,A LCALL DELY1S INC Second MOV A,Second CJNE A,#60,NEXT LJMP START DELY1S: MOV R5,#100 D2: MOV R6,#20 D1: MOV R7,#248 DJNZ R7,$ DJNZ R6,D1 DJNZ R5,D2 RET TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END 2.2.5 LED顯示模塊 ( 1) LED數碼管結構 LED顯示器的結構由 8個發光二極管按“日”字形排列。分別控制各筆畫段的 LED,使其 的某些發亮,從而可以顯示出 0 9的阿拉伯數字符號以及其它能由這些筆畫段構成的各種字符。 把 所有發光二極管的陽極連在一起稱作共陽極數碼管,把所有個發光二極管的陰極連在一起稱為共陰極數碼管。 數碼管要正常顯示,就要用驅動電 路來驅動數碼管的各個段碼,從而顯示出我們要的數字,因此根據數碼管的驅動方式的不同,可以分為靜態式和動態式兩類。 ( 2) 數碼管的驅動方式 靜態顯示驅動 靜態驅動也稱直流驅動。靜態驅動是指每個數碼管的每一個段碼都由一個單片機的 I/O端口進行驅動,或者使用如 BCD 碼二 -十進制譯碼器譯碼進行驅動。靜態驅動的優點是編程簡單,顯示亮度高,缺點是占用 I/O端口多,實際應用時必須增 動態顯示驅動 數碼管動態顯示接口是單片機中應用最為廣泛的一種顯示方式之一,動態驅動是將所有數碼管的 8 個顯示筆劃 a,b,c,d,e,f,g,dp的同名端連在一起,另外為每個數碼管的公共極 COM 增加位選通控制電路,位選通由各自獨立的 I/O 線控制,當單片機輸出字形碼時,所有數碼管都接收到相同的字形碼,但究竟是那個數碼管會顯示出字形,取決于單片機對位選通 COM端電路的控制,所以我們只要將需要顯示的數碼管的選通控制打開,該位就顯示出字形,沒有選通的數碼管就不會亮。通過分時輪流控制各個數碼管的的 COM 端,就使各個數碼管輪流受控顯示,這就是動態驅動。在輪流顯示過程中,每位數碼管的點亮時間為 1 2ms,由于人的視覺暫留現象及發光二極管的余輝效應 ,盡管實際上各位數碼管并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩定的顯示數據,不會有閃爍感,動態顯示的效果和靜態顯示是一樣的,能夠節省大量的 I/O端口,而且功耗更低。 電磁爐控制系統單片機模擬 17 ( 3)電磁爐中采用的四位 LED數碼管電路 ( 4)數碼管程序 LIST P=89C51 ROMSIZE=3072 ;* ; 系統寄存器 ;* IE EQU 00H ;中斷使能標志 IRQ EQU 01H ;中斷請求標志 TM0 EQU 02H ;Timer0 模式寄存器 TL0 EQU 04H ;Timer0 裝入 /記數寄存器低四位 TH0 EQU 05H ;Timer0 裝入 /記數寄存器高四位 TBR EQU 0EH ;查表寄存器 PORTB EQU 09H ;Port B 數據寄存器 PORTE EQU 0CH ;Port E 數據寄存器 PORTF EQU 0DH ;Port F 數據寄存器 INX EQU 0FH ;間接尋址偽索引寄存器 DPL EQU 10H ;INX 數據指針低四位 DPM EQU 11H ;INX 數據指針中三位 DPH EQU 12H ;INX 數據指針高三位 PBCR EQU 19H ;Port B 輸入 /輸出控制寄存器 PECR EQU 1CH ;Port E 輸入 /輸出控制寄存器 電磁爐控制系統單片機模擬 18 PFCR EQU 1DH ;Port F 輸入 /輸出控制寄存器 ;* ; 用戶定義寄存器 ;* AC_BAK EQU 30H ;AC 值備份寄存器 PB_BAK EQU 32H ;Port B 數據備份寄存器 PE_BAK EQU 35H ;Port E 數據備份寄存器 PF_BAK EQU 36H ;Port F 數據備份寄存器 ;- ; 用于 TIMER 定時 T1MS_CT EQU 37H ;計數值 =04H,定時 1ms ;- F_TIMER EQU 39H ;bit0=1, 1ms 到 FLAG1 EQU 3AH ;bit0=1, 按鍵未松開 ;- ; Used for display DISP_R1 EQU 3BH ;第一位 7 段 LED 顯示的字符 DISP_R2 EQU 3CH ;第二位 7 段 LED 顯示的字符 DISP_R3 EQU 3DH ;第三位 7 段 LED 顯示的字符 DISP_R4 EQU 3EH ;第四位 7 段 LED 顯示的字符 DISP_PT EQU 3FH ;位選指針 ;* ; 程序 ;* ORG 0000H JMP RESET RTNI JMP TIMER0_ISP ;TIMER0 中斷程序入口地址 RTNI RTNI ;* ; TIMER0 中斷服務程序 ;* TIMER0_ISP: STA AC_BAK,00H ;備份 AC 值 ANDIM IRQ,1011B ;清 TIMER0 中斷請求標志 J1MS: SBIM T1MS_CT,01H BNZ TIMER0_ISP_END ;未到 1ms, 跳轉 LDI T1MS_CT,04H ;重置 1ms 計數器 ORIM F_TIMER,0001B ;設置 1ms 到 標志 TIMER0_ISP_END: LDI IE,0100B ;打開 TIMER0 中斷 LDA AC_BAK,00H ;取出 AC 值 RTNI ;* ; 主程序 ;* RESET: NOP ;- ;清用戶寄存器 電磁爐控制系統單片機模擬 19 ;- POWER_RESET: LDI DPL,00H LDI DPM,02H LDI DPH,00H POWER_RESET_1: LDI INX,00H ADIM DPL,01H LDI TBR,00H ADCM DPM,00H BA3 POWER_RESET_2 JMP POWER_RESET_3 POWER_RESET_2: ADIM DPH,01H POWER_RESET_3: SBI DPH,01H BNZ POWER_RESET_1 SBI DPM,04H BNZ POWER_RESET_1 ;- ;初始化系統寄存器 ;- SYSTEM_INITIAL: ;TIMER0 初始化 LDI TM0,07H ;設置 TIMER0 預分頻為 /1 LDI TL0,06H LDI TH0,00H ;設 置中斷時間為 250us LDI T1MS_CT,04H ;定時 1ms ;I/O 口初始化 LDI PORTB,00H LDI PBCR,0FH ;設置 Port B 作為輸出口 LDI PORTE,0FH LDI PECR,0FH ;設置 Port E 作為輸出口 LDI PORTF,0FH LDI PFCR,0FH ;設置 Port F 作為輸出口 ;- MAIN_PRE: LDI IRQ,00H LDI IE,0100B ;打開 Timer0 中斷 MAIN: ADI F_TIMER,0001B BA0 HALTMODE ;未到 1ms,跳轉 ANDIM F_TIMER,1110B ;清 1ms 到 標志 ;- ; 加載顯示數據 (用于測試 7 段 LED 顯示模塊 ) ;- LDI DISP_R1,03H LDI DISP_R2,07H LDI DISP_R3,09H LDI DISP_R4,0FH * * 模塊 : 4 位 7 段 LED 顯示模塊 * 電磁爐控制系統單片機模擬 20 * 輸入變量 : DISP_R1,DISP_R2,DISP_R3,DISP_R4 * * 使用變量 : DISP_PT,TBR,PB_BAK,PE_BAK,PF_BAK * * 輸出變量 : PORTB,PORTE,PORTF * ;* DISPLAY: DISP_1: ADIM DISP_PT,01H ;指針加一 SBI DISP_PT,01H BAZ DISP_11 ;顯示位 1 數碼管 , 跳轉 SBI DISP_PT,02H BAZ DISP_12 ;顯示位 2 數碼管 , 跳轉 SBI DISP_PT,03H BAZ DISP_13 ;顯示位 3 數碼管 , 跳轉 ;- ;顯示位 4 數碼管 ;- DISP_14: LDI DISP_PT,00H ;指針清零 LDI PB_BAK,0001B ;預設位選碼 LDI TBR,0FH LDA DISP_R4,00H CALL 07EFH STA PE_BAK,00H LDA TBR,00H STA PF_BAK,00H ;由字符查表得預設段選碼的值 JMP DISPLAY_END ;- ;顯示位 3 數碼管 ;- DISP_13: LDI PB_BAK,0010B ;預設位選碼 LDI TBR,0FH LDA DISP_R3,00H CALL 07EFH STA PE_BAK,00H LDA TBR,00H STA PF_BAK,00H ;由字符查表得預設段選碼的值 JMP DISPLAY_END ;- ;顯示位 2 數碼管 ;- DISP_12: LDI PB_BAK,0100B ;預設位選碼 LDI TBR,0FH LDA DISP_R2,00H CALL 07EFH STA PE_BAK,00H LDA TBR,00H STA PF_BAK,00H ;由字符查表得預設段選碼的值 JMP DISPLAY_END ;- ;顯示位 1 數碼管 電磁爐控制系統單片機模擬 21 ;- DISP_11: LDI PB_BAK,1000B ;預設位選碼 LDI TBR,0FH LDA DISP_R1,00H CALL 07EFH STA PE_BAK,00H LDA TBR,00H STA PF_BAK,00H ;由字符查表得預設段選碼的值 JMP DISPLAY_END DISPLAY_END: LDI PORTB,00H ;關閉顯示 LDA PE_BAK,00H STA PORTE,00H LDA PF_BAK,00H STA PORTF,00H ;送出預設的段選碼到 I/O 口 LDA PB_BAK,00H STA PORTB,00H ;送出預設的位選 碼到 I/O 口,顯示該位 ;* HALTMODE: NOP HALT NOP NOP NOP JMP MAIN ;* ORG 07EFH TJMP ;- ;顯示段選碼數據表(共陽極) ORG 07F0H;d p g f e, d c b a RTNW 1100B,0000B ;0 RTNW 1111B,1001B ;1 RTNW 1010B,0100B ;2 RTNW 1011B,0000B ;3 RTNW 1001B,1001B ;4 RTNW 1001B,0010B ;5 RTNW 1000B,0010B ;6 RTNW 1111B,1000B ;7 RTNW 1000B,0000B ;8 RTNW 1001B,0000B ;9 RTNW 1000B,1000B ;A RTNW 1000B,0011B ;B RTNW 1100B,0110B ;C RTNW 1010B,0001B ;D RTNW 1000B,0110B ;E RTNW 1000B,1110B ;F END 電磁爐控制系統單片機模擬 22 2.3檢測模塊 2.3.1 A/D、 D/A 轉換模塊 ( 1)保護電路 A/D、 D/A轉換控制原理 電路保護邏輯采樣電路( A/D 轉換) , 當外圍檢測電路檢測到過壓、欠壓、過流、過熱、無過或其他故障時,光電隔離導通,輸出高電平。單片機就可以識別。 ( 2)電路保護控制電路( D/A轉換) 單片機識別到數據后便在控制端口輸出低電平,高電平通過光電隔離控制負責停止工 作。 2.3.2 過壓、欠壓檢測模塊 輸出過壓保護電路的作用是:當輸出電壓超過設計值時,把輸出電壓限定在一安全值的范圍內。當開關電源內部穩壓環路出現故障或者由于用戶操作不當引起輸出過壓現象時,過壓保護電路進行保護以防止損壞后級用電設備。 AC接入后,經過半波整流,由 R10和 R17產生 分壓,對電路的電壓進行比例式測量,以判斷電路電 壓是否超過或不足,并將測試信號輸入單片機,由單 片機控制 IGBT功率管關閉,同時驅動報警電路。 2.3.3過流檢測模塊 電磁爐控制系統單片機模擬 23 電流互感器 CT1 二次測得的 AC 電壓 , 經 D1、 D2、 D3、 D4 組成的橋式整流電路整流、 R12 、 R13 分壓, C11 濾波 , 所獲得的直流電壓送至 CPU 5 腳 , 該電壓越高 , 表示電源輸入的電流越大 , CPU 根據監測該電壓的變化 , 自動作出各種動作指令 。 2.3.4溫度檢測模塊 溫度通過溫度傳感器(熱敏電阻)對電磁爐板面進行采樣并轉換為電壓信號,經放大器放大后用模數轉換器進行 A/D轉換成數字量進入 AT89C51 單片機 。 ( 1)電路原理圖 加熱鍋 具底部的溫度透過微晶玻璃板傳至緊貼玻璃板底的負溫度系數熱敏電阻 , 該電阻阻值的變化間接反影了加熱鍋具的溫度變化 ( 溫度 / 阻值祥見熱敏電阻溫度分度表 ), 熱敏電阻與 R4 分壓點的電壓變化其實反影了熱敏電阻阻值的變化 , 即加熱鍋具的溫度變化 , CPU 8 腳通過監測該電壓的變化 , 作出相應的動作指令 : 定溫功能時 , 控制加熱指令 , 另被加熱物體溫度恒定在指定范圍內。 當鍋具溫度高于 270 時 , 加熱立即停止 , 并報知信息 2.3.5 鍋檢測與小物件檢測模塊 ( 1) 鍋檢 測原理 提鍋檢測是為了防止負載劇烈變化,因為在提鍋或無鍋時都會影響到諧振電路的參數變化,導致流過IGBT 的電流升高時燒壞 IGBT,所以只要以上的過流檢測和保護電路穩定就能防止提鍋時發生的大電流情況 小物件檢測: 小物件檢測就是防止要加熱的物件不正確而損壞物件,通常是檢測諧振電路的頻率大小或是檢測諧振回路電流大小,通過檢測在導通 IGBT 時流過的電流大小就可以判斷出來是否為小物件, 這要保證單片機輸出的 PWM 寬度不能太大 而且要保證 PWM 周期為最大值。 電磁爐控制系統單片機模擬 24 ( 2)電路圖 將 IGBT(Q1) 集電極上的脈沖電壓通過 R1+R17 、 R28 分壓 R29 限流后,送至 AT89C51的 6 腳 , 在 6 腳上獲得其取樣電壓 , 此反影了 IGBT 的 VCE 電壓變化的信息送AT89C51,AT89C51 根據監測該電壓的變化 , 自動作出電壓比較而決定是否工作。 配合 VAC 檢測電路、電流檢測電路反饋的信息 , 判別是否己放入適合的鍋具 , 作出相應的動作指令。 根據 VCE 取樣電壓值 , 自動調整 PWM 脈寬 , 抑制 VCE 脈沖幅度不至于過高。 當測得其它原因導至 VCE 脈沖高于定值時 , AT89C51立即發出指令使電磁爐停止工作。 2.3.6加熱開關控制 當不加熱時 ,CPU 輸出低電平,同時停止 PWM 輸出 , D7 導通 , 將 LM339 電壓拉低 , 振蕩停止 , 使 IGBT 激勵電路停止輸出 ,IGBT 截止 , 則加熱停止。 開始加熱時 , CPU 輸出高電平 ,D7 截止 , 同時 CPU 開始間隔輸出 PWM 試探信號 , 同時 CPU 通過分析電流檢測電路和電壓檢測電路反饋的電壓信息、鍋檢測電路反饋的電壓波形變化情況 , 判斷是否己放入適合的鍋 具 , 如果判斷己放入適合的鍋具 ,CPU 輸出正常的 PWM 信號 , 電磁爐進入正常加熱狀態 , 如果電流檢測電路、電壓檢測電路和鍋檢測電路反饋的信息 , 不符合條件 ,CPU 會判定為所放入的鍋具不符 或無鍋 , 則繼續輸出 PWM 試探信號 , 同時發出指示無鍋的報知信息 , 如 30 秒鐘內仍不符合條件 , 則關機。 2.3.7蜂鳴器驅動電路 ( 1)線路連接 把 AT89C51單片機的 P1.0端口用導線連接到音頻放大模塊區域中的 SPK IN端口上, 在音頻放大模塊區域中的 SPK OUT端口上 接上一個 8歐或者是 16 歐的喇叭; ( 2)電路原理圖 電磁爐控制系統單片機模擬 25 ( 3)程序設計思路 要使報警器發出“嘀、嘀、”報警聲,我們可以通過 AT89C51單片機輸出一種方波電平信號,嘀 0.2 秒鐘,然后斷 0.2 秒鐘,如此循環下去,就可以在蜂鳴器聽到“嘀、嘀、”報警聲了。假設嘀聲的頻率為 1KHz,則報警聲時序圖如下圖所示: 由于要產生上面的信號,我們把上面的信號分成兩部分,一部分為 1KHZ方波,占用時間為 0.2秒;另一部分為電平,也是占用 0.2秒; 因此,我們利用單片機的定時 /計數器 T0作為定時,可以定時 0.2秒;同時,也要用單片機產生 1KHZ的方波,對于 1KHZ的方波信號周期為 1ms,高電平占用 0.5ms,低電平占用 0.5ms,因此也采用定時器 T0 來完成 0.5ms的定時;最后,可以選定定時 /計數器 T0的定時時間為 0.5ms,而要定時 0.2秒則是 0.5ms的 400倍,也就是說以 0.5ms定時 400次就達到 0.2 秒的定時時間了。 ( 4) 程序框圖 主程序框圖 中斷服務程序框圖 電磁爐控制系統單片機模擬 26 ( 5)蜂鳴器驅動程序 ORG 00H AJMP FG ORG 030H FG: SETB P3.0 LCALL DLY LCALL DLY CLR P3.0 LCALL DLY LCALL DLY AJMP FG ;-延時子程序 DLY: MOV R0,#20 DLY0: MOV R7,#100 DLY1: MOV R6,#250 DJNZ R6,$ DJNZ R7,DLY1 DJNZ R0,DLY0 RET END 2.3.8風扇模塊 當電源接通時單片機發出風扇驅動信號,使風扇持續轉動,吸入外冷空氣至機體內,再從機體后側排出熱空氣,以達至機內散熱目的,避免零件因高溫工作環境造成損壞故障。當風扇停轉或散熱不良, IGBT 表貼熱敏電阻將超溫信號傳送到 CPU,停止加熱,實現保護。通電瞬間 CPU 會發出一個風扇檢測信號,以后整機正常運行時 CPU發出風扇驅動信號使其工作。 電磁爐控制系統單片機模擬 27 CPU 15 腳發出風扇運轉指令時 , 15 腳輸出高電平 , 電壓通過 R27 送至 Q3 基極 ,Q3 飽和導通 ,VCC 電流流過風扇、 Q3 至地 , 風扇運轉 ; CPU 發出風扇停轉指令時 , 15 腳輸出低電平 ,Q3 截止 , 風扇因沒有電流流過而停轉。 3 單片機軟件編程及調試 3.1單片機語言集成開發平臺 3.1.1 u Vision2 集成開發環境 Kiel公司推出的集成開發環境 u Vision2,是一種 32 位標準的 windows應用平臺,支持長文件名操作,界面類似 MS Vision C+ ,可在 windows95/98/2000/XP平臺上運行,功能強大。 u Vision2 中包含了源程序文件編譯器 ,項目管理器、源程序調試器等。并為 Cx51編譯器、 Ax51宏匯編 器、 BL51/Lx51連接定位器、 RPX51實時操作系統等提供了單一而靈活的開發環境。 ( 1) u Vision2 具有強大的項目管理功能,一個項目 由 源程序文件、開發工具選項以及編程說明三部分組成,通過目標創建選項很容易實現對一個 u Vision2 項目進行完整的變異和連接,直接產生 最終應用目 標程序。 ( 2) u Vision2 中包含一個器件數據庫,數據庫中有各種單片機片上儲存器和外圍集成功能信息。 ( 3) u Vision2中集成的 Debug調試器具有十分強大的仿真調試功能,支持軟件模擬和用戶目標板調試兩種工作方式 3.1.2 Keil C51 開發單片機應用程序的步驟 ( 1)在 u Vision2 集成開發環境中創建一個新項目,并為該項目選擇合適的 CPU器件 ( 2)利用 u Vision2 的文件編程器編寫源程序文件,并將程序添加到項目中去。 ( 3)通過 u Vision2 的各種選項,配置 Cx51 編譯器、 Ax51宏匯編 器、 BL51/Lx51連接定位器以及 Debug調試器的功能。 ( 4)利用 u Vision2的構造功 能對項目中的源程序文件進行編譯連接,生成絕對目標代碼和可選的 HEX文件,如果出現編譯連接錯誤則返回到第步,修改源程序中的錯誤后重新構造整個項目。 ( 5)將沒有錯誤的絕對目標代碼裝入 u Vision2 調試器進行仿真調試,調試成功后將 HEX 文件寫入到單片機應用系統的 EPROM中。 結 論 本文研究了電磁爐的基本原理,然后提出了設計思路,再根據設計思路解剖電磁爐的各個模塊。再結合軟件和硬件的方式實驗的方式研究模塊。 首先,先介紹啦電磁爐的加熱原理、工作方式、設計要求以及設計單片機 AT89C51 的 端口定義。其次簡單的介紹啦單片機的原理:主要特性、最小應用系統、內部結構管教圖以及管教功能。然后介紹單片機的內部模塊:電源模塊(主電源電路、副電源電路、穩壓電路)、控制模塊( PWM脈寬調制輸出電路的功率控制、按鍵識別功能及消除抖動、多路開關狀態指示、定時器模塊、四位七段 LED 數碼管驅動、加熱開關控制)、檢測模塊( A/D、 D/A 轉換控制原理、電源過壓欠壓檢測、電流檢測、溫度檢測、無鍋檢測及小物件檢測、報警驅動、散熱系統)。最后介紹了單片機的開發環節。 這次畢 業設計中時間緊迫 使得設計不夠完善, 但我學會了 很多 ,也感到自身知識的貧乏 ,希望在日后的努力中能做出更完善的 設計。 電磁爐控制系統單片機模擬 28 致 謝 從論文選題到搜集資料,到寫稿到反復修改,期間經歷了喜悅、聒噪、痛苦和彷徨,在 寫作 論文的過程 中心 情是如此復雜。如今,伴隨著這篇 畢業 論文的最終成稿,復雜的心情煙消云散,自己甚至還有一點成就感。 我的這篇 畢業 論文的完成,首先應當感謝指導老師董永濤副教授。他始終認真負責地給予我深刻而細致地 指導 ,幫助我開拓研究思路,精心點撥、熱忱鼓勵。無論是在資料整理、模擬試驗、論文撰寫和修改 等各個方面他都給予了大量的 指導 和幫助,令我不但完成了論文,也讓我學到了很多知識,掌握了相關的知識,同時也獲得了實踐鍛煉的機會。他對我的嚴格要求以及為人的誠懇都將使我受益匪淺,特致以深深的感謝。 參 考 文 獻 1肖健華、經順林 .模糊控制在家電產品中的應用與展望 . 五邑大學學報 (自然科學版 ),2001 2郝建國、鄭燕、薛延俠 .單片機在電子電路設計中的應用 M.北京:清華大學 出版社 ,2006 3余錫存、曹國華 .單片機原理及接口芯片 M.西安:西安電子科技大學出版社, 2004 4沙占友、王彥朋、周萬珍 .單片開關電源最新應用技術 M.機械工業出版社, 2006 5彭為、黃科、雷道仲 .單片機典型系統設計實例精講 M.電子工業出版社, 2006 6黃偉智 .全國大學生電子設計競賽電路設計 M.北京:北京航空航天大學出版社, 2006 7徐愛鈞、彭秀華 . keil cx51 v7.0 單片機高級語言編程與 u Vision2 應用實踐 M. 電子業出版社, 2004 8程繼興、楊光永、李泰 .單片機原理及應用 M.北京:中國傳媒大學出版社, 2007 951 測試網: / 1051 單片機學習網: / 1151 單片機學習網: / 12單片機之家 單片機學習網站: / 1351 單片機實驗網: / 電磁爐控制系統單片機模擬 29 附表: 單機指令表 助記符 指令說明 字節數 周期數 ( 51單片機指令 -數據傳遞類指令) MOV A, Rn 寄存器傳送到累加器 1 1 MOV A, direct 直接地址傳送到累加器 2 1 MOV A, Ri 將 Ri所指示的內部 RAM單元中的數據傳到 A 1 1 MOV A, #data 立即數傳送到累加器 2 1 MOV Rn, A 累加器傳送到寄存器 1 1 MOV Rn, direct 直接地址傳送到寄存器 2 2 MOV Rn, #data 將立即數傳送到 Rn 2 1 MOV direct, Rn 寄存器傳送到直接地址 2 1 MOV direct, direct 直接地址傳送到 直接地址 3 2 MOV direct, A 累加器傳送到直接地址 2 1 電磁爐控制系統單片機模擬 30 MOV direct, Ri 間接 RAM 傳送到直接地址 2 2 MOV direct, #data 立即數傳送到直接地址 3 2 MOV Ri, A A中的內容傳送到直接地址 1 2 MOV Ri, direct 直接地址傳送到間接 RAM 2 1 MOV Ri, #data 立即數傳送到間接 RAM 2 2 MOV DPTR, #data16 16 位常數加載到數據指針 3 1 MOVC A, A+DPTR 代碼字節傳送到累加器 1 2 MOVC A, A+PC 代碼字節傳送到累加器 1 2 MOVX A, Ri 外部 RAM(8 地址 )傳送到累加器 1 2 MOVX A, DPTR 外部 RAM(16 地址 )傳送到累加器 1 2 MOVX Ri, A 累加器傳送到外部 RAM(8 地址 ) 1 2 MOVX DPTR, A 累加器傳送到外部 RAM(16 地址 ) 1 2 PUSH direct 直接地址壓入堆棧 2 2 POP direct 直接地址彈出堆棧 2 2 XCH A,Rn 寄存器和累加器交換 1 1 XCH A, direct 直接地址和累加器交換 2 1 XCH A, Ri 間接 RAM 和累加器交換 1 1 XCHD A, Ri 間
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2031年中國2MM格法玻璃行業投資前景及策略咨詢研究報告
- 2025至2030年中國過濾槽數據監測研究報告
- 2025木材采購合同協議范本下載
- 2025至2030年中國組合螺釘旋具數據監測研究報告
- 2025至2030年中國碾米設備數據監測研究報告
- 2025至2030年中國電位器式位移傳感器數據監測研究報告
- 2025至2030年中國消防腰斧數據監測研究報告
- 新建輕質磚墻體施工方案
- 齊河簡易輕鋼房施工方案
- 梁平酒店鋁單板施工方案
- 新時代社區治理存在的問題及對策研究-以XX社區為例
- 《西方經濟學》說課
- 安標受控件采購管理制度
- 《針灸神奇作用》課件
- 美國醫療的社會變遷
- 亞低溫的治療與護理
- 2023全新混凝土罐車運輸安全協議
- 防高墜自查自糾臺賬
- 市政工程消耗量定額 zya1-31-2015
- 汽車托管租賃合同
- 國家開放大學《土木工程力學(本)》形考作業1-5參考答案
評論
0/150
提交評論