ISD4004语音芯片在语音报站器中的应用
该部分程序主要完成放音操作,把获得的放音内容的地址送到ISD4004中,完成放音。
PLAY?
ACALL POWERUP ?上电子程序
ACALL DELAY25 ?延迟子程序,至少延
迟25ms
CLR P1.6 ?选中ISD4004
MOV PLAY2?#11100000B ?存放SETPLAY命令
MOV A?PLAY0 ?送放音地址低8位
ACALL SEND ?调用送地址子程序
MOV A?PLAY1 ?送放音地址高8位
ACALL SEND
MOV A?PLAY2 ?送SETPLAY命令
ACALL SEND
SETB P1.6
CLR P1.6
MOV PLAYING?#11110000B ?送入放音指令
MOV A?PLAYING
ACALL SEND
SETB P1.6
RET
POWERUP? ?送上电指令子程序
MOV POWING?#00100000B ?送入语音芯片上电信号
MOV A?POWUPING
CLR P1.6
ACALL SEND
SETB P1.6
RET
SEND: ?向ISD4004送指令、
地址等的子程序
CLR MOSI
CLR P3.2
MOV R1?#8
OUTBIT1?
CLR P3.2 ?时钟下降
RRC A
MOV MOSI?C ?输出1位
NOP
NOP
SETB P3.2 ?时钟上升沿到
NOP
NOP
NOP
DJNZ R1?OUTBIT1
RET
放音程序中,要严格按照ISD4004的要求编程。首先要送上电指令,然后等待25μs的延迟,再送16位放音起始地址,最后送8位的开始放音指令。
在放音电路的调试过程中,首先测量ISD4004的工作电压是否是3V,如果是则进入下级调试。再看是否可以送入放音地址,对此可以测量AUDOUT引脚的电压,若为1.2V则说明可以读入放音地址。再后测量是否能够放音,可以测量AUDOUT引脚电压,若为1.2V则说明ISD4004芯片工作正常,可以放音。如果没有听到放音则调试后级放音电路,看是否是后级电路有问题。
本文介绍的报站器电路已经经过上车实验调试,能够稳定可靠工作。
- LT3751如何使高压电容器充电变得简单(08-12)
- 三路输出LED驱动器可驱动共阳极LED串(08-17)
- 浪涌抑制器IC简化了危险环境中电子设备的本质安全势垒设计(08-19)
- 严酷的汽车环境要求高性能电源转换(08-17)
- 适用于工业能源采集的技术 (08-10)
- 单片式电池充电器简化太阳能供电设计(08-20)