📄
字号:
;********************************
; 主程序
;********************************
MOV SP,#SPCZ-1 ;SP(指针)初值
LCALL CSH ;初始化
LCALL madeXZB ;建立修正表
CLR BZ_FSSJ ;发送数据标志,0=需处理
CLR BZ_QDXZ ;启动修正标志,0=起动
CLR XLDZ ;下拉电阻
LOOP1:
LCALL LYCL ;录音处理
;接收:
JB BZ_RXD,LOOP2 ;接收标志,1=无
;LCALL JSCL ;接收处理
LOOP2:
;发送:
JB BZ_XFS,LOOP3 ;需发送标志,1=不需
LCALL FSCL ;发送处理
LOOP3:
;恢复时间计数器:
INC FHJSQ ;恢复计数器
MOV A,FHJSQ
JNZ LOOP4 ;计数没到
LCALL SJHFCL ;时间恢复处理
LOOP4:
JNB BZ_XZYL,LOOP5 ;修正音量标志,0=不修正
CLR BZ_XZYL
LCALL XZYLCL ;修正音量处理
LOOP5:
LJMP LOOP1 ;循环
include "软件陷阱.asm"
;********************************
; 修正音量处理
;********************************
PROC XZYLCL
XZYLCL:
JNB BZ_YLHF,XZYLCL1 ;音量恢复标志,0=不恢复
CLR BZ_YLHF
LCALL MOV_code_EXRAM ;读修正表
LCALL MOV_EXRAM_EEPROM ;写闪存
LCALL MOV_EEPROM_EXRAM ;读闪存
LCALL FWY ;恢复音
XZYLCL1:
JNB BZ_YLZJ,XZYLCL2 ;音量增加标志,0=不增加
CLR BZ_YLZJ
LCALL SSYJ ;上升音阶
XZYLCL2:
JNB BZ_YLJX,XZYLCL3 ;音量减小标志,0=不减小
CLR BZ_YLJX
LCALL XJYJ ;下降音阶
XZYLCL3:
JNB BZ_YLBC,XZYLCL4 ;音量保存标志,0=不保存
CLR BZ_YLBC
LCALL MOV_EXRAM_EEPROM ;外存到闪存
LCALL MOV_EEPROM_EXRAM ;闪存到外存
LCALL BCY ;保存音
XZYLCL4:
XZYLCL_END:
RET
END
include "软件陷阱.asm"
;********************************
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -