2023年嵌入式軟件開(kāi)發(fā)基礎(chǔ)實(shí)驗(yàn)報(bào)告實(shí)時(shí)時(shí)鐘_第1頁(yè)
2023年嵌入式軟件開(kāi)發(fā)基礎(chǔ)實(shí)驗(yàn)報(bào)告實(shí)時(shí)時(shí)鐘_第2頁(yè)
2023年嵌入式軟件開(kāi)發(fā)基礎(chǔ)實(shí)驗(yàn)報(bào)告實(shí)時(shí)時(shí)鐘_第3頁(yè)
2023年嵌入式軟件開(kāi)發(fā)基礎(chǔ)實(shí)驗(yàn)報(bào)告實(shí)時(shí)時(shí)鐘_第4頁(yè)
2023年嵌入式軟件開(kāi)發(fā)基礎(chǔ)實(shí)驗(yàn)報(bào)告實(shí)時(shí)時(shí)鐘_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

上海土力等相嵌入式軟件開(kāi)發(fā)基礎(chǔ)實(shí)驗(yàn)報(bào)告題目:【ARM】實(shí)時(shí)時(shí)鐘實(shí)驗(yàn)專業(yè):電子科學(xué)與技術(shù)年級(jí):姓名:學(xué)號(hào):—

)//writethedataintortcregirBCDMON=nTmp;//->month;sternTmp=szStr[--i]&0x0f:if(cN09)if(i){nTmp|=(szStr[-i]<<4)&0xff;rRTCCON=0x01;//R/Wenable,1if(nTmp>0x99)/32768,CN09=0:Normal(merge),NoresetrBCDYEAR=nTmp://->year;i=nTmp;rRTCCON=0x00://R/Wdisab1enTmp=szStr[i]&0x0f;uart_printf("Currentdateis:20%0if(nTmp==7)2x-%02x-%02x%s\n"rBCDDATE=1;//s3c44bOx:SUN:1MON:,rBCDYEAR,rBCDMON.rBCDDA2Y,f_szdate[rBCDDATE]):TUE:3WED:4THU:5FRI:6SAT:7if(!cN09)eIseuart_printf("Wrongvalue!\n");rBCDDATE=nTmp+1://->weekday:}elseuart_printf("Wrongva1ue!\n");nTmp=szStr[i—=2]&0x0f;return(int)cN09;cN09=0;if(szStr[-i]!=if(nTmp>0x12)nTmp|=(szStr[i-]?4)&0xff;廠**********?******?**?***?****文****?**??**if(nTmp>0x31)*?***火+CN09=0;*************rBCDDAY=nTmp://->day;*name:rtc_set_timenTmp=szStr[--i]&0x0f;*func:getandchecktheTIMEstringif(szStr[—i]!=fromuartchannelIosetrtcnTmp|=(szStr[i-—]?4)&0xff;*para:nonc*ret:cN09=0:invalidstring

