rtc device driver

16
RTC device driver 電電電 693415077 電電電 電電電電 691440019 電電電

Upload: devin-barlow

Post on 03-Jan-2016

44 views

Category:

Documents


0 download

DESCRIPTION

RTC device driver. 電機所 693415077 楊璨輝 光機電所 691440019 王文志. Outline. 目的 Collie 開發平台簡介 何謂 RTC 發展版簡介和發展過程 RTC 的傳輸方式 RTC 暫存器 CCR & EEPROM 的讀寫 X1226 與 ML-I0101 的接腳配置 目標. 目的. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: RTC device driver

RTC device driver

電機所 693415077 楊璨輝光機電所 691440019 王文志

Page 2: RTC device driver

Outline 目的 Collie 開發平台簡介 何謂 RTC 發展版簡介和發展過程 RTC 的傳輸方式 RTC 暫存器 CCR & EEPROM 的讀寫 X1226 與 ML-I0101 的接腳配置 目標

Page 3: RTC device driver

目的

在本 Project 中所使用發展板 ML-I0101 其上也有 RTC 的裝置,當電源發生斷電時,會無法延續 ML-I0101 本身的時間設定,因此我們藉助外接式 RTC 的功能(搭配獨立電源 ),使原本在 ML-I0101 上消失的資料或時間,即可於 RTC 儲存,並在 ML-I0101 開機時,可自動更新作業系統時間。另外可以使用 X1226 的附加功能,512 bytes EEPROM ,儲存一些少量資料,供使用者自行發揮。

Page 4: RTC device driver

核心部分Collie : 為系統主要核心控制晶片。SDRAM: 系統所需之記憶體。FlashROM (NOR Flash): 存放作業系統核心與檔案系統。

Boot ROM: 存放開機程式,開機程式亦可存放於 Flash ROM 中。

MicroLinks Collie Platform 簡介

Page 5: RTC device driver

實體圖1. Collie chip

2. 32MB SDRAM

3. 8MB Flash Rom

4. 512 KB Boot Rom

5. STN/TFT-LCD interface

6. IDE interface

7. PCMCIA interface

8. Audio input/output

9. 10BaseT Ethernet

10. Touch panel

11. USB host

12. VGA

13. UART

Page 6: RTC device driver

uClinuxuClinux 是一個專為沒有虛擬記憶管理單元 (MMU) 的 OS 。

uClinux 可支援包括, Dragon Ball 、MC68328 、 ARM7TDMI…等。

Collie I0101 也是使用 uClinux 做為 Embedded Linux system 。

Page 7: RTC device driver

何謂 RTC (1/2)

RTC [Real Time Clock ( Calendar )]一種時間裝置,用來持續計時,就算在關閉工作平台後, RTC 還是利用蓄電池持續計時。

本實驗所使用的 Chip , X1226 ,其特色為 :可以紀錄小時、分鐘、秒,到百分之一秒;也可以紀錄星期、日、月和年等資料。

兩個 alarms ,可以設定秒、分、時、日、星期、月。其中震盪器,內建有回授暫存器,擁有自我補償的能力。

Page 8: RTC device driver

何謂 RTC (2/2)

內建 512 Bytes 的 EEPROM 記憶體利用 i2c 的傳輸方式來與發展板做資料傳輸及控制。

低耗電的 CMOS ,在閒置模式正常消耗 0.6uA ,在操作模式正常消耗 1uA ,

Page 9: RTC device driver

RTC 的傳輸方式

X1226 是使用 i2c 方式來傳輸i2c 包含兩支接腳

• Serial Clock(SCL) :傳輸時脈• Serial Data(SDA) :雙向傳輸接腳,用來傳送或接收資料

Page 10: RTC device driver

RTC 暫存器 (1/2) RTC 暫存器─ Clock/Control Register(CCR)

1. 

Page 11: RTC device driver

RTC 暫存器 (2/2) Alarm 暫存器—包含於 CCR 中

Page 12: RTC device driver

CCR & EEPROM 的讀寫

EEPROMEEPROM 在 X1226 中為 512 Bytes 位址從 0x0 到 0x1ff 因為和 CCR(Clock/Control Register) 為各自獨立的兩區塊,欲讀寫 EEPROM先傳送一 10101110至 Slave Address (RTC端 ) ,宣告為讀取 EEPROM

若要讀取 CCR則傳送一 11011110至 Slave Address (RTC端 ) ,宣告為讀取 RTC

Page 13: RTC device driver

X1226 與 ML-I0101 的接腳配置

利用 GPIO 模擬 i2c 的功能,故將 SCL 和SDA 接至 GPIO 上

Page 14: RTC device driver

發展板 MLI-0101

Page 15: RTC device driver

目標 新增 RTC 的驅動程式 (Driver) 於作業系統中,以及使用一個應用程式 (Application) 來使用此 RTC驅動程式。藉此讓使用者熟悉驅動程式以及應用程式開發,所必須完成的基本動作。

RTC 驅動程式功能簡介利用 ioctl() 來設定、抓取 RTC 的時間,並於設定 RTC 時間的同時,修改作業系統的時間。

且在 insmod driver 的同時,改變作業系統的時間功能

EEPROM 的存取 功能簡述 : 讀寫 EERPOM 。

Page 16: RTC device driver

END