![單片機實訓論文_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/4/92f30594-9dc8-4b63-98df-03ea04571975/92f30594-9dc8-4b63-98df-03ea045719751.gif)
![單片機實訓論文_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/4/92f30594-9dc8-4b63-98df-03ea04571975/92f30594-9dc8-4b63-98df-03ea045719752.gif)
![單片機實訓論文_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/4/92f30594-9dc8-4b63-98df-03ea04571975/92f30594-9dc8-4b63-98df-03ea045719753.gif)
![單片機實訓論文_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/4/92f30594-9dc8-4b63-98df-03ea04571975/92f30594-9dc8-4b63-98df-03ea045719754.gif)
![單片機實訓論文_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/4/92f30594-9dc8-4b63-98df-03ea04571975/92f30594-9dc8-4b63-98df-03ea045719755.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、單片機實訓(論文)題目名稱:實時時鐘顯示系統(tǒng) 學生姓名: 學 號: 專 業(yè): 自動化目 錄0設計內(nèi)容及意義11實時顯示的總體設計方案12系統(tǒng)硬件電路設計2 2.1主控制器電路設計2 2.2其他電路設計33 問題與總結84 附錄程序清單90設計內(nèi)容及意義現(xiàn)在的實時控制系統(tǒng)已經(jīng)由原來的是由模擬電路組成的閉環(huán)控制的系統(tǒng)和是由數(shù)字邏輯電路組成的順序控制的系統(tǒng),發(fā)展到現(xiàn)在的是由計算機系統(tǒng)控制的輸出機實時控制的系統(tǒng)。實時計算機控制的系統(tǒng)是指在一定的時間內(nèi),對外來事件的作出正確的、快速的反應的系統(tǒng)。這類系統(tǒng)不僅與邏輯計算有關,還和時序的控制有關。顯然,此類系統(tǒng)區(qū)別于其它普通計算機系統(tǒng)的關鍵特點是系統(tǒng)的實時性
2、。此外,環(huán)境信號的輸入與輸出的控制能力也是非常重要的。因為在實時控制計算機系統(tǒng)中,系統(tǒng)會直接從現(xiàn)場環(huán)境中采集各種需要的信號,然后對這些信號的變量進行處理,最后再把結果輸出到執(zhí)行的功能部件進行直接的控制或直接的顯示。實時計算機控制系統(tǒng)總是直接控制著工業(yè)過程或其它重要過程中的操作,這就對可靠性提出了較高的要求。實時系統(tǒng)當然還具有諸如可擴展性、可維護性以及抗惡劣環(huán)境的能力。計算機實時控制系統(tǒng)現(xiàn)已在各行各業(yè)得到了廣泛地應用,因此對它加以研究具有十分重要的意義。實時計算機控制系統(tǒng)應用廣泛,形式多種多樣。本文對實時控制中的實時顯示這一功能進行進一步的研究。實時控制系統(tǒng),相對于其他的控制系統(tǒng),最重要的一點就
3、是實時。文中的實時,指的是對時間的顯示。時間的顯示包括對年月日,時分秒的顯示。這些時間的顯示,可以按照自己的需求進行進一步的設定。這個實時系統(tǒng),可以是通過串口接收的上位機,接收上位機中的信號,根據(jù)需求來進行時間的顯示,幫助系統(tǒng)實現(xiàn)實時的效果。同時,它可進行時間的獨立顯示。1實時顯示的整體設計方案控制部分單片機(STC89C51RC)復位電路串口接收命令按鍵k1、k2、k3K4、k5、k6、k7、k8電源部分,交流220VLCD1602顯示秒、分鐘、小時日、月、年 RTC模塊 時間計數(shù)圖1.1 方案設計如圖1.1所示,系統(tǒng)分為七個部分,單片機是整個系統(tǒng)的核心。當系統(tǒng)通電以后,220V的市電經(jīng)變壓
4、、整流、濾波和穩(wěn)壓后轉(zhuǎn)換成5V直流電壓,給MCU、RTC和LCD1602供電,電源指示燈指示此時供電正常。在程序中設置另一個指示燈每隔兩秒閃爍一次,如果閃爍頻率正常,則表明系統(tǒng)工作正常。此時DS1302在5V電壓下正常工作起計時,MCU緊接著進行自檢,在自檢正確的情況下,循環(huán)讀取DS1302中的數(shù)據(jù),并在LCD1602中不斷刷新時間數(shù)據(jù)。在首次給系統(tǒng)上電的時候,DS1302會將自身的寄存器全部初始化,為此我們設置了七個按鍵以方便對RTC進行時間的校準。我們可以有兩種方式使系統(tǒng)獲取定時的時間,一種是通過上位機的串口發(fā)送定時時間數(shù)據(jù),另一種是通過系統(tǒng)自身的按鍵進行設置,確保在不與上位機進行通信的情
5、況下也能正常工作。2系統(tǒng)硬件電路設計2.1主控制器電路設計圖2.1主控制器電路圖圖2.1中由市電接入,進行變壓、整流、濾波和穩(wěn)壓后,轉(zhuǎn)換為5V的電壓,給STC89C51RC單片機進行供電。如果單片機工作正常的話,P2.7口接的LED就會一閃一閃的,否則單片機沒有正常工作。這是由單片機組成的主要電路。2.2其他電路設計電源部分圖2.2 電源電路圖3.2的電路是一個很簡單很常見的一個電源電路。當系統(tǒng)上電以后,220V的交流電經(jīng)過變壓器的變壓,再經(jīng)過整流橋的整流,最后經(jīng)過穩(wěn)壓塊的穩(wěn)壓后,最終可以輸出5V的直流電,給單片機、液晶和RTC等部分供電。LED指示燈可以指示電源部分工作是否正常。復位電路設計
6、圖2.3復位電路圖2.3由于STC89C51RC這款單片機的內(nèi)部集成復位電路,所以外部復位電路可以簡單到只需一個電容和一個電阻組成,即構成RC積分電路,產(chǎn)生一個下降沿,使單片機復位成功。晶振電路設計圖2.4 晶振電路1 圖2.5晶振電路2晶振電路分為兩個部分,圖3.4是單片機的晶振電路,圖3.5是RTC模塊的晶振電路,自然這兩部分的晶振數(shù)值是不一樣的。單片機部分使用的11.0592MHZ的晶振,RTC模塊則使用32.768KHZ晶振。在這部分晶振電路中,電容都起到了幫助晶振起振的作用。按鍵電路設計圖2.6 按鍵電路圖2.6中按鍵采用獨立式按鍵設計。所謂獨立式按鍵是指直接用I/O口線構成的單個按
7、鍵電路。每根I/O口線上按鍵的工作狀態(tài)不會影響其他I/O口線的工作狀態(tài)。八個按鍵占用一個P1口,出去一個按鍵控制液晶的現(xiàn)實與屏蔽,其余七個按鍵分別用來調(diào)整年、月、日、時、分、秒。RTC模塊電路設計圖2.7 RTC模塊電路 在圖2.7中DS1302由5V供電接入Vcc1,而有3V的電源接入Vcc2當Vcc2大于Vcc10.2V時,Vcc2給DS1302供電。當Vcc2小于Vcc1時,DS1302由Vcc1供電。在X1和X2處接入32.768KHZ晶振.串口電路設計該產(chǎn)品是由美信公司推出的一款兼容RS232標準的芯片。由于電腦串口RS232電平是-10V +10V,而一般的單片機應用系統(tǒng)的信號電壓
8、是TTL電平0+5V,MAX232包含2驅(qū)動器、2接收器和一個電壓發(fā)生器電路提供TIA/EIA-232-F電平。該器件符合TIA/EIA-232-F標準,每一個接收器將TIA/EIA-232-F電平轉(zhuǎn)換成5-V TTL/CMOS電平。每一個發(fā)送器將TTL/CMOS電平轉(zhuǎn)換成TIA/EIA-232-F電平。圖2.8 MAX232電路STC89C51RC芯片內(nèi)有一個全雙工的串行口,該串行口和其他標準串行口芯片一樣,輸入輸出均為TTL電平。這種以TTL電平傳輸數(shù)據(jù)的方式,抗干擾性差,傳輸距離短。為了提高串行通訊的可靠性,增大通訊距離,一般采用標準串行接口,如RS-232C、RS-422A、RS-48
9、5等標準串行接口。 RS-232C的機械指標規(guī)定:RS-232C接口通向外部的連接器(插針插座)是一種“D”型25針插座。在微機通訊中,通常被使用的RS-232C接口只有九根引腳,見表2.9。 表2.9常用RS-232引腳功能引腳號符號方向功能2TXD輸出發(fā)送數(shù)據(jù)3RXD輸入接收數(shù)據(jù)4RTS輸出請求發(fā)送5CTS輸入清除發(fā)送6DSR輸入數(shù)據(jù)通訊設備準備好7GND信號地8DCD輸入數(shù)據(jù)載體檢測20DTR輸出數(shù)據(jù)終端準備好22RI輸出振鈴提示表2.10 MAX232芯片電氣特性電氣特性參數(shù)范圍帶37K負載時驅(qū)動器輸出電平邏輯1:-3V-15V邏輯0:+3V+15V不帶負載時驅(qū)動器的輸出電平-25V+
10、25V驅(qū)動器通斷時的輸出阻抗>300輸出短路電流<0.5A驅(qū)動器轉(zhuǎn)換速率<30V/S接收器輸入阻抗3K7K接收器輸入電壓允許范圍-25V+25V輸入開路時接收器的輸出邏輯1輸入經(jīng)300接地時接收器的輸出邏輯1+3V輸入時接收器的輸出邏輯0-3V輸入時接收器的輸出邏輯1最大負載電容2500PF圖 2.11 MAX232芯片引腳配置3問題與總結本次單片機實訓到目前為止已經(jīng)結束,我也順利的完成了自己的課題實時時鐘顯示系統(tǒng)的設計,由于大學期間學的都是些課本理論知識,實際接觸的較少,剛開始拿到這個課題,感覺挺迷茫的,自己就學過C語言和51單片機,也就在這方面懂一點,其余的關于硬件電路,
11、液晶顯示電路的驅(qū)動的什么都不知道,在網(wǎng)上找了一些資料對硬件電路的設計有了一定的了解,然后又去圖書館借閱了一些相關的書,在大腦里面有了一個大致的思路了,于是就把仿真軟件裝好開始了焊接調(diào)試,經(jīng)過了辛苦的焊接和反復的調(diào)試,當看到液晶顯示器上我自己做的時鐘時,我覺得這一切付出都是值得的,同時也激起了我對單片機系統(tǒng)的興趣。本次實訓讓我對單片機有了更深入的認識,現(xiàn)代社會中幾乎處處都有單片機的影子,電子產(chǎn)品離不開它。單片機實訓提高了我的單片機實際運用能力,也發(fā)現(xiàn)了自己以前學習的不扎實,對問題不求甚解,注重理論而忽視了實際操作。本次單片機實訓能順利完成,非常感謝指導老師的幫助。4附錄:程序清單主函數(shù)源代碼vo
12、id main(void)Timer0_System_Init();GXM1602_HD44780_initialize();Initial_DS1302(); GXM1602_HD44780_command(0x80);/DDRAM地址設置 GXM1602_HD44780_delay50us(0x01); GXM1602_HD44780_Print(GXM1602_HD44780_dis_Date); GXM1602_HD44780_delay50us(0x01); GXM1602_HD44780_command(0xc0);/DDRAM地址設置 GXM1602_HD44780_delay5
13、0us(0x01); GXM1602_HD44780_Print(GXM1602_HD44780_dis_Time); GXM1602_HD44780_delay50us(0x01); while(1) DS1302_GetTime(&CurrentTime);DateToStr(&CurrentTime);TimeToStr(&CurrentTime);GXM1602_HD44780_command(0x80|0x06);GXM1602_HD44780_Print(CurrentTime.DateString);GXM1602_HD44780_command(0xc0
14、|0x06);GXM1602_HD44780_Print(CurrentTime.TimeString);GXM1602_HD44780_delay1ms(200);void Timer0_Routine() interrupt 1TH0=(65536-10000*110592/120000)/256; /計算初值TL0=(65536-10000*110592/120000)%256; /計算初值KEY_Scan(&CurrentTime);DS1302源代碼void DS1302InputByte(unsigned char d) /實時時鐘寫入一字節(jié)(內(nèi)部函數(shù)) unsigned
15、char i; ACC = d; for(i=8; i>0; i-) DS1302_IO = ACC0; /相當于匯編中的 RRC DS1302_CLK = 1; DS1302_CLK = 0; ACC = ACC >> 1; unsigned char DS1302OutputByte(void) /實時時鐘讀取一字節(jié)(內(nèi)部函數(shù)) unsigned char i; for(i=8; i>0; i-) ACC = ACC >>1; /相當于匯編中的 RRC ACC7 = DS1302_IO; DS1302_CLK = 1; DS1302_CLK = 0; r
16、eturn(ACC); void Write1302(unsigned char ucAddr, unsigned char ucDa)/ucAddr: DS1302地址, ucData: 要寫的數(shù)據(jù) DS1302_RST = 0; DS1302_CLK = 0; DS1302_RST = 1; DS1302InputByte(ucAddr); / 地址,命令 DS1302InputByte(ucDa); / 寫1Byte數(shù)據(jù) DS1302_CLK = 1; DS1302_RST = 0; unsigned char Read1302(unsigned char ucAddr)/讀取DS130
17、2某地址的數(shù)據(jù) unsigned char ucData; DS1302_RST = 0; DS1302_CLK = 0; DS1302_RST = 1; DS1302InputByte(ucAddr|0x01); / 地址,命令;最低位要為1 ucData = DS1302OutputByte(); / 讀1Byte數(shù)據(jù) DS1302_CLK = 1; DS1302_RST = 0; return(ucData);void DS1302_SetProtect(bit flag) /是否寫保護if(flag)Write1302(0x8E,0x80);elseWrite1302(0x8E,0x0
18、0);void DS1302_SetTime(unsigned char Address, unsigned char Value) / 設置時間函數(shù)DS1302_SetProtect(0);Write1302(Address, (Value/10)<<4 | (Value%10); void DS1302_GetTime(SYSTEMTIME *Time)unsigned char ReadValue;ReadValue = Read1302(DS1302_SECOND);Time->Second = (ReadValue&0x70)>>4)*10 +
19、(ReadValue&0x0F);ReadValue = Read1302(DS1302_MINUTE);Time->Minute = (ReadValue&0x70)>>4)*10 + (ReadValue&0x0F);ReadValue = Read1302(DS1302_HOUR);Time->Hour = (ReadValue&0x70)>>4)*10 + (ReadValue&0x0F);ReadValue = Read1302(DS1302_DAY);Time->Day = (ReadValue&am
20、p;0x70)>>4)*10 + (ReadValue&0x0F);ReadValue = Read1302(DS1302_WEEK);Time->Week = (ReadValue&0x70)>>4)*10 + (ReadValue&0x0F);ReadValue = Read1302(DS1302_MONTH);Time->Month = (ReadValue&0x70)>>4)*10 + (ReadValue&0x0F);ReadValue = Read1302(DS1302_YEAR);Time-&
21、gt;Year = (ReadValue&0x70)>>4)*10 + (ReadValue&0x0F);void DateToStr(SYSTEMTIME *Time)Time->DateString0 = Time->Year/10 + '0'Time->DateString1 = Time->Year%10 + '0'Time->DateString2 = '-'Time->DateString3 = Time->Month/10 + '0'Time-&g
22、t;DateString4 = Time->Month%10 + '0'Time->DateString5 = '-'Time->DateString6 = Time->Day/10 + '0'Time->DateString7 = Time->Day%10 + '0'Time->DateString8 = '0'void TimeToStr(SYSTEMTIME *Time)Time->TimeString0 = Time->Hour/10 + '0&
23、#39;Time->TimeString1 = Time->Hour%10 + '0'Time->TimeString2 = ':'Time->TimeString3 = Time->Minute/10 + '0'Time->TimeString4 = Time->Minute%10 + '0'Time->TimeString5 = ':'Time->TimeString6 = Time->Second/10 + '0'Time->T
24、imeString7 = Time->Second%10 + '0'Time->DateString8 = '0'if(Time->TimeString1='8')&&(Time->TimeString3='0')&&(Time->TimeString3='0')LED1 = 0;void Initial_DS1302(void) unsigned char Second;DS1302_RST = 0; DS1302_CLK = 1; DS1302_RS
25、T = 1;Second=Read1302(DS1302_SECOND);if(Second&0x80) DS1302_SetTime(DS1302_SECOND,0);/設置起始時間LCD1602源代碼void GXM1602_HD44780_command(uchar command_data)GXM1602_HD44780_E=0;GXM1602_HD44780_RW=0;GXM1602_HD44780_RS=0; GXM1602_HD44780_E=1; GXM1602_HD44780_DBPort=command_data; GXM1602_HD44780_delay1ms(
26、0x02); _nop_(); GXM1602_HD44780_E=0; GXM1602_HD44780_RS=1; GXM1602_HD44780_RW=1;void GXM1602_HD44780_data(uchar w_data) GXM1602_HD44780_RS=1; GXM1602_HD44780_RW=0; GXM1602_HD44780_E=1; GXM1602_HD44780_DBPort=w_data; GXM1602_HD44780_delay50us(0x02); _nop_(); GXM1602_HD44780_E=0; GXM1602_HD44780_RS=0;
27、 GXM1602_HD44780_RW=1;void GXM1602_HD44780_read_busy() do GXM1602_HD44780_RS=0; GXM1602_HD44780_RW=1; GXM1602_HD44780_E=1; status=GXM1602_HD44780_DBPort; GXM1602_HD44780_delay50us(0x02); GXM1602_HD44780_delay50us(0x02); while(status_busy); _nop_(); GXM1602_HD44780_E=0; GXM1602_HD44780_RS=0; GXM1602_HD44780_RW=1; void GXM1602_HD44780_initialize() uchar data i; GXM1602_HD44780_DBPort=0; for(i=0;i<3;i+) GXM1602_HD44780_command(0x38)
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年綜合接入服務系統(tǒng)項目可行性研究報告
- 2025年電腦雕刻圣誕燈飾項目可行性研究報告
- 2025至2031年中國牛角扣羊羔絨馬甲行業(yè)投資前景及策略咨詢研究報告
- 2025年果蔬寶農(nóng)藥項目可行性研究報告
- 2025至2031年中國異型結構件行業(yè)投資前景及策略咨詢研究報告
- 2025年工藝溫度計項目可行性研究報告
- 延安2024年陜西延安市市直事業(yè)單位選聘70人筆試歷年參考題庫附帶答案詳解
- 2025至2031年中國一體式頂置空調(diào)器行業(yè)投資前景及策略咨詢研究報告
- 2025至2030年中國黑豆粉數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年高效板式密閉過濾機項目投資價值分析報告
- 胸腔積液護理查房-范本模板
- 水土保持方案中沉沙池的布設技術
- 安全生產(chǎn)技術規(guī)范 第25部分:城鎮(zhèn)天然氣經(jīng)營企業(yè)DB50-T 867.25-2021
- 現(xiàn)代企業(yè)管理 (全套完整課件)
- 走進本土項目化設計-讀《PBL項目化學習設計》有感
- 《網(wǎng)店運營與管理》整本書電子教案全套教學教案
- 教師信息技術能力提升培訓課件希沃的課件
- 高端公寓住宅項目營銷策劃方案(項目定位 發(fā)展建議)
- 執(zhí)業(yè)獸醫(yī)師聘用協(xié)議(合同)書
- 第1本書出體旅程journeys out of the body精教版2003版
- 2022年肝動脈化療栓塞術(TACE)
評論
0/150
提交評論