网站首页 | 经济学论文 | 证券金融 | 管理学 | 会计审计 | 法学论文 | 医药学论文 | 社会学论文 | 教育论文 | 计算机 | 艺术论文 | 哲学论文 | 财务管理 |
写论文网
  • 会计理论论文
  • 管理会计论文
  • 电算会计论文
  • 成本会计论文
  • 管理体制论文
  • 审计论文
  • 会计研究论文
  • CPA行业论文
  • 您的位置:写论文网 > 会计审计 > 会计理论论文 > 【基于铁电存储器的双机串行... 正文 2019-12-27 07:25:36

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

    相关热词搜索:

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

    基于铁电存储器的双机串行的通信技术 分析不同种类单片机之间通信的方式及难点,提出一种基铁电存储器的解 决方案与实例。包括一个可靠通信协议和流程以及此方法的优点和需要注意的方 法。

    关键词:单片机通信铁电存储器I2C总线仲裁通信协议 谁着电子技术的飞速发展,单片机也步如一个新的时代,越来越多的功能各 异的单片机为我们的设计提供了许多新的方法与思路。对于莫一些场合,比如:复 杂的后台运算及通信与高实时性前台控制系统、软件资源消耗大的系统、功能强 大的低消耗系统、加密系统等等。如果合理使用多种不同类型的单片机组合设计, 可以得到极高灵活性与性能价格比,因此,多种异型单片机系统设计渐渐成为一种 新的思路,但单片机之间的通信一直是困扰这种方法拓展的主要问题。本文将分 析比较几种单片机之间的方式、难点,并提出一种解决方案。

    1 几种常用单片机之间的通信方式 ①采用硬件UART进行异步串行通信。这是一种占用口线少,有效、可靠的 通信方式;但遗憾的是许多小型单片机没有硬件 UART,有些也只有1个UART,如 果系统还要与上位机通信的话,硬件资源是不够的。这种方法一般用于单片机有 应件UART且不需与外界进行串行通信或采用双UART单片机的场合。

    ②采用片内SPI接口或2C总线模块串行通信形式。SPI/I2C接口具有硬件简 单、软件编程容易等特点,但目前大多数单片机不具备硬件SPI/I2C模块。

    ③利用软件模拟SPI/I2C模式通信,这种方式很难模拟从机模式,通信双方 对每一位要做出响应,通信速率与软件资源的开销会形成一个很大的矛盾,处理不 好会导致系统整体性能急剧下降。这种方法只能用于通信量极少的场合。

    ④口对口并行通信,利用单片机的口线直接相连,加上1~2条握手信号线。这 种方式的特点是通信速度快,1次可以传输4位或8位,甚至更多,但需要占用大量的 口线,而且数据传递是准同步的。在一个单片机向另一个单片机传送1个字节以后, 必须等到另一个单片机的接收响应信号后才能传送下一个数据。一般用于一些硬 件口线比较富余的场合。

    ⑤利用双口RAM作为缓冲器通信。这种方式的最大特点就是通信速度快,两边都可以直接用读写存储器的指令直接操作;但这种方式需要大量的口线,而且 双口RAM的价格很高,一般只用于一些对速度有特殊要求的场合。

    从上面几种方案来看,各种方法对硬件都有很大的要求与限制,特别是难以 在功能简单的单片机上实现,因此寻求一种简单、有效的,能在各种单片机之间通 信的方法具有重要的意义。③、④方案中,双方单片机要传递的每一位或每一个 字节做出响应,通信数据量较大时会耗费大量的软件资源,这在一些实时性要求高 的地方是不允许的。针对这一问题,假设在单片机之间增加1个数据缓冲器,大批数 据先写入缓冲区,然后再让对方去取,各个单片机对数据缓冲器都是主控模式,这 样必然会大大提高通信效率。谈到数据缓冲,我们马上会想到并行RAM,但是并行 RAM需要占用大量的口线(数据线+地址线+读写线+片选线+握手线),一般在16条 以上。这是一个让人望而生畏的数字,而且会大大增加PCB面积并给布线带来一 定的困难,极少有人采用这种方式。串行接口的RAM在市场上很少见,不但难以买 到而且价格很高。移位寄存器也可以做数据缓冲器,但目前容量最大的也只128位, 因为是“先进先出”结构,所以不管传递数据多少,接收方必须移完整个寄存器,灵 活性差而且大容量的移位寄存器也是少见难买的。一种被称为“铁电存储器”芯片 的出现,给我们带来了解决方法。

    2 利用铁电存储器作为数据缓冲器的通信方式 铁电存储器是美国Ramtran公司刚刚推出的一种新型非易失性存储器件, 简称FRAM。与普通EEPROM、Flash-ROM相比,它具有不需写入时间、读写次数 无限,没有分布结构可以连续写放的优点,因此具有RAM与EEPROM的双得特性, 而且价格相对较低。现在大多数的单片机系统配备串行EEPROM(如24CXX、 93CXX等)用来存储参数。如果用1片FRAM代替原有EEPROM,使它既能存储参数, 又能作串行数据通信的缓冲器。2个(或多个)单片机与1片FRAM接成多主-从的 3 实例(双单片机结构,多功能低功耗系统) (1)硬件 W78LE52与EMC78P458组成一个电池供电、可远程通信的工业流量计。

    78P458采用32.768kHz晶振,工作电流低,不间断工作,实时采集传感器的脉冲及温 度、压力等一些模拟量;W78LE52采11.0592MHz晶振,由于它的工作电流较大,采 用间断工作,负责流量的非线性校正、参数输入、液晶显示、与上位机通信等功 能,它的UART用于远程通信。通信接口部分线路如图1所示,2个单片机共用1片I2C接口的FRAM(FM24CL16)组成二主一从的I2C总线控制方式,W78LE52的P3.5、 P3.2分别与78P458的P51、P50连接作握手信号线A与B。我们把握手线A(简称A 线)定义为总线控制、指示线,主要用于获取总线控制权与判别总线是否“忙”;握手 线B(简称B线)定义为通知线,主要用于通知对方取走数据。

    (2)I2C总线仲裁 由于我们采用的是二主一从的I2C总线方式,因此防止2个主机同时去操作 从机(防冲突)是一个非常重要的问题。带有硬件I2C模块的器件一般是这样的,器 件内部有1个总线仲裁器与总线超时定时器:当总线超时定时器超时后指示总线 空闲,这时单片机可以发出获取总线命令,总线仲裁器通过一系列操作后确认获取 总线成功或失败;超时定时器清零,以后的每一个SCL状态变化对总线所有主机的 超时定时器进行清零,以防止它溢出,指示总线正处于“忙”状态,直到一个主机对 总线控制结束不再产生SCL脉冲;超时定时器溢出,总线重新回到“空闲”状态。但 是目前大多数单片机没有配备硬件I2C模块,而且当2个主机的工作频率相差较大 时,超时定时器定时值只能设为较大的值,这样也会影响总线的使用效率。下面介 绍一种用软件模拟I2C总线仲裁的方式(I2C读写操作程序的软件模拟十分多见,这 里不再多述):用1条握手线A,流程图如图2所示,当A线高电平时,指示总线空闲;当 其中一个主机要获取总线控制权时,先查询总线是否空闲,“忙”则退出,空闲则向A 线发送一个测试序列(如:1000101011001011),在每次发送位“1”后读取的A线状态。

    如果读取状态为“0”,马上退出,说明有其它器件已经抢先获取总线;如果一个序列 读取的A线状态都正确,则说明已成功获得总线控制权,这时要拉低A线以指示总 线“忙”,直到读写高A线,使总线回到“空闲”状态。不同的主机采用不同的测试序列, 或产生随机测试序列,测试序列长度可以选得长一些,这样可以增加仲裁的可靠性。

    (3)通信协议 一个可靠通信体系,除了好的硬件电路外,通信协议也至关重要。在单片机 系统RAM资源与执行速度都非常有限的情况下,一个简捷有效的协议是非常重要 的。下面具体介绍一种比较适用于单片机通信的协议,数据以包的形式传送。数 据包结构: ①包头——指示数据包的开始,有利于包完整性检测,有时可省略;
    ②地址——数据包要传送的目标地址,若只有双机通信或硬件区分地址可 以省略;③包长度——指示整个数据包的长度;
    ④命令——指示本数据包的作用;
    ⑤参数——需要传送的数据与参数;

    • 范文大全
    • 教案
    • 优秀作文
    • 教师范文
    • 综合阅读
    • 读后感
    • 说说
    【基于铁电存储器的双机串行的通信技术】 双机串行口通信》由(写论文网)整理提供,版权归原作者、原出处所有。
    Copyright © 2019 写论文网 All Rights Reserved.