當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀] 本文提出一種方法能夠基于AVR單片機,采用AD9850提供精確到1Hz的頻率信號,不但可以發(fā)生正弦波,也可以發(fā)生方波,從而為要求頻率精度高的企業(yè)解決了難題。

摘要: 精確的頻率控制是現(xiàn)代化工業(yè)生產(chǎn)與高精度測試的必備手段?;贏D9850可以發(fā)生優(yōu)于1Hz頻率精確度的信號,這對于頻率測試來說至關(guān)重要。本文介紹的這種頻率調(diào)節(jié)器由Atmel公司的AVR單片機Atmega16L作為控制核心,采用4×4鍵盤作為頻率值輸入設(shè)備。AVR單片機掃描鍵盤并且讀入用戶設(shè)定的頻率值。隨后,AVR單片機計算出AD9850的控制字,并且對AD9850發(fā)出指令。本文介紹的頻率控制器可以通過“+1Hz”鍵和“–1Hz”鍵微調(diào)頻率值。本文對頻率控制器擴展了液晶顯示模塊,因此當(dāng)前頻率值可以被實時顯示。它可以生成方波和正弦波。設(shè)計中使用了看門狗定時器防止程序進入死循環(huán)而不能正常工作。
   關(guān)鍵詞: AVR, 單片機, 頻率, 控制

1 引言
    在現(xiàn)代化工業(yè)生產(chǎn)與高精度測試中,我們需要相當(dāng)精確的頻率來幫助判斷設(shè)備性能指標(biāo)。而且我們希望能夠微調(diào)該頻率。采用壓控振蕩器得到的頻率不夠精確,微調(diào)頻率步驟煩瑣,耗時漫長,因此有些測試項目限制了壓控振蕩器的使用。
Mega系列單片機是Atmel公司于2002年起陸續(xù)推出的。這款A(yù)VR增強型單片機具有速度快,抗干擾能力強,價格低廉等諸多優(yōu)點。為了加快AVR單片機的軟件編制,Atmel以及第三方提供的開發(fā)工具多種多樣,程序開發(fā)方便有效。該單片機內(nèi)部FLASH結(jié)構(gòu)功能靈活,加鎖后很難解密,可以最大限度地保護知識產(chǎn)權(quán)。AVR單片機可以廣泛應(yīng)用于通信、野外測試、汽車電子、醫(yī)療器械等領(lǐng)域,并且適用于各種低電壓、低功耗的場合。

   本文提出一種方法能夠基于AVR單片機,采用AD9850提供精確到1Hz的頻率信號,不但可以發(fā)生正弦波,也可以發(fā)生方波,從而為要求頻率精度高的企業(yè)解決了難題。它以Atmel公司的AVR單片機Atmega16L作為核心,能夠方便、準(zhǔn)確地控制輸出頻率。由于AVR單片機實現(xiàn)了在線可編程,所以大大簡化了設(shè)計步驟,加快了設(shè)計進程,同時不會燒毀、燒費芯片,節(jié)約了成本。

   圖1給出了該頻率調(diào)節(jié)器的整體設(shè)計框圖。用戶通過4×4鍵盤設(shè)定頻率值,AVR單片機使用I/O端口,掃描讀入頻率值。隨后AVR單片機控制AD9850調(diào)節(jié)到用戶要求的頻率。AD9850的輸出可以接電壓比較器整形為方波,也可以經(jīng)過低通濾波器限制帶寬,輸出正弦波形。AVR單片機同時控制液晶顯示模塊,使之實時顯示當(dāng)前頻率。

圖1. 頻率調(diào)節(jié)器整體框圖

2 控制核心與頻率發(fā)生技術(shù)
2.1 控制核心

    本設(shè)計采用了Atmel公司的AVR單片機Atmega16L作為控制核心。AVR單片機的單周期指令能夠保證高的執(zhí)行效率和低成本,是精簡指令集CPU中的高性能器件。AVR單片機可以提供高達16 MIPS的執(zhí)行時間,具有128K字節(jié)的可編程Flash存儲器,同時具備4096字節(jié)的靜態(tài)RAM。AVR單片機自帶看門狗定時器,在強烈的電磁干擾條件下可以防止程序跑飛。本設(shè)計中采用的Atmega16L還具有以下特點:
·   內(nèi)部包含有硬件乘法器,加快乘法運算速度;I/O端口引腳數(shù)多達32根; 
·   支持在線可編程功能,不需要頻繁從電路板插拔芯片;帶有可編程的支持同步傳輸?shù)腢ART端口;
·    支持三線傳輸SPI端口;具有方便的I2C總線端口,直接與Philips芯片接駁;
·   支持JTAG邊界掃描電路;具有BOD低電壓檢測功能;
·   內(nèi)部有8路10位的A/D變換器;具有4個PMW,可以協(xié)同或單獨工作;
·   內(nèi)部帶有實時時鐘電路;工作頻率最高可達16MHz。

2.2 AD9850頻率發(fā)生技術(shù)

    AD9850是AD公司推出的低功耗直接數(shù)字頻率合成器芯片,可以產(chǎn)生從直流到62.5MHz的寬頻率信號,從投入市場到今天已經(jīng)應(yīng)用在雷達系統(tǒng)、低功耗頻率源中。它良好的頻率合成功能適合于應(yīng)用在高精度測試中。本設(shè)計采用了AD9850作為波形發(fā)生器,具有體積小,功耗低的優(yōu)點。

   在控制流程中,AVR單片機為AD9850計算了頻率控制字,并且將頻率控制字寫入其中。聯(lián)合小鍵盤上的“+1Hz”鍵和“-1Hz”鍵,本設(shè)計使得頻率可以精確到步長為1Hz的調(diào)節(jié)。它可以產(chǎn)生方波和正弦波。用戶要求產(chǎn)生正弦波時,我們設(shè)計了低通濾波器用來濾除信號的高頻分量。該低通濾波器還可以使用五階橢圓濾波器實現(xiàn)。圖2示出了本系統(tǒng)的AD9850電路設(shè)計圖。PC2——PC5可以同時作為I2C總線端口。

