ARM課程設計(頻率計)_第1頁
ARM課程設計(頻率計)_第2頁
ARM課程設計(頻率計)_第3頁
ARM課程設計(頻率計)_第4頁
ARM課程設計(頻率計)_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 電控學院課程設計(論文) 課程名稱: ARM嵌入式系統(tǒng)基礎教程 題 目: ARM為核心的頻率計設計 院 (系): 電氣與控制工程學院 專業(yè)班級: 測控技術與儀器1002 組 員: 指導教師: 2013年 12月 28日 第 頁ARM為核心的頻率計設計摘要:頻率計又稱為頻率計數(shù)器,是一種專門對被測信號頻率進行測量的電子測量儀器。頻率計最基本的工作原理為:當被測信號在特定時間段T內的周期個數(shù)為N時,則被測信號的頻率f=N/T。本文以ARM為內核設計頻率計,用ARM的定時器/計數(shù)器的定時和計數(shù)功能,檢測外部方波頻率,并用上位機顯示。關鍵詞:頻率計、ARM、定時計數(shù) 第 I 頁目錄1. 概述11.1

2、本次設計任務11.1.1設計題目11.1.2設計要求11.2設計基本原理22 .方案設計33. 硬件設計43.1 硬件設計原理圖及其介紹43.2 主要單元電路的設計43.2.1 電源電路設計43.2.2時鐘振蕩電路設計63.2.3復位電路設計63.2.4串口電路73.2.5顯示電路設計83.3硬件電路總體設計114 .軟件設計11結論12心得體會13致謝14參考文獻15附錄1: 程序清單16 第 頁1. 概述 數(shù)字頻率計(DFM)是電子測量與儀表技術最基礎的電子儀表類別之一, 數(shù)字頻率計是計算機、通訊設備、音頻視頻等科研生產領域不可缺少的測量儀器,而且它是數(shù)字電壓表(DVM)必不可少的部件。當

3、今數(shù)字頻率計不僅是作為電壓表、計算機、天線電廣播通訊設備、工藝過程自動化裝置。多種儀表儀器與家庭電器等許多電子產品中的數(shù)據(jù)信息輸出顯示器反映到人們眼簾。集成數(shù)字頻率計由于所用元件少、投資少,體積小,功耗低,且可靠性高,功能強,易于設計和研發(fā),使得它具有技術上的實用性和應用的廣泛性。不論從我們用的彩色電視機、電冰箱,DVD,還有我們現(xiàn)在家庭常用到的數(shù)字電壓表數(shù)字萬用表等等都包含有頻率計?,F(xiàn)在頻率計已是向數(shù)字智能方向發(fā)展,即可以很精確的讀數(shù)也精巧易于控制。數(shù)字頻率計已是現(xiàn)在頻率計發(fā)展的方向,它不僅可以很方便的讀數(shù),而且還可以使頻率的測量范圍和測量準確度上都比模擬先進.而且頻率計的使用已是很多的方面

4、,數(shù)字衛(wèi)星、數(shù)字通訊等高科技的領域都有應用,今天數(shù)字頻率計的發(fā)展已經(jīng)不僅僅是一個小電子產品的發(fā)展也是整個民族乃至整個國家的發(fā)展,所以頻率計的發(fā)展是一個整體的趨勢。1.1本次設計任務1.1.1設計題目以ARM為核心設計頻率計1.1.2設計要求 1)用protel畫出最小系統(tǒng)及外圍擴展電路 2)顯示部分可用12864 或者數(shù)碼管 最好用上位機(VB界面) 主要功能為,用ARM的定時器/計數(shù)器的定時和計數(shù)功能,外部擴展6位LED數(shù)碼管,要求累計每秒進入ARM的外部脈沖個數(shù),用LED數(shù)碼管顯示出來?;蛴蒙衔粰C顯示。3) 要求小組成員分工明確,答辯到位1.2設計基本原理所謂頻率,就是周期性信號在單位時間

