基于铁电存储器的双机串行通信技术.

基于铁电存储器的双机串行通信技术.

ID:10451826

大小:54.00 KB

页数:4页

时间:2018-07-06

基于铁电存储器的双机串行通信技术._第1页
基于铁电存储器的双机串行通信技术._第2页
基于铁电存储器的双机串行通信技术._第3页
基于铁电存储器的双机串行通信技术._第4页
资源描述:

《基于铁电存储器的双机串行通信技术.》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于铁电存储器的双机串行通信技术..freeltran公司刚刚推出的一种新型非易失性存储器件,简称FRAM。与普通EEPROM、Flash-ROM相比,它具有不需写入时间、读写次数无限,没有分布结构可以连续写放的优点,因此具有RAM与EEPROM的双得特性,而且价格相对较低。现在大多数的单片机系统配备串行EEPROM(如24CXX、93CXX等)用来存储参数。如果用1片FRAM代替原有EEPROM,使它既能存储参数,又能作串行数据通信的缓冲器。2个(或多个)单片机与1片FRAM接成多主-从的I2C总线方式,增加几条握手线,即可得到简单高效的通信硬

2、件电路。在软件方面,只要解决好I2C多主-从的控制冲突与通信协议问题,即可实现简单、高效、可靠的通信了。3实例(双单片机结构,多功能低功耗系统)(1)硬件C78P458组成一个电池供电、可远程通信的工业流量计。78P458采用32.768kHz晶振,工作电流低,不间断工作,实时采集传感器的脉冲及温度、压力等一些模拟量;Hz晶振,由于它的工作电流较大,采用间断工作,负责流量的非线性校正、参数输入、液晶显示、与上位机通信等功能,它的UART用于远程通信。通信接口部分线路如图1所示,2个单片机共用1片I2C接口的FRAM(FM24CL16)组成二主一从

3、的I2C总线控制方式,资源与执行速度都非常有限的情况下,一个简捷有效的协议是非常重要的。下面具体介绍一种比较适用于单片机通信的协议,数据以包的形式传送。数据包结构:①包头——指示数据包的开始,有利于包完整性检测,有时可省略;②地址——数据包要传送的目标地址,若只有双机通信或硬件区分地址可以省略;③包长度——指示整个数据包的长度;④命令——指示本数据包的作用;⑤参数——需要传送的数据与参数;⑥校验——验证数据包的正确性,可以是和校验、异或校验、CRC校验等或者是它们的组合;⑦包尾——指示数据包的结尾,有利于包完整性检测,有时可省略。(4)通信流程首

4、先,要在FRAM里划分好各个区域,各个单片机的参数区、数据接收区等。然后,单片机可以向另一个单片机发送数据包,发送完毕之后通过向握手线B发送1个脉冲通知对方取走数据;接收方读取数据并进行处理后,向FRAM内发送方的数据接收区写入回传数据或通信失败标志,再向握手线B发送1个脉冲回应发送方。表3是单片机1启动1次与单片机2之间的通信的例子。如果需要单片机2发送的话,只需交换一下操作过程即可。表3步骤单片机1单片机2A线B线1总线空闲总线空闲112获取总线控制权其它操作013向FRAM内单片机2的数据接收区写入一包通信数据其它操作014向B线发送走个负

5、脉冲,通知单片机2,启动超时定时器其它操作0负脉冲5其它操作响应来自B线的脉冲,读取FRAM内数据接收区的内容(无须获取总线操作)016其它操作对数据进行处理后,向FRAM内单片机1的数据接收区写入回传数据或通信失败标志017其它操作向B线发送1个负脉冲,通知单片机10负脉冲8清超时定时器,读取数据区内容。如果失败可以做重发或其它处理;如果成功则拉高A线,释放I2C总线,1次通信工程结束其它操作119如果超时定时器溢出,说明单片机2没有响应单片机1的通知,可以做重发或故障处理4总结通过实践可知,以上方法是可行的。与其它方法相比具有发下优点:①简单

6、。占用单片机口线少(SCL、SDA、握手线A、握手线B)。②通用。软件模拟I2C主机方式,可以在任何种类的单片机之间通信。③高效。由于采用数据缓冲,可以在不同时钟频率、不同速度的单片机之间通信;读写数据时,可以I2C总线的最高速度进行,可以实现1次传送大量数据;在一个单片机向FRAM传送数据时,另一个单片机无须一一作出响应或等待,可以进行其它程序操作,提高软件工作效率。④灵活。通信硬件接口对于各个单片机是对等的,通过软件配置,每个单片机既可以根据需要主动发送通信,也可以只响应其它单片机的呼叫。⑤容易扩展。通过增加地址识别线,修改通信协议,即可做到

7、多机通信。以下是需要注意的①为了提高通信效率,握手线B最好使用中断端口,负脉冲宽度一定要满足速度较低单片机中断信号要求。如果没有中断的话应增加1条口线,用改变端口状态的方法通知对方,等待对方查询,而不是负脉冲。②向对方发送负脉冲时,应屏蔽自己的中断。③由于参数与通信缓冲区同时设在同一片FRAM内,要避免对参数部分的误操作。一个较好的解决办法是把参数存放在地址的后半部分(A2=1),在进行通信操作时,把FRAM的进行操作的。如果需要实时、频繁地读取FRAM中参数的话,请预先将参数读入RAM单元使用或另外增加专门存放参数的芯片。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。