版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、1 AT89C52單片機的基本功能及應用1.1 AT89C52芯片介紹AT89C52是美國ATMEL公司生產(chǎn)的低電壓,高性能CMOS8位單片機,片內(nèi)含8kbytes的可反復擦寫的只讀程序存儲器(PEROM)和256bytes的隨機存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術生產(chǎn),與標準MCS-51指令系統(tǒng)及8052產(chǎn)品引腳兼容,片內(nèi)置通用8位中央處理器(CPU)和Flash存儲單元,功能強大AT89C52單片機適合于許多較為復雜控制應用場合。功能特性概述:AT89C52提供以下標準功能:8k字節(jié)Flash閃速存儲器,256字節(jié)內(nèi)部RAM,32個IO口線,3個16位
2、定時計數(shù)器,一個6向量兩級中斷結構,一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。同時,AT89C52可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止CPU的工作,但允許RAM,定時計數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復位。 (1)STC89C52芯片引腳分布及說明:STC89S52引腳分布如圖1所示:圖1 STC89C52引腳分布(2) AT89C52各引腳功能簡介:P0口:P0口是一組8位漏極開路型雙向IO口,也即地址數(shù)據(jù)總線復用口。作為輸口用時,每位能吸收電流的方式驅(qū)動8個TTL邏輯門
3、電路,對端口P0寫“l(fā)”時,可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉換地址(低8位)和數(shù)據(jù)總線復用,在訪問期間激活內(nèi)部上拉電阻。在Flash編程時,P0口接收指令字節(jié)。而在程序校驗時,輸出指令字節(jié),校驗時,要求外接上拉電阻。P1口:P1是一個帶內(nèi)部上拉電阻的8位雙向IO口,P1的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對端口寫“l(fā)”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。與AT89C5l不同之處是,P1.0和P1.1還可分別作為定時計數(shù)器2的外部
4、計數(shù)輸入(P1.0T2)和輸入(P1.1T2EX),參見表1。Flash編程和程序校驗期間,Pl接收低8位地址。P2口:P2是一個帶有內(nèi)部上拉電阻的8位雙向IO口,P2的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對端口P2寫“l(fā)”,通過內(nèi)部的上拉電阻把端口拉到高平此時可作輸入口,作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行MOVXDPTR指令)時,P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器(如執(zhí)行MOVXRI指令)時,P2口輸出P2鎖存器的內(nèi)容。Flash編程或校驗
5、時,P2亦接收高位地址和一些控制信號。 P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向IO口。P3口輸出緩沖級可驅(qū)動(吸或輸出電流)4個TTL邏輯門電路。對P3口寫入“l(fā)”時,它們被內(nèi)部上拉電阻拉高并可作為輸入端口。此時,被外部拉低的P3口將用上拉電阻輸出電流(IIL)。P3口除了作為一般的I0口線外,更重要的用途是它的第二功能,如下表所示:表1 AT89C52引腳特性引腳號功能特性P1.0T2(定時/計數(shù)器2外部計數(shù)脈沖輸入),時鐘輸出P1.1T21.X(定時/技術2 擒獲/重裝載觸發(fā)和方向控制)表2 AT89C52端口引腳第二功能端口引腳第二功能端口引腳第二功能P3.0RXD(串
6、行的入口)P3.4T0(定時/計數(shù)器0外部輸入)P3.1TXD(串行的出口)P3.5T1(定時/計數(shù)器1外部輸入)P3.2INT0(外部中斷0)P3.6WR(外部數(shù)據(jù)存儲器寫選通)P3.3INT1(外部中斷1)P3.7RD(外部數(shù)據(jù)存儲器讀選通)此外,P3口還接收一些用于Flash閃速存儲器編程和程序校驗的控制信號。RST:復位輸入。當振蕩器工作時,RST引腳出現(xiàn)兩個機器周期以上高電平將使單片機復位。ALEPROG:當訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時鐘振蕩頻率的l6輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定
7、時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。對Flash存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,應設置ALE禁止位無效。PSEN:程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當AT89C52由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN有效,即輸出兩個脈沖。在此期間,當訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。EAVPP:外部訪問允許
8、。欲使CPU僅訪問外部程序存儲器(地址為0000HFFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復位時內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲器中的指令。 Flash存儲器編程時,該引腳加上+12V的編程允許電源Vpp,當然這必須是該器件是使用12V編程電壓Vpp。XTAL1:振蕩器反相放大器的及內(nèi)部時鐘發(fā)生器的輸入端。XTAL2:振蕩器反相放大器的輸出端。1.3 單片機的最小系統(tǒng)在智能化儀器儀表中,控制核心均為微處理器,而單片機以高性能、高速度、體積小、價格低廉、穩(wěn)定可靠而得到廣泛應用,是設計智能化儀器儀表的首
9、選微控制器,單片機結合簡單的接口電路即可構成單片機最小系統(tǒng),它是智能化儀器儀表的基礎,也是測控、監(jiān)控的重要組成部分。系統(tǒng)的時鐘電路設計是采用的內(nèi)部方式,即利用芯片內(nèi)部的振蕩電路。AT89單片機內(nèi)部有一個用于構成振蕩器的高增益反相放大器。引腳XTAL1和XTAL1分別是此放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外晶體諧振器一起構成一個自激振蕩器。外接晶體諧振器以及電容C1和C2構成并聯(lián)諧振電路,接在放大器的反饋回路中。對外接電容的值雖然沒有嚴格的要求,但電容的大小會影響震蕩器頻率的高低、震蕩器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。因此,此系統(tǒng)電路的晶體振蕩器的值為12MHz,電容應盡
10、可能的選擇陶瓷電容,電容值約為22F,在焊接刷電路板時,晶體振蕩器和電容應盡可能安裝得與單片機芯片靠近,以減少寄生電容,更好保證震蕩器穩(wěn)定和可靠的工作。該復位電路由一個10UF電容一個200歐電阻和10K電阻共同組成。圖2 STC89C52的最小化配置2 數(shù)字電容測量儀系統(tǒng)工作原理2.1 整體方案設計系統(tǒng)框圖見圖3:S T C 8 9 C 5 2復位電路LCD1602被測電容555按鍵測量晶振電路圖3 系統(tǒng)框圖 圖中給出了整個系統(tǒng)設計的系統(tǒng)框圖,系統(tǒng)主要由四個主要部分組成,單片機和晶振電路設計,555芯片電路設計,LCD1602顯示電路,復位電路設計。2.2 系統(tǒng)按鍵電路鍵閉合時,單片機的端口
11、為低電平;鍵打開時,單片機的端口將變成高電平。由于手的抖動、外部干擾等原因,鍵產(chǎn)生抖動,為了清除鍵盤抖動帶來的影響,目前可以通過硬件電路去除抖動,也可以通過軟件去抖動。一般來說,采用軟件解決是目前最普遍采用的辦法。去抖動的軟件解決方法是:當發(fā)現(xiàn)鍵值為低時,延時10ms左右進行再次判定,如果兩次判定結果一樣,則說明該鍵處于閉合狀態(tài),如果兩次判定結果不一致,則說明是鍵的抖動。電路圖見圖4:圖4 系統(tǒng)按鍵電路2.3 系統(tǒng)復位電路在上電或復位過程中,控制CPU的復位狀態(tài):這段時間內(nèi)讓CPU保持復位狀態(tài),而不是一上電或剛復位完畢就工作,防止CPU發(fā)出錯誤的指令、執(zhí)行錯誤操作,也可以提高電磁兼容性能。無論
12、用戶使用哪種類型的單片機,總要涉及到單片機復位電路的設計。而單片機復位電路設計的好壞,直接影響到整個系統(tǒng)工作的可靠性。許多用戶在設計完單片機系統(tǒng),并在實驗室調(diào)試成功后,在現(xiàn)場卻出現(xiàn)了“死機”、“程序走飛”等現(xiàn)象,這主要是單片機的復位電路設計不可靠引起的。手動按鈕復位需要人為在復位輸入端RST上加入高電平。一般采用的辦法是在RST端和正電源Vcc之間接一個按鈕。當人為按下按鈕時,則Vcc的+5V電平就會直接加到RST端。手動按鈕復位的電路如所示。由于人的動作再快也會使按鈕保持接通達數(shù)十毫秒,所以,完全能夠滿足復位的時間要求。圖5 系統(tǒng)復位電路2.4 555芯片電路本次設計中應用的電路是直接反饋型
13、無穩(wěn)類電路。電路如圖6所示:圖 6 555芯片電路 在555芯片輸出方波后,由于硬件的原因,輸出的方波會有很多毛刺,所以為了去除這些毛刺本設計中使用了一個兩輸入與門(74HC08),讓信號通過74HC08后會使輸出的波形毛刺減少很多,使單片機的測量結果變得精確。 555時基芯片的輸出頻率跟所使用的電阻R和電容C的關系是:又因為,所以即:如果單片機采用12M的晶振,計數(shù)器T0的值增加1,時間就增加1S,我們采用中斷的方式來啟動和停止計數(shù)器T0,中斷的觸發(fā)方式為脈沖下降沿觸發(fā),第一次中斷到來啟動T0,計數(shù)器的值為,第二次中斷到來停止T0,計數(shù)器器的值為,則測量方波的周期為如何開始時刻計數(shù)器的值,則
14、。則: 單片機的計數(shù)器的值N=0-65535,為了測量的精度,N的取值一般在1005000,當電阻R越大,電容C的值就越小。我們?nèi)〔煌碾娮柚?,就得到不同的電容測量的量程。第一檔: 150 uf第二檔: 0.15 uf第三檔: 0.010.5 uf第四檔: 0.0010.05 uf為了編寫程序的方便,我們只計算后面的單位可以根據(jù)使用的量程自行添加。測量范圍的大小0.001uF655.35uF。2.5 系統(tǒng)顯示電路LCD1602是一種專門用來顯示字母、數(shù)字、符號等的點陣型液晶模塊。它有若干個5X7或者5X11等點陣字符位組成,每個點陣字符位都可以顯示一個字符。每位之間有一個點距的間隔,每行之間也
15、有間隔,起到了字符間距和行間距的作用,正因為如此,所以它不能顯示圖形。其引腳分布如圖7所示:圖 7 系統(tǒng)顯示電路3 程序運行結果圖 9 仿真結果圖1圖 9 仿真結果圖24 運行結果分析 通過上面兩個數(shù)值的測量,可以得出此數(shù)字電容測試儀的設計是正確的,可以比較準確的測量出一個待測電容的電容值,并且能夠?qū)⒄`差控制在很小的范圍內(nèi)。只要接入被測電容,打開開關以后,就能直接在屏幕上顯示出電容的大小,方便在以后的實驗中對電容的使用。經(jīng)過調(diào)試,發(fā)現(xiàn)當被測電容容量在1F到50F之間時,測量值比較精確,而當被測電容容量在0.01F到1F之間時,測量值誤差較大,并且顯示方面也出現(xiàn)了一點問題。但被測電容要求在0.0
16、1F到100F之間,為此,在原電路基礎上我們進行了改進,由于Tx=1.1RCx,當Cx在0.01F到1F之間時,只要將R擴大100倍,那么Tx將與Cx在1F到100F時一樣,即Tx在兩種情況下大小相等,于是只要增加一個小量程檔,就能有效地解決這個問題。總結設計中我們投入了最大的熱情和精力,從設計電路圖,選擇元器件,使用Proteus仿真電路,其過程中出現(xiàn)了不少的問題,我們沒有氣餒,沒有退縮,積極向老師請教,并且一遍又一遍的重復實踐,直到我們期望的結果實現(xiàn)。事實也證明我們的努力沒有白費,認真嚴謹?shù)膶嵙晳B(tài)度給我們帶來了成功的喜悅!通過多次的調(diào)試,此次設計的數(shù)字式電容測量儀圓滿完成。該測量儀達到了基
17、本的技術指標,能夠較精確的測量0.001F至50F范圍內(nèi)的電容。但是由于量程較小,在實際生活中存在使用的局限性。不過同樣可以在原電路上增強其指標,比如改變單電路中積分常數(shù)中的電阻值可以改變其量程。通過這次電子系統(tǒng)設計,我們掌握了設計一個數(shù)字電路的基本方法和基本步驟,實際解決了設計中出現(xiàn)的問題,增強了尋找問題,解決問題的能力。參考文獻1 張毅剛.單片機原理及應用M.北京:高等教育出版社,20052 劉光斌,劉冬,姚志成.單片機系統(tǒng)實用抗干擾技術M.北京人民郵電出版社,20043 楊小川.protel DXP 設計指導教程M.北京:清華大學出版社,20044 李金平,沈明山,姜余祥.電子系統(tǒng)設計M
18、.北京:電子工業(yè)出版社,20075 王毓銀.數(shù)字電路邏輯設計M.北京:高等教育出版社,19996 康華光.電子技術基礎M.北京:高等教育出版社,20007 萬文略.單片機原理及應用M.重慶大學出版社,20048 江世明.基于Proteus的單片機用用技術M.北京:電子工業(yè)出版社,20099 邊春元.C51單片機典型模塊設計與應用M.機械工業(yè)出版社育出版社,200810 李海清,黃志遙.電容傳感器新型微弱電容測量電路J.北京:傳感技術學報,200211 付曉光.單片機原理與使用技術M.北京:清華大學出版社,2007.12 李桂安.電子技術實驗及課程設計M.南京:東南大學出版社,200813 夏繼
19、強.單片機實驗與實踐教程M.北京:北京航空航天大學出版社,200114 肖洪兵.跟我學用單片機M.北京:北京航空航天大學出版社,200215 申忠如,郭福田,丁暉.現(xiàn)代測試技術與系統(tǒng)設計M.西安:西安交通大學出版社,200616 郝波.數(shù)字電子技術M.西安:西安電子科技大學出版社,200717 趙文博.新型常用集成電路速查手冊M.北京:人民郵政出版社,200618 薛文,華慧明.新編實用電子技術快速入門M.福州:福建科學技術出版社,200319 羅民昌.集成電路系統(tǒng)M.北京:中國鐵道出版社,199820 丁英麗.交流型微小電容測量電路的設計J.北京:電工技術雜志,2003附錄 程序清單 #in
20、clude <reg52.h>#include<intrins.h> /庫函數(shù)#define DATA P0sbit RW=P26; /1602寫數(shù)據(jù)sbit RS=P25; /1602寫地址sbit EN=P27; /1602工作使能sbit b_test=P37; /開始測量電容的按鍵輸入sbit _reset=P36; /555時基芯片工作控制信號unsigned int T_flag,N,C,i,Dis1,Dis0;unsigned int b6=0X13,0X0D,0X00,0X00,0X25,0X16; /顯示C=00UF/*延時1MS*/void Dela
21、y1ms(unsigned int mm)unsigned int i; for(mm;mm>0;mm-) for(i=100;i>0;i-);/*檢查忙否*/void Checkstates() unsigned char dat; RS=0; RW=1; doEN=1;/下降沿 _nop_();/保持一定間隔_nop_(); dat=DATA; _nop_();_nop_(); EN=0; while(dat&0x80)=1);/*LCD寫命令函數(shù)*/void wcomd(unsigned char cmd) Checkstates(); RS=0; RW=0; DAT
22、A=cmd; EN=1; _nop_(); _nop_(); _nop_(); _nop_(); EN=0;/*LCD寫數(shù)據(jù)函數(shù)*/void wdata(unsigned char dat) Checkstates(); RS=1; RW=0; DATA=dat; EN=1; _nop_(); _nop_(); _nop_(); _nop_(); EN=0;/*初始化*/void LCDINIT() Delay1ms(15); wcomd(0x38);/功能設置 Delay1ms(5); wcomd(0x38);/功能設置 Delay1ms(5); wcomd(0x01);/清屏 Delay1
23、ms(5); wcomd(0x08);/關顯示 Delay1ms(5); wcomd(0x0c);/開顯示,不開光標/*顯示函數(shù)*/void Display(void) /顯示函數(shù)unsigned char i,j; unsigned char a12=0X4D,0X45,0X41,0X53,0X55,0X52,0X45,0X4D,0X45,0X4E,0X54,0X53;/顯示measurements LCDINIT(); for(i=0;i<12;i+)/寫顯示第一行 wcomd(0x80+i); Delay1ms(1); wdata(ai); Delay1ms(1); for(j=0
24、;j<6;j+)/寫顯示第二行 wcomd(0xc0+j); Delay1ms(1); wdata(0x30+bj); Delay1ms(1); Delay1ms(150);void main() IE=0x81; /打開全部的中斷控制,并開啟外部中斷允許 TMOD=0x09; /T0為16位計數(shù)工作方式1 IT0=1; /設置外部中斷的觸發(fā)的方式為脈沖觸發(fā) TH0=0x00; TL0=0x00; T_flag=0; _reset=0; while(1) while(!b_test) /如果有測量按鍵輸入就往下執(zhí)行 i=0; _reset=1; /啟動555時基芯片 EX0=1; /開啟中斷0
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 餐飲冷鏈解決方案
- 建設工程管理總結
- 高三化學二輪復習 -《探究性實驗微專題》說播課課件
- 防溺水防雷擊安全教育
- 開花樹課件教學課件
- 3.3.2氮氧化物及含氮廢水的處理 課件高一上學期化學魯科版(2019)必修第一冊
- 藥物濫用危害健康
- 邁柯維呼吸機培訓
- 急性創(chuàng)傷相關知識及護理常規(guī)
- 酒店如何做好食品安全
- 第五節(jié) 錯覺課件
- 2024-2030年中國水煤漿行業(yè)發(fā)展規(guī)模及投資可行性分析報告
- 2024-2030年陜西省煤炭行業(yè)市場發(fā)展分析及發(fā)展前景預測研究報告
- 【課件】Unit+3+SectionB+1a-2b+課件人教版英語七年級上冊
- 干部人事檔案任前審核登記表范表
- 期中階段測試卷(六)-2024-2025學年語文三年級上冊統(tǒng)編版
- 高校實驗室安全基礎學習通超星期末考試答案章節(jié)答案2024年
- 國開2024年《中國法律史》平時作業(yè)1-3答案
- 李燕璇植樹問題卡通版5
- 個人簡歷模版
- 油浸式變壓器作業(yè)工藝流程圖
評論
0/150
提交評論