亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Arduino平臺(tái)的簡易示波器設(shè)計(jì)與實(shí)現(xiàn)

        2018-05-30 01:48:11貴州民族大學(xué)機(jī)械電子工程學(xué)院普天堯
        電子世界 2018年9期
        關(guān)鍵詞:信號(hào)設(shè)計(jì)

        貴州民族大學(xué)機(jī)械電子工程學(xué)院 普天堯

        1.Arduino平臺(tái)簡介

        Arduino是一個(gè)基于一系列單片機(jī)電路板的開源電子設(shè)計(jì)平臺(tái),它同時(shí)提供了免費(fèi)的開發(fā)環(huán)境(Arduino IDE)。相較其他單片機(jī)平臺(tái),Arduino具有多種優(yōu)勢(shì),使其越來越廣泛地被應(yīng)用于高校教學(xué)、課程設(shè)計(jì)之中。

        1.1 易用性

        Arduino使用C/C++語言編寫程序,并且其核心庫文件提供了大量的基于AVR-GCC庫二次封裝形成的API(Application Programming Interface)[1]。因此,使用者無需熟悉單片機(jī)寄存器的功能和設(shè)置方法,稍懂一些C語言即可開始項(xiàng)目設(shè)計(jì),適合在高校低年級(jí)學(xué)生的實(shí)踐課程、競賽培訓(xùn)等中應(yīng)用、推廣。

        1.2 開放性

        Arduino的硬件電路、IDE軟件及核心庫文件均是開源的,在不用于商業(yè)用途的前提下,允許使用者在其基礎(chǔ)上擴(kuò)展開發(fā)。

        1.3 交流性

        Arduino在世界各地?fù)碛斜姸嚅_發(fā)者和用戶,因此可以在網(wǎng)絡(luò)上搜索到豐富的案例教程,以及一些I/O設(shè)備在Arduino下的類庫,從而有效地降低開發(fā)難度、縮短開發(fā)周期。

        1.4 低成本

        Arduino開發(fā)板價(jià)格相對(duì)便宜,例如本文設(shè)計(jì)使用的Arduino UNO R3控制器,價(jià)格在15到20元。此外,不需要編輯器,直接使用USB數(shù)據(jù)線即可完成程序下載,開發(fā)成本低,適合學(xué)生學(xué)習(xí)、創(chuàng)作。

        2.系統(tǒng)硬件設(shè)計(jì)

        數(shù)字示波器其工作原理是將輸入的模擬信號(hào)經(jīng)ADC(Analog to Digital Converter)采樣后得到數(shù)字信號(hào),并對(duì)其進(jìn)行存儲(chǔ)、運(yùn)算后將信號(hào)波形及所需參數(shù)輸出到顯示屏。

        Arduino UNO是Arduino的主流產(chǎn)品,它包含14個(gè)數(shù)字輸入/輸出端口,6個(gè)模擬輸入端口,一個(gè)16MHz的晶體振蕩器[2]。其微控制器是ATmega328,它內(nèi)部提供一個(gè)10位精度的逐次逼近型ADC。本文采用該系列最新版本UNO R3來實(shí)現(xiàn)信號(hào)的采樣、存儲(chǔ)及處理。波形及參數(shù)顯示使用LCD12864,以串行方式將其與Arduino的硬件SPI口連接[3]。開關(guān)S1、S2用于采樣率大小的增減,開關(guān)S3用于波形的鎖定。示波器的電路圖如圖1所示:

        圖1 示波器硬件電路圖

        3.系統(tǒng)軟件設(shè)計(jì)

        Arduino程序主要由函數(shù)setup()和loop()構(gòu)成。setup()函數(shù)中的代碼只被執(zhí)行一次,通常用于完成I/O口狀態(tài)的配置等初始化工作。loop()函數(shù)是一個(gè)死循環(huán),其中程序?qū)⒎磸?fù)運(yùn)行。

        本文設(shè)計(jì)的數(shù)字示波器的軟件部分主要包括:信號(hào)采樣模塊、鍵盤掃描模塊、信號(hào)參數(shù)計(jì)算模塊及波形顯示模塊。其中,信號(hào)采樣需要使用定時(shí)器中斷,其余模塊均放入loop()中實(shí)現(xiàn)。

        3.1 信號(hào)采樣模塊

        采樣率,即單位時(shí)間內(nèi)的采樣次數(shù),單位Sa/s,是數(shù)字示波器的重要指標(biāo),其大小影響波形質(zhì)量。數(shù)字示波器的采樣主要有實(shí)時(shí)采樣和等效采樣兩種模式。綜合考慮控制器的性能指標(biāo),本設(shè)計(jì)中采用實(shí)時(shí)采樣,即固定時(shí)間間隔采樣,該模式下如果波形使用矢量顯示,采樣率應(yīng)不低于數(shù)字實(shí)時(shí)帶寬的10倍[4]。

        Arduino核心庫提供了函數(shù)analogRead()用于模數(shù)轉(zhuǎn)換,它讀入一個(gè)模擬輸入信號(hào)耗時(shí)100μs,即使用該函數(shù)能夠獲得的最大采樣率為10000Sa/s,此時(shí)數(shù)字示波器的測量頻率小于1kHz。為了實(shí)現(xiàn)更高的采樣率,需要對(duì)ATmega328內(nèi)置ADC進(jìn)行設(shè)置。ADC的工作模式使用ADC自動(dòng)觸發(fā)連續(xù)采樣,在該模式下,完成一次轉(zhuǎn)換的時(shí)間是13.5個(gè)ADC周期。該ADC模塊包含一個(gè)預(yù)分頻器,通過對(duì)系統(tǒng)時(shí)鐘分頻可以獲得一個(gè)適合的ADC時(shí)鐘頻率。在經(jīng)過多次性能測試后,本設(shè)計(jì)的預(yù)分頻系數(shù)設(shè)置為8,即 fADC=2MHz,對(duì)應(yīng)的采樣周期為:

        因此該系統(tǒng)的最高采樣頻率:

        完成一次模數(shù)轉(zhuǎn)換后其結(jié)果存放在ADC數(shù)據(jù)寄存器中,故需等時(shí)間間隔讀取ADC結(jié)果,并以數(shù)組形式存入控制器內(nèi)存,這個(gè)過程本文采用定時(shí)器中斷實(shí)現(xiàn)。ATmega328的定時(shí)器在CTC(Clear Timer On Compare)模式下,計(jì)數(shù)值與寄存器OCRnA的數(shù)值進(jìn)行比較,若匹配則進(jìn)入中斷,之后計(jì)數(shù)值清零。這里不對(duì)定時(shí)器時(shí)鐘分頻,則當(dāng)OCRnA取107時(shí),定時(shí)器中斷發(fā)生的頻率與ADC采樣頻率一致。

        3.2 鍵盤掃描模塊

        該示波器配置三個(gè)按鈕,其中一個(gè)用于鎖定波形,另外兩個(gè)按鈕分別用于采樣率大小的增減。每次進(jìn)入鍵盤掃描函數(shù)后,會(huì)檢測指定引腳的電平變化,滿足條件時(shí)則對(duì)相關(guān)參數(shù)進(jìn)行修改。波形鎖定是通過改變標(biāo)志變量的值,從而控制LCD繪圖程序是否運(yùn)行;而對(duì)定時(shí)器中OCRnA寄存器的值進(jìn)行修改則可以調(diào)整定時(shí)器中斷周期,從而調(diào)整采樣率大小。

        3.3 信號(hào)參數(shù)計(jì)算模塊

        為了使得每次掃描的數(shù)據(jù)同步,顯示的波形穩(wěn)定,需要查找到信號(hào)的同步觸發(fā)點(diǎn),并將該點(diǎn)作為信號(hào)顯示的起點(diǎn)并丟棄前面的數(shù)據(jù)。因此,盡管波形顯示區(qū)域設(shè)置為96╳64,但這里采樣深度取192點(diǎn)。

        除了波形顯示外,本設(shè)計(jì)將對(duì)采樣數(shù)據(jù)進(jìn)行處理,獲得輸入信號(hào)的峰峰值Vpp和頻率f。Vpp的計(jì)算是通過查找采樣數(shù)據(jù)中的最大值和最小值來實(shí)現(xiàn)。頻率可以使用周期法測量,已知采樣率,通過對(duì)采樣數(shù)據(jù)處理得到輸入信號(hào)每個(gè)周期的平均采樣次數(shù),進(jìn)而確定其周期T,頻率f=1/T。具體實(shí)現(xiàn)代碼如下:

        3.4 波形顯示模塊

        通常情況下,為了實(shí)現(xiàn)LCD12864的正常顯示功能,使用者需要嚴(yán)格地按要求寫入驅(qū)動(dòng)程序。然而利用Arduino平臺(tái)進(jìn)行系統(tǒng)設(shè)計(jì)時(shí),可以跳過這個(gè)繁冗的步驟,本設(shè)計(jì)中直接調(diào)用U8glib庫函數(shù)來實(shí)現(xiàn)液晶屏的設(shè)置及圖形繪制功能。U8glib是目前Arduino上使用最廣泛的圖形顯示類庫,支持多種型號(hào)的液晶顯示屏。Arduino控制器和LCD采用硬件SPI通信,引腳連接如圖1所示。程序中需包含U8glib.h頭文件,并建立一個(gè)LCD對(duì)象,代碼如下:

        上述代碼中的draw()函數(shù),其中應(yīng)包含實(shí)現(xiàn)圖形顯示的代碼。

        4.測試分析及結(jié)論

        為了驗(yàn)證示波器的波形顯示功能和頻率測量性能,本文使用信號(hào)發(fā)生器提供等幅值不同頻率的正弦輸入信號(hào)。示波器輸出波形及信號(hào)參數(shù)如圖2所示:

        圖2 不同頻率的信號(hào)波形顯示

        表1給出輸入信號(hào)頻率不同時(shí)頻率測量的相對(duì)誤差。

        表1 頻率測量結(jié)果

        經(jīng)測試數(shù)據(jù)顯示,利用Arduino平臺(tái)提供的開源硬軟件可以實(shí)現(xiàn)一個(gè)誤差較小的簡易數(shù)字示波器。

        基于Arduino的系統(tǒng)設(shè)計(jì)具有軟件結(jié)構(gòu)簡單、實(shí)現(xiàn)成本低、開發(fā)周期短等優(yōu)勢(shì),適合引入到高校工科專業(yè)實(shí)驗(yàn)課程的教學(xué)活動(dòng)中,有助于提高學(xué)生的學(xué)習(xí)興趣,培養(yǎng)學(xué)生的創(chuàng)新思維和實(shí)際操作能力。

        [1]陳呂洲.Arduino程序設(shè)計(jì)基礎(chǔ)[M].北京:北京航空航天大學(xué)出版社,2015.

        [2]范欽武.基于arduino和enc28j60的溫濕度監(jiān)控系統(tǒng)設(shè)計(jì)[J].科技視界,2014(23):108-109.

        [3]吳漢清.玩轉(zhuǎn)Arduino電子制作[M].北京:機(jī)械工業(yè)出版社,2016.

        [4]康玲竹.數(shù)字示波器特性及應(yīng)用[J].船電技術(shù),2009(06):59-60.

        猜你喜歡
        信號(hào)設(shè)計(jì)
        信號(hào)
        鴨綠江(2021年35期)2021-04-19 12:24:18
        完形填空二則
        何為設(shè)計(jì)的守護(hù)之道?
        《豐收的喜悅展示設(shè)計(jì)》
        流行色(2020年1期)2020-04-28 11:16:38
        孩子停止長個(gè)的信號(hào)
        瞞天過海——仿生設(shè)計(jì)萌到家
        設(shè)計(jì)秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計(jì)叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        基于LabVIEW的力加載信號(hào)采集與PID控制
        一種基于極大似然估計(jì)的信號(hào)盲抽取算法
        久久久精品人妻一区二区三区四区| 国产成人丝袜在线无码| 69精品人妻一区二区| 亚洲色图视频在线免费看| 亚洲精品久久久久久久久久吃药 | 国产精品多人P群无码| 亚洲精品国产熟女久久| 一区二区三区在线少妇| 久久无码专区国产精品| 国产精品一区二区暴白浆| 日本肥老熟妇在线观看| 亚洲av综合色区一区二区| 国产h视频在线观看| 欧美一级欧美一级在线播放| 亚洲中文字幕人妻诱惑| 媚药丝袜美女高清一二区| 亚洲看片lutube在线观看| 亚洲国产夜色在线观看| 开心激情网,开心五月天| 亚洲av综合av一区二区三区| 丰满老熟妇好大bbbbb| 亚洲欧美成人中文在线网站| 久久人妻少妇嫩草av蜜桃| 久久国产精品偷任你爽任你| 自拍偷自拍亚洲精品播放| 在线一区二区三区视频观看| av免费在线免费观看| 一本一道波多野结衣av中文| аⅴ天堂国产最新版在线中文| 男女动态视频99精品| 中国少妇×xxxx性裸交| 国产精品美女久久久浪潮av| 国产美女黄性色av网站| av网站在线观看大全| 国产麻豆md传媒视频| 日本a在线免费观看| 久久久亚洲av午夜精品| 午夜理论片yy44880影院| 亚洲成人777| 伊人影院成人在线观看| 国产成人a∨激情视频厨房|