Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
05/07/01 06:30
Read: times


 
#11399 - ISD4004 SOLID SATE VOICE CHIP
Dear Guys,

I'm trying to get my ISD4004 chip to do a play back using a simple Atmel 89C52 micro-controller, however for some reason can't get it to
work. It would be great if someone would give me a hand, so that I can get it to work.

Dear Steve,

I'm trying to get my ISD4004 chip to do a play back using a simple Atmel 89C52 micro-controller, however for some reason can't get it to
work. It would be great if you could please give me a hand, so that I can get it to work.

1. I have managed to get myself a ISD-ES302 Demonstration board and had recorded a number of sounds into my
ISD4004 chips. The sounds are recorded from the start of the memory, since ISD-ES302 allows this. The ES302 does not use an 8051 for this function.

2. When I playback this sounds on the ISD-ES302, all sound are all there.

3. The problem currently is that I cannot get my 89C52 microcontroller to playback this pre-recorded
messages.

a. I have an 8051 microcontroller (89C52) connected to the ISD-4004 as descibed in the ISD article "USING ISD33000
Series with 5Volts Powered Processors" (Figure 5-37 of page 5-94).

b. The following code (MCS-51) is then run on the 8051 to give commands to the ISD4004....however there is no
response from ISD4004.

c. When I take the chip and re-run it on the ISD-ES302......the sounds are still there and the chip is still working.

MISO BIT P5.0
MOSI BIT P5.1
SCLK BIT P5.2
SS BIT P5.3
RCO BIT P5.4
INT BIT P5.5


ISD4000:
MOV P5,#0FFH ; Used port 5 to Drive ISD4004
SETB SS
SETB MISO
SETB MOSI
CLR SCLK


CLR SS ; Ensure that SS is low for Power Up Command
LCALL DELAY_140 ; Small Delay (140uS)

MOV A,#20H ; POWER UP ISD-4004
LCALL WRITE_ISD4000 ; Send Command
LCALL DELAY_140 ; Small Delay

SETB SS ; SS goes High - Command Completed

LCALL DELAY_140 ; A Small Delay Again

CLR SS ; Ensure that SS is low to set Play Mode

MOV A,#0E0H ; Send Play Command
LCALL WRITE_ISD4000 ; Send Command
LCALL DELAY_140 ; Small Delay

MOV A,#05CH ; Send the Address to Play From
LCALL WRITE_ISD4000 ; Send Command
LCALL DELAY_140 ; Small Delay

SETB SS ; Command Completed : SS high
LCALL OS_RETURN ; End

WRITE_ISD4000:
MOV R0, #08 ; 8 bits long command
FF10:
RLC A ; Left Rotate A to Carry Flag
SETB SCLK ; SCLK set High
MOV MOSI, C ; Move bit to MOSI
LCALL Delay_75 ; 75uS Delay
CLR SCLK ; SCLK set Low
LCALL Delay_140 ; 140uS Delay
DJNZ R0, FF10 ; Repeat until 1 byte is dump on MOSI
RET


DELAY_75:
PUSH ACC
MOV A, #0FAH
MD_OLP5:
INC A
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
JNZ MD_OLP5
NOP
POP ACC
RET

DELAY_140:
PUSH ACC
MOV A, #0F4H
MD_OLP1:
INC A
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
JNZ MD_OLP1
NOP
POP ACC
RET








List of 5 messages in thread
TopicAuthorDate
ISD4004 SOLID SATE VOICE CHIP            01/01/70 00:00      
RE: ISD4004 SOLID SATE VOICE CHIP            01/01/70 00:00      
RE: ISD4004 SOLID SATE VOICE CHIP            01/01/70 00:00      
RE: ISD4004 SOLID SATE VOICE CHIP            01/01/70 00:00      
RE: ISD4004 SOLID SATE VOICE CHIP            01/01/70 00:00      

Back to Subject List