久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2534|回復: 4
打印 上一主題 下一主題
收起左側

[已解決]關于單片機串口通訊的疑惑

[復制鏈接]
跳轉到指定樓層
樓主
我按照老師給的程序運行了下,如下。
  1. #include <reg52.h>
  2. void ConfigUART(unsigned int baud);

  3. void main()
  4. {
  5.     EA = 1;   //使能總中斷
  6.     ConfigUART(9600);  //配置波特率為9600
  7.     while (1);
  8. }
  9. /* 串口配置函數,baud-通信波特率 */
  10. void ConfigUART(unsigned int baud)
  11. {
  12.     SCON  = 0x50;  //配置串口為模式1
  13.     TMOD &= 0x0F;  //清零T1的控制位
  14.     TMOD |= 0x20;  //配置T1為模式2
  15.     TH1 = 256 - (11059200/12/32)/baud;  //計算T1重載值
  16.     TL1 = TH1;     //初值等于重載值
  17.     ET1 = 0;       //禁止T1中斷
  18.     ES  = 1;       //使能串口中斷
  19.     TR1 = 1;       //啟動T1
  20. }
  21. /* UART中斷服務函數 */
  22. void InterruptUART() interrupt 4
  23. {
  24.     if (RI)  //接收到字節
  25.     {
  26.         RI = 0;   //手動清零接收中斷標志位
  27.         SBUF = SBUF;  //接收的數原路返回,左邊是發送SBUF,右邊是接收SBUF
  28.     }
  29.     if (TI)  //字節發送完畢
  30.     {
  31.         TI = 0;   //手動清零發送中斷標志位
  32.     }
  33. }
復制代碼
按理來說,我按照字符類發送0,接收是十六進制,他應該給我返回的是30,結果給我返回的是B0,我按照字符類發送1,接收是十六進制,他應該給我返回的是31,結果給我返回的是B1.
按照返回的值B0轉換為十進制是176,減128是48,48的ASCLL值是0.
按照返回的值B1轉換為十進制是177,減128是49,48的ASCLL值是1.
我有點理解不了他為什么給我返回的不是是30而是B0,為什么為這樣,求解答?



QQ截圖20171108092057.png (73.51 KB, 下載次數: 87)

QQ截圖20171108092057.png

QQ截圖20171108092111.png (42.68 KB, 下載次數: 84)

QQ截圖20171108092111.png

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:164602 發表于 2017-11-8 11:34 | 只看該作者
看了你的電路圖,可能問題出在你的晶振上。
你程序用的時鐘11.0592MHz,但電路圖中用的是12M,而12M晶振情況下,要誤差小,最大波特率為4800加倍。你設置的9600,誤差6.99%。一般都不可能接收到正確的信息了。
另外,你的STC-ISP程序太老了吧,下載一個新的。新版的可以看到波特率設置的誤差。



評分

參與人數 1黑幣 +50 收起 理由
admin + 50 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

板凳
ID:214628 發表于 2017-11-8 13:56 | 只看該作者
HC6800-ES-V2.0 發表于 2017-11-8 11:34
看了你的電路圖,可能問題出在你的晶振上。
你程序用的時鐘11.0592MHz,但電路圖中用的是12M,而12M晶振情 ...

晶振沒有錯誤,仿真設置里面我設置的是11.0592MHZ,只是沒有改外面的的標號。
回復

使用道具 舉報

地板
ID:246841 發表于 2017-11-8 14:21 | 只看該作者
仿真中單片機的晶振沒改,

評分

參與人數 1黑幣 +60 收起 理由
admin + 60 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

5#
ID:214628 發表于 2017-11-8 14:29 | 只看該作者
問題已解決了,感謝長帆888,我重建了一個新的仿真用的12M來測試發現沒問題,然后檢查原來的仿真設計,發現我的串口設置跟晶振時鐘設置沒有問題,主要是單片機內部還有一個時鐘忘記設置了,所以出現了這個問題,謝謝長帆888。

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美第一区 | 国产免费一区二区 | 欧美激情亚洲 | 久久综合入口 | 人人玩人人干 | 日韩在线视频一区二区三区 | 免费看91| 中文字幕亚洲欧美日韩在线不卡 | 久久久久久www | 欧美成人一级视频 | 欧美精品久久 | 国产视频久久久久 | 欧美日韩福利视频 | 久久久精品日本 | 精品欧美一区二区中文字幕视频 | 国产午夜亚洲精品不卡 | 黄色国产区 | 一区二区三区在线观看免费视频 | 久久久精品视 | 91在线观看| 欧美激情综合色综合啪啪五月 | 午夜影院在线观看视频 | 日本中文字幕在线视频 | 在线免费观看毛片 | hsck成人网| 高清亚洲 | 一级毛片高清 | 国产精品一区二区日韩 | 成人午夜 | 亚洲一区二区三区视频 | jizz中国日本 | 国产欧美精品区一区二区三区 | 欧美一级片免费看 | 精品综合久久 | 国产成人短视频在线观看 | 黄色大片视频 | 一区二区三区四区在线视频 | 欧美成人a∨高清免费观看 欧美日韩中 | 亚洲成人观看 | 日本大香伊一区二区三区 | 免费的av网站 |