基于MAX16031系統管理器的在線(xiàn)編程設計
1 引言
目前,很多應用系統均采用總線(xiàn)控制方式實(shí)時(shí)配置各種寄存器,靈活實(shí)現其控制功能,從而全程監控各個(gè)參數。典型的總線(xiàn)控制設計方案一基于EEPROM的系統監控電路,通過(guò)對EEPROM進(jìn)行在線(xiàn)編程,實(shí)時(shí)配置系統各個(gè)控制參數,進(jìn)而實(shí)時(shí)監測各種電路參數及故障。
MAX16031就是一種基于EEPROM的系統監控電路,可監測8路電源電壓,提供3路溫度檢測和1路電流監測;每個(gè)監測參數與4個(gè)不同門(mén)限相比較,多路故障指示輸出可配置在不同條件下觸發(fā)報警。這里以MAX16031為核心,配以相應的輔助電路和靈活的軟件設計,通過(guò)I2C總線(xiàn)來(lái)實(shí)現基于MAX16031的實(shí)時(shí)監控在線(xiàn)編程功能。
2 硬件設計
MAX16031內置有一個(gè)兼容于SMBusTM的I2C接口和一個(gè)JTAG接口,這兩個(gè)接口均可訪(fǎng)問(wèn)器件的所有寄存器,可編程設置其內部EEPROM。
2.1 供電電源
MAX16031的電源電壓范圍為3~14 V,通??蓪CC連接至12 V中等電壓總線(xiàn),或連接到3.3 V輔助電源。也可使用外部供電電路對其編程設置,例如使用3.3 V輔助電壓(而無(wú)需其他電源),或施加12 V中等電壓總線(xiàn),關(guān)閉所有下游電源,以避免其他電路施加電源。也可使用常見(jiàn)的雙二極管,由編程連接器供電。當MAX16031由12 V總線(xiàn)供電時(shí),由于二極管會(huì )產(chǎn)生壓降,因此該供電效果最佳。
2.2 共用總線(xiàn)
當一器件(非μP)正常工作時(shí)需與MAX16031通信,則存在潛在問(wèn)題。例如,當系統監控μP需要訪(fǎng)問(wèn)MAX16031的A/D轉換器讀數時(shí),外部供電電路掉電或只是部分供電、且MAX16031正在編程時(shí),掛接在I2C總線(xiàn)的其他器件可能產(chǎn)生干擾。而最簡(jiǎn)便解決方法是通過(guò)JTAG接口編程MAX16031并監控連接到I2C接口的μP。若μP支持開(kāi)漏I2C總線(xiàn)I/O(即未連接至VCC的ESD保護二極管的引腳),同時(shí)上拉電阻足夠大,則在編程和正常工作時(shí)共用I2C總線(xiàn)是可行的。如果μP的I2C總線(xiàn)不是開(kāi)漏式,ESD二極管將箝位總線(xiàn)并會(huì )干擾編程。如果系統μP不具備真正的開(kāi)漏I2C總線(xiàn),可采用圖1所示電路在μP和編程I2C總線(xiàn)之間自動(dòng)切換。
圖1中,MAX4525復用器在連接到系統μP的I2C和連接到編程測試點(diǎn)上的I2C之間切換。開(kāi)關(guān)由系統μP的VCC控制。如果采用12 V電源供電,而不是VCC,開(kāi)關(guān)將I2C連接至編程測試點(diǎn)。一旦施加VCC電源,開(kāi)關(guān)將I2C連接至系統μP。在編程模式下,連接在測試點(diǎn)的編程硬件電路必須提供適當的I2C上拉電阻。
2.3 編程電路
圖2所示電路通過(guò)12 V中等電壓總線(xiàn)向MAX16031供電,通過(guò)雙二極管從編程連接器供電。該連接器與MAX16031的I2C總線(xiàn)連接,并與板上具有開(kāi)漏I2C輸出的系統管理μP共用總線(xiàn),此時(shí)μP并未真正加載到總線(xiàn)上,即便是在上電前。作為外部編程器的替代方案,也可使用系統管理μP在初始上電時(shí),編程設置MAX16031,可在沒(méi)有特殊硬件的條件下更新MAX16031的配置。
評論