




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、武漢理工大學單片機課程設計說明書摘要本設計提出了一種基于AT89C52單片機開發的數字頻率、相位測量儀的設計。系統以單片機AT89C52及異或器件為核心,構成完備的測量系統。可以對信號進行頻率、相位等參數的精確測量,測頻絕對誤差不大于0.1HZ,測相位差絕對誤差不大于0.1°。采用液晶LCD1602顯示被測信號的頻率、相位差。與傳統的電路系統相比,其有處理速度快、穩定性高、性價比高、硬件結構簡單的優點。關鍵詞:單片機;低頻;絕對誤差1、設計方案此次課程設計采用間接測量法來測量。此次設計涉及到相位差,即兩列波形異或得到的波形只需要測高電平,要用到GATE信號,GATE=1時,TR0=1
2、,INTO=1才能啟動計數器,而計數器0是通過外部中斷INTO的下降沿開始觸發的,計時器從0開始計時,計數器只能測高電平,因此測得的時間為半個周期。當計數器0計時溢出,執行m加1的操作。則測量時間為:t1=TH0*256+TL0+m*65536 ,所求頻率F=1000000/(2*t1) 測量兩方波的相位差時,先將兩方波信號異或,得到的新波形輸入外部中斷1的入口,在信號的第n個下跳沿時,進入外部中斷的程序,開啟計數器1。第n+1個下跳沿到來時,則關閉計數器1,當GATE=1時,只有在INT1=1 時,TR1=1時,計數器T1才開始計數,當計數器0計時溢出,執行m加1的操作,所以讀的的時間只為高
3、電平的持續時間,即為兩方波的相隔時間t2,相位差可計算如下:t2=TH1*256+TLI+N*65536 ;則相位差P=t2/(2*t1)*360 1.1設計基本原理 1.1.1測量頻率的原理 定時/計數器工作在方式1,每產生一次定時器0中斷,計數65536個脈沖,此時的脈沖來自振蕩器的12分頻后的脈沖,其周期為1uS。根據產生外部中斷0時,定時器0中斷的次數u,以及此時定時/計數器0計數寄存器的數值X,即可求得待測方波的周期為:T=(65536*u+X)us ,取其倒數即可求得待測方波的頻率,小數點后保留兩位,即可使得頻率精度為0.1HZ。1.1.2相位差的測量原理將兩路同頻不同相的方波信號
4、進過鑒相器(即異或)后得到的脈沖寬度t與方波信號的周期T的比值(占空比),即對應為兩信號的相位差,此時相位差。其中,脈沖寬度的測量方法與方波周期的測量方法相同。相位差測量的原理圖如下:圖1 相位差測量原理圖1.2系統設計框圖經過方案論證和比較后,最終確定的系統框圖如圖1所示,主要由AT89C52單片機、異或器件、LCD1602、電源等組成。 單片機AT89C52顯示器LCD1602鑒相器方波A方波B圖2 系統設計框圖2、系統硬件線路設計圖2.1 單片機最小系統設計單片機最小系統是能補足單片機工作的最簡單電路,它由單片機、電源、晶體振蕩器、復位電路等構成。它是本系統的處理單元也是控制單元,負責處
5、理信號、外設的接口與控制,同時它也是所有軟件的載體。本系統采用AT89C52是美國Atmel公司生產的低電壓、高性能CMOS 8位單片機,片內含8KB的可反復檫寫的程序存儲器和12B的隨機存取數據存儲器(RAM),器件采用Atmel公司的高密度、非易失性存儲技術生產,兼容標準MCS-51指令系統,片內配置通用8位中央處理器(CPU)和Flash存儲單元,功能強大的AT89C52單片機可靈活應用于各種控制領域。AT89C52單片機屬于AT89C51單片機的增強型,與Intel公司的80C52在引腳排列、硬件組成、工作特點和指令系統等方面兼容。主要管腳有:XTAL1(19 腳)和XTAL2(18
6、腳)為振蕩器輸入輸出端口,外接12MHz 晶振。RST/Vpd(9 腳)為復位輸入端口,外接電阻電容組成的復位電路。VCC(40 腳)和VSS(20 腳)為供電端口,分別接+5V電源的正負端。P0P3 為可編程通用I/O 腳,其功能用途由軟件定義。其管腳如下圖所示:圖3 AT89C52單片機管腳圖本設計中,P0 端口(3239 腳)被定義為N1 功能控制端口,分別與N1的相應功能管腳相連接。單片機正常工作時,都需要有一個時鐘電路和一個復位電路。本設計中選擇了內部時鐘方式和按鍵電平復位電路,來構成單片機的最小電路。如圖3所示。圖4 單片機最小系統2.2液晶LCD1602顯示電路字符型液晶顯示模塊
7、是一種專門用于顯示字母、數字、符號等點陣式LCD,目前常用16*1,16*2,20*2和40*2行等的模塊。LCD1602分為帶背光和不帶背光兩種,基控制器大部分為HD44780,帶背光的比不帶背光的厚,是否帶背光在應用中并無差別。LCD1602采用標準的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如下表1所示:表 1 LCD1602引腳接口說明編號符號引腳說明編號符號引腳說明1VSS電源地9D2數據2VDD電源正極10D3數據3VL液晶顯示偏壓11D4數據4RS數據/命令選擇12D5數據5R/W讀/寫選擇13D6數據6E使能信號14D7數據7D0數據15BLA背光源正極8D1數據1
8、6BLK背光源負極1602液晶模塊的讀寫操作、屏幕和光標的操作都是通過指令編程來實現的。1602液晶模塊內部的控制器共有11條控制指令,如下表2所示,其中1為高電平、0為低電平。表 2 LCD1602控制指令序號指令RSR/WD7D6D5D4D3D2D1D01清顯示00000000012光標返回000000001*3置輸入模式00000001I/DS4顯示開/關控制0000001DCB5光標或字符移位000001S/CR/L*6置功能00001DLNF*7置字符發生存貯器地址0001字符發生存貯器地址8置數據存貯器地址001顯示數據存貯器地址9讀忙標志或地址01BF計數器地址10寫數到CGRA
9、M或DDRAM)10要寫的數據內容指令1:清顯示,指令碼01H,光標復位到地址00H位置。指令2:光標復位,光標返回到地址00H。指令3:光標和顯示模式設置 I/D:光標移動方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。指令4:顯示開關控制。 D:控制整體顯示的開與關,高電平表示開顯示,低電平表示關顯示 C:控制光標的開與關,高電平表示有光標,低電平表示無光標 B:控制光標是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標或顯示移位 S/C:高電平時移動顯示的文字,低電平時移動光標。指令6:功能設置命令 DL:高電平時為4位總線,低電平時為8位總
10、線 N:低電平時為單行顯示,高電平時雙行顯示 F: 低電平時顯示5x7的點陣字符,高電平時顯示5x10的點陣字符。指令7:字符發生器RAM地址設置。指令8:DDRAM地址設置。指令9:讀忙信號和光標地址 BF:為忙標志位,高電平表示忙,此時模塊不能接收命令或者數據,如果為低電平表示不忙。指令10:寫數據。與HD44780相兼容的芯片時序如下表3所示:表 3 基本操作時序表讀狀態輸入RS=L,R/W=H,E=H輸出D0D7=狀態字寫指令輸入RS=L,R/W=L,D0D7=指令碼,E=高脈沖輸出無讀數據輸入RS=H,R/W=H,E=H輸出D0D7=數據寫數據輸入RS=H,R/W=L,D0D7=數據
11、,E=高脈沖輸出無其操作時序圖如下所示:圖5 讀操作時序圖圖6 寫操作時序圖本設計中采用液晶LCD1602顯示輸入方波A和B的頻率和相位差,其D0D7與單片機的P0端口連接,使能端E、RS、RW分別與單片機P2.4、P1.7、P1.6連接,此電路原理簡單,電路連接方便,如圖7所示。圖7 液晶LCD1602顯示電路2.3頻率、相位差測量電路本設計中將方波A輸入INT0,采用定時中斷測量其頻率,同時將方波A和方波B經過異或門74LS86異或后輸入INT1即可測量出兩路方波的相位差。如圖7所示。圖8 頻率、相位差測量電路異或門74LS86真值表如表4所示:表4 74LS86真值表ABC0000111
12、01110綜上所述,頻率、相位表的總體電路圖如圖9所示:圖9 頻率相位表的總體電路圖3程序設計3.1資源分配表表5 資源分配表I/O口作用P0LCD1602數據接口P1.6LCD1602 RW接口P1.7LCD1602 RS接口P2.4LCD1602 E接口P3.2頻率測量接口P3.3相位差測量接口3.2程序流程框圖頻率、相位表的程序流程圖如圖9所示:圖10 程序流程圖4.系統仿真和測試結果在仿真軟件PROTUES中按照電路圖連接好電路。輸入兩待測方波信號波形,當測試頻率時,先依次設置好方波A和B的頻率,進行仿真測得數據;當測試相位差,先將方波A和B頻率設置為500HZ,然后依次設置相位差,測
13、試波形和結果如圖11所示:圖11 仿真波形表6 仿真頻率測試結果輸入頻率/HZ051050100150200250測得頻率/HZ0.995.0010.0050.00100.00150.01200.00250.00輸入頻率/HZ300350400450500550600650測得頻率/HZ299.94349.95400.00450.04500.00550.05600.24650.19輸入頻率/HZ70075080085090095010001050測得頻率/HZ699.94750.26800.64850.98899.92950.211000.641050.06表7 仿真相位差測試結果輸入相位差/
14、度030456090120135150測得相位差/度030.0645.0059.9490.00120.06135.00149.945、性能分析根據表6測試所得結果可以看出:當輸入頻率0-550HZ時,頻率誤差大約為0.05HZ,小于0.1HZ;當輸入頻率大于600HZ時,頻率誤差大于0.1HZ,并且隨著輸入頻率增大,頻率誤差均大于0.1HZ,故輸入頻率為0-550HZ時滿足要求。根據表7測試所得結果可以看出:當輸入的兩路方波的相位差0-180度時,測試相位差大約為0度,小于0.1度,測試所得相位差性能比較好。由此可得如下結論:本次所設計的頻率/相位差表適合測試低頻信號,最佳頻率范圍為0-550
15、HZ,輸入方波相位差任意均可。6、心得與體會7、參考文獻附錄一:源程序#include<reg52.h> #include<math.h>#define uint unsigned int#define uchar unsigned charuchar m=0,n=0;uchar u,v;uint i,j;uint x,y;uint c,d; /相位數據結果保存float t0,t1,f,p;uint a=70,61,48,48,48,48,48,46,48,48,72,90; /頻率數據結果保存/F,=,0,0,0,0,0,.,0,0,H,Zuint b=80,61,
16、48,48,48,46,48,48,34; /相位數據結果保存 /P,=,0,0,0,.,0,0," /相位數據結果保存sbit lcdrw=P16;sbit lcdrs=P17;sbit lcden=P24;/LCD1602的設置/void delay(uint s)/延時1MS uint r,g; for(r=s;r>0;r-) for(g=110;g>0;g-); void write_com(uchar com) / 寫指令 lcdrs=0; P0=com; delay(5); lcden=1; delay(5); lcden=0;void write_data(
17、uchar date) / 寫數據 lcdrs=1; P0=date; delay(5); lcden=1; delay(5); lcden=0;void initlcd()/初始化 lcdrw=0; lcden=0; /write_com(0x01);/顯示清屏 write_com(0x38);/顯示模式設置 write_com(0x0c); /顯示開,開游標,不閃爍 write_com(0x06); / 字符時整體不移動 /LCD1602設置/定時器的設置/ void CT_init() /定時計數器初始化TMOD=0x99; /GATE=1,T1、T0工作在方式1,定時方式TH0=0;
18、/定時計數器初值清零TL0=0;TH1=0;TL1=0;TR0=1; /TR0,TR1置位,此時定時計數器的啟動有INT0,INT1引腳電平決定TR1=1;ET0=1; /開中斷ET1=1;void ITC0() interrupt 0 /外部中斷0服務程序u=m; /讀定時計數器0溢出次數m=0; /溢出次數清零x=TH0*256+TL0; /讀定時計數器0當前值TH0=0; /定時計數器0清零TL0=0;void TIME0() interrupt 1 /定時計數器0溢出中斷m+; /溢出次數加1void ITC1() interrupt 2 /外部中斷1服務程序v=n; /讀定時計數器1溢出次數n=0; /溢出次數清零y=TH1*256+TL1; /讀定時計數器1當前值TH1=0; /定時計數器1清零TL1=0; void TIME1() interrupt 3 /定時計數器1溢出中斷n+; /溢出次數加1/定時器的設置/void main()initlcd(); /液晶顯示初始化 CT_init(); /定時計
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年體檢行業服務質量提升關鍵技術與市場分析報告
- 藥品運輸規章管理制度
- 藥庫防火防盜管理制度
- 藥店合理用藥管理制度
- 藥店藥品配送管理制度
- 營運賣場銷售管理制度
- 設備使用評估管理制度
- 設備外修加工管理制度
- 設備效率評價管理制度
- 設備點檢潤滑管理制度
- 3D打印技術與應用智慧樹知到期末考試答案章節答案2024年西北工業大學
- 博物館翻新改造合同
- 企業管理咨詢報告書
- 職業生涯規劃-體驗式學習智慧樹知到期末考試答案章節答案2024年華僑大學
- MOOC 鐵路行車組織-北京交通大學 中國大學慕課答案
- 璀璨山海·傳承-石家莊海山公園景觀設計
- 工業互聯網標識應用成效評估報告(2023年)
- 鐵礦石提煉與冶煉技術
- 國家職業技術技能標準 6-16-02-07 石油開采工 人社廳發202226號
- 走失患者不良事件警示教育內容
- 無人機法律法規與安全飛行 第2版 課件 9 國外無人機管理
評論
0/150
提交評論