5、 (1s) 內變化的次數(shù)若在一定時間間隔T內測得這個周期性信號的重復變化次數(shù)為N,則其頻率可表示為 fx=N/T 。從原理圖可知,被測信號Vx經(jīng)放大整形電路變成計數(shù)器所要求的脈沖信號,其頻率與被測信號的頻率fx相同。時基電路提供標準時間基準信號,具有固定寬度T的方波時基信號II作為閘門的一個輸入端,控制閘門的開放時間,被測信號I從閘門另一端輸入,被測信號頻率為fx,閘門寬度T,若在閘門時間內計數(shù)器計得的脈沖個數(shù)為N,則被測信號頻率fx=N/THz。可見,閘門時間T決定量程,通過閘門時基選擇開關選擇,選擇T大一些,測量準確度就高一些,T小一些,則測量準確度就低.根據(jù)被測頻率選擇閘門時間來控制量程

6、.在整個電路中,時基電路是關鍵,閘門信號脈沖寬度是否精確直接決定了測量結果是否精確.邏輯控制電路的作用有兩個:一是產生鎖存脈沖,使顯示器上的數(shù)字穩(wěn)定;二是產生清“0”脈沖,使計數(shù)器每次測量從零開始計數(shù)。清零信號鎖存信號TN整形放大電路計 數(shù) 器鎖 存 器譯 碼 器邏 輯 控 制 電 路顯 示 器時 基 電 路閘 門圖1.l原理總體結構圖2 .方案設計 方案1 由外部波形發(fā)生器傳送出頻率后經(jīng)LPC2200定時器對頻率進行計數(shù)。然后由上位機對頻率進行計數(shù)顯示。 方案2 通過板內的1個定時器,完成發(fā)射頻率與頻率計數(shù)。板內自帶的定時器向另一個定時器發(fā)送方波頻率,由另一個定時器接受并進行計數(shù)。外接液晶屏

7、1602顯示頻率,并且顯示的程序可由板內的2個按鍵切換或進行中斷。因為本次設計所提供的器件有波形發(fā)生器,使用方案1更有利于整體設計,且在軟件設計上更容易實現(xiàn)。故此次設計我們使用方案1。3. 硬件設計3.1 硬件設計原理圖及其介紹 LPC2200待測信號發(fā)生模塊定時器計數(shù)器上位機顯示結果圖3.1 原理框圖由上圖知,被測脈沖信號進入ARM開發(fā)板,然后經(jīng)過1S的定時捕獲得出頻率值,再經(jīng)由上位機顯示出數(shù)值。3.2 主要單元電路的設計本次電路設計主要包括以下幾個模塊:電源電路設計、時鐘電路設計、復位電路設計和LCD顯示電路。3.2.1 電源電路設計電源、晶振及復位電路是整個系統(tǒng)正常工作的基礎。在進行電路

8、設計時,首先保證其設計的正確性和可靠性,其次在系統(tǒng)調試之前也應首先檢查它們的工作是否正常:上電之前的電路是否短路、電壓輸出是否正確、晶振輸出是否正確、以及復位信號電平和持續(xù)時間是否滿足要求等。本系統(tǒng)中5V電壓直接由外部電源引入,1.8V及3.3V電壓由電壓轉換器獲得。在此選用固定電壓輸出的DCDC轉換器:ams1117-1.8(輸出電壓1.8V)和ams1117-3.3(輸出電壓3.3V)。圖3.2電源電路3.2.2時鐘振蕩電路設計圖3.3 時鐘振蕩電路3.2.3復位電路設計復位電路完成系統(tǒng)的上電復位和運行中的按鍵復位功能。本系統(tǒng)采用電壓監(jiān)控芯片R3112完成電路的復位設計,具體電路如圖8.3

9、所示。LPC2200芯片復位端為低有效端子,R3112芯片在加電后,其輸出端(OUT)會在保持一定時間的低電平信號后變?yōu)楦唠娖?,低電平信號存在時間的長短由CD端連接的電容決定,通過調節(jié)此電容可以滿足系統(tǒng)對復位時間的要求。另外R3112可以監(jiān)控系統(tǒng)電壓,在系統(tǒng)電壓低于一定值時,輸出低電平,復位整個系統(tǒng),從而保證了系統(tǒng)工作的可靠性。圖3.4復位電路3.2.4串口電路SP232E器件是一個符合RS-232和V.28串行協(xié)議規(guī)格的收發(fā)器家族,帶有增強ESD性能。這些器件的ESD容限得到了改進,不論是人體放電模式還是IEC1000-4-2氣隙放電,都達到了±15kV。SP232E器件在引腳上兼

