顶顶电子携助你 轻松玩转单片机 www.ddmcu.com
将单片机和实惠一网打尽
1
IS
一、
1.IS
D4000 语音开发板实例说明(汇编语言)
——取自《轻松玩转 51 单片机》一书第 20 章部分内容
ISD4000 语音开发板实例说明(汇编语言) ..................................................................... 1
一、ISD4000 驱动程序软件包的制作 ................................................................... 1
二、实例解析——语音的录制与播放 ................................................................... 3
ISD4000 驱动程序软件包的制作
ISD4000 系列芯片中,ISD4002/4003 与 ISD4004 操作指令不尽相同,因此,二者的驱
动程序软件包也不尽一致,ISD4002 和 ISD4004 驱动程序软件包的详细内容如下:
D4002 驱动程序软件包
ISD4002 驱动程序软件包文件名为 ISD4002_drive.asm,具体内容如下:
PUBLIC POWERUP,TRANS_8BIT,POWEROFF,STOP, SETREC,SETPLAY,DELAY_50ms
CODE_ISD4002 SEGMENT CODE
SS EQU P1.0 ;片选
SCLK EQU P1.1 ;SPI串行时钟
MOSI EQU P1.2 ;ISD4000数据输入
MISO EQU P1.3 ;ISD4000数据输出
ADDRL EQU 20H
ADDRH EQU 21H
RSEG CODE_ISD4002
;以下是 ISD 上电子程序
POWERUP: CLR SS ;开片选
MOV A,#20H ;上电指令
ACALL TRANS_8BIT ;写 8 位数据
SETB SS ;关片选
ACALL DELAY_50ms ;50mS 延时
ACALL DELAY_50ms ;50mS 延时
RET
;主机通过数据线 MOSI 向 ISD4000 写入 8 位数据子程序
TRANS_8BIT: CLR SS ;开片选
MOV R6,#8 ;8位
CLR SCLK ;时钟 SCLK=0
TRANS1: MOV C,ACC.0 ;ACC 的位送 C
MOV MOSI,C ;数据写 MOSI
SETB SCLK ;时钟 SCLK=1
RR A ;A右移
CLR SCLK ;时钟 SCLK=0
DJNZ R6,TRANS1 ;循环 8 次
RET ;
评论0