<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 整理單片機串口小招數

整理單片機串口小招數

作者: 時(shí)間:2018-07-30 來(lái)源:網(wǎng)絡(luò ) 收藏

招一:把函數發(fā)生器當發(fā)送器來(lái)用

本文引用地址:http://dyxdggzs.com/article/201807/384441.htm

如果要調試,而你只有一塊扳沒(méi)有計算機,這種情況下,可以用函數發(fā)生器當發(fā)送器來(lái)用。若波特率是9600,需將函數發(fā)生器頻率調到9600/2=4800HZ上,輸出的TTL電平直接到RXD;如果使用的是RS232接口,頻率不變的話(huà)就選函數雙極性(交流輸出)發(fā)生器。在這里提醒一下,電平有峰峰值到12VPP就夠了。此時(shí)收到數據必須是55H,可以用MOV P1、SBUF、在P1上測量電壓,沒(méi)顯示也可以測串口了。

理由:55H 是01010101 串口啟始位是0,先發(fā)55H最低位,于是一幀就是0(啟始)101010101(停止)-0(啟始)101010101(停止),正好是1/2波特率的方波。

招二:如果串口要實(shí)現遠距離傳輸,怎么知道傳輸的可靠性和信號與傳輸媒介的適配性呢?

可以發(fā)送00H 0FFH 55H,如果這三個(gè)值都能正確接受,那網(wǎng)絡(luò )一定能可靠傳輸了,這就是以點(diǎn)代面的測試方法。

理由:00H 0FFH是最寬的脈沖和電平(代表能量)最大/最小的脈沖,用信號系統話(huà)說(shuō)他們代表是直流,而55H是最窄脈沖,它代表是最高頻和能量中間值。既然最低的能過(guò),最大也能過(guò),最寬能過(guò)最窄也能過(guò),大能量(抗干擾強)低能量(代表抗干擾弱)中能量也能過(guò),那么完全不用擔心中間值過(guò)不了。

招三:用同步頭初始實(shí)現波特率自適應和判斷數據包起始

同步頭用誰(shuí)?——7FH,且開(kāi)始同步時(shí)連續發(fā)送???FH的發(fā)送0起始11111110---1停止。011111110是相當對稱(chēng)的,當你收到兩個(gè)0中間夾了連續個(gè)1的數據后,只要用連續1的時(shí)間除以0的持續時(shí)間=7,說(shuō)明這就是同步頭了,且一個(gè)標準碼元持續時(shí)間就是碼元0的持續時(shí)間,其波特率=1/(0碼元持續時(shí)間)。

舉一個(gè)管窺的例子,如下:

有一個(gè)長(cháng)度達16位的計數器(長(cháng)管)只有一個(gè)輸出例如最高位Q15(在管子末端去窺),現在根據Q15的狀態(tài)1/0能窺探到什么?

(1)當Q15=1時(shí),說(shuō)明管子里至少有32768個(gè)以上的豹紋(進(jìn)管子的脈沖)。

(2)Q15=0時(shí),管子里至多有32767豹紋。

(3)如果把管子里的1稱(chēng)著(zhù)豹紋明花,0為暗花的話(huà),當Q15無(wú)論從1到0還是0到1的跳變,管子里一定都只有暗花了(Q14及以下全部復位了)。

(4)知道了這個(gè)原理就可以用串聯(lián)(記數/或者叫推移)方法來(lái)讀取前Q0到Q14位,例如當前Q15=1,只送一個(gè)脈沖進(jìn)去了Q15就=0了(1-0跳變),說(shuō)明管子里有65535個(gè)豹紋沒(méi)推出!這種情況最多推移32768次一定能將Q15推移為0,而且此時(shí)Q0到Q15就全部復位了(這叫計數復位)。

(5)當Q15=0時(shí)請自行分析,唯一要說(shuō)明的是,當Q15有0到1跳變后是Q0到Q14的復位,有沒(méi)有必要再推32768次把整個(gè)管子推來(lái)復位呢,沒(méi)必要的,32768就是做起始基數。

不采用管窺,要讀完這16位的數據需要16根口線(xiàn),現在呢只需要2根,而可靠性會(huì )大大提高。損失的唯一是速度,因為并行讀取要比這里的串行讀取快,這樣做非常值得。

再舉一個(gè)例子,散熱器的選?。?/p>

一般來(lái)說(shuō),穩壓器和功率驅動(dòng)器都是很熱的設備,在弱電(強電請別對號入坐)領(lǐng)域,系統散熱做的怎么樣?是否安全?可以用加電開(kāi)始時(shí)功率芯片上溫度上升的速率來(lái)判斷系統的熱安全性。

(1)如果手摸著(zhù)管子,溫度上升很慢,是緩升,即在全功率(極限)常溫25度下摸一分種都不燙手,就用對管子本身做高溫實(shí)驗了,這個(gè)管子就是在70度高溫環(huán)境下都能正常工作,可以放心,熱量會(huì )隨著(zhù)溫度升高散熱加快最終會(huì )恒定下來(lái)。

(2)如果摸著(zhù)瞬間變得很熱就取下來(lái),是一定不行的。因為它產(chǎn)生大量的熱,即使到了管子的高溫極限,它自身高散熱性能也抵消不了積熱,必然被燒毀。幾秒鐘的觸摸就可以判斷了,并不需要做漫長(cháng)的高溫實(shí)驗,所以說(shuō)對任何狀況的洞悉能力很重要。

本文轉自網(wǎng)絡(luò )

深圳市菲利盟電子技術(shù)有限公司



關(guān)鍵詞: 單片機 串口

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>