吐血整理單片機串口小招數(shù) 例子很酷!

2014-10-30 09:43 來源:電子信息網(wǎng) 作者:娣霧兒

招一:把函數(shù)發(fā)生器當(dāng)串口發(fā)送器來用

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

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

招二:如果串口要實現(xiàn)遠距離傳輸,怎么知道傳輸?shù)目煽啃院托盘柵c傳輸媒介的適配性呢?

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

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

招三:用同步頭初始實現(xiàn)波特率自適應(yīng)和判斷數(shù)據(jù)包起始

同步頭用誰?——7FH,且開始同步時連續(xù)發(fā)送。看7FH的發(fā)送0起始11111110---1停止。011111110是相當(dāng)對稱的,當(dāng)你收到兩個0中間夾了連續(xù)個1的數(shù)據(jù)后,只要用連續(xù)1的時間除以0的持續(xù)時間=7,說明這就是同步頭了,且一個標(biāo)準(zhǔn)碼元持續(xù)時間就是碼元0的持續(xù)時間,其波特率=1/(0碼元持續(xù)時間)。

1 2 > 
單片機 串口

相關(guān)閱讀

暫無數(shù)據(jù)

一周熱門