10、容Sipex的SP232A 器件,符合熱門行業(yè)標準。與原來的版本一樣,在帶負載情況下SP232E器件具有至少120Kbps的數(shù)據(jù)傳輸速率,0.1F的電荷泵電容,以及適應商業(yè)應用的整體強度。同時,這些器件還具有Sipex的雙極型CMOS設計,允許低功耗操作,而不影響性能。SP232E系列可選塑料或陶瓷DIP和SOIC封裝,覆蓋商業(yè)級,工業(yè)級和軍工級溫度范圍。由于開發(fā)板是3.3V供電系統(tǒng),需要使用電平轉換芯片SP3232E來進行RS-232電平轉換。SP3232E的工作電壓為3.3V,電平轉換電路如圖25所示。當使用ISP(在系統(tǒng)可編程集成開發(fā)環(huán)境)功能時,需要將PC機的串口與開發(fā)板的串

11、口相連,短接JP6端口,短接P0.14,在系統(tǒng)復位時,進入ISP狀態(tài)。同樣,在程序仿真調試中,若用到串口UART0,則需要短接JP6兩個端口。 圖3.5UART03.2.5顯示電路設計液晶顯示的原理是利用液晶的物理特性,通過電壓對其顯示區(qū)域進行控制,有電就有顯示。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅動、易于實現(xiàn)全彩色顯示的特點,目前已被廣泛應用在便攜式電腦、數(shù)字攝像機、PDA移動通信工具等眾多領域。液晶顯示的分類方法有很多種,通??砂雌滹@示方式分為段式、字符式、點陣式等。除了黑白顯示外,液晶顯示器還有多灰度有彩色顯示等。在本次頻率計設計當中12864 液晶顯示最后的頻率計算結果。

12、12864 液晶顯示具有如下的特性:提供8 位,4 位并行接口及串行接口可選并行接口適配M6800 時序自動電源啟動復位功能內部自建振蕩源64×16 位字符顯示RAM(DDRAM 最多16 字符×4 行,LCD 顯示范圍16×2 行)(改為半角輸入)2M 位中文字型ROM(CGROM),總共提供8192 個中文字型(16×16 點陣)16K 位半寬字型ROM(HCGROM),總共提供126 個西文字型(16×8 點陣)64×16 位字符產生RAM(CGRAM)15×16 位總共240 點的ICON RAM(ICONRAM)液

13、晶顯示12864的引腳功能如表3.1所示。 表3-1 液晶顯示12864的引腳功能引腳號引腳名稱方向功能說明1VSS-模塊的電池地2VDD-模塊的電源正端3VO-LCD驅動電壓輸入端4RS(CS)H/L并行的指令數(shù)據(jù)選擇信號:串行的片選信號5R/W(SID)H/L并行的讀寫選擇信號:串行的數(shù)據(jù)口6E(CLK)H/L并行的使能信號:串行的同步時鐘7DB0H/L數(shù)據(jù)08DB1H/L數(shù)據(jù)19DB2H/L數(shù)據(jù)210DB3H/L數(shù)據(jù)311DB4H/L數(shù)據(jù)412DB5H/L數(shù)據(jù)513DB6H/L數(shù)據(jù)614DB7H/L數(shù)據(jù)715PSBH/L并串行接口選擇:H-并行:L-串行16NC空腳17RSTH/L復位

14、低電平有效18NC空腳19LED_A-背光電源正極20LED_K-背光電源負極對12864寫控制時,在使能信號E下降沿有效。在使能信號E下降沿后,為了保證數(shù)據(jù)或指令可靠寫入,需要在使能信號E下降沿后有一段延時,使12864完成內部動作。12864的指令集分為基本指令集和擴充指令集,擴充指令集提供繪圖功能,可以顯示圖片;在本設計當中,僅需要基本指令集以顯示漢字、數(shù)字和字母,表3.2給出12864的基本指令集。清除顯示指令將DDRAM填滿“20H”,并且設定DDRAM的地址計數(shù)器(AC)為“00H”。 地址歸位指令設定DDRAM的地址計數(shù)器(AC)為“00H”,并且將游標移到開頭原點位置,這個指令

