您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 基于VHDL的单总线从机读写控制器
设计基于VHDL的单总线从机读写控制器现代电子技术(作业)II目录前言................................................................................错误!未定义书签。第1章单总线技术..........................................................错误!未定义书签。第1.1节单总线技术简介............................................错误!未定义书签。第1.2节单总线技术的原理与硬件结构....................错误!未定义书签。第1.3节单总线技术的信号方式................................错误!未定义书签。第1.4节单总线技术的器件........................................错误!未定义书签。第2章DS18B20简介.......................................................错误!未定义书签。第2.1节DS18B20的封装与管脚................................错误!未定义书签。第2.2节DS18B20内部结构........................................错误!未定义书签。第2.3节DS1820时序及工作方式...............................错误!未定义书签。第3章控制器设计..........................................................错误!未定义书签。第3.1节控制器结构....................................................错误!未定义书签。第3.2节读写时序的实现............................................错误!未定义书签。第4章仿真与结论..........................................................错误!未定义书签。课堂感悟与致谢................................................................错误!未定义书签。现代电子技术(作业)1前言1820DSB是美国达拉斯公司生产的一种单总线1wire数字温度传感器,采用1wire总线通信协议。具有独特的单总线通信方式以及较高的测量精度,目前在实际生活中获得了广泛应用。本文介绍了1820DSB的基本原理和通信时序,并用软件模拟单总线时序,实现与1820DSB的通信。VHDL作为电子硬件设计的主流描述语言,采用层次化的设计方式,具有电路行为描述能力强、灵活、通用及运算仿真速度快等特点,能够较容易地实现时序逻辑控制。本文以数字温度传感器1820DSB为例,设计一个基于VHDL的单总线控制器,并对通信程序进行了仿真测试。本文介绍的单总线控制器,有较强的可扩展性,可以连接多种单总线器件,且微处理器可以不用被迫关闭中断,满足各类对实时性具有严格要求的应用。现代电子技术(作业)2第1章单总线技术第1.1节单总线技术简介单总线技术1WireBus是达拉斯半导体公司DALLASSEMICONDUCTOR推出的一项特有技术。它采用单根信号线,既可传输时钟,又能传输数据,而且数据可以双向传输。由于这种单总线技术线路简单,硬件开销少,所以其具有成本低廉,便于总线扩展和易于维护等优点。单总线适用于单主机系统,能够控制一个或多个从机设备。主机可以是微控制器,从机可以是单总线器件,它们之间的数据交换只通过一条信号线。当只有一个从机设备时,系统可按单节点系统操作;当有多个从机设备时,系统则按多节点系统操作。第1.2节单总线技术的原理与硬件结构单总线只有一根数据线,系统中的数据交换、控制都在这根线上完成。设备(主机或从机)通过一个漏极开路或三态端口连至该数据线,这样便可允许设备在不发送数据时释放总线,以便其他设备使用总线,其内部等效电路如图1.1所示。图1.1单总线硬件接口示意图单总线要外接一个约4.7的上拉电阻,这样当总线闲置时,状态为高电平。主机和从机之间的通信通过以下三个步骤完成:初始化1wire器件,识别1wire器件,交换数据。由于二者是主从结构,只有主机呼叫从机时,从机才能答应,因此主机访现代电子技术(作业)3问1wire器件必须严格遵循单总线命令序列:初始化、ROM命令、功能命令。如果出现序列混乱,1wire器件则不会响应主机(搜索ROM命令,报警搜索命令除外)。根据以上原理,可以画出单总线硬件接口原理图,如图1.2所示。图1.2单总线硬件接口原理图单总线端口为漏极开路,在本文中令单总线外接一个约5k的上拉电阻,这样,不管什么原因单总线的闲置状态为高电平。如果传输过程需要暂时挂起,且要求传输过程还能够继续的话,总线必须处于空闲状态。位传输之间的恢复时间没有限制,只要总线在恢复期间处于空闲状态(即高电平)即可。如果总线保持低电平超过480s则将总线上的所有器件将复位。此外,在使用寄生方式供电时,为了保证单总线器件在某些工作状态下(如温度转换期间、EEPROM写入等)具有足够的电源电流,必须在总线上提供强上拉源,如图1.2中所示的MOSFET。第1.3节单总线技术的信号方式所有单总线器件要求遵循严格的通信协议,以保证数据的完整性。1wire协议定义了几种信号类型:复位脉冲、答应脉冲、写0、写1、读0和读1时序。所有的单总线命令序列(初始化、ROM命令、功能命令)都是由这些基本的信号类型组成。这些信号,除了应答脉冲外都是由主机发出同步信号,并且发出的所有命令和数据都是字节的低位在前。初始化时序包括主机发送的复位脉冲和从机发出的应答脉冲,主机通过拉低单总线480s以上,产生Tx复位脉冲,然后主机释放总线,并进入Rx接收模式。当主机释放总线时,总线由低电平跳变为高电平时产生一上升沿,单总线器件现代电子技术(作业)4检测到这上升沿后,延时15~60s,接着单总线器件通过拉低总线60~240s产生应答脉冲。当主机接收到从机应答脉冲后,说明此时有单总线器件在线,然后主机就开始对从机进行ROM命令和功能命令的操作。在每一个写1、写0或读时序中,总线只能传输一位数据。所有的读写时序至少需要60s,且每两个独立的时序之间至少需要1s的恢复时间。读写时序均起始于主机拉低总线。在写时序中,主机拉低总线后保持至少60s的低电平则向单总线器件写0。单总线器件在主机发出读时序时才向主机传送数据,所以当主机向单总线器件发出数据命令后,必须马上产生读时序,以便单总线能传输数据。在主机发出读时序之后,单总线器件才开始在总线上发送0或1,若单总线器件发送1,则保持总线高电平;若发送0,则拉低总线。单总线器件发送数据之后,需保持有效的时间,因而,主机在读时序期间必须释放总线,并且必须在15s之内对总线状态进行采样,接收从机发送的数据。第1.4节单总线技术的器件为了区分不同的单总线器件,厂家在生产单总线器件时要刻录一个64位的二进制ROM代码,用于标明单总线器件的ID号。目前,单总线器件的主要有数字温度传感器(如1820DSB)、A/D转换器(如2450DS)门禁、身份识别器(如1990DSA)、单总线控制器(如DSIWM)等等。其中1820DSB数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式等。其型号多种多样,有8877LTM,8874LTM等等,主要根据应用场合的不同而改变其外观。封装后的1820DSB可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。由于其耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域,目前有着广泛的应用,故我们选择1820DSB芯片来进行下面的设计。现代电子技术(作业)5第2章DS18B20简介第2.1节DS18B20的封装与管脚1820DSB芯片的常见封装为92TO,如图2.1所示,也就是普通直插三极管的样子。也有其他形式的封装,如图2.2所示的SO封装以及图2.3所示的SOP封装。各种封装的图示及引脚图如图2.12.3所示。图2.1TO-92封装图2.2SO封装图2.3μSOP封装第2.2节DS18B20内部结构1820DSB主要由4部分组成:64bit光刻ROM、温度敏感器件、高速暂存存储器和温度报警触发器TH、TL。光刻ROM中的64bit序列号是出厂前被光刻好的,它可以看作是该1820DSB的地址序列码。64bit光刻ROM的排列是:开始8位28H是产品类型标号,接着的48位是该1820DSB自身的序列号,最后8位是前面56位的循环冗余校验码,可由下式得到:8541CRCXXX。光刻ROM的作用是使每一个1820DSB都各不相同,现代电子技术(作业)6这样就可以实现一根总线上挂接多个1820DSB的目的。64bit光刻ROM保存1820DSB芯片的唯一64bit的ROM编码。高速暂存存储器高速暂存存储器由9个字节组成。高速暂存存储器包含9个连续的字节,存放测得的温度的补码、TH和TL的拷贝数据、计数器余值和CRC校验等数据,其结构如图2.4所示。其中所有数据均以最低有效位在前的方式读写。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后。对应的温度计算规则为:当符号位0S时,直接将二进制位转换为十进制;当1S时,先将补码变为原码,再计算十进制值。表2是对应的一部分温度值。第九个字节是冗余检验字节。图2.4DS18B20存储器由于1820DSB芯片可以工作在寄生电源模式下工作,该模式允许1820DSB工作在无外部电源的状态。当总线为高电平时,寄生电源由单总线通过VDD引脚,此时1820DSB可以从总线得到能量,并将得到的能量储存到寄生电源储能电容中,当总线为低电平时释放能量供给器件工作使用。简单的说就是在信号线为高电平的时间周期内,把能量储存在内部的电容器中;在信号线为低电平期间,由存储在电容器内的电荷供电。所以,当1820DSB工作在寄生电源模式时,VDD引脚必须接地。1820DSB工作时信号线须接4.75.1k的上拉电阻,以保证信号线有足够的驱动能力。一个典型的1820DSB硬件原理图如图2.5所示。现代电子技术(作业)7图2.5DS18B20硬件原理图如上图所示,1820DSB芯片通过达拉斯公司的单总线协议依靠一个单线端口通讯,当全部器件经由一个三态端口或者漏极开路端口与总线连接时,控制线需要连接一个弱上拉电阻。在多只1820DSB连接时,每个1820DSB都拥有一个全球唯一的64位序列号,在这个总线系统中,微处理器依靠每个器件独有的64位片序列号辨认总线上的器件并记录总线上的器件地址,从而允许多只1820DSB同时连接在一条单线总线上。因此,可以很轻松地利用一个微处理器去控制很多分布在不同区域的1820DSB,这一特性在环境控制、探测建筑物、仪器等温度以及过程监测和控制等方面都非常有用。对于1820DSB的电路连接,除了上面所说的传统的外部电源供电时的电路连接图,1820DSB也可以工作在上文所述的寄生电源模式中。图2.6表示了1820DSB工作在寄生电源模式下的硬件原理图。这样可以使1820DSB工作在寄生电源模式下,不用额外的电源就可以实时采集位于多个地点的温度信息。图2.6DS18B20寄生电源模式硬件原理图现代电子技术(作业)8第2.3节DS1820时序及工作方式1820DSB时序如图2.72.9所示,时序波形的电平
本文标题:基于VHDL的单总线从机读写控制器
链接地址:https://www.777doc.com/doc-4036539 .html