每个人。
我正在使用 PIC18F452 微控制器。我在 UART 上接收数据,通过附加额外的同步字对其进行帧化并传输它,我在按顺序发送同步字时遇到问题。我想要的是发送的话说... EA 09 C3 与数据。现在我用 MikroC 编写了这段代码:
int j=0;
SPBRG = 129;
TXSTA = 0b00100110;
RCSTA = 0b10010000;
while(1)
{
if(j == 0)
{
TXREG = 0xEA;
}
else if(j == 1)
{
TXREG = 0x09;
}
else if(j == 2)
{
TXREG = 0xC3;
}
else
{
TXREG = RCREG;
}
while(!TRMT); // wait for whole data frame to be ready for transmission
if(j == 100)
j = 0; // reset j after 100 bytes
else
j++;
}
现在这里发生的情况是同步字被传输但无序,有时还会发生字节重复。我想要的是 j 应该只在传输一个字节后递增,这里我认为 j 的递增与传输无关。
期待中的感谢。
问候,哈桑