15、并不改變DDRAM的內容。在顯示狀態(tài)開/關指令中,D=1,整體顯示ON,C=1,游標ON,B=1,游標位置ON。在功能設定指令中DL=1(必須為1),RE=1,擴充指令集動作,RE=0,基本指令集動作。表3-2 12864的基本指令指令指令碼RSRWDB7DB6DB5DB4DB3DB2DB1DB0設定DDRAM地址001AC6AC5AC4AC3AC2AC1AC0些資料到RAM10D7D6D5D4D3D2D1D0清楚顯示0000000001地址歸位000000001X顯示狀態(tài)開關0000001DCB游標或顯示移位控制000001S/CR/LXX功能設定00001DLXREXX3.3硬件電路總體設

16、計 圖3.6總體電路4 .軟件設計 由硬件電路和和設計原理:所謂頻率,就是周期性信號在單位時間 (1s) 內變化的次數(shù)。若在一定時間間隔T內測得這個周期性信號的重復變化次數(shù)為N,則其頻率可表示為 fx=N/T 。因此,可以用計數(shù)器累計單位時間內的信號個數(shù),然后經(jīng)譯碼、顯示輸出測量結果,發(fā)送給12864或上位機顯示。開 始初始化定時器0初始化串口0向串口發(fā)數(shù)據(jù)定時器1S定時獲取脈沖1S時間到關閉定時器0顯示結果NY 4.1程序流程圖 結論此次實驗題目為ARM為核心的頻率計設計,主要完成從方波發(fā)生器接收脈沖信號,對其進行上升沿捕獲,計1s脈沖個數(shù),通過串口0將最終頻率數(shù)值顯示在上位機上,讀取顯示數(shù)

17、值為最終計算頻率。此次實驗使我通過親自動手操作,將課本ARM嵌入式系統(tǒng)基本教程上的理論知識應用于實踐,充分發(fā)掘學生們的潛力,進一步掌握ARM相關知識。此外,實驗中有一些問題存在,在實驗室做設計時,沒有有效地利用儀器設備進行設計調試,希望以后能有所改進。心得體會【軟件調試】:xxx 在設計的過程中,遇到許許多多錯誤。由于所測信號是方波信號,開始的程序設計是,每當 一個周期的高電平到來時計數(shù)器的值加一,定時一秒,再把計數(shù)器的值發(fā)送給上位機顯示, 但高電平時一段持續(xù)高電平,不是脈沖信號,程序很難設計。在老師的幫助下應用定時捕獲才最終把程序調試了出來??傊@次課程設計鍛煉了我的動手實踐能力,把課本上

18、學到的理論知識與設計制作很好的結合起來,加深了我對很多知識的理解。【硬件設計】:xxx 在做數(shù)字頻率計的設計時,開始是遇到不少的問題,比如我們想如此微弱的信號是怎樣被數(shù)字頻率計檢測的呢,頻率計到底是什么設計原理呢,畢竟還沒有接觸過實際設計和開發(fā),所以在考慮問題的時候往往是不全面的,也就是說這次設計還不少的方面沒有考慮周全,也一定存在著這樣那樣的問題。這個電路的設計有很多的不足,我們的能力在很多方面也需要提高,通過這次小小的考驗讓我們懂得第一次接觸的東西也是能融會貫通的,態(tài)度決定一切。致謝 通過一周的努力,我們的ARM畢設接近了尾聲。此次我們選擇了以ARM為核心的頻率及設計,在本次課設與論文完成

