?? cooker_head.asm
字號:
;;*****************************************************
; 特殊寄存器表
;;*****************************************************
IE EQU 00H ;中斷使能IEX, IET0, IET1, IEP
IRQ EQU 01H ;中斷標(biāo)志
TM0 EQU 02H ;定時器0分頻寄存器
TM1 EQU 03H ;定時器1分頻寄存器
TL0 EQU 04H ;定時器0的計數(shù)器
TH0 EQU 05H
TL1 EQU 06H ;定時器1的計數(shù)器
TH1 EQU 07H
PORTA EQU 08H ;I/O口緩存
PORTB EQU 09H
PORTC EQU 0AH
PORTD EQU 0BH
PORTE EQU 0CH
PORTF EQU 0DH
TBR EQU 0EH
INX EQU 0FH
DPL EQU 10H ;數(shù)據(jù)指針
DPM EQU 11H
DPH EQU 12H
VACR EQU 13H ;A/D口配置控制
ADCS EQU 14H ;ADC通道選擇
ADCDL EQU 15H ;ADC結(jié)果低位
ADCDH EQU 16H ;ADC結(jié)果高位
GOT EQU 17H ; BIT3=GO/DONEB, BIT2&BIT1=TADC1&0, BIT0=ADCS
PAXOUT EQU 18H ;PORT口輸出控制
PBXOUT EQU 19H
PCXOUT EQU 1AH
PDXOUT EQU 1BH
PEXOUT EQU 1CH
PFXOUT EQU 1DH
T0SE EQU 1EH ;定時器源選擇
WDT EQU 1FH ;看門狗設(shè)置
PWM0 EQU 20H ;PWM0控制寄存器
PWM1 EQU 21H ;PWM1控制寄存器
PP0L EQU 22H
PP0M EQU 23H
PP0H EQU 24H
PD0L EQU 25H
PD0M EQU 26H
PD0H EQU 27H
PP1L EQU 28H
PP1M EQU 29H
PP1H EQU 2AH
PD1L EQU 2BH
PD1M EQU 2CH
PD1H EQU 2DH
;;*****************************************************
;用戶寄存器表,BANK 0
;;*****************************************************
;狀態(tài)寄存器,電磁爐運行過程中需要的控制狀態(tài)字節(jié)
;;*****************************************************
BUTTON_STATUS EQU 30H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;按鍵控制寄存器
; .0=1表示有按鍵出現(xiàn),不管怎樣,一旦按鍵按下,那么執(zhí)
; 行鍵盤掃描程序,那么這一位就被置位.在執(zhí)行鍵盤掃描
; 程序以前,清除這一位.
; .1=1表示按鍵已經(jīng)被處理,每次執(zhí)行功能分析函數(shù)的時候
; 這一位被置位,一旦出現(xiàn)新的按鍵的時候,這一位被清除
; .2=1表示掃描按鍵定時已到,程序中的最小基本定時是
; 20MS(市電是50Hz),那么每當(dāng)20MS定時已到,設(shè)置這一位
; 每當(dāng)執(zhí)行完畢鍵盤掃描程序,那么清除這一位.
; .3=1表示出現(xiàn)了合法按鍵.檔出現(xiàn)按鍵,但是按鍵又沒有
; 被處理的時候才設(shè)置這一位,當(dāng)執(zhí)行完按鍵掃描程序的時
; 候,清除這一位.
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
MAIN_STATUS EQU 31H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;開關(guān)機狀態(tài)寄存器
; .0=1加熱狀態(tài),開機加熱的默認(rèn)狀態(tài)是加熱狀態(tài),按C/T
; 按鍵可以切換加熱和保溫狀態(tài)
; .1=1保溫狀態(tài)標(biāo)志.
; .2=1開機使能,只有在關(guān)機狀態(tài)下,按ON/OFF按鍵,才能
; 設(shè)置這一位;在開機狀態(tài)下,按ON/OFF按鍵或者,其他需
; 要關(guān)機的條件滿足時,清除這一位.
; .3=1保溫達(dá)到設(shè)定值標(biāo)志,如果保溫達(dá)到設(shè)定值,置位
; 這個標(biāo)志,如果溫度沒有達(dá)到,清除這一位標(biāo)志
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
PWM_STATUS EQU 32H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;PWM控制寄存器
; .0=1軟啟動結(jié)束標(biāo)志,每次IGBT重新開啟的時候都需要
; 清除這一位,而每當(dāng)軟啟動結(jié)束的時候設(shè)置這一位
; .1=1IGBT允許開啟標(biāo)志
; .2=1需要過零處理標(biāo)志,當(dāng)系統(tǒng)應(yīng)該開啟IGBT的時候,
; 但是又沒有開啟IGBT,則需要設(shè)置這一位,進(jìn)行過零處理
; .3=1軟啟動定時已到標(biāo)志
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
COMPARE_STATUS EQU 33H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;比較狀態(tài)寄存器
; .0=1兩個數(shù)比較,前者等于后者
; .1=1兩個數(shù)比較,前者小于后者
; .2=1兩個數(shù)比較,前者大于后者
; .3=1
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
HEAT_POINT EQU 34H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;火力點狀態(tài)寄存器:
; 系統(tǒng)一共分為10檔火力描述如下:
; 00H,表示沒有按下火力按鍵,不進(jìn)入工作模式
; 01H,表示第一檔火力,它是500W斷續(xù)加熱,加熱3S停3S
; 02H,表示第二檔火力,它是500W連續(xù)加熱
; 03H,表示第三檔火力,它是650W連續(xù)加熱
; 04H,表示第四檔火力,它是800W連續(xù)加熱
; 05H,表示第五檔火力,它是1000W連續(xù)加熱
; 06H,表示第六檔火力,它是1200W連續(xù)加熱
; 07H,表示第七檔火力,它是1400W連續(xù)加熱
; 08H,表示第八檔火力,它是1600W連續(xù)加熱
; 09H,表示第九檔火力,它是1800W連續(xù)加熱
; 0AH,表示第十檔火力,它是2000W連續(xù)加熱
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
KEEP_TEMP EQU 35H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;保溫寄存器:
; 系統(tǒng)一共分為9檔保溫,保溫時候的火力是根據(jù)當(dāng)前溫
; 度,和設(shè)定溫度之間的差值來確定的,如果相差越大,那
; 么,加熱的火力越大
; 01H,表示第一檔保溫,50度
; 02H,表示第二檔保溫,70度
; 03H,表示第三檔保溫,90度
; 04H,表示第四檔保溫,120度
; 05H,表示第五檔保溫,140度
; 06H,表示第六檔保溫,160度
; 07H,表示第七檔保溫,180度
; 08H,表示第八檔保溫,200度
; 09H,表示第九檔保溫,240度
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
WRONG EQU 36H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;故障狀態(tài)寄存器:
; 主要是紀(jì)錄系統(tǒng)運行過程中可能出現(xiàn)的故障狀態(tài)
; 0001B,表示電壓故障,當(dāng)電壓高于260V或者低于170V的
; 時候設(shè)置這一位,當(dāng)電壓低于250V并且高于180V清除者
; 一位.
; 0010B,表示無鍋故障,當(dāng)檢測到電流小于一定值時,認(rèn)定
; 無鍋,設(shè)置這一位.當(dāng)探鍋脈沖個數(shù)小于5個的時候認(rèn)為
; 有鍋,清除這一位.
; 0100B,表示IGBT溫度故障,當(dāng)IGBT溫度高于100度的時候
; 設(shè)置這一位,當(dāng)IGBT溫度低于90度的時候清除這一位.
; 1000B,表示鍋底溫度故障,當(dāng)鍋底溫度高于260度的時候
; 設(shè)置這一位,當(dāng)鍋底溫度低于240度的時候清除這一位.
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
FAULT_STATUS EQU 37H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;系統(tǒng)錯誤寄存器:
; 這個寄存器主要紀(jì)錄由于系統(tǒng)硬件引起的故障狀態(tài).
; 01H表示IGBT熱敏電阻斷路
; 02H表示IGBT熱敏電阻短路
; 03H表示鍋底熱敏電阻斷路
; 04H表示鍋底熱敏電阻短路
; 05H表示風(fēng)扇失效
; 06H表示振蕩回路斷路
; 07H~0FH保留
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
BUZZER_STATUS EQU 38H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;蜂鳴器狀態(tài)寄存器:
; 0001B表示蜂鳴器處于鳴叫狀態(tài)
; 0010B表示蜂鳴器鳴叫時間已到(160MS)
; 0100B保留
; 1000B不能使用
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
FILTER_STATUS EQU 38H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;濾波器狀態(tài)寄存器:
; 0001B不能使用
; 0010B不能使用
; 0100B不能使用
; 1000B=時鐘信號有效
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
FAN_STATUS EQU 39H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;風(fēng)扇狀態(tài)寄存器:
; 主要紀(jì)錄風(fēng)扇的工作狀態(tài)
; 0001B=需要風(fēng)扇30秒延時
; 0010B=30秒風(fēng)扇延時定時已到
; 0100B=風(fēng)扇失效
; 1000B=保留
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
DCONT_STATUS EQU 3AH
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;斷續(xù)加熱狀態(tài)寄存器:
; 0001B=標(biāo)志電磁爐處于斷續(xù)加熱狀態(tài)
; 0010B=標(biāo)志處于斷續(xù)加熱加熱狀態(tài)
; 0100B=1秒定時已到
; 1000B=保留
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
RUN_COUNTER EQU 3BH
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;紀(jì)錄程序循環(huán)次數(shù)計數(shù)器:
; 在發(fā)出探鍋脈沖后,紀(jì)錄程序循環(huán)15次后,檢測脈沖個
; 數(shù),判斷是否有鍋
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
PLUSE_COUNTER EQU 3CH
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;探鍋脈沖計數(shù)器:
; 發(fā)出探鍋脈沖后,紀(jì)錄振蕩回路出現(xiàn)的振蕩次數(shù),小于5
; 次,認(rèn)為有鍋,否則認(rèn)為無鍋
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
PLUSE_STATUS EQU 3DH
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;探鍋脈沖狀態(tài)寄存器:
; 0001B=發(fā)送探鍋脈沖定時開始標(biāo)志
; 0010B=定時已到標(biāo)志
; 0100B=保留
; 1000B=保留
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
BUTTON_BAK1_L EQU 3EH
BUTTON_BAK1_M EQU 40H
BUTTON_BAK1_H EQU 41H
BUTTON_BAK2_L EQU 3FH
BUTTON_BAK2_M EQU 42H
BUTTON_BAK2_H EQU 43H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;按鍵備份寄存器:備份出現(xiàn)的按鍵.BUTTON_BAK1_*備份前一次
;出現(xiàn)的按鍵情況.BUTTON_BAK2_*備份后一次出現(xiàn)的按鍵情況
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
TEMP EQU 44H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;暫存寄存器
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
KEY_CN EQU 45H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;按鍵次數(shù)計數(shù)器,只有當(dāng)連續(xù)8次出現(xiàn)按鍵的時候才認(rèn)為出現(xiàn)按
;鍵
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
SHOW_STATUS EQU 46H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;顯示狀態(tài)寄存器:
; 0001B=數(shù)碼管顯示使能,顯示定時數(shù)據(jù)
; 0010B=保留
; 0100B=20ms定時已到標(biāo)志
; 1000B=高或低標(biāo)志;1=高,0=低
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
AUTO_STATUS EQU 47H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;自動功能狀態(tài)寄存器:
; 01H=開水
; 02H=褒粥
; 03H=米飯
; 04H=炒菜
; 05H=燒烤
; 06H=溫奶
; 07H=火鍋
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
SNUM0 EQU 48H
SNUM1 EQU 49H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;按鍵定時計數(shù)器:用于紀(jì)錄按鍵定時的時間.SNUM0是個位定時
;SNUM1是十位定時
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
SHOW_ORDER EQU 4AH
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;顯示順序寄存器
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
TEMP0 EQU 4BH
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;暫存寄存器
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
TIME_STATUS EQU 4CH
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;定時狀態(tài)寄存器:
; 0001B=5秒定時已到,如果5秒內(nèi)沒有出現(xiàn)火力按鍵,那
; 么關(guān)閉顯示
; 0010B=1秒定時已到標(biāo)志,這1秒內(nèi)不檢測電流
; 0100B=5秒定時已到標(biāo)志,這5秒內(nèi)檢測比較小的值
; 1000B=1分鐘定時已到標(biāo)志
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
EVEN_STATUS EQU 4DH
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;平均值狀態(tài)寄存器:
; 0001B=鍋底溫度平均值求取完畢
; 0010B=IGBT溫度平均值求取完畢
; 0100B=電罔電壓平均值求取完畢
; 1000B=電流平均值求取完畢
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
COMP1 EQU 4EH
COMP2 EQU 4FH
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;4位比較寄存器:
; COMP1存儲被比較數(shù),COMP2存儲比較數(shù)
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
EVEN_C1 EQU 50H
EVEN_C2 EQU 51H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;256次AD平均值計數(shù)器:
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
PSTA1 EQU 52H
PSTA2 EQU 53H
PSTA3 EQU 54H
;+++++++++++++++++++++++++++++++++++++++++++++++++++++
;程序運行備份寄存器:
; 紀(jì)錄當(dāng)前程序的運行入口,如果程序非法重起,那么程
; 序?qū)⒉怀跏蓟苯犹爻绦?
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -