国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

UART串口的前世今生

發布時間:2018-5-18 09:28    發布者:技術小白
很久很久以前,計算機還沒有出現,那時就已經存在了(計算機)史前的串口設備(電傳打字機,工控測量設備,通信調制解調器),為了連接這些串口,EIA制定了RS232標準,采用DB25接插件,支持同步和異步串口,D型的接口可以有效防止插反。標準化給使用帶來了便利。

時光荏苒,個人計算機出現了,這些已有的串口設備毫無疑問地成為了最初的外設,自然而然地RS232標準被個人計算機采納。但是設備制造商傾向于體積更小,成本更低的接口,因此,將DB25中未使用的和支持同步模式的引腳去掉,形成DB9。

最初的情況相當混亂,因為DB9只定義了信號,卻沒有指定信號和引腳的對應關系,各個制造商只能自行定義。幸運的是,IBM的PC成了工業標準,DB9逐漸統一到IBM的定義上來。

DB9只有9根線,遵循RS232標準。定義如下:

DTR,DSR------DTE設備準備好/DCE設備準備好。主流控信號。

RTS,CTS------請求發送/清除發送。用于半雙工時,收發切換。屬于輔助流控信號。半雙工的意思是說,發的時候不收,收的時候不發。那么怎么區分收發呢?缺省時是DCE向DTE發送數據,當DTE決定向DCE發數據時,先有效RTS,表示DTE希望向DCE發送,一般DCE不能馬上轉換收發狀態,DTE就通過監測CTS是否有效來判斷可否發送,這樣避免了DTE在DCE未準備好時發送所導致的數據丟失。

全雙工時,這兩個信號一直有效即可。

后來,計算機普及了,很多非RS232的串口也要接入PC機,如果為每一種新出現的串口都增加一個新的I/O口顯然不現實,因為PC后面板位置有限,因此,將RS232串口和非RS232串口都通過RS232口接入是最佳方案。UART的U(通用)指的就是這個意思。

早期ROM BIOS和DOS里的通信軟件都是為RS232設計的,在沒有檢測到DCD有效前不會發送數據,因此,就連發送一個字符這樣樸素的應用也要給出DCD、DTR、DSR等控制信號。因此,串口接頭上要將一些控制線短接,或者干脆繞過系統軟件自己寫通信程序。

到此,UART的涵義就總結為:通用的 異步 (串行) I/O口。

就在UART冠以通用二字,準備一統江湖的時候,制造商們不滿于它的速度、體積和靈活性(軟件可配置),推出了USB和1394串口。目前,筆記本上的UART串口有被取消的趨勢,因而有網友發出了“沒有串口,吾誰與歸”的慨嘆,古今多少事,都付笑談中,USB取代UART是后話,暫且不表。

話說自從賀氏(Hayes)公司推出了聰明貓(SmartModem),他們制定的MODEM接口就成了業界標準,自此以后,所有公司制造的兼容貓都符合賀氏標準(連AT指令也兼容,大家一起抄他唄)。

細觀賀氏制定的MODEM串口,與RS232標準大不相同。DTR在整個通信過程中一直保持有效,DSR在MODEM上電后/可以撥號前有效(取決于軟件對DSR的理解),在通信過程的任意時刻,只要DTR/DSR無效,通信過程立即終止。在某種意義上,這也可以算是流控,但肯定不是RS232所指的那種主流控。如果拘泥于RS232,你是不會理解DTR和DSR的用途的。

賀氏不但改了DTR和DSR,竟然連RTS和CTS的涵義也重新定義了。因此,RTS和CTS已經不具有最開始的意義了。從字面理解RTS和CTS,是用于半雙工通信的,當DTE想從收模式改為發模式時,就有效RTS請求發送,DCE收到RTS請求后不能立即完成轉換,需要一段時間,然后有效CTS通知DTE:DCE已經轉到發模式,DTE可以開始發送了。在全雙工時,RTS和CTS都缺省置為有效即可。然而,在賀氏的MODEM串口定義中,RTS和CTS用于硬件流控,和什么勞什子的全雙工/半雙工一點關系也沒有。

注意,硬件流控是靠軟件實現的,之所以強調“硬件”二字,僅僅是因為硬件流控提供了用于流量情況指示的硬件連線,并不是說,你只要把線連上,硬件就能自己流控。如果軟件不支持,光連上RTS和CTS是沒有用的。

RTS和CTS硬件流控的軟件算法如下:(RTS有效表示PC機可以收,CTS有效表示MODEM可以收,這兩個信號互相獨立,分別指示一個方向的流量情況。)

PC端處理:

發. 當 發現(不一定及時發現) CTS (-3v to -15v)無效時,停止發送,
當 發現(不一定及時發現) CTS (3v to 15v)有效時,恢復發送;
收. 0
當接收buffers中的bytes< to 有效信號(+3v RTS 時,給>
當接收buffers中的bytes>N 時,給 RTS 無效信號(-3v to -15v);

MODEM端處理:
同上,但RTS與CTS交換。
MODEM引腳名稱容易讓人迷惑的原因是因為學習的是RS232標準,卻使用賀氏標準的貓,兩個標準風馬牛不相及。
以下課程可免費試聽C語言電子PCBSTM32LinuxFPGA、Python、安卓等。
想學習的你和我聯系預約就可以免費聽課了。宋工Q35--24-65--90-88   Tel/WX:173--17--95--19--08


本文地址:http://m.qingdxww.cn/thread-525958-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 利用SAM E54 Xplained Pro評估工具包演示CAN轉USB橋接器以及基于CAN的主機和自舉程序應用程序
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 貿澤電子(Mouser)專區
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久99热成人精品国产 | 隔壁的邻居免费观看中文 | 免费国产99久久久香蕉 | 一级毛片一级毛片 | 色播影视| 国产蝌蚪| 四虎永久精品免费网址大全 | 欧美成人高清在线视频大全 | 国产91精品新入口 | 欧美 自拍偷拍 | www.日本高清视频.com | 亚洲一区二区三区在线免费观看 | 日韩欧美国产另类 | 亚洲伦理天堂 | 91精品观看91久久久久久 | 亚洲韩国欧美一区二区三区 | 成人免费动作大片黄在线 | 敢死队4完整版在线观看 | 羞羞免费网站在线 | 久草导航 | 国产高清视频91 | 日韩黄a级成人毛片 | 国产欧美日韩综合精品无毒 | 久久精品伊人网 | 天天操综 | 日韩在线观看视频网站 | 欧美一区二区三区香蕉视 | 免费簧片视频 | а新版天堂中文在线 | 国产激情久久久久久影院 | 国产一有一级毛片视频 | 男女污污无遮挡免费观看 | 久久久久九九 | www麻豆视频 | 日韩一级视频 | 四虎在线网址 | 五月天六月婷婷开心激情 | 精品日产一卡2卡三卡4卡在线 | 另类视频在线观看 | 欧美一级做一a做片性视频 欧美一级做性受 | wwwsihu|