1. 程式人生 > >基於51 微控制器的串列埠收發資料

基於51 微控制器的串列埠收發資料

在進行串列埠的收發資料過程中一定要注意波特率的問題。

大多數51微控制器用的都是11m晶振而只有少部分用的是奇葩的12m(樓主的就是),在12m晶振進行串列埠通訊時切忌要將波特率設定為4800以下,應為12m晶振的波特率在9600以上誤差很大容易丟失資料,動手能力強的可以折騰一下用定時器輸出9600波特率。

至於,串列埠中斷以及波特率的設定可以參考網上例子忒多。

在用串列埠助手進行串列埠收發資料時都會觸發串列埠中斷並且在傳送資料時只能夠一位一位的傳送,也就是SBUF=10是不行的智慧一位一位傳送也就是每次只能傳送(0-9或者一個字元)並且串列埠除錯助手接收到的資料是asii碼要進行下轉換,傳送也要進行一下轉換。這只是針對串列埠除錯助手

話不多說直接上程式碼:

 

由於程式碼不方便公佈所以只能上圖片需要的可以私聊博主

 

 轉載請標明原貼出處:https://blog.csdn.net/zj490044512