📄 21_1420.asm
字号:
;//************************************************************
;文件名: 语音芯片控制程序1420 FOR 8088
;功能: 微机控制语音芯片的录制和播放
;接线: 用导线对应连接语音接口模块的A0~A6到8255模块的PC0~PC6,
; 语音接口模块的A7接地,
; 8255模块的PC7接语音接口模块的REC(或PLAYE或PLAYL),
; 8255模块的CS_8255连CPU模块的200H。
;//***********************************************************
;PC0~6——A0~A6
;PC7——REC、PLAYE、PLAYL
PA8255 EQU 200H ;8255PA口地址
PB8255 EQU 201H ;8255PB口地址
PC8255 EQU 202H ;8255PC口地址
PCTL8255 EQU 203H ;8255控制口地址
CODE SEGMENT
ASSUME CS:CODE,DS:code,SS:code
START:
PUSH CS
POP DS
MOV DX,PCTL8255
MOV AL,80H ;设置8255,全部为输出
OUT DX,AL
MOV AL,00H ;录放音地址,自行选择
;CALL RECORD0 ;录音 调此子程序时PC7接REC
; CALL PLAYL ;电平放音 调此子程序时PC7接PLAYL
CALL PLAYE ;脉冲放音 调此子程序时PC7接PLAYE
; 实验时三个子程序取一个有效 逐个试验。
OK: JMP OK
;**************************************
; 名称:RECORD
; 功能:录音
;**************************************
RECORD0:
CALL ADDR_OUT ;设定开始录音地址
MOV DX,PCTL8255
MOV AL,0EH ;PC7: REC置“0”
OUT DX,AL ;控制开始录音
MOV CX,10 ;控制延时10s
RECORD1:
CALL DELAY1S
LOOP RECORD1
MOV DX,PCTL8255
MOV AL,0FH ;PC7: REC置“1”
OUT DX,AL ;释放录音按键
RET
;**************************************
;名称:PLAYL
;功能:电平控制放音
;**************************************
PLAYL:
CALL ADDR_OUT ;设定开始播放地址
MOV DX,PCTL8255
MOV AL,0EH ;PC7: PLAYL置“0”
OUT DX,AL ;控制开始录音
MOV CX,10 ;控制延时10s
PLAYL1:
CALL DELAY1S
LOOP PLAYL1
MOV DX,PCTL8255
MOV AL,0FH ;PC7: PLAYL置“1”
OUT DX,AL ;释放播放按键
RET
;**************************************
;名称:PLAYE
;功能:脉冲触发放音
;**************************************
PLAYE:
CALL ADDR_OUT ;设定开始播放地址
MOV DX,PCTL8255
MOV AL,0EH ;PC7: PLAYE置“0”
OUT DX,AL
NOP
NOP
MOV AL,0FH ;PC7: PLAYE置“1”
OUT DX,AL ;产生控制脉冲
RET
;**************************************
;名称:ADDR_OUT
;功能:发送地址
;入口:AL(地址)
;**************************************
ADDR_OUT:
MOV DX,PC8255
OR AL,80H ;PC7=1
OUT DX,AL
RET
;**************************************
; 名称:DELAY1S
; 功能:延时1S
;**************************************
DELAY1S: ;1000 000=50 000 * (18+2)
PUSH CX
MOV CX,0C350H ;C350H=50 000
DL1: NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
LOOP DL1
POP CX
RET
CODE ENDS
END START
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -