時鐘芯片PCF2129在批量生產(chǎn)過程中,有客戶反饋PCF2129有0.2%左右芯片I2C通信異常,無法讀寫寄存器,芯片BAT供電比VCC低或者斷開VCC和BAT供電后恢復正常。經(jīng)過測試發(fā)現(xiàn)0x02地址寄存器值異常為0x88,改為默認值0x00,芯片恢復正常。
在很多設計中都會用到時鐘芯片,PCF2129是NXP推出的內(nèi)置晶振高精度時鐘芯片,芯片帶有補償寄存器,精度可達3ppm。該時鐘芯片具有精度高、功耗低、使用方便等特點。
在使用PCF2129,有客戶反饋出現(xiàn)0.2%的芯片在電池上電后,I2C讀寫寄存器異常如圖 1,通信失敗,在將電池斷開又接上后,芯片恢復正常工作。如果設置BAT供電電壓比VCC低,芯片也能通信上,但將BAT電壓調(diào)到比VCC高,通信又異常了??蛻鬡CC使用3.3V.電池也是3.3V的。
圖 1 PCF2129沒有ACK應答
從客戶反饋的情況分析,芯片從新上電后由于寄存器重新初始化,芯片恢復正常。在調(diào)試BAT電壓比VCC電壓低后,通信也能正常如圖 2,可以看出,芯片異常應該是某個寄存器值偏離默認值,而且這個寄存器值和BAT的供電電壓有關(guān)。在PCF2129中,只有地址0x02寄存器和BAT供電電壓有關(guān)如圖 3。
圖 2 PCF2129 IIC通信正常
圖 3 PCF2129 0x02寄存器
0x02寄存器默認情況下為0x00,在BAT不斷電情況下外接電源,VCC電壓調(diào)到比BAT高后,IIC通信正常,讀取0x02寄存器值如圖 4所示,為0x88。
圖 4 0x02寄存器異常值
PCF2129斷電后,或者直接將0x02寄存器值改為0x00后,PCF2129 I2C通常正常,芯片正常工作。
圖 5 0x02寄存器默認值
從測試結(jié)果可以得出,PCF2129 I2C通信異常是由于0x02寄存器值異常導致的,修改為默認值后,PCF2129就能正常工作。
-
寄存器
+關(guān)注
關(guān)注
31文章
5372瀏覽量
121304 -
時鐘芯片
+關(guān)注
關(guān)注
2文章
253瀏覽量
39987 -
PCF2129
+關(guān)注
關(guān)注
0文章
3瀏覽量
9030
原文標題:如何解決時鐘芯片PCF2129 I2C通信異常
文章出處:【微信號:Zlgmcu7890,微信公眾號:周立功單片機】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
I2C讀寫時序分析和實現(xiàn)思路
![<b class='flag-5'>I2C</b><b class='flag-5'>讀寫</b>時序分析和實現(xiàn)思路](https://file1.elecfans.com/web2/M00/A5/EC/wKgaomUP-DqAKpoyAAKWOiywwFM460.jpg)
PCM1863為什么通過I2C無法讀取到寄存器值?
TLV320AIC3263 i2c無法進行通信,通過i2c的讀寫函數(shù),讀寫寄存器失敗怎么解決?
怎么樣通過I2C或SPI讀寫AIC3254的寄存器?
STM8L15x I2C:無法寫入I2C寄存器
I2c通信怎么設置寄存器地址?
用i2c總線往攝像頭寄存器中寫寄存器
I2C總線規(guī)范與I2C器件C51讀寫程序
ARM I2C 總線接口的寄存器設置
Atmel SAMC21的I2C驅(qū)動寄存器操作和寄存器代碼免費下載
STM32 I2C硬件的結(jié)構(gòu)
![STM32 <b class='flag-5'>I2C</b>硬件的結(jié)構(gòu)](https://file.elecfans.com/web1/M00/BB/CC/pIYBAF6qdxuAfW4UAAA9H1qXhDI244.png)
判斷I2C總線通信的異常及及解決方法
硬件I2C與模擬I2C
![硬件<b class='flag-5'>I2C</b>與模擬<b class='flag-5'>I2C</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論