void moduleOutData(u8*data, u8 len) //api
{
unsigned char i;
if ((txLen+len)<MAX_SIZE)//buff not ove
RFlow
{
for (i=0;i<len;i++){
txBuf[txLen+i] = *(data+i);
}
txLen += len;
}
}
#ifdef MM32W0NTB//NTB 32Pin UART1
void UART1_IRQHandler(void) //串口1中断服务程序
#else //PFB 48Pin UART2
void UART2_IRQHandler(void) //串口2中断服务程序
#endif
{
if(UART_GetITStatus(UART_BLE, UART_IT_TXIEN) != RESET){
UART_ClearITPendingBit(UART_BLE,UART_IT_TXIEN);
TxTimeout = SysTick_Count + (20000/BaudRate);
if (PosW < txLen){
UART_SendData(UART_BLE,txBuf[PosW++]);
if (PosW == txLen){
txLen = 0;
PosW = 0;
}
}
else{
UART_ITConfig(UART_BLE, UART_IT_TXIEN, DISABLE);
}
}
}
以上例程使用的是UART接口的自定义AT指令实现方式,用户可以根据需要自行修改为其他接口,如SPI、IIC、CAN、USB等。
[url=]
[/url]0