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

電子工程網(wǎng)

標(biāo)題: UART串口的前世今生 [打印本頁(yè)]

作者: 技術(shù)小白    時(shí)間: 2018-5-17 10:01
標(biāo)題: UART串口的前世今生
很久很久以前,計(jì)算機(jī)還沒(méi)有出現(xiàn),那時(shí)就已經(jīng)存在了(計(jì)算機(jī))史前的串口設(shè)備(電傳打字機(jī),工控測(cè)量設(shè)備,通信調(diào)制解調(diào)器),為了連接這些串口,EIA制定了RS232標(biāo)準(zhǔn),采用DB25接插件,支持同步和異步串口,D型的接口可以有效防止插反。標(biāo)準(zhǔn)化給使用帶來(lái)了便利。

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

最初的情況相當(dāng)混亂,因?yàn)镈B9只定義了信號(hào),卻沒(méi)有指定信號(hào)和引腳的對(duì)應(yīng)關(guān)系,各個(gè)制造商只能自行定義。幸運(yùn)的是,IBM的PC成了工業(yè)標(biāo)準(zhǔn),DB9逐漸統(tǒng)一到IBM的定義上來(lái)。

DB9只有9根線,遵循RS232標(biāo)準(zhǔn)。定義如下:

DTR,DSR------DTE設(shè)備準(zhǔn)備好/DCE設(shè)備準(zhǔn)備好。主流控信號(hào)。

RTS,CTS------請(qǐng)求發(fā)送/清除發(fā)送。用于半雙工時(shí),收發(fā)切換。屬于輔助流控信號(hào)。半雙工的意思是說(shuō),發(fā)的時(shí)候不收,收的時(shí)候不發(fā)。那么怎么區(qū)分收發(fā)呢?缺省時(shí)是DCE向DTE發(fā)送數(shù)據(jù),當(dāng)DTE決定向DCE發(fā)數(shù)據(jù)時(shí),先有效RTS,表示DTE希望向DCE發(fā)送,一般DCE不能馬上轉(zhuǎn)換收發(fā)狀態(tài),DTE就通過(guò)監(jiān)測(cè)CTS是否有效來(lái)判斷可否發(fā)送,這樣避免了DTE在DCE未準(zhǔn)備好時(shí)發(fā)送所導(dǎo)致的數(shù)據(jù)丟失。

全雙工時(shí),這兩個(gè)信號(hào)一直有效即可。

后來(lái),計(jì)算機(jī)普及了,很多非RS232的串口也要接入PC機(jī),如果為每一種新出現(xiàn)的串口都增加一個(gè)新的I/O口顯然不現(xiàn)實(shí),因?yàn)镻C后面板位置有限,因此,將RS232串口和非RS232串口都通過(guò)RS232口接入是最佳方案。UART的U(通用)指的就是這個(gè)意思。

早期ROM BIOS和DOS里的通信軟件都是為RS232設(shè)計(jì)的,在沒(méi)有檢測(cè)到DCD有效前不會(huì)發(fā)送數(shù)據(jù),因此,就連發(fā)送一個(gè)字符這樣樸素的應(yīng)用也要給出DCD、DTR、DSR等控制信號(hào)。因此,串口接頭上要將一些控制線短接,或者干脆繞過(guò)系統(tǒng)軟件自己寫(xiě)通信程序。

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

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

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

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

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

注意,硬件流控是靠軟件實(shí)現(xiàn)的,之所以強(qiáng)調(diào)“硬件”二字,僅僅是因?yàn)橛布骺靥峁┝擞糜诹髁壳闆r指示的硬件連線,并不是說(shuō),你只要把線連上,硬件就能自己流控。如果軟件不支持,光連上RTS和CTS是沒(méi)有用的。

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

PC端處理:

發(fā). 當(dāng) 發(fā)現(xiàn)(不一定及時(shí)發(fā)現(xiàn)) CTS (-3v to -15v)無(wú)效時(shí),停止發(fā)送,
當(dāng) 發(fā)現(xiàn)(不一定及時(shí)發(fā)現(xiàn)) CTS (3v to 15v)有效時(shí),恢復(fù)發(fā)送;
收. 0
當(dāng)接收buffers中的bytes< to 有效信號(hào)(+3v RTS 時(shí),給>
當(dāng)接收buffers中的bytes>N 時(shí),給 RTS 無(wú)效信號(hào)(-3v to -15v);

MODEM端處理:
同上,但RTS與CTS交換。
MODEM引腳名稱容易讓人迷惑的原因是因?yàn)閷W(xué)習(xí)的是RS232標(biāo)準(zhǔn),卻使用賀氏標(biāo)準(zhǔn)的貓,兩個(gè)標(biāo)準(zhǔn)風(fēng)馬牛不相及。
以下課程可免費(fèi)試聽(tīng)C語(yǔ)言、電子、PCB、STM32、Linux、FPGA、Python、安卓等。
想學(xué)習(xí)的你和我聯(lián)系預(yù)約就可以免費(fèi)聽(tīng)課了。宋工Q35--24-65--90-88   Tel/WX:173--17--95--19--08







歡迎光臨 電子工程網(wǎng) (http://www.qingdxww.cn/) Powered by Discuz! X3.4
主站蜘蛛池模板: www狠狠 | 国产免费色视频 | 一级一片免费看 | 99er精品视频| 四虎影酷| 久久艹视频 | 成人免费一区二区三区在线观看 | 亚洲高清在线视频 | 三区在线观看 | 黑人激情| 2021国产精品自在拍在线播放 | 在线播放毛片 | 亚洲一区色 | 免费人成在线水蜜桃视频 | 啪影院免费线在线观看 | 久久精品国产亚洲综合色 | 毛片女人毛片一级毛片毛片 | 人成免费在线视频 | 亚洲视频一区二区 | 麻豆精品在线播放 | 青青青视频免费一区二区 | 99爱视频免费高清在线观看 | 亚洲欧洲日韩在线 | 欧美日韩一区二区中文字幕视频 | 欧美一区二区三区在线可观看 | 在线青青 | 成人午夜在线观看国产 | 美国大片在线观看 | 经典三级在线播放线观看 | 成人性一级视频在线观看 | 亚洲另类在线观看 | 97视频在线播放 | 亚洲国产成人综合 | 高清国产精品久久久久 | 台湾xxx18| 免费女人18a级毛片视频 | 97在线免费 | 一级做a爱片就在线看 | 日本一区二区三区在线看 | 黑人极品巨大videoshd | 亚洲十八 |