微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > CC2640 使用四线串口,能正常发送第一包数据,但是主机发送完后没有进入低功耗的问题

CC2640 使用四线串口,能正常发送第一包数据,但是主机发送完后没有进入低功耗的问题

时间:10-02 整理:3721RD 点击:

主机发送完成数据后,没有执行发送完成回调函数,主机的SRDY没有被拉高,导致不能进入低功耗

uint16 NPITLUART_writeTransport(uint16 len)

{    

 ICall_CSState key;   

  key = ICall_enterCriticalSection();        

TransportTxLen = len;

#ifdef POWER_SAVING    

TxActive = TRUE;

     // Start reading prior to impending write transaction    

     // We can only call UART_write() once MRDY has been signaled from Master    

     // device

    NPITLUART_readTransport();     在这里为什么要打开读,应为读的原因导致发送完成后SRDY不能被拉高,从而MRDY一直被牵引着(低电平)

 #else    

// Check to see if transport is successful. If not, reset TxLen to allow    

 // another write to be processed    

if(UART_write(uartHandle, TransportTxBuf, TransportTxLen) == UART_ERROR )    

{      

    TransportTxLen = 0;    

}

#endif //POWER_SAVING    

ICall_leaveCriticalSection(key);        

return TransportTxLen;

}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top