![]() |
發布時間: 2020-12-7 21:10
正文摘要:把要傳送的數據給SBUF,但串口調試助手顯示的結果很奇怪: 這是我寫的程序: #include <reg52.h> #include <stdio.h> #include <string.h> #include <stdlib.h> #include <math.h ... |
應該是以數組為空作為結束判斷條件 |
以下是我自己的程序中使用的串口輸出代碼,已經實際測過,是OK的: 主函數中初始化串口: // 初始化串口 SCON=0x50; TMOD|=0x20; TH1=TL1=0xFD; TR1=1; // 串口輸出函數:輸出一個字符 void comchar(uchar dat) { SBUF=dat; while(!TI); TI=0; } // 串口輸出函數:輸出一個字符串 void comstr(uchar *dat) { uchar i=0; uchar temp; while(temp=dat[i++]) { comchar(temp); } } // 需要串口輸出的時候調用函數 // 串口輸出字符 comchar('A'); // 串口輸出字符串 comstr("this is test."); |
別用hex模式。。最好先用文本,,等熟悉了才hex |
串口通信應該是一樣的,你選擇文本顯示試試。 |
51hei截圖20201208082815.png (28.18 KB, 下載次數: 127)
215.94 KB, 下載次數: 6