<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í)間:2011-05-14 來(lái)源:網(wǎng)絡(luò ) 收藏

很多工業(yè)與儀表系統都需要測量脈沖輸入的持續時(shí)間,如轉速傳感器、外部系統的門(mén)控與選通脈沖,以及PWM(脈沖寬度調制)輸入的頻率等。設計者是采用片上定時(shí)器和邊沿驅動(dòng)的中斷。但是,如果這些元件不可用,可以用片上的串行同步接收器做這類(lèi)測量。

  可以根據需要的時(shí)序精度,設定串行接收器的波特率。接收器每8 bit后中斷??梢栽趹贸绦蛑胁迦朊}沖寬度采集例程,用于讀取ISR(中斷服務(wù)例程)接收到的字節。它會(huì )統計和累加接收到的0和1字節,以測量出進(jìn)入脈沖的持續時(shí)間(圖1)。


  算法測量a的是兩個(gè)連續上升沿之間的持續時(shí)間。當收到一個(gè)既不是0xff也不是0x00的字節時(shí),就檢測到了一個(gè)上升沿或下降沿。如果一個(gè)字節小于0x80H (100 000b),則該字節表示一個(gè)上升沿。如果字節等于或大于該值,則該字節表示一個(gè)下降沿。

  前上升沿將位計數器重置為上升沿字節中拖尾1的個(gè)數,方法是將向右移位。位計數器在每個(gè)字節來(lái)到時(shí)加8,也包括標志下降沿的那個(gè)字節。當計數器接收到后上升沿(由下一個(gè)上升沿字節標志,它大于0x80H但小于00H)時(shí),它再次統計該字節中領(lǐng)先0的個(gè)數,并將此數加到累加位計數器上。此時(shí)的累加位計數與脈沖鏈的時(shí)間周期相關(guān),其因數等于波特率。

  圖2表示一個(gè)200Hz的脈沖鏈,兩個(gè)上升沿之間的時(shí)間為5ms。波特率為256kbaud。在一個(gè)測量周期內,假設前上升沿的標志為0011 1111b。將其向右移位,統計拖尾1的數目,位計數器初始化為6。這個(gè)計數對應的時(shí)間約為23.43 μs。


  接下來(lái),上升沿字節前的每個(gè)字節都使位計數器加8。簡(jiǎn)單計算表明,共有159字節,即1272位。此時(shí),計算的總位數為1278位,包括在第一個(gè)上升沿字節中收到的6個(gè)1。

  現在,脈沖鏈遇到了拖尾的上升沿字節,其值為0011 1111b。做這個(gè)計數時(shí),需要將0左移,統計為兩個(gè)位。兩上升沿之間的總位數就是1280bit。在256 kbaud速率下,這個(gè)數字精確地對應于5 ms或200 Hz。

  可以根據自己的應用需求,對這種位計數概念作修改。如果只需要測量低周期的脈沖,需要探測一個(gè)下降沿,并累計位數,直到遇見(jiàn)一個(gè)上升沿??梢詫⑦@種概念用于讀取進(jìn)入的PWM信號,方法是讀取一個(gè)已知進(jì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>