📄 isd2560p录放程序.asm
字号:
;语音芯片ISD2560分段录放程序,按键按下下录一段音或者播入一段语音
key_next bit p1.1;操控键
key_mode bit p1.2;录放模式
play_rec bit p1.0;1\放、0\录
PD BIT P1.6;power down;1\off,0\on
EOM BIT P1.7
A8 BIT P2.3
A9 BIT P2.4
CE BIT P3.6;0时可进行录放操作
BYT_DLY EQU 30H ;延时单元
address EQU P0 ;单片机输出到模块地址口
;*******************************************************
ORG 0000H
LJMP START
ORG 0030H
START: MOV SP,#0A0H
;*************************
MOV A,#00H
MOV R0,#0FFH
CLR_RAM:
MOV @R0,A
DJNZ R0,CLR_RAM
NOP
NOP
MOV BYT_DLY,#100
CALL DELAY
;*************************
;录放音初始化预备
MOV address,#00H ;段地址清0
CLR A8
CLR A9
mov R7,#00H ;录音段计数单元
MOV R0,#00H ;放音段计数简单元
JB key_mode,MODE_PLAY
;主程序
MODE_REC:
CALL KEY_REC ;调录音子程序
JNB key_mode,MODE_REC
MOV address,#00H
CLR A8
CLR A9
mov R0,#00H
MODE_PLAY:
CALL KEY_PLAY ;调放音子程序
JB key_mode,MODE_play
MOV address,#00H
CLR A8
CLR A9
mov R7,#00H
jmp MODE_rec
;***************************************************************************************
;***************************************************************************************
;录音源程序:
KEY_REC:
CLR play_rec ;设为录音状态
JB key_next,REC_OVER ;录音键是否按下?
MOV BYT_DLY,#200
CALL DELAY
JB key_next,REC_OVER ;录音键是否按下?
CALL NEXT1
REC_OVER:
RET
;*********************
NEXT1: INC R7
CJNE R7,#1,NEXT2
MOV address,#00H ;送字段1起始地址
CLR A8
CLR A9
LCALL RECORD
RET
NEXT2: CJNE R7,#2,NEXT3
MOV address,#20H ;送字段2起始地址
CLR A8
CLR A9
LCALL RECORD
RET
NEXT3: CJNE R7,#3,NEXT4
MOV address,#40H ;送字段3起始地址
CLR A8
CLR A9
LCALL RECORD
RET
NEXT4: CJNE R7,#4,NEXT5
MOV address,#60H ;送字段4起始地址
CLR A8
CLR A9
LCALL RECORD
RET
NEXT5: CJNE R7,#5,FBACK
MOV R7,#00H
MOV address,#80H ;送字段5起始地址
CLR A8
CLR A9
LCALL RECORD
FBACK:
RET
RECORD: CLR CE ;/CE端为0,开始录音
JNB key_next,$
MOV BYT_DLY,#200
CALL DELAY
JNB key_next,$
SETB CE
RET
;***************************************************************************************
;***************************************************************************************
;放音源程序:
KEY_PLAY:
SETB play_rec ;放音状态
JB key_next,PLAY_OVER ;放音键是否按下?
MOV BYT_DLY,#200
CALL DELAY
JB key_next,PLAY_OVER ;放音键是否按下
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -