📄 kdv200-b.asm
字号:
sp_ip data 0c0h ;堆栈长度 :::::
key_disposal_interval_l_time data 008 ;按键处理时间间隔 :::::
keyx_timer data 005 ;按键消抖时间 :::::
keyx_ch_timer data 02fh ;捕获连续按键时间 :::::
key1 data 001h ;按键(1)的值 :::::
key2 data 002h ;按键(2)的值 :::::
key3 data 003h ;按键(3)的值 :::::
key31 data 004h ;按键(3)+(1)的值 :::::
key32 data 005h ;按键(3)+(2)的值 :::::
key12 data 006h ;按键(1)+(2)的值 :::::
key123 data 007h ;按键(1)+(2)+(3)的值 :::::
; :::::
; :::::
th0_data data 03ch ;50ms :::::
tl0_data data 0afh ; :::::
th1_data data 0ech ;5ms :::::
tl1_data data 078h ; :::::
th2_data data 000h ; :::::
tl2_data data 000h ; :::::
; :::::
zidong_kongzhi_data data 000h ;自动控制画面 :::::
shoudong_kongzhi_data data 001h ;手动控制画面 :::::
zidong_zero_data data 002h ;自动校零画面 :::::
shoudong_zero_data data 003h ;手动校零画面 :::::
diandong_kongzhi_data data 004h ;点动控制画面 :::::
parameter_set_data data 005h ;参数a设置画面 :::::
parameter_set_e_data data 006h ;参数e设置画面 :::::
parameter_set_h_data data 007h ;参数h设置画面 :::::
parameter_set_l_data data 008h ;参数l设置画面 :::::
parameter_set_b_data data 009h ;参数b设置画面 :::::
err1_data data 00ah ;错误信息1画面 :::::
err2_data data 00bh ;错误信息2画面 :::::
err3_data data 00ch ;错误信息3画面 :::::
chxx_data data 00dh ;自动校零完成对错 :::::
parameter_set_a_save_data data 00eh ;参数a存盘设置画面 :::::
parameter_set_e_save_data data 00fh ;参数e存盘设置画面 :::::
parameter_set_h_save_data data 010h ;参数h存盘设置画面 :::::
parameter_set_l_save_data data 011h ;参数l存盘设置画面 :::::
parameter_set_b_save_data data 012h ;参数b存盘设置画面 :::::
res_display_huamian_data data 013h ;电流显示画面
time_1s_data data 040 ;50ms X 40 = 1S :::::
time_2s_data data 040 ;50ms X 40 = 2S :::::
H_data data 010h ;H :::::
J_data data 011h ;J :::::
L_data data 012h ;L :::::
n_data data 013h ;n :::::
P_data data 014h ;P :::::
q_data data 015h ;q :::::
r_data data 016h ;r :::::
U_data data 017h ;U :::::
y_data data 018h ;y :::::
equ_data data 019h ;= :::::
heng_data data 01ah ;- :::::
xiaheng_data data 01bh ;_ :::::
blank_data data 01ch ;空格 :::::
; :::::
jiaoyan_data data 055h ; 校验数据 :::::
Flash_read data 001h ; FlashEE 命令: 读 页 :::::
Flash_write data 002h ; FlashEE 命令: 写 页 :::::
Flash_verify data 004h ; FlashEE 命令: 校验 页 :::::
Flash_erase data 005h ; FlashEE 命令: 擦除 页 :::::
Flash_erase_all data 006h ; FlashEE 命令: 擦除 全部 :::::
; :::::
flash_addr_1 data 01h ; FlashEE页内地址1 :::::
flash_addr_2 data 02h ; FlashEE页内地址2 :::::
flash_addr_3 data 03h ; FlashEE页内地址3 :::::
flash_addr_4 data 04h ; FlashEE页内地址4 :::::
flash_addr_5 data 05h ; FlashEE页内所有地址 :::::
; :::::
;- - - - - - - - - FlashEE第 N 页 - - - - - - - - -; :::::
flashpage_par_a_addr data 000h ; :::::
flashpage_par_e_addr data 001h ; :::::
flashpage_par_h_addr data 002h ; :::::
flashpage_par_l_addr data 003h ; :::::
flashpage_par_b_addr data 004h ; :::::
flashpage_jiaokai_addr data 005h ; :::::
flashpage_jiaoguan_addr data 006h ; :::::
flashpage_jiaoia_max_addr data 007h
flashpage_jiaoia_min_addr data 008h
flashpage_jiaozt_save_addr data 009h
;- - - - - - - - - 参数默认值 - - - - - -- - - - - -; :::::
par_a_set_data data 090 ;
par_b_set_data data 001 ;
par_e_set_data data 006 ;
par_hh_set_data data 00ch ;
par_hl_set_data data 0e6h ;
par_lh_set_data data 002h ;
par_ll_set_data data 0a6h ;
par_kai_h_data data 00eh ;
par_kai_l_data data 03eh ;
par_guan_h_data data 002h ;
par_guan_l_data data 0e4h ;
;- - - - - - - - - 数据区长度 - - - - - -- - - - - -; :::::
res_adc_len_data data 016
ia_adc_len_data data 016
;- - - - - - - - - 电机方向控制数据 - - -- - - - - -; :::::
dianji_zheng_dir_data data 001
dianji_fan_dir_data data 002
dianji_stop_dir_data data 000
;- - - - - - - - - 千分之一等份数据 - - -- - - - - -; :::::
dengfen_h_data data 003h
dengfen_l_data data 0e8h
dengfen1_h_data data 01fh
dengfen1_l_data data 040h
;- - - - - - - - - 开度范围数据 - - -- - - - - -; :::::
kaiduh_range_data data 000h
kaidul_range_data data 090
;- - - - - - - - - 堵转时间范围数据 - - -- - - - - -; :::::
duzhuan_time_data data 008
;- - - - - - - - - 当电流百分比高或低于xx时的动作2秒的百分比值 - - -- - - - - -; :::::
gao_wucha_h_data data 003h
gao_wucha_l_data data 0d9h
di_wucha_h_data data 000h
di_wucha_l_data data 00fh
;- - - - - - - - - 校电流4ma和20ma时的电流电压波动范围 - - -- - - - - -; :::::
ia_jiaozhuen_data data 008h
res_jiaozhuen_data data 00ah
;::::::::::::::::::::::::::::::::::|---------|:::::::::::::::::::::::::::::::::::::::::::::::::::::::
;::::::::::::::::::::::::::::::::::| 主程序 |:::::::::::::::::::::::::::::::::::::::::::::::::::::::
;::::::::::::::::::::::::::::::::::|---------|:::::::::::::::::::::::::::::::::::::::::::::::::::::::
ORG 0000H
LJMP main
ORG 0003H
LJMP main ;int0
ORG 000BH
LJMP T0_process ;T0
ORG 0013H
LJMP main ;INT1
ORG 001BH
LJMP T1_process ;T1
ORG 0023H
LJMP main ;COM1
ORG 002BH
LJMP main ;T2_process ;T2
ORG 0033H
LJMP ADC_process ;ADC
ORG 003BH
LJMP main ;I2C_ISPI_process ;
ORG 0043H
LJMP main ;PSMI_process ;
ORG 0050H
main:
clr ea
clr rs0
clr rs1
mov p2,#0ffh
lcall watchdog_timer_set ;看门狗设置 2 s
mov sp,#02h ;
lcall ram_test ;RAM测试
mov sp,#sp_ip ;设置堆栈
lcall refresh_watchdog_timer ;更新看门狗时间
lcall led_disp_set ;显示初始化设置
lcall key_set ;按键初始化设置
lcall read_sys_data_process ;读系统整定值
lcall refresh_watchdog_timer ;更新看门狗时间
lcall sys_set ;系统初值设置
lcall t0_set ;t0设置
lcall t1_set ;t1设置
lcall adc_set ;adc设置
lcall refresh_watchdog_timer ;更新看门狗时间
mov r2,#res_adc_len_data ;填充电位器ad采样的电压缓冲区
main_adc_res_next:
lcall res_sampling_data_save_dispose ;
djnz r2,main_adc_res_next
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -