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

RTC device driver

Embed Size (px)

DESCRIPTION

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

Citation preview

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