160 likes | 410 Vues
嵌入式系統技術 ( 實習 ) RTC 即時時鐘. 授課老師 : 紀新州 實習助 教 : 吳 主 文 馮 至 芬 謝耀文. RTC 簡介. RTC – R eal T ime C lock 形式 - 內建於 IC 或存在外掛系統中。 功能 - 紀錄並提供系統 時 間。 需 求 – 額外的電池。. S3C2440 的 RTC. 功能 – 提供系統時間 閏年處理 警告功能
E N D
嵌入式系統技術(實習)RTC 即時時鐘 授課老師: 紀新州 實習助教: 吳主文 馮至芬 謝耀文
RTC 簡介 • RTC–Real Time Clock • 形式 - 內建於IC或存在外掛系統中。 • 功能 - 紀錄並提供系統時間。 • 需求 – 額外的電池。
S3C2440 的 RTC • 功能 – 提供系統時間 閏年處理 警告功能 提供時鐘中斷(ms等級)
S3C2440 的 RTC • 需求 – 備用電池。 32768()Hz外部振盪器。 • 工作 – 通過 SRTB/LDRM指定將BCD編碼的資 料送入CPU。 • 資料 – 秒、分、時、日、星期、月和年。
BCD編碼 • BCD– Binary Coded Decimal
S3C2440RTC 閏年產生器 • 功能 – 決定每個月的最後日期 判斷是否為閏年 • 問題 –8位元只能表示2個BCD編碼 固定邏輯將”00”判斷為閏年
S3C2440 RTC 暫存器 • 功能 – 儲存系統時間 透過RTCON來控制 • 問題 – 讀取多個暫存器產生偏移
S3C2440 RTC 節拍中斷 • 功能 – 作為RTOS核心的時間節拍。 • 其他– 間隔時間 :節拍時間計數值(1~127)
S3C2440 RTC 備用電池及警報 • 功能 – 即使斷電RTC也能工作。 在指定的時間產生一個警報的訊號。 • 問題–實驗室的版子上沒有備用電池。
S3C2440RTC 暫存器(RTCON) • 範例:rRTCCON = 1 //啟用 RTC讀寫 rRTCCON &=~1 //停用RTC讀寫
S3C2440RTC 暫存器(BCDXX) • 範例:rDCDSEC = 0x15 //將RTC的秒鐘設為15 sec = rDCDSEC //將RTC的秒鐘讀到sec
終端機(DNW)相關 • 初始化 S3C2440 的 GPIO Port_Init(); • 選擇串列埠 num Uart_Init(num); • 設定串列埠速率 Port_Init(0,speed) • 在終端機上面顯示文字(同printf) Uart_Printf(“%d,%f,%x”,int1,float,int2);
實做 • 設定 S3C2440 RTC 將 S3C2440 RTC 設成 2010/4/2011:00:30 • 讀取 S3C2440RTC 將 S3C2440 RTC 的值顯示在終端機上。 更新時間請固定。 • 將第一個實驗 (LED 控制) 整合進去 請自由發揮創意