void InitPeripheralClocks(void)
{
EALLOW;
// HISPCP/LOSPCP prescale register settings, normally it will be set to default values
SysCtrlRegs.HISPCP.all = 0x0001;
SysCtrlRegs.LOSPCP.all = 0x0002;//默认配置,37.5M,假设值记为n
……
}
void spi_init()
{
InitSpiaGpio();
SpiaRegs.SPICCR.all =0x0007;
SpiaRegs.SPICTL.all =0x000E;
SpiaRegs.SPIBRR =0x0005; //假设值记为x
//波特率 =LSPCLK/(SPIBRR+1)
如果想配置波特率为4.5M,就应该有150M/2^n)/(x+1)=4.5M;
但是好像求不出来同时为整数的n和x。
……
}