碧波液压网 欢迎你,游客。 登录 注册

电能计量芯片ATT7022B的通信研究与实现

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  引言

  电子电能表市场需求稳中有升,这些年来电子电能表一直在围绕用户需求进行创新,为用户提供越来越多的附加值。电子电能表的创新也带动了相应电能计量芯片的发展,电能计量芯片得到越来越多的应用。珠海炬力公司的ATT7022B是一款高精度三相电能专用计量芯片,通过ATT7022B提供的同步串行SPI接口可以输出三相多功能电表所需的各项电能参数,被广泛用于三相三线和三相四线的多功能电能表的设计中。SPI接口技术是一种高速、高效率的串行接口技术,但它规定通信的双方必须工作在相同的时序模式下,而ATT7022B的SPI接口只能工作在一种时序模式下,其应用范围受到了很大的限制。文中将以ATT7022B与ARM7系列中的EP7312实现通信的方案为例,给出在两个同步串行接口时序不匹配的情况下,以一种软件模拟的方法实现通信的方案。

  1、SPI接口技术简介

  SPI是由美国摩托罗拉公司最先推出的一种同步串行传输规范,也是一种单片机外设芯片串行扩展接口。SPI接口可以用全双工方式同时发送和接收8位数据,它共使用了4条引脚。这4条引脚分别规定为:主器件输入/从器件输出线(MISO)、主器件输出/从器件输入线(MOSI)、同步串行时钟线(SCK)、从机方式选择线( )。SPI通信包括一个主器件和一个从器件。主器件产生和输出同步串行时钟信号,可以由用户软件选择确定时钟脉冲的速率、相位和空闲状态电平。图1描述了4种输出时钟的时序模式。从图中可以看出:①主器件和从器件必须在相同的时序中工作;②SCK信号在空闲期间,既可以停留在低电平上,也可以停留在高电平上;③发送数据的一方总是在每个SCK时钟的前半个周期送出数据;④接收数据的一方总是在每个SCK时钟信号的中心跳变沿上,采样数据和锁存数据[1]。

  

图1 数据时钟时序图

  2、ATT7022B与EP7312的通信设计实现

  2.1 ATT7022B与EP7312实现通信的方法研究

  ATT7022B内部集成了一个SPI串行通信接口,采用从属方式工作。对ATT7022B进行一次通信,需要先写入8位的命令字,然后通过SPI接口读出或者写入24位数据,数据传输格式都是MSB在前,LSB在后,一次完整的传输过程中,CS停留在低电平[2]。

  EP7312是一种高度集成的ARM微处理器芯片,广泛应用于嵌入式领域。EP7312提供的同步串行接口SSI1可用于SPI接口,并能作为主器件。SSI1接口不需要复杂的初始化过程就可以直接与外部设备相连,所以选用SSI1接口作为与ATT7022B通信的接口。

  由芯片资料[3]可知,EP7312的SSI1接口提供的输出时钟只有模式1和模式2两种时序(如图1),而ATT7022B只能工作在模式3的时序下(如图1)。要解决两者时序不匹配的问题,常用以下两种方式:

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论