


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、圖1-1系統(tǒng)仿真流程圖Tianjin University of Technology and Education 智能儀器及應用實驗報告 項目名稱:基于51單片機的簡易電子表設計與仿真專業(yè)名稱:測控技術與儀器班級:測控0901班學生姓名: 指導教師:一、任務要求使用Keil uVision編程軟件以及ISIS 7 Professional仿真軟件制作一個簡易電 子表,要求具備電子表基本功能 時間顯示、時間調(diào)整等)。二、總體設計方案利用AT89C51作為控制以及1602LCD作為顯示,通過6個按鍵實現(xiàn)出入時間 設置狀態(tài)、出入鬧鈴設置狀態(tài)、小時位調(diào)整、分鐘位調(diào)整、開關鬧鈴等功能。 系統(tǒng)的流程圖如
2、下:三、系統(tǒng)硬件1、AT89C51引腳功能說明:AT89C51芯片如圖1-2所示U1 -191&29 .3.Q_3121456>XTAL1XTAL2RSTPO.O/ADOP0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6PO 7/AD739363534212?232425262?2?PSEN ALE EAP2 0W8P2.1M9P2.2/A10 P2 3/A11P2.4/A12P2.SJA13P2.6/A14P2 7/A15P1 aP1 1P1 2P1 3P1 4P1.5P1.6P17P3 0/RXDP3.1/TXDP3.2ANTCT
3、P3.:3/INrrP3 4/TOP3.5££P3E陋P3.7jRD10124-I1617AT8SC51.圖 1-2AT89C51VCC :供電電壓。GND :接地。P0 口: PO 口為一個8位漏極開路雙向I/O 口,每腳可吸收8TTL門電流。當P1 口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器, 它可以被定義為數(shù)據(jù)/地址的第八位。在 FIASH編程時,P0 口作為原碼輸入口, 當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。P1 口: P1 口是一個內(nèi)部提供上拉電阻的 8位雙向I/O 口,P1 口緩沖器能接收 輸出4TTL門電流。
4、P1 口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1 口 被外部下拉為低電平時,將輸出電流,這是因為內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1 口作為第八位地址接收。P2 口: P2 口為一個內(nèi)部上拉電阻的8位雙向I/O 口,P2 口緩沖器可接收,輸 出4個TTL門電流,當P2 口被寫“ 1時,其管腳被內(nèi)部上拉電阻拉高,且作為 輸入。并因此作為輸入時,P2 口的管腳被外部拉低,將輸出電流。這是因為內(nèi) 部上拉的緣故。P2 口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2 口輸出地址的高八位。在給出地址 “ 1時,它利用內(nèi)部上拉優(yōu)勢, 當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P
5、2 口輸出其特殊功能寄存器的內(nèi)容P2 口在FLASH編程和校驗時接收高八位地址信號和控制信號。P3 口: P3 口管腳是8個內(nèi)部上拉電阻的雙向I/O 口,可接收輸出4個TTL門 電流。當P3 口寫入“ 1后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入, 因為外部下拉為低電平,P3口將輸出電流vILL )這是因為上拉的緣故。P3 口也可作為AT89C51的一些特殊功能口,如下所示:口管腳備選功能P3.0 RXD串行輸入口)P3.1 TXD串行輸出口)P3.2 INT0 外部中斷0)P3.3 INT1 外部中斷1)P3.4 T0B時器0外部輸入)P3.5 T1B時器1外部輸入)P3.6 WR 外
6、部數(shù)據(jù)存儲器寫選通)P3.7 RD 外部數(shù)據(jù)存儲器讀選通)P3 口同時為閃爍編程和編程校驗接收一些控制信號。RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。ALE :當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字 節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時, 將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才
7、起作用。另外,該引腳被略微 拉高。如果微處理器在外部執(zhí)行狀態(tài) ALE禁止,置位無效。PSEN :外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的PSEN信號將不出現(xiàn)。EA :當EA保持低電平時,貝恠此期間外部程序存儲器 vOOOOH-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式 1時,EA將內(nèi)部鎖定為RESET;當EA端保持高電平時,此間內(nèi)部程序存儲器。在 FLASH編程期間,此引腳也用于施加12V編程電源VPP)XTAL1 :反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入XTAL2 :來自反向振蕩器的輸出。振蕩器
8、特性:XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大 器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源 驅(qū)動器件,XTAL2應不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器, 因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬 度。2、1602LCD液晶顯示引腳功能說明:1602LCD顯示用來顯示當前時鐘與鬧鐘時間。當運行仿真軟件時,可以清 楚的看到時間。1602LCD芯片如圖1-3所示 LCD1O LU0圖 1-3 1602LCD編號符號引腳說明編號符號引腳說明1VSS電源地8D1數(shù)據(jù)2VDD電源正極9D2數(shù)據(jù)3VL液晶顯示偏壓10D
9、3數(shù)據(jù)4RS數(shù)據(jù)/命令選擇11D4數(shù)據(jù)5R/W讀/寫選擇12D5數(shù)據(jù)6E使能信號13D6數(shù)據(jù)7D0數(shù)據(jù)14D7數(shù)據(jù)四、系統(tǒng)軟件設計 設計仿真圖:IM014L00:00:30t'III丄:斗八旳型iJhR224RP1SEfiPMJIfE圖1-4電子表仿真圖CD X1r.nv-s.T*i“.TmliPCJ HflHlFH-PA JtdPTP J 1JA9P5E1UP2nr Ti'jn 4an"itEAre JWH5H liFi.-iP4 3r J .LiI'Al1 rt l/TXtPl 3PJ 3/HT1r i占H 3LFT I 0* at JQ3Fr 1 JOE
10、H 7P3 7/RD"ri1 j設計程序:定義鎖存使能端口段鎖存II位鎖存> 小時+1按鈕> 分鐘+1按鈕> 定時開關> 定時設定定義喇叭端口#include<reg52.h> #define DataPort P0 sbit LATCH仁P2八6 sbit LATCH2=P2A7 sbit KeyPort1=P3A4 sbit KeyPort2=P3A5 sbit KeyPort3=P3A2 sbit KeyPort4=P3A3 sbit SPK=P1A2。unsigned char code DuanMa10=0xc0,0xf9,0xa4,0x
11、b0,0x99,0x92,0x82,0xf8, 0x80,0x90。顯示段碼值09Unsigned char code WeiMa=0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01 分別對應相應的數(shù)碼管點亮,即位碼unsigned char TempData8 存儲顯示值的全局變量 void DelayUs2x(unsigned char t> I/us級延時函數(shù)聲明 void DelayMs(unsigned char t> I/ms 級延時 void Display(unsigned char FirstBit,unsigned char Num。
12、數(shù)碼管顯示函數(shù) unsigned char sh。 II 小時 unsigned char fen。分鐘設定小時設定分鐘取消定時定時器初始化unsigned char miao。 II秒 unsigned char dingsh。 unsigned char dingfen unsigned char quxiao void Init_Timer0(void> void delay1s(> /I消抖延時 void DelayUs2x(unsigned char t> II函數(shù)聲明 void DelayMs(unsigned char t>。void main (void
13、> unsigned char displaynum=0,i。Init_Timer0(> 。 /初始化 for(j=0 。 j<8。 j+> / 清屏 TempDataj=0xff 。 while (1>/主循環(huán)if(!KeyPort3> /判斷是時間界面還是設定鬧鐘時間 delay1s(>。if(!KeyPort3>displaynum+。if(displaynum=2>displaynum=0。 if(!KeyPort4> / 判斷是否開啟鬧鐘delay1s(>。if(!KeyPort4>quxiao+。 if(qux
14、iao>=2> quxiao=0。P1=0xff。 if(quxiao=1>P1=0xfe。 /P1.1 燈亮起為開啟鬧鐘否則為關閉鬧鐘 elseP1=0xff。 if(displaynum=0> /時間顯示界面if(!KeyPort1> / 按鍵掃描設定小時delay1s(>。if(!KeyPort1> while(!KeyPort1>。shi+。if(!KeyPort2> / 按鍵掃描設定分鐘delay1s(>。if(!KeyPort2>while(!KeyPort2>。fen+。TempData7=DuanMashi
15、/10 。 / 時 TempData6=DuanMashi%10 。 TempData5=0xbf 。 /加入 "-" TempData4=DuanMafen/10 。 / 分 TempData3=DuanMafen%10 。 TempData2=0xbf 。TempData1=DuanMamiao/10 。 / 秒TempData0=DuanMamiao%10 。Display(0,8>。/ 調(diào)用數(shù)碼管掃描else if(displaynum=1>/鬧/ 鐘顯示界面if(!KeyPort1> / 按鍵掃描設置鬧鐘小時delay1s(>。if(!Ke
16、yPort1> while(!KeyPort1>。 dingshi+。if(dingshi>=24>dingshi=0。 if(!KeyPort2> / 按鍵掃描設定鬧鐘分鐘delay1s(>。if(!KeyPort2> while(!KeyPort2>。 dingfen+。if(dingfen>=60>dingfen=0。 TempData7=0xff 。 TempData6=DuanMadingshi/10 。 TempData5=DuanMadingshi%10 。TempData4=0xbf 。TempData3=0xbf 。
17、 TempData2=DuanMadingfen/10 。 TempData1=DuanMadingfen%10 。TempData0=0xff 。Display(0,8>。/ 調(diào)用數(shù)碼管掃描if(shi=dingshi>&&(fen=dingfen>&&quxiao> / 鬧鐘滴答函數(shù) if(!KeyPort4> quxiao=0。for(i=0。i<200。i+> DelayUs2x(200>。SPK=!SPK 。Display(0,8>。/ 調(diào)用數(shù)碼管掃描SPK=0。 /防止一直給喇叭通電造成損壞 fo
18、r(i=0。 i<200。 i+>DelayMs(1>。Display(0,8>。/ 調(diào)用數(shù)碼管掃描void Display(unsigned char FirstBit,unsigned char Num>static unsigned char i=0DataPort=0xff。/清空數(shù)據(jù),防止有交替重影LATCH1=1 。/段鎖存LATCH1=0 。DataPort=WeiMai+FirstBit 。 /取位碼LATCH2=1 。/位鎖存LATCH2=0 。DataPort=TempDatai 。 /取顯示數(shù)據(jù),段碼 LATCH1=1 。/段鎖存LATCH1=0i+ 。 if(i=Num> i=0。void Init_Timer0(void>TMOD |= 0x01。 /使用模式 1,16位定時器,使
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小班幼兒自主活動方案
- 居家小班親子活動方案
- 少先隊誠信活動方案
- 小鵬體驗中心活動方案
- 小隊志愿服務活動方案
- 帶啞巴到縣城活動方案
- 常規(guī)節(jié)慶活動方案
- 工廠直銷超值活動方案
- 工業(yè)地產(chǎn)竣工活動方案
- 小記者軍事體驗活動方案
- 民政統(tǒng)計信息管理系統(tǒng)培訓手冊街鄉(xiāng)鎮(zhèn)
- 中職英語新課標詞匯表
- 2024秋期國家開放大學《國際法》一平臺在線形考(形考任務1至5)試題及答案
- 天翼云從業(yè)者認證考試題庫及答案
- T-CEC 153-2018并網(wǎng)型微電網(wǎng)的負荷管理技術導則
- 超聲科晉升主任(副主任)醫(yī)師超聲診斷子宮癌肉瘤病例報告專題分析
- 《食品經(jīng)營許可證》申請書(范本)
- 2024至2030年中國博物館行業(yè)現(xiàn)狀調(diào)研及未來發(fā)展規(guī)劃分析報告
- 廣東省揭陽市2024年小升初語文真題試卷及答案
- 化工過程安全管理導則培訓
- 2024年西藏事業(yè)單位真題
評論
0/150
提交評論