ISD2560 problem

Jun 21, 2008 1 Replies

Hello,



I have a problem controlling the ISD2560 audio recorder, connected to a microcontroller (Atmel Mega 32). I have recorded several messages and they are correctly played back in push button mode. But I need to play one specified message, not all of them.



The ISD2560 works now with A4(M4) = A8 = A9 = 1, A0(M0) controlled by the microcontroller (signal name: Isd_m0), with the rest of Ax = 0. The microcontroller controls inputs: P/!R (Isd_pr), PD (Isd_pd), !CE (Isd_ce).



According to the documentation, the general idea of playing back the n-th message is as follows:



- "Rewind" the memory to the beginning (a positive pulse to the PD),



- Turn on "fast-playing" (M0=1) while !CE = 1,



- Pulse CE (1 -> 0 -> 1) n-1 times,



- Enable normal playback (M0 = 0),



- Pulse !CE once.



Unfortunately, the effects are rather random: some message is played (or sometimes not), but not the one which I want. Delays between line changes affect the behavior. How should this be done properly? The following code in Bascom should do this job (but doesn't). In the original code, there is a delay (waitms 1) after each assignment.



Isd_pr = 1 Isd_pd = 0 Isd_pd = 1 Isd_pd = 0



For i = 2 To n Isd_m0 = 1 Isd_ce = 0 Isd_ce = 1 Next i



Isd_m0 = 0 Isd_ce = 0 Isd_ce = 1


Regards Piotr


Problem solved - see discussion on sci.electronics.design.

P.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required