上一章中,已经实现了ATK-ESP8266的基础功能,在这一章中,用DSP来进行初始化和数据的接收和发送,该模块和28027的数据传输主要通过SCI进行,28027的硬件连接图为:
因此,要与模块进行数据传输,首先要对该DSP的SCI模块进行初始化配置,以及发送和接收数据代码的书写。
首先是GPIO的配置:
void UserInitAllGpio(void)
{
EALLOW;
//for sci
GpioCtrlRegs.GPAPUD.bit.GPIO28 = 0; // Enable pull-up for GPIO28 (SCIRXDA)
GpioCtrlRegs.GPAPUD.bit.GPIO29 = 0; // Enable pull-up for GPIO29 (SCITXDA)
GpioCtrlRegs.GPAQSEL2.bit.GPIO28 = 3; // Asynch input GPIO28 (SCIRXDA)
GpioCtrlRegs.GPAMUX2.bit.GPIO28 = 1; // Configure GPIO28 for SCIRXDA operation
GpioCtrlRegs.GPAMUX2.bit.GPIO29 = 1; // Configure GPIO29 for SCITXDA operation
EDIS;
}
然后是SCI的初始化配置:
void AnotherUserInitSCIA(void)
{
SciaRegs.SCIFFTX.all=0xE040; // 初始化发送FIFO
SciaRegs.SCIFFTX.bit.TXFFIL = 16; // FIFO=16时产生FIFO发送中断
SciaRegs.SCIFFTX.bit.TXFFINT =0; //不使能发送FIFO中断
SciaRegs.SCIFFRX.all = 0x204f; // 初始化接收FIFO,0x204f对应禁止接收FIFO的匹配中断
SciaRegs.SCIFFRX.bit.RXFFIENA=1; //1:使能接收FIFO中断,标准模式下的中断被屏蔽0:d