📄 kdv200-b.asm
字号:
mov res_adc_ip,#00h
mov ia_adc_ip,#00h
mov dianji_dir_reg,#dianji_stop_dir_data
clr duzhuan_err_bit
mov duzhuan_reg,#duzhuan_time_data
mov dianji_zheng_2s_reg,#time_2s_data
mov dianji_fan_2s_reg,#time_2s_data
mov map1old_reg,#0ffh
mov map2old_reg,#0ffh
mov c1,#003h
mov c2,#0e8h
ret
;* * * * * * * * * * * * * * * * * * * * * *
; 标号 :adc_set
; 功能 :
; 入口条件:
; 出口信息:
adc_set:
mov adccon1,#7ch ;ADC正常工作,时钟分频8,采集时间为8个时钟,以查询方式处理
mov adccon2,#00h
clr eadc
ret
;* * * * * * * * * * * * * * * * * * * * * *
; 标号 :ram_test
; 功能 :内存测试
; 入口条件:
; 出口信息:
RAM_TEST:
mov r0,#08h
mov r1,#0F8h
RAM_TEST1:
mov a,#55h
mov @r0,a
mov a,@r0
cjne a,#55h,RAM_TEST
inc r0
djnz r1,RAM_TEST1
MOV A,#00H
MOV R0,#0FFH
RAM_00H:
MOV @R0,A
DEC R0
CJNE R0,#08H,RAM_00H
RET
;* * * * * * * * * * * * * * * * * * * * * *
; 标号 :led_disp_set
; 功能 :显示设置
; 入口条件:
; 出口信息:
led_disp_set:
clr pden
clr pben
mov disp_ip_reg,#04h
mov disp_bit_reg,#11110111b
mov dian_disp_reg,#0ffh
ret
;* * * * * * * * * * * * * * * * * * * * * *
; 标号 :key_set
; 功能 :按键设置
; 入口条件:
; 出口信息:
key_set:
mov key_disposal_interval_l_reg,#key_disposal_interval_l_time
clr key_disposal_bit
clr key_buf_bit
mov ascii_ip,#zidong_kongzhi_data
setb zidong_kongzhi_bit
mov key_timer_reg,#00h
mov key_yes_reg,#00h
mov key_data_reg,#00h
mov key_01_time_reg,#keyx_ch_timer ;捕获连续按键(1)时间
mov key_02_time_reg,#keyx_ch_timer ;捕获连续按键(2)时间
mov keyx_time_reg,#keyx_timer ;按键消抖时间
mov key_buf_write_ip,#00h ;按键缓冲区写指针
mov key_buf_read_ip,#00h ;按键缓冲区读指针
ret
;* * * * * * * * * * * * * * * * * * * * * *
; 标号 :display_test
; 功能 :
; 入口条件:
; 出口信息:
display_test:
mov p0,#0ffh
setb pden
nop
clr pden
mov p0,#00h
setb pben
nop
clr pben
mov r7,#20
display_test_wait:
lcall dl_30ms_process
lcall refresh_watchdog_timer ;更新看门狗时间
djnz r7,display_test_wait
ret
;* * * * * * * * * * * * * * * * * * * * * *
; 标号 :read_sys_data_process
; 功能 :读系统整定值
; 入口条件:
; 出口信息:
read_sys_data_process:
mov par_err_flag_reg,#00h
mov par_err_flag_reg1,#00h
lcall read_parameter_a_process ;读参数A
;lcall read_parameter_e_process ;读参数E
lcall read_parameter_h_process ;读参数H (读20ma的最大电压参数)
lcall read_parameter_l_process ;读参数L (读4ma的最小电压参数)
lcall read_parameter_b_process ;读参数B
lcall read_jiaokai_process ;读校开参数
lcall read_jiaoguan_process ;读校关参数
mov a,par_err_flag_reg
orl a,par_err_flag_reg1
jz read_sys_data_proc_end
mov ascii_ip,#err1_data
mov reshold_percent_reg,resh_percent_reg
mov reslold_percent_reg,resl_percent_reg
read_sys_data_proc_end:
ret
;* * * * * * * * * * * * * * * * * * * * * *
; 标号 :read_parameter_a_process
; 功能 :读参数A
; 入口条件:
; 出口信息:
read_parameter_a_process:
mov flash_page_reg,#flashpage_par_a_addr
lcall flash_read_process
mov a,edata1
cjne a,#jiaoyan_data,read_parameter_a_proc
mov par_a_reg,edata2
clr par_a_err_bit
ret
read_parameter_a_proc:
setb par_a_err_bit
mov par_a_reg,#par_a_set_data
ret
;* * * * * * * * * * * * * * * * * * * * * *
; 标号 :write_parameter_a_process
; 功能 :写参数A
; 入口条件:
; 出口信息:
write_parameter_a_process:
mov flash_page_reg,#flashpage_par_a_addr ;选择页
mov r0,#flash_addr_5 ;选择页内地址
mov r1,#jiaoyan_data ;需要改变的页内地址数据
mov r2,par_a_reg ;需要改变的页内地址数据
mov r3,#00h
mov r4,#00h
lcall flash_write_process ;改变选中的页内地址数据
clr par_a_err_bit
ret
;* * * * * * * * * * * * * * * * * * * * * *
; 标号 :read_parameter_e_process
; 功能 :读参数e
; 入口条件:
; 出口信息:
;read_parameter_e_process:
; mov flash_page_reg,#flashpage_par_e_addr
; lcall flash_read_process
; mov a,edata1
; cjne a,#jiaoyan_data,read_parameter_e_proc
; mov par_e_reg,edata2
; clr par_e_err_bit
; ret
;read_parameter_e_proc:
; setb par_e_err_bit
; mov par_e_reg,#par_e_set_data
; ret
;* * * * * * * * * * * * * * * * * * * * * *
; 标号 :write_parameter_e_process
; 功能 :写参数e
; 入口条件:
; 出口信息:
;write_parameter_e_process:
; mov flash_page_reg,#flashpage_par_e_addr ;选择页
; mov r0,#flash_addr_5 ;选择页内地址
; mov r1,#jiaoyan_data ;需要改变的页内地址数据
; mov r2,par_e_reg ;需要改变的页内地址数据
; mov r3,#00h
; mov r4,#00h
; lcall flash_write_process ;改变选中的页内地址数据
;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -