日韩欧美自拍在线观看-欧美精品在线看片一区二区-高清性视频一区二区播放-欧美日韩女优制服另类-国产精品久久久久久av蜜臀-成人在线黄色av网站-肥臀熟妇一区二区三区-亚洲视频在线播放老色-在线成人激情自拍视频

微波爐控制器的選型及其實(shí)例分析(下)

出處:ipersist 發(fā)布于:2007-08-02 16:19:19

3)過(guò)零檢測(cè)及過(guò)零觸發(fā)
  
過(guò)零檢測(cè)在外部中斷程序中完成,中斷后根據(jù)當(dāng)前運(yùn)行狀態(tài)設(shè)置散熱風(fēng)扇半功率、全功率和關(guān)三種狀態(tài)。開(kāi)和關(guān)狀態(tài)直接設(shè)置控制光耦狀態(tài),當(dāng)需要半功率時(shí),需要記錄中斷次數(shù),調(diào)整導(dǎo)通和關(guān)閉周期,這里沒(méi)有用調(diào)整可控硅導(dǎo)通移相的方法調(diào)功,可減少電磁輻射。
  
4)按鍵設(shè)置
  
按鍵操作設(shè)置程序的輸入條件為有效的按鍵和編碼開(kāi)關(guān)左右旋轉(zhuǎn)標(biāo)志,再細(xì)分每個(gè)按鍵分別處理,在什么條件下設(shè)置對(duì)應(yīng)的工作時(shí)間、輸出模式、顯示模式、蜂鳴器鳴叫等。
  
5)顯示狀態(tài)設(shè)置
  
設(shè)置4字節(jié)保存顯示數(shù)字部分內(nèi)容,另2字節(jié)保存四周圖標(biāo)變量,由于四周的圖標(biāo)有閃爍和不閃爍狀態(tài),另2字節(jié)設(shè)置圖標(biāo)的閃爍狀態(tài)。
  
6)顯示輸出掃描
  
根據(jù)顯示狀態(tài)變量的8字節(jié)變量?jī)?nèi)容,設(shè)置數(shù)碼管對(duì)應(yīng)com和seg,掃描顯示輸出。
  
7)加熱輸出及功率控制設(shè)置
  
加熱和功率控制程序通過(guò)統(tǒng)一的變量輸入,設(shè)置當(dāng)前的微波、燒烤、熱風(fēng)還是幾種混合加熱,以及設(shè)置內(nèi)燈及散熱風(fēng)扇輸出等。
  
8)溫度檢測(cè)及計(jì)算
  
設(shè)置a/d轉(zhuǎn)換,檢測(cè)熱敏電阻的值,并濾波處理,以及開(kāi)路短路保護(hù)檢測(cè)。其輸出為故障狀態(tài)標(biāo)志和當(dāng)前爐腔溫度。在熱風(fēng)烘烤輸出程序中根據(jù)溫度設(shè)置對(duì)應(yīng)的加熱狀態(tài)。
  
9)時(shí)鐘、定時(shí)及運(yùn)行時(shí)間計(jì)算及對(duì)應(yīng)輸出模式切換
  
程序中關(guān)于時(shí)間的設(shè)置很多,大多都在這個(gè)子程序中完成,如時(shí)鐘計(jì)算、預(yù)約比較、倒計(jì)時(shí)、自動(dòng)功能的多段加熱模式切換等。
  
10)蜂鳴器設(shè)置
  
兩個(gè)變量buz_n,buz_long來(lái)設(shè)置蜂鳴器鳴叫次數(shù)和單聲?shū)Q叫長(zhǎng)度??蓡为?dú)設(shè)置buz_long值為單聲的鳴叫,在上電和按鍵操作時(shí)設(shè)置單聲?shū)Q叫。當(dāng)定時(shí)結(jié)束或定時(shí)啟動(dòng)或故障提示等情況時(shí),需要設(shè)置鳴叫多時(shí),設(shè)置buz_n值就可以了。

11)定時(shí)中斷子程序
  
定時(shí)中斷子程序相對(duì)很簡(jiǎn)單,只設(shè)置中斷次數(shù)記錄就可以了。由于蜂鳴器鳴叫頻率為2khz,所以定時(shí)中斷時(shí)間為250us。
  
其中內(nèi)容比較多的部分是:按鍵操作、顯示狀態(tài)設(shè)置、時(shí)鐘、定時(shí)及運(yùn)行時(shí)間計(jì)算及對(duì)應(yīng)輸出模式切換、加熱輸出及功率設(shè)置等部分。
  
在軟件的編寫(xiě)中,變量規(guī)劃很重要,下面還列出了幾個(gè)典型的變量規(guī)劃:
  
整個(gè)產(chǎn)品的主要工作模式用run_state來(lái)記錄:

run_state equ [40h]

s_hotfan equ run_state.0     ;熱風(fēng)烘烤

s_micro equ run_state.1     ;微波

s_grill equ run_state.2     ;燒烤

s_mix equ run_state 3     ;混合模式

s_auto equ run_state.4     ;自動(dòng)解凍

s_mu equ run_state.5     ;自動(dòng)菜單工作模式

s_fast equ run_state.6     ;快速啟動(dòng)模式

顯示模式用dsp_state來(lái)記錄:

dsp_state equ [41h]

s_time equ dsp_state.0     ;顯示時(shí)鐘狀態(tài)

s_timer equ dsp_state.1     ;顯示定時(shí)時(shí)間狀態(tài)

s_off_t equ dsp_state.2     ;顯示倒計(jì)時(shí)狀態(tài)

s_code equ dsp_state.3     ;顯示菜單或工作模式狀態(tài)
  
加熱模式heat_mode變量來(lái)控制當(dāng)前的輸出,其具體數(shù)據(jù)說(shuō)明如下:
  
0則關(guān)閉所有輸出。
  
bit0_bit3(10_1)保存微波100% /90% /80% /70% /60% /50% /40% /30% /20% /10% /10檔,即4bit來(lái)記錄微波輸出功率,在自動(dòng)解凍、自動(dòng)菜單、混合等非簡(jiǎn)單微波模式時(shí),加熱功率輸出時(shí)只需要判斷此變量,就直接設(shè)置微波輸出。
  
bit4_bit5保存燒烤功率100%和50%。
  
bit7保存熱風(fēng)烘烤輸出。
  
當(dāng)有混合狀態(tài)時(shí),則同時(shí)設(shè)置對(duì)應(yīng)的位就可以了。
  
合理設(shè)計(jì)變量對(duì)整個(gè)程序的編寫(xiě)很有用,同時(shí)也是對(duì)產(chǎn)品功能的規(guī)劃和理解的具體化,找出主要的和關(guān)鍵的控制關(guān)系,設(shè)計(jì)合適的、適當(dāng)通用的算法。而且對(duì)于經(jīng)常編寫(xiě)同類(lèi)產(chǎn)品時(shí),移植程序變得很簡(jiǎn)單;比如將此產(chǎn)品數(shù)碼管換為lcd顯示時(shí),基本上只需要將顯示輸出部分修改為驅(qū)動(dòng)顯示ic或顯示ram就可以了,其顯示得內(nèi)容還是顯示時(shí)間、定時(shí)、倒計(jì)時(shí)時(shí)間、菜單或模式,只需要修改對(duì)應(yīng)得顯示表就可以了。
  
程序編寫(xiě)和程序調(diào)試
  
軟件簡(jiǎn)單規(guī)劃后,就需要具體的編寫(xiě),將任務(wù)分解后,每部分已經(jīng)比較簡(jiǎn)單了,調(diào)試時(shí)可以考慮各子程序單獨(dú)調(diào)試,人為模擬輸入各種情況下的數(shù)據(jù)及狀態(tài),檢查輸出是否正確。再將相關(guān)聯(lián)的一起調(diào)試。除非很有把握,不要將程序全編寫(xiě)完了再調(diào)試,那樣就不知道到底哪里有問(wèn)題。
  
程序簡(jiǎn)單題綱如下:

;定義常量,某些固定的值,多次用到或經(jīng)常修改的常量,單獨(dú)定義后調(diào)用。

buz_l0 equ 50d    ;50*4=200ms設(shè)置所有默認(rèn)蜂鳴器鳴叫聲音長(zhǎng)度。

