📄 接收.asm
字号:
inc r0
inc dptr
note_w_no_011: mov a,wmcon
jnb acc.1,note_w_no_011
djnz r2,note_w_no_01
anl wmcon,#11100011b ;EE不写、不使能、数据指针0
ret
;*******************************
;短信加1
inc_note_0: mov r0,#para_addr ;短信满:=15,
mov a,@r0
cjne a,#note_max+1,inc_note_00
inc_note_00: jnc inc_note_016
cjne a,#note_max,inc_note_01
inc_note_01: jc inc_note_02
mov @r0,#note_max ;短信满:=15
inc r0
mov r2,#note_max
inc_note_011: dec @r0
mov a,@r0
cjne a,#note_max+1,inc_note_012
inc_note_012: jc inc_note_013
mov @r0,#note_max-1
mov b,r0
inc r0
jmp inc_note_014
inc_note_013: inc r0
inc_note_014: djnz r2,inc_note_011
inc_note_015: lcall note_w_no_0
ret
inc_note_016: mov @r0,#0
inc_note_02: inc @r0 ;短信数小于15
mov b,@r0
dec b
inc r0
mov r2,#note_max
inc_note_021: mov a,@r0
cjne a,#note_max,inc_note_022
inc_note_022: jc inc_note_023
mov @r0,b
mov b,r0
inc r0
jmp inc_note_015
inc_note_023: inc r0
djnz r2,inc_note_021
inc_note_03: mov @r0,#0
mov r2,#15
inc r0
inc_note_031: mov @r0,#0ffh
inc r0
djnz r2,inc_note_031
lcall note_w_no_0
ret
;*******************************
;短信减1(短信号=note_no)
dec_note_0: mov r0,#para_addr ;短信满:=15,
mov a,@r0
jz inc_note_03
cjne a,#note_max+1,dec_note_01
dec_note_01: jnc inc_note_03
inc r0
mov r2,#note_max
dec_note_011: mov a,@r0
cjne a,note_no,dec_note_012
mov @r0,#0ffh
dec para_addr ;短信号-1
jmp dec_note_014
dec_note_012: jc dec_note_014
cjne a,#note_max,dec_note_013
dec_note_013: jnc dec_note_014
dec @r0
dec_note_014: inc r0
djnz r2,dec_note_011
lcall note_w_no_0
mov a,note_no
cjne a,para_addr,dec_note_015
dec_note_015: jc dec_note_017
mov a,para_addr
dec_note_016: dec a
mov note_no,a
dec_note_017: ret
ret
;*******************************
;查短信(短信号=note_no)
find_note_0: mov r0,#para_addr+1 ;短信满:=15,
mov r2,#note_max
find_note_01: mov a,@r0
cjne a,note_no,find_note_011
mov a,r0
ret
find_note_011: inc r0
djnz r2,find_note_01
mov a,#0ffh
ret
;*******************************
;查最近短信(短信号=note_no)
find_note_max_0:lcall note_r_no_0
mov r0,#para_addr ;短信满:=15,
mov a,@r0
dec a
mov note_no,a
cjne a,#note_max,find_note_max_01
find_note_max_01:jc find_note_max_02
mov note_no,#0ffh
find_note_max_02:lcall find_note_0
ret
;*******************************
delay_5s: mov t0_10ms,#0
mov t0_sec,#0
delay_5s_01: jb key_mark,delay_5s_02
mov a,t0_sec
delay_5s_02: cjne a,#5,delay_5s_01
ret
;*******************************
;空格
disp_nc_0: mov char_h,#' '
mov a,char_h
lcall char_write_0
ret
;*******************************
;*
disp_star_0: mov char_h,#'*'
mov a,char_h
lcall char_write_0
ret
;*******************************
;#
disp_ll_0: mov char_h,#'#'
mov a,char_h
lcall char_write_0
ret
;*******************************
;欢迎使用单工无线呼叫系统
disp_main_0: mov x_reg,#4
mov y_reg,#0
mov dptr,#table_0
mov r2,#4
disp_main_01: mov a,#0
movc a,@a+dptr
mov char_h,a
inc dptr
mov a,#0
movc a,@a+dptr
mov char_l,a
inc dptr
mov a,char_h
lcall char_write_0
inc x_reg
djnz r2,disp_main_01
mov x_reg,#2
mov y_reg,#2
mov dptr,#table_1
mov r2,#8
disp_main_02: mov a,#0
movc a,@a+dptr
mov char_h,a
inc dptr
mov a,#0
movc a,@a+dptr
mov char_l,a
inc dptr
mov a,char_h
lcall char_write_0
inc x_reg
djnz r2,disp_main_02
ret
;*******************************
;按数字键查看短信
;按”#“键修改机号
;按”*“键退出
disp_main_1: lcall clr_screen_0
mov x_reg,#2
mov y_reg,#0
mov dptr,#table_2
mov r2,#8
disp_main_11: mov a,#0
movc a,@a+dptr
mov char_h,a
inc dptr
mov a,#0
movc a,@a+dptr
mov char_l,a
inc dptr
mov a,char_h
lcall char_write_0
inc x_reg
djnz r2,disp_main_11
mov x_reg,#2
mov y_reg,#1
mov dptr,#table_3
mov r2,#7
disp_main_12: mov a,#0
movc a,@a+dptr
mov char_h,a
inc dptr
mov a,#0
movc a,@a+dptr
mov char_l,a
inc dptr
mov a,char_h
lcall char_write_0
inc x_reg
djnz r2,disp_main_12
mov x_reg,#6
mov y_reg,#16
lcall disp_ll_0
mov x_reg,#7
mov y_reg,#16
lcall disp_nc_0
mov x_reg,#2
mov y_reg,#3
mov dptr,#table_4
mov r2,#5
disp_main_13: mov a,#0
movc a,@a+dptr
mov char_h,a
inc dptr
mov a,#0
movc a,@a+dptr
mov char_l,a
inc dptr
mov a,char_h
lcall char_write_0
inc x_reg
djnz r2,disp_main_13
mov x_reg,#6
mov y_reg,#48
lcall disp_star_0
mov x_reg,#7
mov y_reg,#48
lcall disp_nc_0
ret
;*******************************
;显示新短信
;按”#“确认
;按”*“键退出
disp_main_2: lcall clr_screen_0
mov x_reg,#2
mov y_reg,#0
mov dptr,#table_5
mov r2,#5
disp_main_21: mov a,#0
movc a,@a+dptr
mov char_h,a
inc dptr
mov a,#0
movc a,@a+dptr
mov char_l,a
inc dptr
mov a,char_h
lcall char_write_0
inc x_reg
djnz r2,disp_main_21
mov x_reg,#2
mov y_reg,#2
mov dptr,#table_6
mov r2,#5
disp_main_22: mov a,#0
movc a,@a+dptr
mov char_h,a
inc dptr
mov a,#0
movc a,@a+dptr
mov char_l,a
inc dptr
mov a,char_h
lcall char_write_0
inc x_reg
djnz r2,disp_main_22
mov x_reg,#6
mov y_reg,#32
lcall disp_ll_0
mov x_reg,#7
mov y_reg,#32
lcall disp_nc_0
mov x_reg,#2
mov y_reg,#3
mov dptr,#table_4
mov r2,#5
disp_main_23: mov a,#0
movc a,@a+dptr
mov char_h,a
inc dptr
mov a,#0
movc a,@a+dptr
mov char_l,a
inc dptr
mov a,char_h
lcall char_write_0
inc x_reg
djnz r2,disp_main_23
mov x_reg,#6
mov y_reg,#48
lcall disp_star_0
mov x_reg,#7
mov y_reg,#48
lcall disp_nc_0
ret
;*******************************
;输入机号
disp_main_3: lcall clr_screen_0
mov x_reg,#3
mov y_reg,#1
mov dptr,#table_7
mov r2,#4
disp_main_31: mov a,#0
movc a,@a+dptr
mov char_h,a
inc dptr
mov a,#0
movc a,@a+dptr
mov char_l,a
inc dptr
mov a,char_h
lcall char_write_0
inc x_reg
djnz r2,disp_main_31
ret
;*******************************
;输入短信号
disp_main_4: lcall clr_screen_0
mov x_reg,#3
mov y_reg,#1
mov dptr,#table_8
mov r2,#5
disp_main_41: mov a,#0
movc a,@a+dptr
mov char_h,a
inc dptr
mov a,#0
movc a,@a+dptr
mov char_l,a
inc dptr
mov a,char_h
lcall char_write_0
inc x_reg
djnz r2,disp_main_41
mov x_reg,#7
mov y_reg,#32
mov a,key_beg
anl a,#0fh
orl a,#30h
mov char_h,a
lcall char_write_0
ret
;*******************************
;短信空
disp_main_5: lcall clr_screen_0
mov x_reg,#4
mov y_reg,#1
mov dptr,#table_9
mov r2,#3
disp_main_51: mov a,#0
movc a,@a+dptr
mov char_h,a
inc dptr
mov a,#0
movc a,@a+dptr
mov char_l,a
inc dptr
mov a,char_h
lcall char_write_0
inc x_reg
djnz r2,disp_main_51
ret
;*******************************
;*******************************
;*******************************
;*******************************
;*******************************
table_0:
db 0bbh,0b6h,0d3h,0adh,0cah,0b9h,0d3h,0c3h,
table_1:
db 0b5h,0a5h,0b9h,0a4h,0ceh,0deh,0cfh,0dfh
db 0bah,0f4h,0bdh,0d0h,0cfh,0b5h,0cdh,0b3h
table_2:
db 0b0h,0b4h,0cah,0fdh,0d7h,0d6h,0bch,0fch
db 0b2h,0e9h,0bfh,0b4h,0b6h,0cch,0d0h,0c5h
table_3:
db 0b0h,0b4h,0cah,0fdh,0bch,0fch,
db 0d0h,0deh,0b8h,0c4h,0bbh,0fah,0bah,0c5h
table_4:
db 0b0h,0b4h,0cah,0fdh,0bch,0fch,0cdh,0cbh,0b3h,0f6h
table_5:
db 0cfh,0d4h,0cah,0beh,0d0h,0c2h,0b6h,0cch,0d0h,0c5h
table_6:
db 0b0h,0b4h,0cah,0fdh,0bch,0fch,0c8h,0b7h,0c8h,0cfh
table_7:
db 0cah,0e4h,0c8h,0ebh,0bbh,0fah,0bah,0c5h
table_8:
db 0cah,0e4h,0c8h,0ebh,0b6h,0cch,0d0h,0c5h,0bah,0c5h
table_9:
db 0b6h,0cch,0d0h,0c5h,0bfh,0d5h
;*******************************
l1: mov r0,#80h
mov r2,#60
mov dptr,#table_0
mov @r0,#2
inc r0
l1_1: mov a,#0
movc a,@a+dptr
mov @r0,a
inc r0
inc dptr
djnz r2,l1_1
mov r2,#60
l1_2: mov a,#0
movc a,@a+dptr
mov @r0,a
inc r0
inc dptr
djnz r2,l1_2
mov @r0,#3
ret
;*******************************
;*******************************
;*******************************
;*******************************
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -