版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 微控制原理課程設(shè)計題 目: 基于S08的簡易頻率計設(shè)計 院系名稱: 電氣工程學院 專業(yè)班級: 學生姓名: 學 號: 評語:成 績:任課教師:目 錄一 我的課題設(shè)計3二 方案比較與選擇3 1方案比較3 2方案論證4 3方案選擇4三 系統(tǒng)設(shè)計原理5四 S08AW簡介5五 電路設(shè)計6 1 顯示電路6 2 電路圖8六 程序設(shè)計9 1 程序流程圖9 2 C語言程序設(shè)計10七 功能分析17 1 外圍電路的理論分析17 2 頻率的測量 17八 總結(jié)17 參考文獻19一 我的課題設(shè)計本設(shè)計是基于s08單片機設(shè)計的簡易頻率計。技術(shù)指標:頻率(F)為:1Hz100MHz,周期(T)為:1S10E-7S
2、,精度為:10%。二 方案比較與選擇1 方案比較方案一:本方案主要以數(shù)字器件為核心,主要分為時基電路,邏輯控制電路,放大整形電路,閘門電路,計數(shù)電路,鎖存電路,譯碼顯示電路七大部分。其原理框圖如圖1.1所示:邏輯控制電路譯碼顯示器鎖存器閘門電路計數(shù)器時基電路放大整形電路圖1.1 方案一原理框圖方案二:本方案主要以單片機為核心,利用單片機的計數(shù)定時功能來實現(xiàn)頻率的計數(shù)并且利用單片機的動態(tài)掃描把測出的數(shù)據(jù)送到數(shù)字顯示電路顯示。其原理框圖如1.2所示: 信號放大電路信號整形單片機S08電路數(shù)字顯示電路圖1.2 方案二原理圖2 方案論證方案一:本方案使用大量的數(shù)字器件,被測量信號經(jīng)過放大整形電路變成計
3、數(shù)器所要求的脈沖信號,其頻率與被測信號的頻率相同。同時時基電路提供標準時間基準信號,其高電平持續(xù)時間1s,當1s信號來到時,閘門開通,被測脈沖信號通過閘門,計數(shù)器開始計數(shù),直到1s信號結(jié)束閘門關(guān)閉,停止計數(shù)。若在閘門時間1s內(nèi)計數(shù)器計得的脈沖個數(shù)為N,則被測信號頻率F(X)=N Hz。邏輯控制電路的作用有兩個:一是產(chǎn)生鎖存脈沖,使顯示器上的數(shù)字穩(wěn)定;二是產(chǎn)生清零脈沖,使計數(shù)器每次測量從零開始計數(shù)。 方案二:本方案主要以單片機為核心,被測信號先進入信號放大電路進行放大,再被送到波形整形電路整形,把被測正弦波或者三角波轉(zhuǎn)換為方波,利用單片機的計數(shù)器和定時器的功能對被測信號進行計數(shù)。編寫相應(yīng)的程序可
4、以使單片機自動調(diào)節(jié)測量的量程,并把測出的頻率數(shù)據(jù)送到顯示電路顯示。3 方案選擇 比較以上兩種方案可以知道,方案二的核心是單片機,使用的元器件少,原理電路簡單,調(diào)試簡單只要改變程序的設(shè)定值則可以實現(xiàn)不同頻率范圍的測量,能自動選擇測試的量程。與方案二相比較方案一則使用了大量的數(shù)字元器件,原理電路復雜,硬件調(diào)試麻煩。如要測量高頻的信號還需要加上分頻電路,價格相對高。鑒于我們是第一次做與單片機有關(guān)的電子設(shè)計作品,為了減少一定的難度以及為今后更好的實現(xiàn)頻率計的精細化和準確化,經(jīng)過小組討論,我們決定從基礎(chǔ)的頻率計出發(fā)。該頻率計是利用單片機內(nèi)部的定時/計數(shù)器完成待測信號周期頻率的測量,測量范圍相比與要求較窄
5、,但具有一定的代表性和基礎(chǔ)性。三 系統(tǒng)設(shè)計原理本頻率計的設(shè)計以是S08AW為核心,利用它內(nèi)部的定時/計數(shù)器完成待測信號周期/頻率的測量,定時/計數(shù)器的工作可以由編程來實現(xiàn)定時,計數(shù)和產(chǎn)生計數(shù)溢出時中斷要求的功能。在定時器工作方式下,在被測時間間隔內(nèi),每來一個機器周期,計數(shù)器自動加1,這樣以機器周期為基準可以用來測量時間間隔。在計數(shù)器工作方式下,加至外部引腳的待測信號發(fā)生從1到0的跳變計數(shù)器加1,這樣在計數(shù)閘門的控制下可以用來測量待測信號的頻率。外部輸入在每個機器周期被采用一次,這樣查測一次從1到0的跳變至少需要2個機器周期,所以最大計數(shù)速率為時鐘頻率1/24。定時/計數(shù)器的工作有運行控制位TR
6、控制,當TR置1,定時/計數(shù)器開始計數(shù);當TR清0 ,停止計數(shù)。 當待測信號的頻率>100HZ時,定時/計數(shù)器構(gòu)成為計數(shù)器,以機器周期為基準,由軟件產(chǎn)生計數(shù)閘門,計數(shù)閘門寬度>1S時,即可滿足頻率測量結(jié)果為3位有效數(shù)字。四 S08AW簡介 S08AW系列是Freescale公司推出的新一代S08系列微控制器中的一款增強型8位微控制器,它不僅集成度高、片內(nèi)資源豐富,接口模塊包括SPI、SCI、IIC、A/D、PWM 等,還具有很寬的工作溫度范圍:-40+125,它在汽車電子、工業(yè)控制、中高檔機電產(chǎn)品等領(lǐng)域具有廣泛的用途。S08AW 微控制器采用8位S08CPU,片內(nèi)總線時鐘最高可達2
7、0MHz;片內(nèi)資源包括2K RAM、將近62K Flash、串行接口模塊(SCI、SPI和IIC)、定時器模塊(TPM)、可選擇寬范圍時鐘頻率,它還提供一個8位/10位精度的A/D轉(zhuǎn)換器,并支持后臺調(diào)試模式BDM。S08AW是Freescale首個基于高性能S08CPU內(nèi)核并支持2.75.5V電源的微控制器。它包含眾多有應(yīng)用價值的特性:將近62K的flash存儲器、高達2K的RAM、靈活而無需外部元件的內(nèi)部時鐘發(fā)生器、低電壓檢測、高性能模/數(shù)轉(zhuǎn)換器(ADC)和串行通信模塊等。S08AW系列具有極佳的電磁兼容性能(EMC)并提供了不同的引腳數(shù)(64, 48或44)、封裝選項(QFP, LQFP或
8、QFN)及寬溫度范圍 (-40+125),可適應(yīng)各類惡劣環(huán)境,因此該微控制器適用于高可靠的工業(yè)與汽車電子領(lǐng)域。五 電路設(shè)計1 顯示電路我們測量的頻率最終要顯示出來,八段LED 數(shù)碼管顯示器由8 個發(fā)光二極管組成?;?個長條形的發(fā)光管排列成“日”字形,另一個圓點形的發(fā)光管在數(shù)碼管顯示器的右下角作為顯示小數(shù)點用,它能顯示各種數(shù)字及部份英文字母。LED 數(shù)碼管顯示器有兩種形式:一種是8個發(fā)光二極管的陽極都連在一起的,稱之為共陽極LED 數(shù)碼管顯示器;另一種是8 個發(fā)光二極管的陰極都連在一起的,稱之為共陰極LED 數(shù)碼管顯示器。共陰和共陽結(jié)構(gòu)的LED 數(shù)碼管顯示器各筆劃段名和安排位置是相同的。當二極
9、管導通時,對應(yīng)的筆劃段發(fā)亮,由發(fā)亮的筆劃段組合而顯示的各種字符。8個筆劃段 h g f e d c b a 對應(yīng)于一個字節(jié)(8 位)的D7、D6、D5、D4、D3、D2、D1、D0,于是用8位二進制碼就能表示欲顯示字符的字形代碼。我們使用的是SM420564-32系列的共陰四位一體數(shù)碼顯示管。4位一體數(shù)碼管,其內(nèi)部段已連接好,引腳如圖所示(正面朝自己,小數(shù)點在下方),a、b、c、d、e、f、g、dp為段引腳,1、2、3、4分別表示四個數(shù)碼管的位。 。 。 。 。 。 。 1 a f 2 3 b 。 。 。 。 。 。 e d dp c g 4 在單片機應(yīng)用系統(tǒng)中,數(shù)碼管顯示器顯示常用兩種辦法:
10、靜態(tài)顯示和動態(tài)掃描顯示。所謂靜態(tài)顯示,就是每一個數(shù)碼管顯示器都要占用單獨的具有鎖存功能的I/O 接口用于筆劃段字形代碼。這樣單片機只要把要顯示的字形代碼發(fā)送到接口電路,直到要顯示新的數(shù)據(jù)時,再發(fā)送新的字形碼。因此,使用這種辦法單片機中CPU的開銷小,能供給單獨鎖存的I/O 接口電路很多。在單片機系統(tǒng)中動態(tài)掃描顯示接口是單片機中應(yīng)用最為廣泛的一種顯示方式之一,其接口電路是把所有顯示器的8個筆劃段a-h同名端連在一起,而每一個顯示器的公共極COM是各自獨立地受I/O 線控制。CPU 向字段輸出口送出字形碼時,所有顯示器接收到相同的字形碼,但究竟是那個顯示器亮,則取決于COM 端,而這一端是由I/O
11、 控制的,所以我們就能自行決定何時顯示哪一位了。而所謂動態(tài)掃描就是指我們采用分時的辦法,輪流控制各個顯示器的COM 端,使各個顯示器輪流點亮。在輪流點亮掃描過程中,每位顯示器的點亮時間是極為短暫的(約1ms),但由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實際上各位顯示器并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感。如圖原理圖5.1圖5.1 顯示電路原理圖2 電路圖 圖5.2 S08AW電路 其中含有晶振、復位電路、138譯碼輸出電路。六 程序設(shè)計1 程序流程圖圖6.1程序流程圖2 C語言程序設(shè)計#include<reg52.h>#def
12、ine unchar unsigned charvoid init_timer();/定時器初始化函數(shù)void delay();/基礎(chǔ)延時函數(shù)void mult_delay(unchar time);/基礎(chǔ)延時函數(shù)整數(shù)倍延時void convert_LED();/LED結(jié)果轉(zhuǎn)換函數(shù)void LED_number_add(unsigned int add);/加法函數(shù)void LED_display();/void LCM_display();unchar count = 0;unsigned int temp_add = 0;/加數(shù)add的臨時賦值unchar point = 7;/定義小數(shù)點
13、所在的位unchar LED_number3,LED_number2,LED_number1,LED_number0;/顯示在LED上的真實數(shù)字unchar LEDBUF=0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00;/LED數(shù)據(jù)顯示緩沖區(qū)unchar led_point = 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x08;/定義帶小數(shù)點的代碼段unchar leddata=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x0
14、8;/定義不帶小數(shù)點的代碼/*主函數(shù)*/void main()init_timer();/定時器配置LED_number0 = 0;LED_number1= 0;LED_number2= 0;LED_number3= 0;while(1)convert_LED();/將頻率值轉(zhuǎn)換成顯示在8段數(shù)碼管上的數(shù)據(jù) LED_display();/將前面轉(zhuǎn)換出來的數(shù)字顯示在LED上/*LED顯示函數(shù)*/void LED_display()unchar index = 0;unchar NOT_zero;NOT_zero = 0;for(index=0;index<8;index+)if(!(LEDB
15、UFindex=0)&(!NOT_zero)&(index != point)NOT_zero = 1;/P0 = index;P1 = 0x00;P0 &= 0xf8;P0 |= index;if(point=index)P1 = led_pointLEDBUFindex;elseP1 = leddataLEDBUFindex;mult_delay(1);/*基礎(chǔ)延時函數(shù)*/void delay()unsigned int time_length;time_length = 0x0a;while(time_length-);/*/基礎(chǔ)延時函數(shù)整數(shù)倍延時*/void m
16、ult_delay(unchar time)while(time-)delay();/*LED結(jié)果轉(zhuǎn)化函數(shù)*/void convert_LED()if(temp_add != 0)LED_number_add(temp_add);temp_add = 0;if(LED_number0>=100)LED_number1 += LED_number0/100;LED_number0 -= (LED_number0/100)*100;if(LED_number1>=100)LED_number2 += LED_number1/100;LED_number1 -= (LED_number1
17、/100)*100;if(LED_number2>=100)LED_number3 += LED_number2/100;LED_number2 -= (LED_number2/100)*100;if(LED_number3>=100)LEDBUF0 = 11;LEDBUF1 = 11;LEDBUF2 = 11;LEDBUF3 = 11;LEDBUF4 = 11;LEDBUF5 = 11;LEDBUF6 = 11;LEDBUF7 = 11;while(1)LED_display();LEDBUF7 = LED_number0%10;LEDBUF6 = LED_number0/10;
18、LEDBUF5 = LED_number1%10;LEDBUF4 = LED_number1/10;LEDBUF3 = LED_number2%10;LEDBUF2 = LED_number2/10;LEDBUF1 = LED_number3%10;LEDBUF0 = LED_number3/10;/*加法函數(shù)*/void LED_number_add(unsigned int add)unchar addH,addL;addH = add/100;addL = add%100;LED_number0 += addL;LED_number1 += addH;/*定時器初始化函數(shù)*/void i
19、nit_timer()EA = 1; /開總中斷ET0 = 1; /允許定時器0中斷TMOD = 0x51; /定時器工作方式選擇TL0 = 0x00;TH0 = 0x4c; /定時器賦予初值/*-*/TL1 = 0x00;TH1 = 0x00; /計數(shù)器賦予初值/*-*/TR0 = 1; /啟動定時器TR1 = 1;/*定時器中斷服務(wù)函數(shù)*/void timer0() interrupt 1 /50ms中斷函數(shù)unchar temp_TL1 = 0;unchar temp_TH1 = 0;unsigned long temp_number = 0;TH0=0x4c; /50ms初值 晶振11
20、.0592TL0=0x00;count+;if(count=20)count=0;temp_TL1 = TL1;temp_TH1 = TH1;TL1 = 0x00;TH1 = 0x00;LED_number0 = 0x00;LED_number1 = 0x00;LED_number2 = 0x00;LED_number3 = 0x00;temp_number = temp_TH1*256+temp_TL1; LED_number3 = temp_number/1000000; LED_number2 = (temp_number%1000000)/10000; LED_number1 = (t
21、emp_number%10000)/100; LED_number0 = (temp_number%100);七 功能分析1 外圍電路的理論分析信號輸入幅值可能沒有到斯密特觸發(fā)器所能識別的幅值,所以要先由三極管進行放大。放大后,由斯密特觸發(fā)器(74ls14)進行整形,整形后輸出相同頻率的方波。而脈沖部分電平約為45v,為高電平。再根據(jù)單片機發(fā)出的信號是否要分頻。由于1M除以16為62500。而單片機計數(shù)器可以計到65536.可以減少設(shè)計要求。小頻率在分頻情況下,誤差較大,所以直接送給。而且由于普通單片機不能正確識別幾百khz的頻率。大于60khz進行16分頻。設(shè)計中由于沒及時買到三態(tài)門,只用手
22、動控制。2 頻率的測量 先將最后要存儲R0R7 清零,過程中出現(xiàn)位標志等清零進行初始化。然后將T0方式一賦初TH0=0B1H,TL0=0E7H.循環(huán)50次正好1S。計數(shù)方式一TH1.TH0清零同時開啟定時器T0和計數(shù)器T1。如果定時50次(1s)到了,就停止計數(shù)器T1.將T1的計數(shù)的值轉(zhuǎn)化十進制數(shù)(調(diào)用網(wǎng)上了二位BCD碼轉(zhuǎn)化),形成十進制的頻率。再判斷是否有進行分頻。有的話,將十進制數(shù)用每位都乘以16進行移位相加,因為每一位最大為9.乘以16再加上進位,也不會超過三位數(shù),所以可以用寄存器先進行儲存。再用每位相加再加上進位。得到乘以16的十進制數(shù),如果超出1Mhz,對置位認為超出量程。至此已經(jīng)得到在(11MHZ)的頻率。再進行判斷頻率是否超過1khz. 如果超過1KHZ,直接送給顯示。如果小于1khz,先進行測周期(見周期測量),再調(diào)用四字除法二字子程序。用100000000除以周期得到的值,得到頻率再轉(zhuǎn)化十進制。得到頻率。取四位有效數(shù)值,誤差基本上達到很小。八 總結(jié)通過這次設(shè)計,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度房地產(chǎn)開發(fā)精美合同協(xié)議范本(品質(zhì)保障版)3篇
- 2024版幼兒娛樂場所承包合同條款匯編版
- 二零二五版租賃住房合同糾紛調(diào)解規(guī)范3篇
- 2024版汽車租賃委托付款協(xié)議書
- 2025年度版權(quán)監(jiān)測合同標的:盜版監(jiān)測與維權(quán)3篇
- 二零二五版勞動合同主體變更與員工培訓補貼協(xié)議3篇
- 2024年科技成果轉(zhuǎn)化與合作合同
- 二零二五年度跨境電商金融合同履行與跨境支付服務(wù)3篇
- 二零二五年度生態(tài)環(huán)保庫房租賃合同3篇
- 二零二五年度房地產(chǎn)項目招投標及合同簽訂協(xié)議3篇
- 餐飲行業(yè)智慧餐廳管理系統(tǒng)方案
- 2025年度生物醫(yī)藥技術(shù)研發(fā)與許可協(xié)議3篇
- 電廠檢修安全培訓課件
- 殯葬改革課件
- 2024企業(yè)答謝晚宴會務(wù)合同3篇
- 雙方個人協(xié)議書模板
- 車站安全管理研究報告
- 瑪米亞RB67中文說明書
- 五年級數(shù)學(小數(shù)四則混合運算)計算題專項練習及答案
- 2024年鋼鐵貿(mào)易行業(yè)前景分析:鋼鐵貿(mào)易行業(yè)發(fā)展趨勢推動行業(yè)可持續(xù)發(fā)展
- 節(jié)前物業(yè)安全培訓
評論
0/150
提交評論