當前位置:妙知谷 >

遊戲數碼 >電腦 >

微控制器和上位機利用串列埠進行通訊

微控制器和上位機利用串列埠進行通訊

大家在學習微控制器時,上位機編寫好程式後,生成檔案,下載到下位機進行執行,一般情況下,都是單機版,就是說只是微控制器和部分外設進行獨立的工作。今天讓我來分享一下,微控制器和上位機利用串列埠,進行實時通訊的小經驗

操作方法

(01)第一步,將keil 4安裝到PC上,建個工程,編寫串列埠程式(相信懂微控制器的小夥伴都會的,這是基本知識),在串列埠初始化程式中,設定好波特率(可以理解為單位時間內傳輸碼元符號的個數,要與位元率區分開),開啟串列埠中斷和總中斷;

微控制器和上位機利用串列埠進行通訊

(02)第二步,編寫串列埠中斷程式,串列埠中斷號是interrupt 4,(這個千萬別弄錯了),在中斷程式中,要定義一個接收從上位機PC端發過來的字元型別為:unsigned char ,並將微控制器接收到的資料再返回到PC機上,在串列埠助手上顯示出來;

微控制器和上位機利用串列埠進行通訊 第2張

(03)第三步,利用下載工具(相信大家都有的)下載編譯好的檔案到微控制器中,在PC端開啟串列埠助手,在“我的電腦”-->"裝置管理器"中找到對應的串列埠,設定好波特率,資料位數,停止位,校驗位,設定好以後,在“字元輸入框”中,輸入數字或者字元,點選“傳送”,此時,會在接收區看到接收到的字元。

微控制器和上位機利用串列埠進行通訊 第3張

(04)第四步,如果你在接收區看到的是亂碼,一定是你波特率沒有設定成一致,此時要檢查串列埠初始化的程式,一般情況下,設定為4800Bps或者9600Bps,是沒有問題的,過高(115200Bps)可能會出現問題,誤差越小越好;

特別提示

在設定波特率的程式中,很可能會出現亂碼,此時可以嘗試將波特率設定的低一些,再嘗試。

希望能幫到小夥伴們,大家一起努力!

  • 文章版權屬於文章作者所有,轉載請註明 https://miaozhigu.com/zh-tw/sm/diannao/evldrj.html