19、中,xxx老師和xxx老師都給予了我們耐心的指導和無私的幫助,從選擇題目到提綱撰寫,再到流程進程,再到軟硬件的設計以及各種調試,老師們多次指出我們設計存在的問題,并給與我們幫助,我們在此表示衷心感謝。參考文獻1 周立功 著. ARM嵌入式系統(tǒng)基本教程(第2版). 北京航空航天大學出版社,2008年.2 周立功 著.深入淺出ARM7-LPC213X/214X. 北京航空航天大學出版社,2005年6月.3 百度文庫資料.頻率計設計4 多媒體課件.第6章 接口技術與硬件設計附錄1: 程序清單/* 文 件 名:pinlvji.c* 功 能:計外部脈沖個數(shù),將頻率數(shù)值通過串口發(fā)送到上位機進行顯示,使*

20、用串口調試助手的窗口顯示頻率值。* 說 明:使用外部晶振為11.0592MHz,即Fpclk=11.0592MHz,根據(jù)* CONFIG.H文件配置;* 通訊格式:8位數(shù)據(jù)位,1位停止位,無奇偶校驗,通訊波特率* 115200。*/#include "config.h"#define UART_BPS115200/ 定義通訊波特率#define TIMER 5#define KEY 1<<7 / 定義按鍵/* 名 稱:DelayNS()* 功 能:長軟件延時* 入口參數(shù):dly延時參數(shù),值越大,延時越久* 出口參數(shù):無*/void DelayNS(uint32

21、dly) uint32 j; for(; dly>0; dly-) for(j=0; j<5000; j+); /* 名 稱:Time0Init()* 功 能:初始化定時器0,定時時間為1S。 * 入口參數(shù):無* 出口參數(shù):無*/void Time0Init(void) /* Fcclk = Fosc*4 = 11.0592MHz*4 = 44.2368MHz Fpclk = Fcclk/4 = 44.2368MHz/4 = 11.0592MHz*/ T0PR = 99; / 設置定時器0分頻為100分頻,得110592HzT0MCR = 0x03; / 匹配通道0匹配中斷并復位T

22、0TCT0MR0 = 110592; / 比較值(1S定時值)T0TCR = 0x03; / 啟動并復位T0TCT0TCR = 0x01; /* 名 稱:UART0_Ini()* 功 能:初始化串口0。設置為8位數(shù)據(jù)位,1位停止位,無奇偶校驗,波* 特率為115200* 入口參數(shù):無* 出口參數(shù):無*/void UART0_Init(void) uint16 Fdiv; PINSEL0 = (PINSEL0 & (0x0F) | 0x05;/ 不影響其它管腳連接,設置I/O連接到UART0 U0LCR = 0x83;/ DLAB = 1,可設置波特率 Fdiv = (Fpclk / 1

23、6) / UART_BPS;/ 設置波特率 U0DLM = Fdiv / 256; U0DLL = Fdiv % 256; U0LCR = 0x03;/* 名 稱:UART0_SendByte()* 功 能:向串口發(fā)送字節(jié)數(shù)據(jù),并等待發(fā)送完畢。* 入口參數(shù):data要發(fā)送的數(shù)據(jù)* 出口參數(shù):無*/void UART0_SendByte(uint8 data) U0THR = data; / 發(fā)送數(shù)據(jù) while( (U0LSR&0x40)=0 ); / 等待數(shù)據(jù)發(fā)送完畢/* 名 稱:UART0_SendStr()* 功 能:向串口發(fā)送一字符串* 入口參數(shù):srt要發(fā)送的字符串的指針*

24、出口參數(shù):無*/void UART0SendStr(char *str) while(1) if( *str = '0' ) break; UART0SendByte(*str+);/ 發(fā)送數(shù)據(jù) /* * 函數(shù)名:itoa * 描述 :將整形數(shù)據(jù)轉換成字符串 * 輸入 :-radix =10 表示10進制,其他結果為0 * -value 要轉換的整形數(shù) * -buf 轉換后的字符串 * -radix = 10 * 輸出 :無 * 返回 :無 * 調用 :被USART1_printf()調用 */static char *itoa(int value, char *string,

25、 int radix)int i, d;int flag = 0;char *ptr = string;if (radix != 10) *ptr = 0; return string;if (!value) *ptr+ = 0x30; *ptr = 0; return string;if (value < 0) *ptr+ = '-' value *= -1;for (i = 10000; i > 0; i /= 10) d = value / i; if (d | flag) *ptr+ = (char)(d + 0x30); value -= (d * i); flag = 1; *ptr = 0;return string; /*名 稱:顯示函數(shù)功 能:顯示轉化后的字符串說 明:*/void d

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論