okelse*modify:(*comment:nTmp=i-1;★★★★**??*****?**表**for(i=nTmp:i>=0;i-)*mm*m*******夫*(*”*??*★?????***if(SzStr[i]!=,:,)intrtc_set_time(char*pString)if((szStr[i]<*O'|szStr[i]>'9'))(cNO9=0;charcYn,cN09=1;)charszStr[8];//xx:xx:xx)inti.nTmp;//writethedataintortcregistermemcpy{(void*)szStr,pString,8);if(cN09)//checktheformatofthedata(nTmp=0;rRTCCON=Ox01;//RAA/enable,1/cN09=1:32768,for(i=0;((i<8)&(szStr[i]!='\0'));Normal(merge),Noreseti++)i=nTmp;{nTmp=szStr[i]&0xOf;if(szStr[i]==':')if(szStr[-i]!=*:z)nTmp+=1;nTmp|=(szStr[i]?4)&0xff;)if(nTmp>0x59)if(nTmp!=2)//atIeast3cN09=0;(rBCDSEC=nTmp;//->second;CN09=0;nTmp=szStr[-i]&OxOf;cNO9=1:settimebyinputstringand)uart_printf("InValidformat!!\n\r");if(szStr[-i]!=,:*)

nTmp|=(szStr[i-]<<4)&0xff;nTmp|=(szStr[i-]<<4)&0xff;if(nTmp>0x59)CN09=0;rBCDMIN=nTmp;//—>min;nTmp=szStr[-i]&0x0f;if(i)nTmp|=(szStr[-i]<<4)&0xff;if(nTmp>0x24)CNO9=0;nTmp|=(szStr[i-]<<4)&0xff;if(nTmp>0x59)CN09=0nTmp|=(szStr[i-]<<4)&0xff;if(nTmp>0x59)CN09=0;rBCDMIN=nTmp;//—>min;nTmp=szStr[-i]&0x0f;if(i)nTmp|=(szStr[-i]<<4)&0xff;if(nTmp>0x24)CNO9=0;rBCDHOUR=nTmp://->hour;rRTCCON=0x00;//R/wdisableif(!cN09)uart_printf("Wrongva1ue!\n");ARM7基礎(chǔ)實(shí)驗(yàn)教程-200-}elseuart_printf('*Wrongvalue!\n")return(int)cN09;第一、對(duì)ARM的相關(guān)理論知識(shí)有了初步的了解。了解工作原理和程序環(huán)節(jié)等。這些知識(shí)不僅在課堂上有效,對(duì)這次的實(shí)踐的學(xué)習(xí)加深了印象,并且在將來(lái)的工作中也一定會(huì)有幫助。第二、自己的動(dòng)手能力和自學(xué)能力有了很大的提高。實(shí)踐出真知,今天,我其實(shí)才深刻感受到這句話的實(shí)在意義。涉及在碰到問(wèn)題的時(shí)候,我通過(guò)問(wèn)老師,問(wèn)同學(xué)、自己找資料的方式得出了答案,更加深了我的理解和認(rèn)知。一、實(shí)驗(yàn)?zāi)康?、了解實(shí)時(shí)時(shí)鐘的硬件控制原理及設(shè)計(jì)方法。2、掌握S3C44B0X解決淵的RTC模塊程序設(shè)計(jì)方法。二、實(shí)驗(yàn)設(shè)備1、硬件:EmbestEduKit-III實(shí)驗(yàn)平臺(tái),EmbestARM標(biāo)準(zhǔn)/增強(qiáng)型仿真器套件,PC機(jī)。2、軟件:EmbestIDEProARM集成開(kāi)發(fā)環(huán)境,Windows98/2023/NT/XPo三、實(shí)驗(yàn)內(nèi)容學(xué)習(xí)和掌握EmbestEduKit-III實(shí)驗(yàn)平臺(tái)中RTC模塊的使用,進(jìn)行以下操作:1、編寫應(yīng)用程序,修改時(shí)鐘日期及時(shí)間的設(shè)立。2、使用EMBESTARM教學(xué)系統(tǒng)的串口,在超級(jí)終端顯示當(dāng)前系統(tǒng)時(shí)間。四、實(shí)瞼原理1?實(shí)時(shí)時(shí)鐘(RTC)實(shí)時(shí)時(shí)鐘(RTC)器件是一種能提供日歷/時(shí)鐘、數(shù)據(jù)存儲(chǔ)等功能的專用集成電路,常用作各種計(jì)算機(jī)系統(tǒng)的時(shí)鐘信號(hào)源和參數(shù)設(shè)立存儲(chǔ)電路。RTC具有計(jì)時(shí)準(zhǔn)確、耗電低和體積小等特點(diǎn),特別是在各種嵌入式系統(tǒng)中用于記錄事件發(fā)生的時(shí)間和相關(guān)信息,如通信工程、電力自動(dòng)化、工業(yè)控制等自動(dòng)化限度高的領(lǐng)域的無(wú)人值守環(huán)境。隨著集成電路技術(shù)的不斷發(fā)展,RTC器件的新品也不斷推出,這些新品不僅具有準(zhǔn)確的RTC,尚有大容量的存儲(chǔ)器、溫度傳感器和A/D數(shù)據(jù)采集通道等,已成為集RTC、數(shù)據(jù)采集和存儲(chǔ)于一體的綜合功能器件,特別合用于以微控制器為核心的嵌入式系統(tǒng)。RTC器件與微控制器之間的接口大都采用連線簡(jiǎn)樸的串行接口,諸如I2C、SPI、MICROWIRE和CAN等串行總線接口。這些串口由2?3根線連接,分為同步和異步。2.S3C44B0X實(shí)時(shí)時(shí)鐘(RTC)單元S3C44B0X實(shí)時(shí)時(shí)鐘(RTC)單元是解決器集成的片內(nèi)外設(shè)。由開(kāi)發(fā)板上的后備電池供電,可以在系統(tǒng)電源關(guān)閉的情況下運(yùn)營(yíng)。RTC發(fā)送8位BCD碼數(shù)據(jù)到CPU。傳送的數(shù)據(jù)涉及秒、分、小時(shí)、星期、日期、月份和年份。RTC單元時(shí)鐘源由外部32.768KHz晶振提供,可以實(shí)現(xiàn)鬧鐘(報(bào)警)功能。S3C44B0X實(shí)時(shí)時(shí)鐘(RTC)單元特性:BCD數(shù)據(jù):秒、分、小時(shí)、星期、日期、月份和年份1、鬧鐘(報(bào)警)功能:產(chǎn)生定期中斷或激活系統(tǒng)2自動(dòng)計(jì)算閏年3、無(wú)2023年問(wèn)題4、獨(dú)立的電源輸入5、支持亳秒級(jí)時(shí)間片中斷,為RTOS提供時(shí)間基準(zhǔn)讀/寫寄存器訪問(wèn)RTC模塊的寄存器,一方面要設(shè)RTCCON的bitO為1。CPU通過(guò)讀取RTC模塊中寄存器BCDSEC、BCDMIN.BCDHOUR.BCDDAY、BCDDATE.BCDMON和BCDYEAR的值,得到當(dāng)前的相應(yīng)時(shí)間值。然而,由于多個(gè)寄存器依次讀出,所以有也許產(chǎn)生錯(cuò)誤。比如:用戶依次讀取年(1989)、月(12)、日(31)、時(shí)(23)、分(59)、秒(59)。當(dāng)秒數(shù)為1到59時(shí),沒(méi)有任何問(wèn)題,但是,當(dāng)秒數(shù)為0時(shí),當(dāng)前時(shí)間和日期就變成了1990年1月1日0時(shí)。分。這種情況下(秒數(shù)為0),用戶應(yīng)當(dāng)重新讀取年份到分鐘的值(參考程序設(shè)計(jì))。后備電池:RTC單元可以使用后備電池通過(guò)管腳RTCVDD供電。當(dāng)系統(tǒng)關(guān)閉電源以后,CPU和RTC的接口電路被阻斷,后備電池只需要驅(qū)動(dòng)晶振和BCD計(jì)數(shù)器,從而達(dá)成最小的功耗。鬧鐘功能RTC在指定的時(shí)間產(chǎn)生報(bào)警信號(hào),涉及CPU工作在正常模式和休眠(powerdown)模式下。在正常工作模式,報(bào)警中斷信號(hào)(ALMINT)被激活。在休眠模式,報(bào)警中斷信號(hào)和喚醒信號(hào)(PMWKUP)同時(shí)被激活。RTC報(bào)警寄存器(RTCALM)決定報(bào)警功能的使能/屏蔽和完畢報(bào)警時(shí)間檢測(cè)。時(shí)間片中斷RTC時(shí)間片中斷用于中斷請(qǐng)求。寄存器TICNT有一個(gè)中斷使能位和中斷計(jì)數(shù)。該中斷計(jì)數(shù)自動(dòng)遞減,當(dāng)達(dá)成0時(shí),則產(chǎn)生中斷。中斷周期按照下列公式計(jì)算:Period=(n+1)/128second其中,n為RTC時(shí)鐘中斷計(jì)數(shù),可取值為(IT27)置零計(jì)數(shù)功能RTC的置零計(jì)數(shù)功能可以實(shí)現(xiàn)30、40和50秒步長(zhǎng)重新計(jì)數(shù),供某些專用系統(tǒng)使用。當(dāng)使用50秒置零設(shè)立時(shí),假如當(dāng)前時(shí)間是11:59:49,則下一秒后時(shí)間將變?yōu)?2:00:00o注意:所有的RTC寄存器都是字節(jié)型的,必須使用字節(jié)訪問(wèn)指令(STRB、LDRB)或字符型指針訪問(wèn)。五、實(shí)驗(yàn)設(shè)計(jì).硬件電路設(shè)計(jì).軟件程序設(shè)計(jì)(1)時(shí)鐘設(shè)立時(shí)鐘設(shè)立程序必須實(shí)現(xiàn)時(shí)鐘工作情況以及數(shù)據(jù)設(shè)立有效性檢測(cè)功能。具體實(shí)現(xiàn)可以參考示例程序設(shè)計(jì)。(2)時(shí)鐘顯不時(shí)鐘參數(shù)通過(guò)實(shí)驗(yàn)系統(tǒng)串口0輸出到超級(jí)終端,顯示內(nèi)容涉及年月日時(shí)分秒。參數(shù)以BCD碼形式傳送,用戶使用串口通信函數(shù)(參見(jiàn)串口通信實(shí)驗(yàn))將參數(shù)取出顯示。

******/********************************4★★name:******/********************************4★★name:func:readdatafromrtcmodify:commenvoidrtc_read(void)(while(1)(//readthedatafromRTCregistersif(rBCDYEAR==0x99)g_nYear=0x1999;eIseg_nYcar=Ox2023+rBCDYEAR;gnMonth=rBCDMON;g_nDay=rBCDDAY:g_nWeekday=rBCDDATE;g_nHour=rBCDHOUR:g_nMin=rBCDMIN;g_nSec=rBCDSEC;if(g_nSec!=0)

break;***廣*************★********mm*************?***?*?*★★*★****?*****★★★★★★★★★*★★★*name:rtc_display***func:displaydatafromrlcpara:noneret:nonemodify:*comment:voidrtc_display(void)★*火★*火★★★**火★★★**?*****rtc_read();uart_prinlf("\n\rCurrentTimeis%O2x-%O2x-%02x%s",g_nYear?g_nMonth,g_nDay,Jszdate[g_nWeekday]);uartprintf("%02x:%02x:%02x\r\n'',g_nHour,gnMin,g_nScc);)六、實(shí)驗(yàn)操作環(huán)節(jié).準(zhǔn)備實(shí)驗(yàn)環(huán)境使用Embest仿真器連接Fl的板,使用EmbestEduKit-III實(shí)驗(yàn)板附帶的串口線,連接實(shí)驗(yàn)板上的UARTO和PC機(jī)的串口。.串口接受設(shè)立在PC機(jī)上運(yùn)營(yíng)windows自帶的超級(jí)終端串口通信程序(波特率115200、1位停止位、無(wú)校驗(yàn)位、無(wú)硬件流控制);或者使用其它串口通信程序。.打開(kāi)實(shí)驗(yàn)例程1)拷貝光盤CD1\S。ftware\EduKit44bO文獻(xiàn)夾到EmbestIDE\Examp1es\Samsung\目錄下:2)使用EmbestIDE通過(guò)EmbestJTAG仿真器連接實(shí)驗(yàn)板,打開(kāi)實(shí)驗(yàn)例程目錄4.5_rtc_test子目錄下的rtc_test.pjf例程,編譯鏈接工程;3)點(diǎn)擊IDE的Debug菜單,選擇RemoteConnect項(xiàng)或F8鍵,遠(yuǎn)程連接目的板;4)點(diǎn)擊IDE的Debug菜單,選擇Download下載調(diào)試代碼到目的系統(tǒng)的RAM中;5)點(diǎn)擊Debug菜單的G?;騀5犍運(yùn)營(yíng)程序。4.觀測(cè)實(shí)驗(yàn)結(jié)果.在PC機(jī)上觀測(cè)超級(jí)終端程序主窗口,可以看到如下界面:bootsuccess...RTCTestExampleRTCCheck(Y/N)?.用戶可以選擇是否對(duì)RTC進(jìn)行檢查,檢核對(duì)的的話,繼續(xù)執(zhí)行程序,檢查不對(duì)的時(shí)也會(huì)提醒是否重檢查:RTCCheck(Y/N)?ySetDefau11Timeat2023-12-31FRI23:59:59SetAlarmTimeat2023-01-0100:00:01...RTCAlarmInterruptO.K....CurrentTimeis2023-01-01SAT00:00:01RTCWorkingnow.Tosetdate(Y/N)?.用戶可以選擇是否重新進(jìn)行時(shí)鐘設(shè)立,當(dāng)輸入不耐的時(shí)也會(huì)提醒是否重新設(shè)立:RTCWorkingnow.Tosetdate(Y/N)?yCurrentdateis(2023,01,0lfSAT).inputnewdate(yy-mm-ddw):5—2—233Currentdateis:2023-02-23WEDRTCWorkingnow.Tosettime(Y/N)?yCurrenttimeis(00:02:57).Tosettime(hh:mm:ss):19:32:5.最終超級(jí)終端輸出信息如F:CurrentTimeis2023—02—23WED19:32:0519:32:07七、實(shí)驗(yàn)參考程序1.環(huán)境及函數(shù)聲明ARM7基礎(chǔ)實(shí)驗(yàn)教程--*/-196-/*functiondec1are*//*-————-------——————-———/*一....———--------————*/rgloba1variables,/inttest_rtc_alarm(void):---———-voidrtcjnit(void):—————―______―一voidread_rtc(void);————一-*/voiddisplay_rtc(void);intg_nYear;voidtest_rtc_tick(void):intg_nMonth,g_nDay,g_nWeekday,voidrtc_int(void);g_nHour,g_nMin,g_nSec;voidrtc_tick(void);j?—一??—一—2.時(shí)鐘設(shè)立控制程序/***********?*****?文????***

o));i++)**?****★★★★★★★★***★★★★********??*★*****if((szStr[i]==',)|(szStr[i]==''******?*……文?*??nTmp+=1;*name:rtc_set_date}*func:getandchecktheDATEsif(nTmp<3)//atIeast2and1tringfromuartchan

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論