工具/软件:Code Composer Studio
您好!
我使用 Hercules 的 UART、但我有问题。 我使用一个数组来存储从 MCU 接收到 UART 端口的字节、但我看到程序丢失了接收到的第一个字节。
例如、当发送安全 1234时、MCU 仅发送 其他 UART 234、如果我再次发送安全 1234、则 MCU 显示2341。
我共享 在 ISR 和主代码中使用的基本代码。
int main (空)
{
/*用户代码开始(3)*/
int i=0;
MCU_Init();
//sci_Restart();
while (1)
{
RX_NEXT = 0;
RX_READ=0;
RxB_NEX=0;
RxB_READ=0;
延迟(10);
if (flag_bluy=1){//读取缓冲区
sciSend (蓝色、11、(无符号字符*)"\r\n 缓冲区!\r\n");
while (flag_Blue=1){
sciSendByte (蓝色、Rx_buffer_blue[RxB_Read]);
RxB_READ++;
RxB_NEX--;
if (RxB_NEX=1){
Flag_Blue = 0;
RxB_READ=0;
RxB_NEX=0;
for (i=0;i<100;i++){
RX_buffer_blue[i]=0;}
}
}
}
}
void sciNotification (sciBASE-t * sci、无符号标志)
{
if (sci=blue){
sciReceive (sci、1、(unsigned char *)&rx_buffer_blue[RxB_NEX]);
sciSendByte (蓝色、Rx_buffer_blue[RxB_NEX]);
RxB_NEX++;
if (sciIsRxReady (sci)=0){
Flag_Blue = 1;
}
}
如果您有任何建议或问题,请告诉我