sw_t0 equ 70d    ;有效按鍵響應(yīng)時(shí)間,按鍵去抖動(dòng)時(shí)間

。。。。。。

;定義i/o,將各輸入/輸出單獨(dú)按功能或原理圖網(wǎng)絡(luò)標(biāo)號(hào)定義,當(dāng)原理圖修改時(shí)方便軟件修改

buz_p equ pa.3

grill_p equ pc.0

micro_p equ pc.1

......

;定義變量,

run_state equ [40h]    ;或則用自動(dòng)變量定義

......

;程序開(kāi)始

org 0h

jmp start_l

org 04h       ;外部中斷向量

jmp int_set     ;跳轉(zhuǎn)過(guò)零中斷處理程序

org 08h     ;定時(shí)中斷向量,中斷周期為250us

mov temp_a,a   ;保存

mov a,status

mov temp_s,a

inc t_int0        ;每次中斷0.25us

mov a,temp_s

mov status,a

mov a,temp_a

reti

;中斷處理程序,注意先保存用到的acc和標(biāo)志寄存器status,返回前恢復(fù)

int_set:

......;中斷處理程序,設(shè)置風(fēng)扇輸出

reti

;主程序開(kāi)始

start_l:

;初始化ram、i/o、timer、中斷等,一般先將通用ram全清零

;注意繼電器等關(guān)鍵變量的初始化,否則上電時(shí)繼電器可能會(huì)跳一下。

;初始化某些特殊變量

;主循環(huán)程序部分

main:

call sw_in_set ;注意按鍵設(shè)置會(huì)將顯示關(guān)閉,則顯示輸出程序在后

call dsp_out_set ;顯示掃描程序

call sw_out_set ;按鍵功能及狀態(tài)設(shè)置

call ad_tem_set ;a/d轉(zhuǎn)換及溫度計(jì)算

call dsp_state_set ;顯示狀態(tài)計(jì)算

main_delay_2ms:

mov a,t_int0 ;0.25*8=2   等待2ms時(shí)間到

sub a,8

snz c

jmp main_delay_2ms

call sw_in_set ;注意按鍵設(shè)置會(huì)將顯示關(guān)閉,則顯示輸出程序在后

call dsp_out_set ;調(diào)用顯示掃描程序

call heat_out _set ;調(diào)用加熱狀態(tài)及功率設(shè)置

call buz_set ;調(diào)用蜂鳴器設(shè)置子程序

call time_set

main_delay_4ms:

mov a,t_int0   ;0.25ms*16=4ms   等待4ms時(shí)間到

sub a,16

snz c

jmp main_delay_2ms

clr t_int0

jmp main

;各子程序分列后面

sw_in_set: ;按鍵檢測(cè)、編碼開(kāi)關(guān)檢測(cè)、門(mén)狀態(tài)檢測(cè)

......

ret

dsp_out_set: ;顯示掃描程序

......

ret

sw_out_set: ;按鍵功能及狀態(tài)設(shè)置

......

ret

ad_tem_set: ;a/d轉(zhuǎn)換及溫度計(jì)算

......

ret

dsp_state_set: ;顯示狀態(tài)計(jì)算

......

ret

heat_out _set: ;調(diào)用加熱狀態(tài)及功率設(shè)置

......

ret

buz_set: ;蜂鳴器設(shè)置子程序

......

ret

time_set: ;時(shí)間及定時(shí)處理程序

......

ret

;程序中會(huì)用到很多表,為調(diào)用方便,則將其放到頁(yè)面

org 0f00h

dsp_code_l0:

dc 10011111b;0

......

end ;程序結(jié)束


  
關(guān)鍵詞:微波爐控制器的選型及其實(shí)例分析(下)

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類(lèi)作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號(hào)碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買(mǎi)家服務(wù):
賣(mài)家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時(shí)間周一至周五
9:00-17:30

關(guān)注官方微信號(hào),
第一時(shí)間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫(kù)提出的寶貴意見(jiàn),您的參與是維庫(kù)提升服務(wù)的動(dòng)力!意見(jiàn)一經(jīng)采納,將有感恩紅包奉上哦!