999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Arduino平臺的簡易示波器設計與實現

2018-05-30 01:48:11貴州民族大學機械電子工程學院普天堯
電子世界 2018年9期
關鍵詞:信號設計

貴州民族大學機械電子工程學院 普天堯

1.Arduino平臺簡介

Arduino是一個基于一系列單片機電路板的開源電子設計平臺,它同時提供了免費的開發環境(Arduino IDE)。相較其他單片機平臺,Arduino具有多種優勢,使其越來越廣泛地被應用于高校教學、課程設計之中。

1.1 易用性

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

1.2 開放性

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

1.3 交流性

Arduino在世界各地擁有眾多開發者和用戶,因此可以在網絡上搜索到豐富的案例教程,以及一些I/O設備在Arduino下的類庫,從而有效地降低開發難度、縮短開發周期。

1.4 低成本

Arduino開發板價格相對便宜,例如本文設計使用的Arduino UNO R3控制器,價格在15到20元。此外,不需要編輯器,直接使用USB數據線即可完成程序下載,開發成本低,適合學生學習、創作。

2.系統硬件設計

數字示波器其工作原理是將輸入的模擬信號經ADC(Analog to Digital Converter)采樣后得到數字信號,并對其進行存儲、運算后將信號波形及所需參數輸出到顯示屏。

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

圖1 示波器硬件電路圖

3.系統軟件設計

Arduino程序主要由函數setup()和loop()構成。setup()函數中的代碼只被執行一次,通常用于完成I/O口狀態的配置等初始化工作。loop()函數是一個死循環,其中程序將反復運行。

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

3.1 信號采樣模塊

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

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

因此該系統的最高采樣頻率:

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

3.2 鍵盤掃描模塊

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

3.3 信號參數計算模塊

為了使得每次掃描的數據同步,顯示的波形穩定,需要查找到信號的同步觸發點,并將該點作為信號顯示的起點并丟棄前面的數據。因此,盡管波形顯示區域設置為96╳64,但這里采樣深度取192點。

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

3.4 波形顯示模塊

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

上述代碼中的draw()函數,其中應包含實現圖形顯示的代碼。

4.測試分析及結論

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

圖2 不同頻率的信號波形顯示

表1給出輸入信號頻率不同時頻率測量的相對誤差。

表1 頻率測量結果

經測試數據顯示,利用Arduino平臺提供的開源硬軟件可以實現一個誤差較小的簡易數字示波器。

基于Arduino的系統設計具有軟件結構簡單、實現成本低、開發周期短等優勢,適合引入到高校工科專業實驗課程的教學活動中,有助于提高學生的學習興趣,培養學生的創新思維和實際操作能力。

[1]陳呂洲.Arduino程序設計基礎[M].北京:北京航空航天大學出版社,2015.

[2]范欽武.基于arduino和enc28j60的溫濕度監控系統設計[J].科技視界,2014(23):108-109.

[3]吳漢清.玩轉Arduino電子制作[M].北京:機械工業出版社,2016.

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

猜你喜歡
信號設計
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
孩子停止長個的信號
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
基于LabVIEW的力加載信號采集與PID控制
一種基于極大似然估計的信號盲抽取算法
主站蜘蛛池模板: 无码有码中文字幕| 亚洲欧美日韩中文字幕一区二区三区| 国产亚洲精品资源在线26u| 亚洲国产精品久久久久秋霞影院| 日韩免费毛片视频| 国产精品亚洲一区二区三区在线观看| 人妻丰满熟妇AV无码区| 成人国产精品2021| 激情网址在线观看| 天堂va亚洲va欧美va国产 | 97久久精品人人做人人爽| 欧美精品亚洲日韩a| 欧美成人怡春院在线激情| 欧美狠狠干| av性天堂网| 日韩亚洲综合在线| 经典三级久久| 欧美区一区二区三| 极品国产在线| 亚洲精品无码在线播放网站| 国产原创自拍不卡第一页| 亚洲欧美日韩成人在线| 欧美亚洲香蕉| 欧美三级视频网站| 在线观看无码a∨| 亚亚洲乱码一二三四区| 国产一区免费在线观看| 好紧太爽了视频免费无码| 波多野结衣爽到高潮漏水大喷| 日本三级欧美三级| 伊人久热这里只有精品视频99| 亚洲欧美在线看片AI| 婷婷综合缴情亚洲五月伊| 亚洲大尺度在线| 久久亚洲日本不卡一区二区| 狠狠亚洲婷婷综合色香| 欧美97欧美综合色伦图| 久久久久青草线综合超碰| 日韩无码黄色| 国产福利影院在线观看| 理论片一区| 一级毛片免费不卡在线视频| 国产一在线| 亚洲欧美在线综合图区| 日韩无码白| 欧美日韩v| 亚洲美女一区| 六月婷婷综合| 2021国产v亚洲v天堂无码| 99热最新网址| 国产精品3p视频| 国产SUV精品一区二区| 成人免费午间影院在线观看| 小蝌蚪亚洲精品国产| 久久精品国产国语对白| 免费一极毛片| 天堂在线www网亚洲| 午夜视频免费试看| 久久毛片基地| 韩国自拍偷自拍亚洲精品| 国产99视频精品免费观看9e| 欧美成人区| 国产精品久久国产精麻豆99网站| 国产噜噜噜视频在线观看| 亚洲精品色AV无码看| 欧美a网站| 国产亚洲现在一区二区中文| 国产丰满成熟女性性满足视频| 欧美另类精品一区二区三区| 99成人在线观看| 天天综合色网| 女人av社区男人的天堂| 亚洲黄色成人| 在线综合亚洲欧美网站| 色妞www精品视频一级下载| 国产精品自在在线午夜区app| 国产拍揄自揄精品视频网站| jijzzizz老师出水喷水喷出| 网友自拍视频精品区| 久久精品欧美一区二区| 国产成人1024精品下载| 国产视频一区二区在线观看 |