我相连接多个PGA460,但是每次分配地址之后,断电之后地址又会变成0.请问我怎样一次写入之后地址就不变了呢
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好,您使用的是EVM吗?如果是的话,可以通过EVM GUI对EEPROM进行烧录,将需要初始化的寄存器都配置进去,断电再重启之后可直接将其加载进去,减少初始化的时间。
可以参考数据手册P57的7.6.1 EEPROM Programming:
您好,在PGA460 trouble shooting guide Page15有给出如何使用EVM GUI对多个PGA460 进行地址分配和通信:https://www.ti.com/lit/an/slaa733/slaa733.pdf

他这样写地址一次只能写一个,写完之后断电地址不就又恢复成0了吗
是的,上个应用手册中FIgure 15中的介绍,它通过外部硬件或开关必须与外部主控制器配合使用,以便为连接到同一总线的多个 PGA460 器件分配地址。那每次断电再重启的话,应该是都恢复到默认值了。
另外, EEPROM是针对寄存器0x00~0x2F地址的值被保留,当断电再重启之后会自动加载到寄存器中。但对于threshold 的设置,由于它是存储在易失性SPRM中,所以如果断电再重启,这些值会被复位到初始值,也是需要重新配置的。

您好,美国工程师已回复如下:重启恢复到0 可能是只写了包含UART地址的shadow 寄存器如果重启不恢复到0的话,建议要将地址存储到EEPROM中,并且建议参考下面FAQ 5.5部分的介绍:
You most likely only wrote to the shadow register containing the UART address instead of actually storing the address to the EEPROM. Section 7.6.1 of the datasheet provides more information on how to program the EEPROM. Section 5.5 of the below FAQ also shows how you can do this with our GUI: