<var id="fnfpo"><source id="fnfpo"></source></var>
<rp id="fnfpo"></rp>

<em id="fnfpo"><object id="fnfpo"><input id="fnfpo"></input></object></em>
<em id="fnfpo"><acronym id="fnfpo"></acronym></em>
  • <th id="fnfpo"><track id="fnfpo"></track></th>
  • <progress id="fnfpo"><track id="fnfpo"></track></progress>
  • <tbody id="fnfpo"><pre id="fnfpo"></pre></tbody>

  • x
    x

    基于MSP430F449的數字頻率計設計

    發布時間:2010-7-9 00:04    發布者:conniede
    關鍵詞: MSP430F449 , 數字頻率計
    本文利用前置分頻器SAB6456A和高速數字分頻器74HC390的分頻功能,結合新型的MSP430F449單片機,給出了一種新穎的、全自動的數顯測量射頻頻率的設計方案。
      
    圖1 信號的前端處理及分頻電路
      
    主要器件介紹

      
    MSP430F449單片機
      
    MSP430F449 采用16位RISC結構,具有豐富的片內外設和大容量的片內工作寄存器和存儲器,性能價格比很高。它的特點包括:
      
    · 超低的功耗:能夠在1.8V~ 3.6V的電壓下工作;具有工作模式(AM)和5種低功耗模式(LPM)。在低功耗模式下,CPU可以被中斷喚醒,響應時間小于6ps。
      
    · 較強的運算能力:16位的RISC結構,豐富的尋址方式;具有16個中斷源,可以任意嵌套;在8MHz時鐘驅動下指令周期可達125ns; 內部包含硬件乘法器和大量寄存器,以及多達64KB的Flash程序空間和2KB的RAM,為存儲數據和運算提供了保證。
      
    · 豐富的片上外設:包括看門狗定時器,基本定時器,比較器,16位定時器(TA、TB),串口0、1,液晶顯示驅動器,6個8位的I/O端口,12位ADC (最高采樣率200kHz)等。豐富的片上外設可以很方便地構建一個較為完整的系統。另外,充分利用計數器的多路任意波形產生功能和中斷控制功能,保證了一些復雜的時序控制任務的完成。
      
    ·方便高效的開發環境:MSP430F449是Flash型器件,片內有調試接口和電可擦寫的Flash存儲器,可以先下載程序到Flash內,再在器件內通過軟件控制程序的運行,由JTAG接口讀取片內信息供設計師調試。這種方式不需要仿真器和編程器,調試十分方便。
      
    前置分頻器SAB6456A
      
    SAB6456A是專為UHF/VHF設計的前置分頻器。內部的MCpin為分頻控制端,可對頻率范圍為70MHz-1GHz的信號進行64/256分頻,當MC pin開路時為64分頻;當MC pin接地時為256分頻。有較高的靈敏度和較強的諧波抑制能力。

      
    圖2 單片機外圍電路
      
    工作原理

      
    該設計主要分兩部分:分頻和計數。首先,輸入信號限幅后經SAB6456A分頻,256分頻后的信號再經兩片74HC390高速分頻器進行1000分頻,此時模擬信號變為低頻數字信號,頻率在10kHz以下;其次,分頻后的信號直接接入MSP430F449單片機,利用內部的16位定時器A來定時和計數。該定時器可分為幾個部分:計數器部分,捕獲/比較寄存器及輸出單元。其中,計數器有4種工作模式,3個捕獲/比較寄存器。利用計數器的連續計數模式和上升沿捕獲模式,在定時器中斷中計數N個脈沖信號時間,再除N得到頻率。
      
    硬件設計

      
    圖1為信號的前端處理及分頻設計。輸出后的信號再經兩片SN74HC390分頻,SN74HC390是高速分頻器件,最高分頻頻率為50MHz。每片SN74HC390可實現100分頻,采用兩片串聯,可實現對信號的1000分頻,經分頻后的數字信號頻率較低,約4kHz以下,可由單片機直接計數。
      
    圖2為單片機外圍電路,包括復位電路,電源電路和單片機工作必須的晶振。晶振有8MHz和32.768kHz兩種,8MHz 作為定時器A的計數器輸入時鐘源;32.768kHz 作為數碼管的顯示頻率。74LS373為D型鎖存器,5V單電源供電,因輸出電流足夠大,也可以直接驅動共陰極LG3631AH型數碼管。
      
    軟件設計

      
    將分頻的輸出端OUT接至單片機的頻率輸入端,程序開始先延時一段時間,待信號穩定。開捕獲中斷和定時器A,在定時器A 中斷中計數N個脈沖,測量結束后得到N個脈沖的時間,然后除N得到脈沖的頻率,乘以分頻系數得到實際頻率并顯示,經過短暫延時后重新測量,如此循環測量并顯示。
      
    在測量頻率時,為保證精度要關掉LED顯示,所以,對于頻率較低的信號會發生LED閃爍的情況,解決辦法是測量較少個脈沖以減少平均測量時間或減少延時。
      
    采用動態掃描顯示,動態掃描顯示的原理是:由P4向各個位輪流輸出掃描信號,使每一位瞬間只有一個數碼管被選通,然后由P3向該位輸入顯示的字型碼,驅動該位字形段顯示字形。這樣,在P3送出的碼段和P4送出的位段的配合下,使各個數碼管輪流顯示各自的字形,每位的顯示時間要超過1ms,這樣人眼就感覺不到閃爍了。
    測量主程序如下:

      void frequency_measure(void)
      {float tmp,tmp1;
      key_flag=0;//按鍵標志清0
      P1OUT|=BIT0;
      Delay(1000);file://延時一段時間等待信號穩定
      while(1)
      { IE2&=~0X80; file://關BT,關LED

      firstflag=1;//開始測量第一個脈沖
      TACTL|=TAIE; file://開捕獲
      CCTL1|=CCIE;//開timer a
      while (f_ok_flag==0);//等待測量結束
      f_ok_flag=0;
      if (aa1>aa2)
      overflow=overflow-1;
      tmp=aa2-aa1;
      tmp1=40.0/(overflow*0.008191875+(tmp/8000000.0));
      result=tmp1*0.256;
      IE2|=0X80;//開BT,開LED
      yanshi(2,2);//可以修改這里的參數,越大表示延時越長,太小的話LED就會變暗
      CCTL1&=~CCIE;//關捕獲
      TACTL&=~TAIE;//關timer a
      return;
      }
      }
      
    流程圖如圖3所示。
      
    圖3 主程序流程
      
    結語

       
    本文給出的硬件和軟件均經過實踐檢驗,使用該測量儀器所測結果精度較高。該測量儀器價格較低,結構簡單,是一種經濟型的頻率測試儀。
    本文地址:http://www.portaltwn.com/thread-14797-1-1.html     【打印本頁】

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

    廠商推薦

    • Microchip視頻專區
    • 我們是Microchip
    • 利用模擬開發工具生態系統進行安全電路設計
    • 想要避免發生災難,就用MPLAB SiC電源仿真器!
    • 你仿真過嗎?使用免費的MPLAB Mindi模擬仿真器降低設計風險
    • 貿澤電子(Mouser)專區
    關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
    電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
    快速回復 返回頂部 返回列表
    精品一区二区三区自拍图片区_国产成人亚洲精品_亚洲Va欧美va国产综合888_久久亚洲国产精品五月天婷