資源簡介
串口收發(fā)程序
實驗任務(wù): 串口接收上位機(jī)發(fā)送的字符,并加1后回發(fā)給上位機(jī)
實現(xiàn)現(xiàn)象:單片機(jī)程序運行后上位機(jī)發(fā)送一個字符則收到加1后的字符,如上位機(jī)
串口助手發(fā)送字符'A'則收到'B'
硬件接線:
注意事項:(1) 板載晶振為12MHz,波特率為2400、4800、7200均可找到誤差不太
大的設(shè)置值,而有些波特率如9600則無法找到誤差小的設(shè)置值,
因此不要設(shè)置9600這類波特率。
(2) 整個串口的代碼和波特率計算,都可以由單片機(jī)小精靈工具自動
計算和生成,但是自己要理解計算過程,要能結(jié)合數(shù)據(jù)手冊看懂
代碼是怎么回事,不能只知其然不知其所以然
(3) 注意上位機(jī)串口助手的設(shè)置參考本文件夾中圖“8.1.串口助手設(shè)置.png”
(4) 因為上位機(jī)中串口不能被2個程序同時打開,因此在stcisp軟件下載
程序前必須將串口助手中串口關(guān)閉,否則一旦串口助手中打開串口
情況下進(jìn)行下載,則stcisp軟件會提示下載串口打開失敗
(5) 實驗時發(fā)送字符A則會收到字符B加一部分亂碼,是正常的,亂碼原因
是串口助手在幫我們發(fā)送字符A時自動在后面添加了'\r'和'\n',單
片機(jī)收到后也加1回發(fā)回來,就變成了亂碼。可以說這個問題是串口
助手“自作多情”造成的,不是我們單片機(jī)程序的問題。
代碼片段和文件信息
/*********************************************************************
巫妖王V2.0開發(fā)板例程
???朱有鵬物聯(lián)網(wǎng)大講堂出品(www.zhulaoshi.org)??????
??技術(shù)支持和學(xué)習(xí)討論請加朱有鵬單片機(jī)學(xué)習(xí)1群?214959925獲取
**********************************************************************
實驗序列:8.2
實驗任務(wù):?串口接收上位機(jī)發(fā)送的字符,并加1后回發(fā)給上位機(jī)
實現(xiàn)現(xiàn)象:單片機(jī)程序運行后上位機(jī)發(fā)送一個字符則收到加1后的字符,如上位機(jī)
??串口助手發(fā)送字符‘A‘則收到‘B‘
硬件接線:
注意事項:(1)?板載晶振為12MHz,波特率為2400、4800、7200均可找到誤差不太
??大的設(shè)置值,而有些波特率如9600則無法找到誤差小的設(shè)置值,
??因此不要設(shè)置9600這類波特率。
??(2)?整個串口的代碼和波特率計算,都可以由單片機(jī)小精靈工具自動
??????計算和生成,但是自己要理解計算過程,要能結(jié)合數(shù)據(jù)手冊看懂
??代碼是怎么回事,不能只知其然不知其所以然
??(3)?注意上位機(jī)串口助手的設(shè)置參考本文件夾中圖“8.1.串口助手設(shè)置.png”
??(4)?因為上位機(jī)中串口不能被2個程序同時打開,因此在stcisp軟件下載
??????程序前必須將串口助手中串口關(guān)閉,否則一旦串口助手中打開串口
??情況下進(jìn)行下載,則stcisp軟件會提示下載串口打開失敗
??(5)?實驗時發(fā)送字符A則會收到字符B加一部分亂碼,是正常的,亂碼原因
??????是串口助手在幫我們發(fā)送字符A時自動在后面添加了‘\r‘和‘\n‘,單
??片機(jī)收到后也加1回發(fā)回來,就變成了亂碼。可以說這個問題是串口
??助手“自作多情”造成的,不是我們單片機(jī)程序的問題。
版????本:V1.00
作????者:朱有鵬(AstonZhu)
時 ??間:2017.10.21 ??
*********************************************
評論
共有 條評論