国产精品免费无遮挡无码永久视频-国产高潮视频在线观看-精品久久国产字幕高潮-国产精品99精品无码视亚

Xilinx FPGA入門連載63:基于數(shù)碼管顯示的RTC讀取之RTC芯片解析

發(fā)布時間:2016-3-31 19:04    發(fā)布者:rousong1989
Xilinx FPGA入門連載63:基于數(shù)碼管顯示的RTC讀取之RTC芯片解析
特權(quán)同學,版權(quán)所有
配套例程和更多資料下載鏈接:
1 RTC芯片解析
本實例使用的RTC實時時鐘芯片是型號為PCF8563,是PHILIPS 公司推出的一款工業(yè)級內(nèi)含IIC 總線接口功能的具有極低功耗的多功能時鐘/日歷芯片。PCF8563的多種報警功能、定時器功能、時鐘輸出功能以及中斷輸出功能能完成各種復雜的定時服務,甚至可為單片機提供看門狗功能。內(nèi)部時鐘電路、內(nèi)部振蕩電路、內(nèi)部低電壓檢測電路(1.0V) 以
及兩線制IIC 總線通訊方式,不但使外圍電路及其簡潔,而且也增加了芯片的可靠性。同時每次讀寫數(shù)據(jù)后內(nèi)嵌的字地址寄存器會自動產(chǎn)生增量,因而PCF8563 是一款性價比極高的時鐘芯片,它已被廣泛用于電表、水表、氣表、電話、傳真機、便攜式儀器以及電池供電的儀器儀表等產(chǎn)品領(lǐng)域。
特性
●  寬電壓范圍1.0 5.5V 復位電壓標準值Vlow=0.9V
●  超低功耗典型值為0.25 A VDD=3.0V,Tamb=25°C
●  可編程時鐘輸出頻率為32.768KHz/1024Hz/32Hz/1Hz
●  四種報警功能和定時器功能
●  內(nèi)含復位電路振蕩器電容和掉電檢測電路
●  開漏中斷輸出
●  400kHz的IIC 總線(VDD=1.8-5.5V) 其從地址讀0xa3,寫0xa2
PCF8563的引腳排列及描述如下所示。
PCF8563有16 個位寄存器:一個可自動增量的地址寄存器,一個內(nèi)置32.768KHz 的振蕩器(帶有一個內(nèi)部集成的電容),一個分頻器用于給實時時鐘RTC 提供源時鐘,一個可編程時鐘輸出,一個定時器,一個報警器,一個掉電檢測器和一個400KHz的IIC 總線接口。
所有 16 個寄存器設(shè)計成可尋址的8 位并行寄存器,但不是所有位都有用。前兩個寄存器(內(nèi)存地址00H 01H)用于控制寄存器和狀態(tài)寄存器,內(nèi)存地址02H~08H 用于時鐘計數(shù)器(秒~年計數(shù)器),地址09H~0CH用于報警寄存器(定義報警條件),地址0DH 控制CLKOUT 引腳的輸出頻率,地址0EH 和0FH分別用于定時器控制寄存器和定時器寄存器。秒、分鐘、小時、日、月、年、分鐘報警、小時報警、日報警寄存器,編碼格式為BCD,星期和星期報警寄存器不以BCD 格式編碼。
當一個 RTC 寄存器被讀時,所有計數(shù)器的內(nèi)容被鎖存。因此,在傳送條件下,可以禁止對時鐘日歷芯片的錯讀。
PCF8563 共有16 個寄存器,其中00H~01H為控制方式寄存器;09H~0CH為報警功能寄存器;0DH為時鐘輸出寄存器;0EH 和0FH 為定時器功能寄存器,02H~08H為秒~年時間寄存器。各寄存器的位描述如下示。
看了這么多條條框框的寄存器描述,大家一定有些累了,下面我們來電實用的,和大家簡單說說如何使用這個芯片初始設(shè)置或讀出年月日時分秒等信息。
我們將并且只能夠使用IIC接口來讀寫這個芯片的各個寄存器,IIC接口有一定的協(xié)議,需要按照協(xié)議規(guī)定送起始位、器件地址、讀寫寄存器地址、讀寫數(shù)據(jù)、停止位等,這個內(nèi)容我們下一小節(jié)的設(shè)計中詳細探討,后面我們先拋開IIC具體讀寫控制時序,先從宏觀角度來把該讀寫哪些寄存器這碼事理清楚。
正常來說,一個芯片的使用,無外乎設(shè)置一下控制寄存器,然后讀寫相關(guān)數(shù)據(jù),必要的話產(chǎn)生一個中斷,此時可能回去看看狀態(tài)寄存器。不過,我們這顆RTC更簡單,地址0x00和0x01的控制寄存器1和2默認狀態(tài)即可,我們只需要讀寫時間便可,其他什么報警、中斷等功能留待大家有興趣自己琢磨去。好,那么簡單又是怎么操作的,不急,精彩馬上送到。
地址0x02~0x08寄存器的內(nèi)容是秒、分、時、日、星期、月、年信息,我們只要操作他們便可以了。
假設(shè)現(xiàn)在我們就是要把這些基本的時間信息讀出來,然后以我們最常規(guī)的大家都能看得懂的10進制方式顯示出來,那么如何操作?就按下面這個步驟就好,至于原理,大家回去對照各個寄存器的定義稍微一想也就能夠領(lǐng)會。
         ① 讀地址0x02的秒寄存器數(shù)據(jù)second,在顯示時,十位數(shù)據(jù)為((second&0x70)>>4),個位的數(shù)據(jù)為(second&0x0f)。
         ② 讀地址0x03的分鐘寄存器數(shù)據(jù)minute,在顯示時,十位數(shù)據(jù)為((minute&0x70)>>4),個位的數(shù)據(jù)為(minute&0x0f)。
         ③ 讀地址0x04的小時寄存器數(shù)據(jù)hour,在顯示時,十位數(shù)據(jù)為((hour&0x30)>>4),個位的數(shù)據(jù)為(hour&0x0f)。
         ④ 讀地址0x05的日寄存器數(shù)據(jù)day,在顯示時,十位數(shù)據(jù)為((day&0x30)>>4),個位的數(shù)據(jù)為(day&0x0f)。
         ⑤ 讀地址0x06的星期寄存器數(shù)據(jù)week,在顯示時,數(shù)據(jù)為(week&0x07)。
         ⑥ 讀地址0x07的月份寄存器數(shù)據(jù)month,在顯示時,十位數(shù)據(jù)為((month&0x10)>>4),個位的數(shù)據(jù)為(month&0x0f)。
         ⑦ 讀地址0x08的年寄存器數(shù)據(jù)year,在顯示時,十位數(shù)據(jù)為((year&0xf0)>>4),個位的數(shù)據(jù)為(year&0x0f)。
         以上這些寄存器值,如果我們希望重設(shè),直接往里面寫數(shù)據(jù)即可,這樣我們便可以調(diào)整當前的時間和實際時間同步,因為我們芯片是由3V的紐扣電池供電的,所以即便我們的電路板下電后,芯片內(nèi)部的時間計數(shù)單元還是在正常工作運轉(zhuǎn)的。

本文地址:http://www.4huy16.com/thread-162545-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責;文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • Microchip第22屆中國技術(shù)精英年會上海首站開幕
  • Microchip第22屆中國技術(shù)精英年會——采訪篇
  • “芯”光璀璨,鵬城共賞——2025 Microchip中國技術(shù)精英年會深圳站回顧
  • 常見深度學習模型介紹及應用培訓教程
  • 貿(mào)澤電子(Mouser)專區(qū)
關(guān)于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表