欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: STC12c5a60s2單片機串口應用問題 [打印本頁]

作者: 代碼蝦1    時間: 2019-2-19 15:50
標題: STC12c5a60s2單片機串口應用問題
請教下面關于串口發送的問題,如下3個程序有什么區別?還請高手詳細講解一下。
這種芯片(STC12c5a60s2)的串口應用還有那些好的例子請貼出來共享一下唄(注本人菜鳥一
1
void send_uart1(uchar ck1)
{
SBUF=ck1;
while(TI==0);
TI=0;
}

2

void UartPrintASCII(unsigned char c)  
{
    TI=0;   
    SBUF=c;   
    while(TI==0);   
    TI=0;   
}

3
void UartPrintf(unsigned char *p)   
{
  while(*p)
  {
   SBUF=*(p++);
  while(TI==0)
  {
   ;
   ;
   ;
  };
  TI=0;
}   
}


作者: wulin    時間: 2019-2-19 21:28
例1和例2沒有什么區別,例2的第一行TI=0;是贅句,但不影響功能,都是串口發送一個字節函數。例3是串口連續發送多字節函數,通常指針P指向某個數組,當數組元素發完while(*p)為假,即跳出循環,while(TI==0)花括號內的分號是為了獲得短暫延時,實際應用中可有可無。希望對你有所幫助。
作者: yaoji123    時間: 2019-2-19 21:34
對你可能有幫助,串口通訊數據協議中有校驗。

STC12C5A60S2_UART.rar

1.62 KB, 下載次數: 15

串口通訊


作者: 代碼蝦1    時間: 2019-2-20 09:29
wulin 發表于 2019-2-19 21:28
例1和例2沒有什么區別,例2的第一行TI=0;是贅句,但不影響功能,都是串口發送一個字節函數。例3是串口連續 ...

例三能舉個例子嗎?怎樣發送數組不太明白啊

作者: 笨笨兔    時間: 2019-2-20 12:12
瞎猜:例三最多只能發送256個吧。具體發送多少個,看實際應用。
作者: iofree    時間: 2019-2-20 12:29
代碼蝦1 發表于 2019-2-20 09:29
例三能舉個例子嗎?怎樣發送數組不太明白啊

二樓的兄弟說得比較清楚了,例三里面主要有個指針的概念,這個是C語言編程的一個難點,是其他高級語言所沒有的,這個例子里指針實際指向了一個數組,它在程序里體現為一段連續的存儲空間,所以配合一個循環語句你就可以把這段存儲空間的字節內容挨個送給串口輸出
作者: struct00    時間: 2019-2-20 17:52
wulin 發表于 2019-2-19 21:28
例1和例2沒有什么區別,例2的第一行TI=0;是贅句,但不影響功能,都是串口發送一個字節函數。例3是串口連續 ...

說的很明了




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1