This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Can't get SCI-A to work after booting via SCI-A on TMS320C28346

Hi,

I have a program that runs fine using the XDS100 debugger and I can download it into my controlCARD OK with GeneralPurposeGUI.exe via SCI-A. Once downloaded via SCI-A I know that it is running, because it flashes an LED, but the serial port on SCI-A is not set up at the correct Baud rate.

I tried connecting to the DSP with the XDS100 after downloading via SCI-A and it looked like the LOSPCP and HISPCP registers were still set to the values that the boot ROM sets them to and not what my code sets them to. Is there any reason why my code can't change these registers when it runs after being loaded by the boot ROM?

I need to program my code into the EEPROM and have searched to see if there are any example or open source loaders for the C2834x, but it looks like I have to write my own.

regards,

Charles

  • Charles,

    There should be no reason your code cannot change these registers after being loaded by the boot ROM. One minor thing to check - the LOSPCP and HISPCP registers are "EALLOW-protected".  In your code are you setting "EALLOW;" prior to writing to these registers? If not, writes will be ignored to these registers.

    For the 2834x, there are "SDFlash" solutions for programming an external EEPROM, but these require a spectrum digital emulator. Unfortunately I'm not aware of any other ready-made solution at this time.

     

  • Hi Chrissy,

    Yes I am using EALLOW - I am using InitPeripheralClocks() from DSP2834x_SysCtrl.c and the odd thing is that it works fine running from the debugger.

    I might try downloading a simpler program and see if that works.

     

    - Charles

  • I took the file "CommsManager.cs" from the TwoChannelBuck example project and used that to write a quick and dirty program loader for booting via SCI-A (something I was planning on doing anyway) and using my program SCI-A works fine after booting from SCI-A.

    - Charles