APP下载

单片机1-Wire总线原理与EEPROM读写方法

2018-10-15

单片机与嵌入式系统应用 2018年10期
关键词:序列号数据线时序

(珠海市光联通讯技术有限公司OMS/软件组,珠海519030)

引 言

本文的单片机型号为K20系列的MK20DN512ZVLL 10-N;1-Wire EEPROM的型号为Dallas Semiconductor 的DS28E04。Dallas Semiconductor 的1-Wire总线是一种简单的信号交换架构,通过一条线路在主机与外围器件之间进行双向通信。电源和数据通信通过单根数据线传输,使得1-Wire器件具有无与伦比的强大功能,可减少系统间的互联。

由于1-Wire器件是集成度高、功能丰富且外接简单的单总线网络器件,因而无论在自动化系统或者是通信工程及金融安全等领域应用非常广泛,又由于具有使用方便、体积小等特点,故既适合各类系统开发,又适用于智能化或小型仪器仪表的制造,因此受到设计者及制造厂商的欢迎。

1 1-Wire的工作原理

1.1 内部等效图

单总线即只有一根数据线,系统中的数据交换、控制都由这根线完成。设备(主机或从机)通过一个漏极开路或三态端口连接至该数据线,以允许设备在不发送数据时能够释放总线,而让其他设备使用总线,其内部等效电路如图1所示。

图1 内部等效图

单总线通常要求外接一个约为4.7 kΩ的上拉电阻,这样,当总线闲置时,其状态为高电平。

1.2 总线结构

主机和从机之间的通信可通过3个步骤完成,分别为初始化1-Wire器件、识别1-Wire器件和交换数据。

由于它们是主从结构,只有主机呼叫从机时,从机才能应答,因此主机访问1-Wire器件都必须严格遵循单总线命令序列,即初始化、ROM、命令功能命令。如果出现序列混乱,1-Wire器件将不响应主机(搜索ROM命令、报警搜索命令除外)。单主机多从机示意图如图2所示。

图2 单主机多从机示意图

1.3 1-Wire的特点

所有的1-Wire总线都具有一个共同的特征:每个从机器件都有一个互不重复的、工厂光刻的序列号。因此,每个器件都是唯一的,这样就允许从众多连到同一总线的器件中独立选择任何一个器件。当1 个、2 个甚至多个1-Wire器件能共用一条线路进行通信,可以采用二进制位检索法依次查找每一个器件。一旦器件的序列号已知,通过寻址该序列号就可以唯一地选出该器件进行通信。

1.4 1-Wire通信

所有通信的第一步都需要总线控制器发出一个复位信号以使总线同步,然后选择一个从机进行随后的通信,这可以通过选择所有的从机或者选择一个特定的从机(利用该器件的序列号进行选择)或者通过对半检索法找到总线上的下一个从机来实现。一旦一个从机被选中,那么在下次复位信号发出之前,所有其他从机都被挂起而忽略随后的通信。

一旦一个从机被用于总线通信,主机就能向它发出特定的器件指令,对它进行数据读写。这是因为每类器件具有不同的功能和不同的用途,而且一旦器件被选定,就有了唯一的协议。虽然每类器件具有不同的协议和特征,但其工作过程却是相同的并且遵循如图3 所示的工作流程。

图3 通信流程

2 MK20DN512ZVLL10-N单片机简述

Freescale K20 MK20DN512ZVLL10-N拥有ARM Cortex-M4内核,其主频、SRAM、FLASH、I/O数量等参数详见表1的第二行。

表1 Freescale K20参数

3 1-Wire DS28E04简述

DS28E04-100是4 096 位1-Wire EEPROM 芯片,带有7个地址输入端。DS28E04工作模式包括:标准速率模式,速率为15.3 kbps;高速速率模式,速率为111 kbps。

4 K20 MCU如何读写1-Wire DS28E04

4.1 系统要求

系统要求MCU的I/O口必须是双向的,其输出为漏极开路,且线上具有弱上拉;MCU必须能产生标准速度1-Wire通信所需的精确1 μs延时和高速通信所需要的0.25 μs延时;MCU与EEPROM通信过程中不能被中断。

4.2 两种速率对1-Wire总线操作要求

1-Wire总线有4种基本操作:复位、写1位、写0位和读位操作。表2是各个操作的简要说明以及实现这些操作所必需的步骤列表。图4为其时序波形图。表3给出了通常线路条件下1-Wire主机与1-Wire器件通信的推荐时间。如果与1-Wire主机相连的器件比较特殊或者线路条件比较特殊,则可以采用最值。请参考可下载的工作表中的系统和器件参数确定最小值和最大值。

表2 1-Wire操作

DS28E04的复位、写1、写0和读位时序图如图5所示。

本文单片机以标准模式读写DS28E04,按照图5要求的时序编写驱动DS28E04的函数。代码经过验证,无论是单个地址还是整片读写,均可以正确操作,请放心使用。

图4 1-Wire时序图

参 数速 率推荐/μsA标准6.0高速1.0B标准64.0高速7.5C标准60.0高速7.5D标准10.0高速2.5E标准9.0高速1.0F标准55.0高速7.0G标准0.0高速2.5H标准480.0高速70.0I标准70.0高速8.5J标准410.0高速40.0

图5 DS28E04读/写时序图

结 语

猜你喜欢

序列号数据线时序
基于Sentinel-2时序NDVI的麦冬识别研究
一种离线电子钱包交易的双向容错控制方法
recALL
第三方编织数据线材质更抗拉、更耐用
基于FPGA 的时序信号光纤传输系统
一种毫米波放大器时序直流电源的设计
数据线接口超声波焊接设备设计
会叫唤的数据线
DPBUS时序及其设定方法
PP助手教你辨别翻新iPhone5小白不再中招