2009年4月16日 星期四

Dallas DS1307 應用心得

DS1307是一顆 REAL TIME CLOCK IC,內部有萬年曆的功能,腳位簡單,溝通操作是透過I2C界面,而且還有備援電池自動切換的功能,上面還有多餘的56BYTE可供外部MCU來使用。

幾個重點要注意:
一、DS1307 出廠後一定要初始化,把 ADDRESS 00h 的第7個BIT設成0 (CLOCK HALT)才會開始跑。

二、DS1307 上電後有一段時間延時,這段時間內MCU切勿發送I2C指令,否則可能造成誤寫入時間暫存器。***這邊也可能是I2C傳遞有誤造成的問題。

三、VDD要搭個電容會比較穩定。

四、VBAT沒用到的話要接地。

五、多餘的RAM可以拿來當成離線記憶體使用,正如同EEPROM一般。(VBAT有效的話)

六、時間的精度取決於外掛 OSC (32768HZ) 的精度,而且要接地良好,否則很容易被干擾。

更高效處理 micro second 的方式

更高效處理 micro second 的方式…  以 STM32 為例… __IO unsigned long sys_tick = 0; void SysTick_Handler(void) {     HAL_IncTick();     sys_tick += (SysTi...