串口接收标志位语句_如何获取串口的发送和接收的标志位?
我用C#寫了一個小的串口調試軟件,并在51的板子上調試成功了,但是換到STM32F103上不行了,由于剛學STM32,還很不熟悉,所以還請各位能否告訴我如何獲取串口的發送和接收的標志位。或是幫我把下面的代碼用STM32重構一遍,不勝感激,我真的不想做伸手黨。我可以公開我的調試軟件代碼。
這是上位機的界面,水平有限。。。。
c7bbf16b808acc2674f8efbbaa8c5e94_401.png (0 Bytes, 下載次數: 0)
2010-12-14 22:54 上傳
51上的代碼:
[mw_shl_code=c,true]void Send(uint8_t a, uint16_t c)
{
uint8_t b[4];
uint8_t i=0;
b[0] = a;
b[1] = c>>8;
b[2] = c&0xff;
b[3] = ~a;
ES = 0;//關串口中斷
for(i=0; i<4; i++)
{
SBUF = b;
while(!TI);
TI = 0;
}
}[/mw_shl_code]
[mw_shl_code=c,true]void Review(void)
{
uint16_t i;
uint8_t a[3] = {0xff,0xff,0xff};
if(RI)
{
a[0] = SBUF;
RI = 0;
i = 0;
while(i < 2000)
{
i++;
if(RI)
{
a[1] = SBUF;
RI = 0;
i = 0;
while(i < 2000)
{
i++;
if(RI)
{
a[2] = SBUF;
RI = 0;
i = 2000;
}
}
}
}
}
if(a[0]==0x00 && a[1]==0x01 && a[2]==0xff)
Send(0x00,(Date += 10));
else if(a[0]==0x00 && a[1]==0x02 && a[2]==0xff)
Send(0x00,(Date -= 10));
}[/mw_shl_code]
總結
以上是生活随笔為你收集整理的串口接收标志位语句_如何获取串口的发送和接收的标志位?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华硕h410csm怎么开启_主板BIOS
- 下一篇: seata 如何开启tcc事物_如何能在