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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

學51單片機-UART口發送一個字符

[復制鏈接]
跳轉到指定樓層
樓主
ID:74835 發表于 2015-4-8 22:35 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
      
       UART口,又叫做通用異步收發傳輸器(Universal Asynchronous Receiver/Transmitter),是單片機常用功能的一部分,也是早期臺式電腦必備的一個硬件接口。
    當年我調試UART口的時候,用的還是超級終端,現在都用串口助手了,比我們當時方便多了。
       UART口按位發送和接收字節,雖然相比于并口,慢了很多,但是在有限的IO資源面前,這種方式是非常可取的。
       UART口主要用于ASCII碼的傳輸,傳輸過程遵循ANSI/EIA-232標準。ASCII碼是啥?看下表:
       表格太大了,放不下,放個ASCII碼鏈接吧: http://www.zg4o1577.cn/mcu/4342.html 大家可以自己看看。就是說,當我想發送字符“A”的時候,我要向串口發送十進制數65,或者十六進制數41。
       驅動電路主要有有兩種,一種是基于MAX232這類芯片的:
       上圖中,MAX232的10腳接到單片機的TXD上,9腳接到單片機的RXD上。
       另一種以CH340或者PL2303這類芯片為主,因為電腦上的RS232接口越來越少,所以這類芯片使用USB轉UART口的方式來實現,應用電路如下:
       通信過程中主要參數如下:
       波特率:傳輸速率,常用范圍9600~115200.
       數據位:就是每次發送的這個數據有幾位,常用的是8位,別的還有4、5、6、7.
       校驗位:用來校驗傳輸資料的正確性。
       停止位:是一個字符數據傳輸結束的標志,一般設為1位。
       波特率如何計算?
       方式1,3的波特率=1/32或1/16*計時器2的溢出率。
此處有一個公式:
波特率=1/16或1/32*(晶振的頻率/12*(256-TH1))
代入:
9600=11059200/32*12*(256-TH1)
TH1=TH0=FDH
       代碼比較多,不貼出來了,已經加好注釋了。有興趣的可以自己下載去研究,如下:
  1. /**********************51單片機學習例程************************
  2. *  平臺:Keil U4 + STC89C52
  3. *  名稱:UART口傳輸一個字符 A
  4. *  編寫:起航
  5. *  晶體:11.0592MHZ
  6. ******************************************************************/

  7. #include <reg52.h>
  8. typedef   unsigned char  uint8;
  9. typedef   unsigned int   uint16;

  10. uint8 num = 65;
  11. /***************************************************
  12. *
  13. *                                                        延時子函數
  14. *
  15. ****************************************************/
  16. void delay(uint16 n)
  17. {
  18.         while(n--);
  19. }


  20. /***************************************************
  21. *
  22. *                                                        串口初始化子函數
  23. *
  24. ****************************************************/
  25. void UART_init(void)
  26. {
  27.         SCON = 0x50;                                //工作在方式1 ,8位異步收發,波特率由定時器控制
  28.         TMOD = 0x20;                                //選擇定時器1做為波特率發生器,方式2
  29.         TH1  = 0xFD;                                //定時器賦初值
  30.         TL1  = 0xFD;
  31.         TR1  = 1;                                                //啟動定時器
  32.         ES   = 1;                                                //串口中斷允許
  33.         EA   = 1;                                                //開啟總中斷
  34. }

  35. /***************************************************
  36. *
  37. *                                                        字節發送子函數
  38. *
  39. ****************************************************/
  40. void UART_send_byte(uint8 dat)
  41. {
  42.         SBUF = dat;
  43.         while(!TI);                                        //等待發送完成
  44. }



  45. int main()
  46. {
  47.         UART_init();
  48.         while(1)                                                //循環發送字符 A
  49.         {
  50.                 UART_send_byte(num);
  51.                 delay(20000);
  52.         }
  53.         return(0);
  54. }
復制代碼

程序及hex文件下載: UART1.zip (28.52 KB, 下載次數: 72)

   



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

使用道具 舉報

沙發
ID:111422 發表于 2016-3-30 14:59 | 只看該作者
值得一贊
回復

使用道具 舉報

板凳
ID:120844 發表于 2016-5-16 23:15 | 只看該作者
贊一個,下載下來了,先看一下,正在試著寫232通訊方式的程序
回復

使用道具 舉報

地板
ID:120844 發表于 2016-5-16 23:17 | 只看該作者
贊一個,正好學習232通訊方式的程序
回復

使用道具 舉報

5#
ID:120844 發表于 2016-5-16 23:22 | 只看該作者
?附件的代碼也不多啊,也是64行而已的啊
回復

使用道具 舉報

6#
ID:208733 發表于 2017-9-13 11:53 | 只看該作者
好教程,值得我們新手學習
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久一二 | 国产一区二区三区四区在线观看 | 我要看一级片 | 中文字幕视频一区二区 | 福利精品 | 日日夜夜天天 | 日本三级电影免费观看 | 久久国产精品一区二区三区 | 在线视频一区二区 | 一区二区三区小视频 | 欧美 中文字幕 | 国产激情视频网站 | 精品久久久久久久人人人人传媒 | 黄a免费网络 | 高清视频一区二区三区 | 日韩精品免费视频 | 97久久精品 | 中文字幕三区 | 亚洲精品一区二区三区中文字幕 | 久久99精品久久久 | 91精品一区 | 国产成人免费视频 | 91一区| 亚洲欧洲成人在线 | 久久这里有精品 | 久久久黑人| 性做久久久久久免费观看欧美 | 亚洲欧洲精品一区 | 国产成年人小视频 | 精品久久久久久红码专区 | 亚洲看片网站 | 中文字幕av免费 | 亚洲成人一区二区三区 | 欧美成人一区二区三区 | av免费网址 | 在线一区视频 | 亚洲日韩中文字幕 | 亚洲成人在线网 | 亚洲欧美另类在线观看 | 天天操天天射综合 | 欧美一级二级在线观看 |