時(shí)鐘芯片在電壓監(jiān)測(cè)儀校驗(yàn)裝置中的應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:根據(jù)電壓監(jiān)測(cè)儀校驗(yàn)裝置需要建立一個(gè)標(biāo)準(zhǔn)時(shí)鐘,對(duì)電壓監(jiān)測(cè)統(tǒng)計(jì)儀進(jìn)行時(shí)間精度校正的要求,介紹了I2C總線接口時(shí)鐘芯片PCF8583的基本原理,提出了利用DS32KHz給PCF8583提供高穩(wěn)定度頻率信號(hào),從而實(shí)現(xiàn)了標(biāo)準(zhǔn)時(shí)鐘的方案,并給出了PCF8583與MCS51單片機(jī)接口設(shè)計(jì)。
引言
電壓監(jiān)測(cè)統(tǒng)計(jì)儀是一種在線監(jiān)測(cè)電網(wǎng)電壓質(zhì)量、統(tǒng)計(jì)每分鐘瞬時(shí)電壓、每分鐘最大電壓、每分鐘最小電壓以及平均電壓、電壓合格率、電壓超上限率、電壓超下限率等功能的儀表。從以上功能可得出,電壓監(jiān)測(cè)統(tǒng)計(jì)儀除了測(cè)量電壓精度這一因素外,還有一重要因素就是時(shí)間的準(zhǔn)確性。利用PCF8583串行時(shí)鐘芯片成功的應(yīng)用在電壓監(jiān)測(cè)儀校驗(yàn)裝置中,既實(shí)現(xiàn)了電壓的可程控信號(hào)輸出,從而可測(cè)量電壓監(jiān)測(cè)統(tǒng)計(jì)儀的電壓精度指標(biāo),又實(shí)現(xiàn)了一個(gè)標(biāo)準(zhǔn)時(shí)鐘,從而可對(duì)電壓監(jiān)測(cè)統(tǒng)計(jì)儀的時(shí)間進(jìn)行比對(duì),實(shí)現(xiàn)校準(zhǔn)。
1、PCF8583的基本功能特點(diǎn)
PCF8583是飛利浦公司推出的I2C總線接口實(shí)時(shí)時(shí)鐘芯片,它可獨(dú)立于CPU工作,不受CPU主晶振及共電容的影響,且計(jì)時(shí)準(zhǔn)確。具有4年日歷時(shí)鐘,12或24小時(shí)格式,時(shí)基可用32.768KHZ或50Hz,帶可編程的鬧鐘,定時(shí)和中斷功能的日歷時(shí)鐘芯片。芯片具有體積小、硬件連線少、帶有256字節(jié)的靜態(tài)RAM等特點(diǎn)。對(duì)于PCF8583在電壓監(jiān)測(cè)儀校驗(yàn)裝置中的應(yīng)用,主要是用它的實(shí)時(shí)時(shí)鐘計(jì)數(shù)功能,以及標(biāo)準(zhǔn)脈沖輸出功能。
2、PCF8583的寄存器結(jié)構(gòu)
在時(shí)鐘方式下,PCF8583中的寄存器結(jié)構(gòu)地址分配為:00H~07H為時(shí)間寄存器地址編碼; 08H~0FH為定時(shí)器起鬧寄存器地址編碼,作起鬧時(shí)間或通用RAM之用;10H~FFH為通用靜態(tài)RAM。其中00H為控制狀態(tài)寄存器,01H為1/100秒寄存器,02H為秒寄存器,03H為分寄存器,04H為時(shí)寄存器,05H為年/日寄存器,06H為星期/月寄存器,07H為定時(shí)寄存器。有關(guān)控制寄存器、時(shí)寄存器、年/日寄存器、星期/月寄存器的內(nèi)部格式詳述如下:
數(shù)據(jù)格式為:
(1) 控制寄存器(00H)
D7位:計(jì)數(shù)、停止計(jì)數(shù)位。D7=0,啟動(dòng)對(duì)脈沖計(jì)數(shù);D7=1,停止計(jì)數(shù)。
D6位:保持最新計(jì)數(shù)位。D6=0,計(jì)數(shù);D6=1,保持和存儲(chǔ)最新計(jì)數(shù)值到捕捉寄存器中。
D5D4位:功能方式選擇位。
D5D4=00,選擇32.768KHZ時(shí)鐘方式。
D5D4=01,選擇50Hz時(shí)鐘方式。
D5D4=10,事件計(jì)數(shù)方式。
D5D4=11,測(cè)試方式。
D3位:標(biāo)志位。
D3=0,讀05H、06HRAM單元時(shí)不屏蔽。
D3=1,對(duì)05H、06HRAM單元只讀出月、日計(jì)數(shù)值。
D2位:起鬧使能位。D2=0,不能起鬧;D2=0,允許起鬧寄存器使能。
D1位:起鬧標(biāo)志位。D1=0,占空比為50%的分標(biāo)志 。
D0位:定時(shí)器標(biāo)志位。D0=0,占空比為50%的秒標(biāo)志 。
(2) 時(shí)寄存器(04H)
D7位:計(jì)時(shí)格式。D7=0,24小時(shí)制,AM、PM標(biāo)志不變。D7=1,12小時(shí)制,AM、PM標(biāo)志更新。
D6位:上午(AM)、下午(PM)標(biāo)志。D6=0,AM;D6=1,PM。
D5D4位:鐘點(diǎn)十位(二進(jìn)制0~2)。
D3D2D1D0位:鐘點(diǎn)個(gè)位(BCD碼)。
(3) 年/日寄存器(05H)
D7D6位:年份(二進(jìn)制0~3)。
D5D4位:日期十位(二進(jìn)制0~3)。
D3D2D1D0位:日期個(gè)位(BCD碼0~9)。
(4) 星期/月寄存器(06H)
D7D6D5位:星期(二進(jìn)制0~6)。
D4位:月份十位( 0~1)。
D3D2D1D0位:月份個(gè)位(BCD碼0~9)。
3、硬件接口電路
PCF8583作為I2C總線接口芯片,采用二線通信傳輸方式。即主要通過(guò)時(shí)鐘線SCL和數(shù)據(jù)線SDA進(jìn)行雙向傳輸。由于I2C總線是同步串行數(shù)據(jù)傳輸總線,其內(nèi)部為雙向傳輸電路,端口輸出為開(kāi)漏結(jié)構(gòu),故總線上必須有上拉電阻,通??扇?~10KΩ。PCF8583與AT89C52單片機(jī)的硬件接口電路如圖1所示。采用了內(nèi)帶恒溫槽、高穩(wěn)定度的DS32KHz標(biāo)準(zhǔn)晶體振器,代替了使用32.768KHZ普通晶振的方案。雖然這二種方案都能產(chǎn)生PCF8583時(shí)鐘芯片所需要的頻率,但是利用DS32KHz產(chǎn)生的晶振頻率精度為±1分鐘/年。而PCF8583時(shí)鐘芯片時(shí)間的準(zhǔn)確性完全取決于晶振頻率的準(zhǔn)確穩(wěn)定性。因此,經(jīng)過(guò)圖1電路改進(jìn)后的方案確保了電壓監(jiān)測(cè)儀校驗(yàn)裝置的時(shí)間標(biāo)準(zhǔn),同時(shí)還可把32.768KHZ頻率輸出,作為利用比較法校驗(yàn)電壓監(jiān)測(cè)統(tǒng)計(jì)儀的標(biāo)準(zhǔn)脈沖。由于考慮到PCF8583內(nèi)部不帶鋰離子電池,故外帶鋰離子電池來(lái)保證PCF8583的時(shí)鐘供電。圖1中R1和R2為I2C總線所需要的上拉電阻。P1.4口作為發(fā)送時(shí)鐘信號(hào),P1.5口作為發(fā)送或接收數(shù)據(jù)信號(hào)。
圖1 PCF8583硬件接口電路
4、PCF8583接口程序設(shè)計(jì)格式
4.1 PCF8583 I2C總線上的信號(hào)說(shuō)明
由于PCF8583為I2C總線接口芯片,因此它的數(shù)據(jù)操作格式是完全按照I2C總線上的信號(hào)讀、寫(xiě)操作進(jìn)行的。其中,I2C總線上的信號(hào)如圖2所示。啟動(dòng)信號(hào)(S)出現(xiàn)在時(shí)鐘脈沖SCL為高電平,且數(shù)據(jù)線SDA由高電平到低電平的變化時(shí);停止信號(hào)(P)出現(xiàn)在時(shí)鐘脈沖SCL為高電平,且數(shù)據(jù)線SDA由低電平到高電平的變化時(shí);應(yīng)答信號(hào)(A)出現(xiàn)在I2C總線上的第9個(gè)時(shí)鐘脈沖SCL為高電平,且相應(yīng)的數(shù)據(jù)線SDA為低電平時(shí);非應(yīng)答信號(hào)(/A)出現(xiàn)在I<>2C總線上的第9個(gè)時(shí)鐘脈沖SCL為高電平,且相應(yīng)的數(shù)據(jù)線SDA為高電平時(shí);數(shù)據(jù)位傳送為I2C總線啟動(dòng)后或應(yīng)答信號(hào)啟動(dòng)后的第1~8個(gè)時(shí)鐘脈沖所對(duì)應(yīng)的一個(gè)字節(jié)的8位數(shù)據(jù)傳送。數(shù)據(jù)傳送按照先高后低位的原則進(jìn)行讀或?qū)憽?/p>
4.2 PCF8583讀、寫(xiě)操作格式
PCF8583一次數(shù)據(jù)操作格式包括起始信號(hào)(S)、發(fā)送讀或?qū)憣ぶ纷止?jié)、 應(yīng)答信號(hào)、發(fā)送數(shù)據(jù)字節(jié)、應(yīng)答信號(hào)……直到發(fā)送停止信號(hào)(P)。在本文應(yīng)用中,是按以下兩種操作格式來(lái)編寫(xiě)程序的。
(1) PCF8583 寫(xiě)操作格式PCF8583 寫(xiě)操作格式如下所示,是指從指定單元首地址(word address)開(kāi)始依次寫(xiě)入幾個(gè)字節(jié)數(shù)據(jù)。其中slave address1為PCF8583器件寫(xiě)地址,date1~daten為n個(gè)字節(jié)數(shù)據(jù)。
(2) PCF8583 讀操作格式
PCF8583 讀操作格式如下所示,先寫(xiě)入要讀出的n個(gè)字節(jié)數(shù)據(jù)存入指定單元首地址(word address)開(kāi)始的RAM單元中,然后才開(kāi)始讀數(shù)據(jù),其中slave address2為PCF8583器件讀地址。
5、PCF8583軟件編程
根據(jù)圖1所示的接口電路,PCF8583的寫(xiě)地址為#0A0H,讀地址為#0A1H。在對(duì)PCF8583進(jìn)行數(shù)據(jù)寫(xiě)入時(shí),應(yīng)先將日歷時(shí)鐘信息存放于單片機(jī)內(nèi)部從10H開(kāi)始的8個(gè)RAM單元,而從PCF8583讀出的數(shù)據(jù)同樣需存放在其中。
6、結(jié)束語(yǔ)
本文闡述的PCF8583時(shí)鐘芯片,應(yīng)用于單相電壓監(jiān)測(cè)儀校驗(yàn)裝置,該裝置是江西省2003年科技廳重點(diǎn)科技計(jì)劃課題,編號(hào)為10220221,已于2005年6月完成科技成果鑒定。本文在闡述了PCF8583的基本功能特點(diǎn)、寄存器結(jié)構(gòu)的基礎(chǔ)上,給出了PCF8583的硬件接口電路、程序設(shè)計(jì)格式以及相應(yīng)的接口軟件。本文作者創(chuàng)新點(diǎn)是采用了內(nèi)帶恒溫槽、高穩(wěn)定度的DS32KHz晶體振蕩器,給PCF8583時(shí)鐘芯片提供穩(wěn)定的頻率信號(hào),從而實(shí)現(xiàn)了標(biāo)準(zhǔn)時(shí)鐘。雖然采用GPS全球定位系統(tǒng)同樣可實(shí)現(xiàn)標(biāo)準(zhǔn)時(shí)鐘,但是它的價(jià)格高。因此,本文這種方案的應(yīng)用是一個(gè)提高了產(chǎn)品性?xún)r(jià)比的成功例子,值得推廣。