圖2  AD9850電路設(shè)計

3 輸入設(shè)備與輸出設(shè)備
3.1 鍵盤輸入設(shè)備與相應(yīng)軟件
     本設(shè)計采用了4×4鍵盤作為頻率輸入設(shè)備。由于按鍵個數(shù)少,只有16個,需要表示從1Hz — 10MHz的廣泛頻率,故在軟件設(shè)計中采用了AVR單片機掃描方式。將端口A的8根I/O引腳全部作為掃描鍵盤使用。鍵盤定義除了0——9共10個數(shù)字之外,還定義了“退格”鍵、“全刪”鍵、“輸入”鍵、“+1Hz”鍵和“-1Hz”鍵,這樣就可以極大地方便用戶隨時修改頻率和微調(diào)頻率。讀入用戶輸入的頻率值時,采用了延時防抖抗干擾的軟件程序。掃描變量的初始值設(shè)置為0xFE,以低電平0依次變化實現(xiàn)掃描。本單片機鍵盤掃描的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比特,由此判斷按鍵是否松開。用戶還未松開按鍵時,高4比特當(dāng)中有低電平0存在,此時只能循環(huán)等待。只有當(dāng)用戶松開按鍵之后,才將高4比特與低4比特進行按位反操作,并復(fù)合形成最終返回的掃描結(jié)果。如果沒有檢測到有按鍵按下,則將掃描變量sccode向左移位1比特,繼續(xù)進行下一次掃描。

3.2 液晶顯示模塊

    用戶在多次進行輸入頻率以及“+1Hz”和“-1Hz”微調(diào)后,專注于觀察信號輸出對下一級電路的影響,往往忘了目前系統(tǒng)的輸出頻率。這樣導(dǎo)致在精確測試中要求微調(diào)時也不知該向高調(diào)整還是向低調(diào)整。為了告知用戶系統(tǒng)所處的當(dāng)前頻率,我們擴展了液晶顯示模塊,實現(xiàn)了當(dāng)前頻率在液晶顯示模塊上實時顯示。液晶顯示模塊占用了單片機Atmega16L的PD0-PD7作為數(shù)據(jù)接口,采用了單片機的PB0-PB4作為控制端口。圖3給出了液晶顯示模塊與控制器電路設(shè)計電路圖。
 
   PB0引腳選擇液晶顯示模塊的數(shù)據(jù)存儲器或指令存貯器,PB1引腳表明此次操作是讀液晶顯示模塊還是寫液晶顯示模塊,PB2則構(gòu)成上升沿與下降沿完成讀寫時序。PB3負(fù)責(zé)選中液晶顯示模塊的左半部分,PB4負(fù)責(zé)選中右半部分,通常PB3與PB4都置為1。需要注意的是,在數(shù)據(jù)或指令準(zhǔn)備好了之后,再讓PB2進行電平變化,否則讀寫會出錯。

   本設(shè)計借助單片機Atmega16L的大容量程序存貯器,將英文字母和若干漢字的字型點陣作為數(shù)組存入單片機的程序存貯器中。需要顯示某字符時直接調(diào)用數(shù)組,從而簡化了設(shè)計,實現(xiàn)了英文、漢字以及圖形的顯示。本設(shè)計顯示界面友好,操作可控性強。

圖3  液晶顯示模塊與控制器電路設(shè)計

4 結(jié)論
    為了方便現(xiàn)代化工業(yè)生產(chǎn)與精確的頻率測試,我們設(shè)計了基于AVR單片機的高精度頻率調(diào)節(jié)器。在本設(shè)計中,可以使用小鍵盤上的“+1Hz”鍵和“-1Hz”鍵,方便地進行頻率精確到1Hz的調(diào)節(jié)。此頻率調(diào)節(jié)器體積小而功能強,由Atmel公司的AVR單片機Atmega16L作控制核心,用戶可隨時調(diào)整系統(tǒng)輸出頻率。采用了4×4鍵盤輸入用戶設(shè)定的頻率值,占位小而效率高,編制程序讓AVR單片機掃描即可得到頻率,省去了專用鍵盤接口芯片8279。液晶顯示模塊可實時顯示當(dāng)前頻率,顯示界面友好,操作可控性強。本系統(tǒng)可以產(chǎn)生方波和正弦波。

   本設(shè)計的硬件與軟件均已經(jīng)應(yīng)用在某頻率測試生產(chǎn)線中。工業(yè)生產(chǎn)與測試使用表明,本設(shè)計簡化了頻率調(diào)節(jié)過程,用戶使用方便,具有節(jié)電、低成本、抗干擾能力強、頻率控制精度高速度快的特點。

參考文獻
[1] Atmel Corporation. 8-bit AVR Microcontroller with 16K Bytes In-System Programmable Flash Atmega16L data sheet. Atmel Corporation, 2003: 3-18.
[2] Atmel Data Sheets. http://www.atmel.com/dyn/products/devices.asp?family_id=607%20
[3] Atmel Application Note. http://www.atmel.com/dyn/products/app_notes.asp?family_id=607

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