I am trying to run the SPI bus at 10Mhz on the RM57.
To experiment I started by using "example_mibspiDMA.c" found in the HALCoGen examples at C:\ti\Hercules\HALCoGen\v04.05.01\examples\RM57Lx.
I commented out the line of code that enables loopback:
/* - enabling loopback ( this is to emulate data transfer without external wires */
//mibspiEnableInternalLoopback(mibspiREG1);
I then configured HALCoGen to set SPI1 to run at 1MHz. I put a logic analyzer on the SPI bus lines and the results were as expected. A square clock.
I then use HALCoGen to increase the clock rate. This is in the MIBSPI1 Data Format UI where I changed the Baudrate to 10MHz. As it goes up the clock gets distorted. This is very obvious at 10MHz, but also noticeable at lower clock rates such as 3 MHz.
In addition the data is no longer 8 clock pluses apart. Because of this the data doesn't transfer as expected.
Are there additional knobs I should be turning in HALCoGen to clean up the clock?