📄 pan.asm
字号:
;********************************************************
; PROJECT NAME : nimh charger *
; Author : borg *
; VERSION : V0.0 *
; BODY : SN8P2704a *
; COMPILER : 1.99N *
; function : *
; input : *
; output : tempvolt1_l, tempvolt1_h *
; tempvolt2_l, tempvolt2_h *
; use register : data1, data2, tempvolt1_l, tempvolt1_h*
; tempvolt2_l, tempvolt2_h *
; use flag : dtemp1_f, dtemp2_f *
; run cycles : *
; *******************************************************
;检测锅底温度主要目的是两个,一个是无锅检测,另一个是干烧检测。
mnpan:
b0bts1 pan_turn_f
jmp mnpan90
mov a,#10010011b
mov adm,a
mov a,#11110111b
mov p4con,a
call adcchange
mov a,data1
mov pan_temp_l,a
mov a,data2
mov pan_temp_h,a
/*
mnpan40:
b0bts1 nopan_check_f
jmp mnpan50
b0bts1 t0_1min_f
jmp mnpan90
bclr nopan_check_f
bclr t0_1min_f
mov a,pan_temp_l
sub a,nopan_const_l
mov a,pan_temp_h
sbc a,nopan_const_h
b0bts0 fc
jmp mnpan401
jmp mnpan402
mnpan401:
bclr nopan_f
jmp mnpan50
mnpan402:
bset nopan_f
bset buzzer_active_f
bset buzzer_active_lf
mov a,#21
mov buzzer_count,a
jmp mnpan90
*/
;------------------------------------------------
mnpan50:
mov a,pan_temp_l
sub a,pan_const_l
mov a,pan_temp_h
sbc a,pan_const_l
b0bts1 fc
jmp mnpan501
jmp mnpan502
mnpan501:
bclr pan_warning_f
jmp mnpan90
mnpan502:
bset pan_warning_f
jmp mnpan90
mnpan90:
ret
;------------------------------------------------
/*
mnpan10:
mov a,pan_temp_l ;即时锅底温度
sub a,pan_set_l ;设定温度
mov delta_pan_l,a ;即时温度与设定温度差值
mov a,pan_temp_h
sbc a,pan_set_l
mov delta_pan_h,a
b0bts0 fc
jmp mnpan20
jmp mnpan30
mnpan20:
bset temp_over_f
bset stopheating_f
jmp mnpan90
mnpan30: ;判断温度是否升到第一个停止点
mov delta_pan_l
sub a,#@@
mov a,#$$
mov a,temp_temp
mov a,delta_pan_h
sbc a,temp_temp
b0bts1 fc
jmp mnpan301
jmp mnpan302
mnpan301: ;15度范围内,0~15
mov delta_pan_l
sub a,#@@
mov a,#$$
mov a,temp_temp
mov a,delta_pan_h
sbc a,temp_temp
b0bts1 fc
jmp mnpan303
jmp mnpan304
mnpan302: ;15度范围外
nop
mnpan303: ;10度范围内,0~10
mov delta_pan_l
sub a,#@@
mov a,#$$
mov a,temp_temp
mov a,delta_pan_h
sbc a,temp_temp
b0bts1 fc
jmp mnpan305
jmp mnpan306
mnpan304: ;10度范围外,10~15
nop
;计算温升率,调整pwm
mnpan305: ;5度范围内,0~5
mov delta_pan_l
sub a,#@@
mov a,#$$
mov a,temp_temp
mov a,delta_pan_h
sbc a,temp_temp
b0bts1 fc
jmp mnpan307
jmp mnpan308
mnpan306: ;5度范围外,5~10
nop
;调整pwm
mnpan307:
nop ;2度范围内,0~2
;调整pwm
mnpan308: ;2度范围外,2~5
nop
;调整pwm
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -