時(shí)鐘芯片SD2200ELP與AVR單片機(jī)的接口設(shè)計(jì)
出處:jyj6688h 發(fā)布于:2008-09-02 14:52:46
摘要?。樱模玻玻埃埃牛蹋惺巧钲谂d威帆電子技術(shù)有限公司生產(chǎn)的高實(shí)時(shí)時(shí)鐘芯片。本文給出了時(shí)鐘芯片SD2200ELP與ATmegal6的接口設(shè)計(jì),并實(shí)現(xiàn)了AVR的TWI總線對(duì)SD2200ELP進(jìn)行時(shí)鐘和E2PROM的讀/寫操作的C語言程序,具有很強(qiáng)的實(shí)用性和通用性。
在提升機(jī)制動(dòng)閘瓦間隙實(shí)時(shí)在線檢測(cè)的設(shè)計(jì)中,需要保存故障時(shí)間和故障數(shù)據(jù)。大部分儀器儀表中都要使用時(shí)鐘芯片,但是很多的實(shí)時(shí)時(shí)鐘芯片(如PCF8563)沒有掉電保護(hù),須外接晶振和電池,比較麻煩。而深圳興威帆電子技術(shù)有限公司生產(chǎn)的SD2200ELP是內(nèi)置32?。耍拢牛玻校遥希偷拇袑?shí)時(shí)時(shí)鐘芯片,不需要外接器件支持,連線簡(jiǎn)單、可靠,提供的數(shù)據(jù),斷電后也能繼續(xù)工作。微控制器采用Atmel公司的ATmegal6單片機(jī),利用AT-megai6的硬件TWI接口可直接對(duì)SD2200ELP進(jìn)行操作,無需軟件模擬I2C方式,使用方便、可靠。
?。薄。樱模玻玻埃埃毯?jiǎn)介
?。樱模玻玻埃埃滔盗校òǎ樱模玻玻埃埃拢茫模牛疲蹋校┦且环N具有內(nèi)置晶振、支持I2C總線的高實(shí)時(shí)時(shí)鐘芯片。SD2200ELP是SD2200L系列中的一種,該芯片可保證時(shí)鐘為±5ppm(在-10~50℃下),即年誤差小于2.5min。芯片內(nèi)置時(shí)鐘調(diào)整功能,可以在很寬的范圍內(nèi)校正時(shí)鐘的偏差;內(nèi)置32KB串行非易失性E2PROM;可在3.0~5.5V下工作,擦寫次數(shù)可達(dá)100萬次,數(shù)據(jù)保存時(shí)間為十年;內(nèi)置性電池,可保證在外部掉電情況下時(shí)鐘使用壽命超過五年。SD2200L系列內(nèi)部結(jié)構(gòu)如圖l所示。

?。病∮布O(shè)計(jì)
SD2200ELP既有實(shí)時(shí)芯片的功能,又可以存儲(chǔ)數(shù)據(jù)到內(nèi)置E2PRROM中。因?yàn)椋樱模玻玻埃埃牛蹋惺牵桑玻每偩€接口方式,所以其硬件接口設(shè)計(jì)非常簡(jiǎn)單,可以大大簡(jiǎn)化單片機(jī)外圍器件。AVR的TWI總線實(shí)質(zhì)上就是I2C總線,只是名稱不一樣。圖2中INTl腳為SD2200ELP的定時(shí)中斷輸出,與ATmegal6的外部中斷INTl相連接(INTl配置為下降滑觸發(fā)方式),SDA、SCL為兩線式串行引腳,分別與ATmegal6的TWl(PCl、PCO)相連。
?。场≤浖O(shè)計(jì)
如果外圍器件是I2C接口類型,而單片機(jī)沒有I2C接口,那么必須用軟件模擬的方式來實(shí)現(xiàn)。AVR單片機(jī)功能很強(qiáng),它帶有TWI接口,可以直接利用ATmegal6的硬件I2C接口來對(duì)外圍I2C器件進(jìn)行操作,非常方便、有效。這樣可以節(jié)省模擬I2C程序,為用戶編程省去很多麻煩。下面是使用ATmegal6對(duì)內(nèi)置E2PROM的實(shí)時(shí)時(shí)鐘芯片SD2200ELP讀/寫的程序設(shè)計(jì),均是在ICCAVR開發(fā)環(huán)境下編寫。

?。常薄。粒裕颍睿澹纾幔欤兜模裕祝煽偩€接口
兩線接口TWI很適合于典型的處理器應(yīng)用。TWI協(xié)議允許系統(tǒng)設(shè)計(jì)者只用兩根雙向傳輸線就可以將128?jìng)€(gè)不同的設(shè)備互連到一起。這兩根線是時(shí)鐘線SCL和數(shù)據(jù)線SDA。外部硬件只需2個(gè)上拉電阻,每根線上1個(gè)。所有連接到總線上的設(shè)備都有自己的地址。TWI協(xié)議解決了總線仲裁的問題,TWI總線的連接如圖3所示。

?。裕祝煽偩€可以工作于4種不同的模式:主機(jī)發(fā)送器(MT)、主機(jī)接收器(MR)、從機(jī)發(fā)送器(ST)以及從機(jī)接收器(SR)。在后面將介紹的連續(xù)讀E2PROM操作中就使用了MT和MR模式。
?。常病?shí)時(shí)時(shí)鐘讀取
實(shí)時(shí)時(shí)鐘操作指令格式如下:

其中高4位稱為“器件代碼”,它代表實(shí)時(shí)時(shí)鐘的器件地址,固定為“0110”。C2、C1、C0構(gòu)成對(duì)實(shí)時(shí)時(shí)鐘操作的8條指令。
實(shí)時(shí)數(shù)據(jù)寄存器是一個(gè)56位的存儲(chǔ)器,它以BCD碼方式存儲(chǔ),包括年、月、日、星期、時(shí)、分、秒的數(shù)據(jù)。實(shí)時(shí)數(shù)據(jù)的讀/寫操作都通過發(fā)送或接收年(實(shí)時(shí)數(shù)據(jù)讀寫方式1)數(shù)據(jù)的位“LSB”開始執(zhí)行的。

?。常场。牛玻校遥希偷淖x/寫
?。樱模玻玻埃埃牛蹋械模牛玻校遥希筒僮髦噶钆c實(shí)時(shí)時(shí)鐘的器件代碼是不一樣的。當(dāng)CPU要對(duì)SD12200L中的E2PROM進(jìn)行操作時(shí),首先發(fā)出開始信號(hào)給SD2200L,然后CPU發(fā)出包括4位器件代碼10lO、3位頁選碼000、1位讀/寫指令的8位數(shù)據(jù)(即“從器件地址”)。一位讀/寫指令表明進(jìn)行何種操作(讀操作為1,寫操作為O)。其格式如下:

3.3.1 對(duì)E2PROM的頁寫操作
寫操作可分為:?jiǎn)巫止?jié)寫操作和頁寫操作。單字節(jié)寫操作指每次只寫入一個(gè)字節(jié)的數(shù)據(jù);頁寫操作指可以寫入多個(gè)字節(jié)的數(shù)據(jù)。值得注意的是,SD2200L是一個(gè)系列,不同類型對(duì)應(yīng)著不同數(shù)量的E2PROM。例如在頁寫操作下,SD2200ELP單個(gè)寫周期內(nèi)E2PROM可以被寫入64字節(jié)的數(shù)據(jù)。在某監(jiān)測(cè)儀器應(yīng)用中,需要保存故障值和故障發(fā)生時(shí)間,故采用頁寫方式。頁寫E2PROM程序流程圖如圖4所示。

?。常常。病?duì)E2PROM連續(xù)讀操作
讀操作有3種方式:立即地址讀操作、隨機(jī)地址讀操作和連續(xù)讀操作。ATmegal6為完成從SD2200ELP內(nèi)置串行E2PROM中讀取數(shù)據(jù),必須將幾種TWI模式組合起來。由于內(nèi)置E2PPROM的存儲(chǔ)容量大小不同,因此在進(jìn)行讀操作時(shí),其操作方式有所不同。在查詢故障值和故障時(shí)間時(shí),需要讀出保存在E2PRoM的數(shù)據(jù),故采用連續(xù)讀操作。與頁寫操作類似,SD2200ELP多連續(xù)讀64字節(jié)的數(shù)據(jù)。連續(xù)讀操作程序流程圖如圖5所示。
讀/寫E2PROM需用到的5個(gè)公用函數(shù):

4 總結(jié)
?。樱模玻玻埃埃牛蹋锌梢苑奖愕亟Y(jié)合AVR單片機(jī)的TWI總線實(shí)現(xiàn)日期顯示功能。并且因其內(nèi)置32?。耍拢牛玻校遥希?,可以保存時(shí)間和相應(yīng)數(shù)據(jù);具有電路簡(jiǎn)單、占用資源少、程序簡(jiǎn)潔、調(diào)試方便、功耗低等特點(diǎn)。經(jīng)過實(shí)際的現(xiàn)場(chǎng)運(yùn)行證實(shí)了該設(shè)計(jì)方法是可靠、有效的。對(duì)本文的設(shè)計(jì)方案和程序稍加修改后,可以用在各種需要此功能的數(shù)字控制和監(jiān)控檢測(cè)系統(tǒng)中
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫電子市場(chǎng)網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 什么是氫氧燃料電池,氫氧燃料電池的知識(shí)介紹2025/8/29 16:58:56
- SQL核心知識(shí)點(diǎn)總結(jié)2025/8/11 16:51:36
- 等電位端子箱是什么_等電位端子箱的作用2025/8/1 11:36:41
- 基于PID控制和重復(fù)控制的復(fù)合控制策略2025/7/29 16:58:24
- 什么是樹莓派?一文快速了解樹莓派基礎(chǔ)知識(shí)2025/6/18 16:30:52









