Our last problem.
I have managed to get tones to work with the TLV320AIC-EVM board using Purepath.
I did have a script that worked with AIC, however, it does not work now (no changes have been made).
We cannot get anything from our embedded system.
The only thing we can think of is that we have a clock mismatch somewhere?
Our clocks are set up as follows:
The script file that we were trying to run is:
{ 0x00, 0x00}, // Select Page 0.
// Setup the beep generator.
{ 0x47, 0x00},
{ 0x48, 0x00},
// Length of beep.
{ 0x49, 0x02},
{ 0x4A, 0x20},
{ 0x4B, 0x70},
// Sine and Cosine Frequency.
{ 0x4C, 0x10},
{ 0x4D, 0x2C},
{ 0x4E, 0x10},
{ 0x4F, 0x2C},
The embedded code that runs the beeps is:
WriteRegister (0x00, 0x00); // Select Page 0.
WriteRegister (0x40, 0x0C); // Mute DACS.
for (BytT aaa = 0; aaa < 200; aaa++)
{
__delay_cycles (65536);
}
WriteRegister (0x0B, 0x02); // Power Down NDAC divider.
WriteRegister (0x47, 0x80); // Enable Beep.
DisplayRegisterValue (0x00, 0x47);
DisplayRegisterValue (0x00, 0x49);
DisplayRegisterValue (0x00, 0x4A);
DisplayRegisterValue (0x00, 0x4B);
DisplayRegisterValue (0x00, 0x4C);
DisplayRegisterValue (0x00, 0x4D);
DisplayRegisterValue (0x00, 0x4E);
DisplayRegisterValue (0x00, 0x4F);
while (ReadRegister (0x26) != 0x11)
{
}
WriteRegister (0x47, 0x00); // Disable Beep.
(void) TxStringFlash1 (&SerialMessages [BEEP_COMPLETE], TRUE);
WriteRegister (0x0B, 0x82); // Power Up NDAC divider.
WriteRegister (0x40, 0x00); // Un-mute DACS.
DisplayRegisterValue (0x00, 0x47);