一站式电子元器件采购平台

华强商城公众号

一站式电子元器件采购平台

元器件移动商城,随时随地采购

华强商城M站

元器件移动商城,随时随地采购

半导体行业观察第一站!

芯八哥公众号

半导体行业观察第一站!

专注电子产业链,坚持深度原创

华强微电子公众号

专注电子产业链,
坚持深度原创

电子元器件原材料采购信息平台

华强电子网公众号

电子元器件原材料采购
信息平台

与MAX78615+LMU和MAXREFDES14#隔离能量测量子系统建立UART通信

来源:analog 发布时间:2023-09-04

摘要: MAXREFDES14#为隔离能量测量提供了紧凑的解决方案,具有MAX78615+LMU。该参考设计默认配置为SPI通信。本应用笔记描述了如何配置MAX78615+LMU进行UART通信,并给出了该接口的一些示例事务。

Maxim集成的所有能量测量设备都支持三种不同的串行接口,从而在与不同的主机处理器和应用程序接口时具有最大的灵活性。但是,一次只能激活一个串行接口。在上电期间,Maxim集成能量测量设备将轮询其硬件接口引脚的状态,以确定哪个串行协议将被激活。要在器件已经开启后改变通信模式,用户必须对器件进行一次电源循环,并将新的配置逻辑应用于接口引脚。MAX78615+LMU具有两个接口引脚:引脚16的MP0/IFC1和引脚2的IFC0。表1显示了上电时哪个串行接口对应这些引脚的逻辑状态。

表1、串行接口选择逻辑
接口模式IFC1IFC0
SPIX0
UART01
我(2)C11

MAXREFDES14#系统板如图1所示。该设计在IFC0和IFC1上都具有10k欧姆下拉电阻,默认情况下选择SPI模式。为了启用UART通信而不是SPI,原理图中的R10应该上拉到V(CC)而不是下拉到GND。由于MP0在选择接口后可以作为“多用途”引脚,因此建议使用下拉引脚而不是直接连接到GND。通过这些连接,MAX78615+LMU将在上电期间配置为UART模式。UART接口的默认设置是38,400波特,8个数据位,无奇偶校验和一个停止位。


图1所示、MAXREFDES14#原理图-非隔离侧

设置SSI ID


用于通过UART进行通信的协议是简单串行接口(SSI)。SPI和UART接口之间的一个主要区别是,SPI主机通过硬件芯片选择(MAX78615+LMU上的SSB)来选择设备,而UART接口通过使用每个设备的定义的SSI ID来建立通信。MAX78615+LMU可以选择1 ~ 255的SSI ID, SSI ID的选择分两步进行。MAX78615+LMU中的DEVADDR[5:0]寄存器位用于定义SSI ID的上6位。SSI ID的最低2位由硬件引脚MP6/ADDR1和SPCK/ADDR0设置。这些引脚的状态在上电时采样,与MP0/IFC1和IFC0引脚采样以确定串行接口的方式相同。MAX78615+LMU SSI ID =设备总地址+ 1。因此,如果DEVADDR[5:0] = 000000且ADDR1 = ADDR0 = 0,则SSI ID为1。因为255是允许的最大SSI ID,所以不支持' FF '的总设备地址。MAX78615+LMU有一个默认的DEVADDR = 0。


建立沟通


一旦MAX78615+LMU在UART模式下上电并设置SSI ID,就可以通过UART接口发送数据。下拉ADDR1和ADDR0将使MAX78615+LMU的SSI ID为1。可以发送以下报文来选择设备:

表2、SSI选择“目标包”
字节。数据描述
10 xaa报头字节
20 x04字节数
3.0 xc1之前选择SSI ID目标' 1 '
40 x91校验和

校验和的计算方法是将前三个字节相加,并取和的最小字节的两个补码。如果配置正确,MAX78615+LMU将响应单字节响应0xAD,这是一个没有数据的确认。图2显示了事务的逻辑分析器捕获。


图2、SSI选择目标逻辑波形

修改SSI ID


SSI ID可以在固件和硬件中配置。DEVADDR寄存器可以通过任何串行接口写入——spi、I(2)C或UART。要通过UART写入寄存器的内容,应该发出“设置读/写地址”命令,然后首先发送LSB的两个地址字节,它们表示寄存器的字节地址。“Write 3 Bytes”命令是下一个,后面是三个数据字节,首先发送LSB。仅使用DEVADDR的最低字节来确定SSI ID;上面两个字节是未使用的。可以发送以下报文将DEVADDR寄存器设置为1。MAX78615+LMU应该在没有数据的情况下响应“0xAD”。

表3、SSI DEVADDR写报文示例
字节。数据描述
10 xaa报头字节
20 x0a字节数
3.0 xa3设置读写地址[15:0]
40 x69寄存器地址[7:0]
50 x00寄存器地址[15:8]
60 xd3写3字节命令
70 x01数据字节低
80 x00数据字节中
90 x00数据字节高
100 x6c校验和

最初,DEVADDR寄存器的新内容不会保存到flash中。为了在片上闪存中存储设备地址,必须专门调用flash访问命令。如果不这样做,将导致设备在下一个电源周期时将先前存储的值输入寄存器。命令寄存器位于字地址0处,可用于启动校准、执行软件复位或将寄存器数据存储到闪存。要访问闪存,将0xACC2写入命令寄存器的上字节。可以发送以下包来将寄存器内容存储到flash中:

表4、SSI Flash访问命令报文示例
字节。数据描述
10 xaa报头字节
20 x0a字节数
3.0 xa3设置读写地址[15:0]
40 x00命令寄存器地址[7:0]
50 x00命令寄存器地址[15:8]
60 xd3写3字节命令
70 x00数据字节低
80 xc2数据字节中
90 xac数据字节高
100 x68校验和

一旦执行了这一步,下一次上电时将用新的闪存内容加载寄存器内容。


区分DEVADDR、Device Address和SSI ID


由于使用的实现和命名约定,应该在DEVADDR、设备地址和SSI ID之间进行一些澄清。DEVADDR是存储用户可编程数据以设置设备地址的寄存器的名称。然而,实际的设备地址是DEVADDR的低六位和设备上电或复位时ADDR1和ADDR0引脚状态的组合。DEVADDR[5:0]位对应设备地址的上6位,ADDR1分配给1位,ADDR0分配给0位。一旦设置了设备地址,SSI ID就是设备地址+ 1。在上例中,如果DEVADDR[5:0] = 1, ADDR1 = ADDR0 = 0,则上电或复位后的新设备地址为4,使上例中的SSI ID为5。

总结

MAXREFDES14#隔离能量测量子系统参考设计上的MAX78615+LMU支持SPI, I(2)C和UART接口。参考设计默认配置了SPI接口。通过在上电时改变硬件引脚的逻辑状态,可以使能MAX78615+LMU上的UART接口。一旦激活,SSI协议被实现通过UART进行通信。通过硬件和固件设置唯一的地址,可以实现多台设备的并行连接。有关SSI协议的完整描述和示例代码,请参阅Maxim集成应用说明5947,“使用嵌入式测量设备的简单串行接口:78M6610+LMU, 78M6610+PSU和MAX78630+PPM”以及每个特定设备的数据表。



声明:本文观点仅代表作者本人,不代表华强商城的观点和立场。如有侵权或者其他问题,请联系本站修改或删除。

社群二维码

关注“华强商城“微信公众号

调查问卷

请问您是:

您希望看到什么内容: