基于AVR單片機(jī)的高精度頻率調(diào)節(jié)器設(shè)計(jì)
摘要: 精確的頻率控制是現(xiàn)代化工業(yè)生產(chǎn)與高精度測試的必備手段。基于AD9850可以發(fā)生優(yōu)于1Hz頻率精確度的信號(hào),這對于頻率測試來說至關(guān)重要。本文介紹的這種頻率調(diào)節(jié)器由Atmel公司的AVR單片機(jī)Atmega16L作為控制核心,采用4×4鍵盤作為頻率值輸入設(shè)備。AVR單片機(jī)掃描鍵盤并且讀入用戶設(shè)定的頻率值。隨后,AVR單片機(jī)計(jì)算出AD9850的控制字,并且對AD9850發(fā)出指令。本文介紹的頻率控制器可以通過“+1Hz”鍵和“–1Hz”鍵微調(diào)頻率值。本文對頻率控制器擴(kuò)展了液晶顯示模塊,因此當(dāng)前頻率值可以被實(shí)時(shí)顯示。它可以生成方波和正弦波。設(shè)計(jì)中使用了看門狗定時(shí)器防止程序進(jìn)入死循環(huán)而不能正常工作。
1 引言
在現(xiàn)代化工業(yè)生產(chǎn)與高精度測試中,我們需要相當(dāng)精確的頻率來幫助判斷設(shè)備性能指標(biāo)。而且我們希望能夠微調(diào)該頻率。采用壓控振蕩器得到的頻率不夠精確,微調(diào)頻率步驟煩瑣,耗時(shí)漫長,因此有些測試項(xiàng)目限制了壓控振蕩器的使用。
Mega系列單片機(jī)是Atmel公司于2002年起陸續(xù)推出的。這款A(yù)VR增強(qiáng)型單片機(jī)具有速度快,抗干擾能力強(qiáng),價(jià)格低廉等諸多優(yōu)點(diǎn)。為了加快AVR單片機(jī)的軟件編制,Atmel以及第三方提供的開發(fā)工具多種多樣,程序開發(fā)方便有效。該單片機(jī)內(nèi)部FLASH結(jié)構(gòu)功能靈活,加鎖后很難解密,可以較大限度地保護(hù)知識(shí)產(chǎn)權(quán)。AVR單片機(jī)可以廣泛應(yīng)用于通信、野外測試、汽車電子、醫(yī)療器械等領(lǐng)域,并且適用于各種低電壓、低功耗的場合。
本文提出一種方法能夠基于AVR單片機(jī),采用AD9850提供精確到1Hz的頻率信號(hào),不但可以發(fā)生正弦波,也可以發(fā)生方波,從而為要求頻率精度高的企業(yè)解決了難題。它以Atmel公司的AVR單片機(jī)Atmega16L作為核心,能夠方便、準(zhǔn)確地控制輸出頻率。由于AVR單片機(jī)實(shí)現(xiàn)了在線可編程,所以大大簡化了設(shè)計(jì)步驟,加快了設(shè)計(jì)進(jìn)程,同時(shí)不會(huì)燒毀、燒費(fèi)芯片,節(jié)約了成本。
圖1給出了該頻率調(diào)節(jié)器的整體設(shè)計(jì)框圖。用戶通過4×4鍵盤設(shè)定頻率值,AVR單片機(jī)使用I/O端口,掃描讀入頻率值。隨后AVR單片機(jī)控制AD9850調(diào)節(jié)到用戶要求的頻率。AD9850的輸出可以接電壓比較器整形為方波,也可以經(jīng)過低通濾波器限制帶寬,輸出正弦波形。AVR單片機(jī)同時(shí)控制液晶顯示模塊,使之實(shí)時(shí)顯示當(dāng)前頻率。
圖1. 頻率調(diào)節(jié)器整體框圖
2 控制核心與頻率發(fā)生技術(shù)
2.1 控制核心
本設(shè)計(jì)采用了Atmel公司的AVR單片機(jī)Atmega16L作為控制核心。AVR單片機(jī)的單周期指令能夠保證高的執(zhí)行效率和低成本,是精簡指令集CPU中的高性能器件。AVR單片機(jī)可以提供高達(dá)16 MIPS的執(zhí)行時(shí)間,具有128K字節(jié)的可編程Flash存儲(chǔ)器,同時(shí)具備4096字節(jié)的靜態(tài)RAM。AVR單片機(jī)自帶看門狗定時(shí)器,在強(qiáng)烈的電磁干擾條件下可以防止程序跑飛。本設(shè)計(jì)中采用的Atmega16L還具有以下特點(diǎn):
· 內(nèi)部包含有硬件乘法器,加快乘法運(yùn)算速度;I/O端口引腳數(shù)多達(dá)32根;
· 支持在線可編程功能,不需要頻繁從電路板插拔芯片;帶有可編程的支持同步傳輸?shù)腢ART端口;
· 支持三線傳輸SPI端口;具有方便的I2C總線端口,直接與Philips芯片接駁;
· 支持JTAG邊界掃描電路;具有BOD低電壓檢測功能;
· 內(nèi)部有8路10位的A/D變換器;具有4個(gè)PMW,可以協(xié)同或單獨(dú)工作;
· 內(nèi)部帶有實(shí)時(shí)時(shí)鐘電路;工作頻率較高可達(dá)16MHz。
2.2 AD9850頻率發(fā)生技術(shù)
AD9850是AD公司推出的低功耗直接數(shù)字頻率合成器芯片,可以產(chǎn)生從直流到62.5MHz的寬頻率信號(hào),從投入市場到今天已經(jīng)應(yīng)用在雷達(dá)系統(tǒng)、低功耗頻率源中。它良好的頻率合成功能適合于應(yīng)用在高精度測試中。本設(shè)計(jì)采用了AD9850作為波形發(fā)生器,具有體積小,功耗低的優(yōu)點(diǎn)。
在控制流程中,AVR單片機(jī)為AD9850計(jì)算了頻率控制字,并且將頻率控制字寫入其中。聯(lián)合小鍵盤上的“+1Hz”鍵和“-1Hz”鍵,本設(shè)計(jì)使得頻率可以精確到步長為1Hz的調(diào)節(jié)。它可以產(chǎn)生方波和正弦波。用戶要求產(chǎn)生正弦波時(shí),我們設(shè)計(jì)了低通濾波器用來濾除信號(hào)的高頻分量。該低通濾波器還可以使用五階橢圓濾波器實(shí)現(xiàn)。圖2示出了本系統(tǒng)的AD9850電路設(shè)計(jì)圖。PC2——PC5可以同時(shí)作為I2C總線端口。
圖2 AD9850電路設(shè)計(jì)
3 輸入設(shè)備與輸出設(shè)備
3.1 鍵盤輸入設(shè)備與相應(yīng)軟件
本設(shè)計(jì)采用了4×4鍵盤作為頻率輸入設(shè)備。由于按鍵個(gè)數(shù)少,只有16個(gè),需要表示從1Hz — 10MHz的廣泛頻率,故在軟件設(shè)計(jì)中采用了AVR單片機(jī)掃描方式。將端口A的8根I/O引腳全部作為掃描鍵盤使用。鍵盤定義除了0——9共10個(gè)數(shù)字之外,還定義了“退格”鍵、“全刪”鍵、“輸入”鍵、“+1Hz”鍵和“-1Hz”鍵,這樣就可以極大地方便用戶隨時(shí)修改頻率和微調(diào)頻率。讀入用戶輸入的頻率值時(shí),采用了延時(shí)防抖抗干擾的軟件程序。掃描變量的初始值設(shè)置為0xFE,以低電平0依次變化實(shí)現(xiàn)掃描。本單片機(jī)鍵盤掃描的C代碼如下所示:
sccode=0xFE;/*every scan initiative value,11111110*/
while(sccode!=0xEF)/*sccode is not 11101111,follow;or return 0*/
{
PORTA=sccode;/*send scan code 11111110 to portA*/
PORTA=sccode;/*send scan code 11111110 to portA*/
if((PINA&0xF0)!=0xF0)/*read portA,if high 4 bits are not 1111,key pressed in this line*/
{
recode=(PINA&0xF0)|0x0F;/*portA high 4 bits reserved,low 4 bits are 1111*/
while((PINA&0xF0)!=0xF0)
{};
/*read portA,if portA high 4 bits are not 1111,key pressed,
if key pressed,we must wait,wait for key released*/
return((~sccode)+(~recode));/*return row+column*/
}
else
{
sccode=(sccode<<1)|0x01;
/*scan code left shift 1 bit, add 1 to right,11111101*/
}
}
較終返回的掃描結(jié)果包括按鍵所在的行值和列值。判斷步驟是:先將端口A的高4比特記錄在掃描變量recode中,低4比特置為1111。再次讀入端口A的高4比特,由此判斷按鍵是否松開。用戶還未松開按鍵時(shí),高4比特當(dāng)中有低電平0存在,此時(shí)只能循環(huán)等待。只有當(dāng)用戶松開按鍵之后,才將高4比特與低4比特進(jìn)行按位反操作,并復(fù)合形成較終返回的掃描結(jié)果。如果沒有檢測到有按鍵按下,則將掃描變量sccode向左移位1比特,繼續(xù)進(jìn)行下一次掃描。
3.2 液晶顯示模塊
用戶在多次進(jìn)行輸入頻率以及“+1Hz”和“-1Hz”微調(diào)后,專注于觀察信號(hào)輸出對下一級(jí)電路的影響,往往忘了目前系統(tǒng)的輸出頻率。這樣導(dǎo)致在精確測試中要求微調(diào)時(shí)也不知該向高調(diào)整還是向低調(diào)整。為了告知用戶系統(tǒng)所處的當(dāng)前頻率,我們擴(kuò)展了液晶顯示模塊,實(shí)現(xiàn)了當(dāng)前頻率在液晶顯示模塊上實(shí)時(shí)顯示。液晶顯示模塊占用了單片機(jī)Atmega16L的PD0-PD7作為數(shù)據(jù)接口,采用了單片機(jī)的PB0-PB4作為控制端口。圖3給出了液晶顯示模塊與控制器電路設(shè)計(jì)電路圖。
PB0引腳選擇液晶顯示模塊的數(shù)據(jù)存儲(chǔ)器或指令存貯器,PB1引腳表明此次操作是讀液晶顯示模塊還是寫液晶顯示模塊,PB2則構(gòu)成上升沿與下降沿完成讀寫時(shí)序。PB3負(fù)責(zé)選中液晶顯示模塊的左半部分,PB4負(fù)責(zé)選中右半部分,通常PB3與PB4都置為1。需要注意的是,在數(shù)據(jù)或指令準(zhǔn)備好了之后,再讓PB2進(jìn)行電平變化,否則讀寫會(huì)出錯(cuò)。
本設(shè)計(jì)借助單片機(jī)Atmega16L的大容量程序存貯器,將英文字母和若干漢字的字型點(diǎn)陣作為數(shù)組存入單片機(jī)的程序存貯器中。需要顯示某字符時(shí)直接調(diào)用數(shù)組,從而簡化了設(shè)計(jì),實(shí)現(xiàn)了英文、漢字以及圖形的顯示。本設(shè)計(jì)顯示界面友好,操作可控性強(qiáng)。
圖3 液晶顯示模塊與控制器電路設(shè)計(jì)
4 結(jié)論
為了方便現(xiàn)代化工業(yè)生產(chǎn)與精確的頻率測試,我們設(shè)計(jì)了基于AVR單片機(jī)的高精度頻率調(diào)節(jié)器。在本設(shè)計(jì)中,可以使用小鍵盤上的“+1Hz”鍵和“-1Hz”鍵,方便地進(jìn)行頻率精確到1Hz的調(diào)節(jié)。此頻率調(diào)節(jié)器體積小而功能強(qiáng),由Atmel公司的AVR單片機(jī)Atmega16L作控制核心,用戶可隨時(shí)調(diào)整系統(tǒng)輸出頻率。采用了4×4鍵盤輸入用戶設(shè)定的頻率值,占位小而效率高,編制程序讓AVR單片機(jī)掃描即可得到頻率,省去了專用鍵盤接口芯片8279。液晶顯示模塊可實(shí)時(shí)顯示當(dāng)前頻率,顯示界面友好,操作可控性強(qiáng)。本系統(tǒng)可以產(chǎn)生方波和正弦波。
本設(shè)計(jì)的硬件與軟件均已經(jīng)應(yīng)用在某頻率測試生產(chǎn)線中。工業(yè)生產(chǎn)與測試使用表明,本設(shè)計(jì)簡化了頻率調(diào)節(jié)過程,用戶使用方便,具有節(jié)電、低成本、抗干擾能力強(qiáng)、頻率控制精度高速度快的特點(diǎn)。
相關(guān)閱讀:
- ...2013/10/16 13:40·基于AXIe 中 PCIe 高帶寬及多模塊同步數(shù)據(jù)傳輸?shù)母咚賵D形傳輸系統(tǒng)
- ...2012/04/23 12:15·基于AVR單片機(jī)的中頻電源測試系統(tǒng)
- ...2012/03/31 14:49·實(shí)現(xiàn)基于ARM的嵌入式系統(tǒng)的SoC方法
- ...2012/03/22 11:18·基于ANFIS的海底采礦車行走控制
- ...2012/03/20 14:53·基于ADSB的飛機(jī)預(yù)警避撞算法研究
- ...2012/03/14 14:36·基于ARM處理器的單目視覺測距定位系統(tǒng)
- ...·圖文詳解汽車儀表板背后的車規(guī)級(jí)安全設(shè)計(jì)要求
- ...·使用有安全保障的閃存存儲(chǔ)構(gòu)建安全的汽車系統(tǒng)
- ...·反向偏置差分線性傳感器的較新進(jìn)展和應(yīng)用
- ...·艾德克斯測評(píng)某品牌智能插座——待機(jī)功耗篇
- ...·三線電阻式溫度檢測器測量系統(tǒng)中勵(lì)磁電流失配的影響(續(xù))
- ...·三線電阻式溫度檢測器測量系統(tǒng)中勵(lì)磁電流失配的影響
- ...·RTD測量系統(tǒng)中勵(lì)磁電流失配的影響
- ...·藍(lán)牙BR/EDR 和 Bluetooth Smart的十大重要區(qū)別
- ...· “芯創(chuàng)杯”首屆高校未來汽車人機(jī)交互設(shè)計(jì)大賽報(bào)名正式啟動(dòng)
- ...· 探秘第二屆衛(wèi)藍(lán)山鷹“創(chuàng)新·共享”試驗(yàn)技術(shù)論壇!
- ...· “2018中國半導(dǎo)體生態(tài)鏈大會(huì)”在江蘇省盱眙舉行
- ...· 新主題新規(guī)劃,CITE 2019瞭望智慧未來
- ...· 從汽車到工廠,TI毫米波傳感器致力于創(chuàng)造更智能的世界
- ...· 意法半導(dǎo)體(ST)、Cinemo和Valens在CES 2018展上聯(lián)合演示汽車信息娛樂解決方案
- ...· 北京集成電路產(chǎn)業(yè)創(chuàng)新發(fā)展高峰論壇即將在京召開
- ...· 三菱電機(jī)強(qiáng)勢出擊PCIM亞洲2017展
- ...· GPGPU國產(chǎn)替代:中國芯片產(chǎn)業(yè)的空白地帶
- ...· 物聯(lián)網(wǎng)產(chǎn)品設(shè)計(jì)中Wi-Fi連接的四個(gè)關(guān)鍵因素
- ...· 第三屆中國MEMS智能傳感器產(chǎn)業(yè)發(fā)展大會(huì)即將于蚌埠拉開帷幕
- ...· IAIC專項(xiàng)賽演繹“中國芯“應(yīng)用創(chuàng)新,信息安全高峰論壇亮劍海寧
- ...· 智能控制有源鉗位反激
- ...· 解讀5G毫米波OTA 測試技術(shù)
- ...· 多個(gè)市場高速增長推動(dòng)Molex加強(qiáng)汽車領(lǐng)域的發(fā)展
- ...· 中國綠色制造聯(lián)盟成立大會(huì)召開在即 政產(chǎn)學(xué)研用共探綠色發(fā)展新模式
- ...· Efinix® 全力驅(qū)動(dòng)AI邊緣計(jì)算,成功推出Trion™ T20 FPGA樣品, 同時(shí)將產(chǎn)品擴(kuò)展到二十萬邏輯單元的T200 FPGA
- ...· 英飛凌亮相進(jìn)博會(huì),引領(lǐng)智慧新生活
- ...· 三電產(chǎn)品開發(fā)及測試研討會(huì)北汽新能源專場成功舉行
- ...· Manz亞智科技跨入半導(dǎo)體領(lǐng)域 為面板級(jí)扇出型封裝提供化學(xué)濕制程、涂布及激光應(yīng)用等生產(chǎn)設(shè)備解決方案
- ...· 中電瑞華BITRODE動(dòng)力電池測試系統(tǒng)順利交付北汽新能源
- ...· 中電瑞華FTF系列電池測試系統(tǒng)中標(biāo)北京新能源汽車股份有限公司
- ...· 中電瑞華大功率高壓能源反饋式負(fù)載系統(tǒng)成功交付中電熊貓
- ...· 中電瑞華國際在電動(dòng)汽車及關(guān)鍵部件測評(píng)研討會(huì)上演繹先進(jìn)測評(píng)技術(shù)
- ...· 數(shù)據(jù)采集終端系統(tǒng)設(shè)備
- ...· 簡儀科技踏上新征程
- ...· 易靈思® 宣布 AEC-Q100 資質(zhì)認(rèn)證和汽車系列產(chǎn)品計(jì)劃
- ...· 易靈思® 宣布擴(kuò)充高性能 鈦金系列™ FPGA 產(chǎn)品 鈦金系列產(chǎn)品擴(kuò)充至包含 1M 邏輯單元的 FPGA
- ...· 易靈思® 宣布Trion® Titanium 在臺(tái)積電 (TSMC) 16納米工藝節(jié)點(diǎn)流片
- ...· TI杯2019年全國大學(xué)生電子設(shè)計(jì)競賽頒獎(jiǎng)典禮在京舉行
- ...· BlackBerry QNX虛擬機(jī)獲得全球首個(gè)汽車安全完整性等級(jí)(ASIL) ‘D’認(rèn)證
- ...· 威馬汽車選擇BlackBerry助力下一代汽車