攀枝花学院本科毕业设计(论文) 3 硬件设计
1-wire总线协议选择1-wire设备,主要是读取内部的64位ROM序列号。在实际的通信过程中,1-wire主机通过如下5个ROM操作命令来实现。
a 读出ROM序列号命令(代码为33H),用于读出DS18B20的64位激光ROM序列号。
b 匹配ROM序列号命令(代码为55H),用于识别(或选中)某一特定的DS18B20并进行后续操作。
c 搜索ROM序列号命令(代码为F0H),用于确定1-wire总线上的节点数,以及所有节点设备的ROM序列号。
d 跳过ROM序列号命令(代码为CCH),用于等命令发出后,系统将对所有DS18B20进行操作,通常用于启动所有DS18B20进行温度转换之前,或1-wire总线中仅有一个DS18B20时。
e 温度报警搜索命令(代码为ECH),用于识别和定位系统中超出用户设定的报警温度界限的节点设备。 2)存储操作命令
a 温度转换命令(代码为44H),用于启动DS18B20进行温度测量。温度转换命令被执行后,DS18B20进行温度测量和转换。
b 复制暂存器命令(代码为48H),用于将高速暂存器中的内容复制到DS18B20的E2PROM中,即把温度报警器触发字节复制到非易性存储器中。
c 写暂存器命令(代码为4EH),用于将数据写入DS18B20高速暂存器的地址2(TH字节)和地址3(TL字节)。当DS18B20执行写暂存器命令时,可以通过复位命令来中止写入。
d 重读E2PROM命令(代码为B8H),用于将存储在非易失性E2PROM中的内容重新读入到存储器中
e 读电源命令(代码为B4H),用于读取DS18B20的供电方式。读电源命令执行后,通过读命令,将返回其供电模式,“0”表示使用寄生电源,“1”表示使用外部电源。
f 读暂存器命令(代码为BEH),用于读取高速暂存器中的内容。从高速暂存器字节0开始,最多读取9B。在读暂存器命令执行的过程中,1-wire主机可以在任何时间发出复位命令来中止读取。
6DS18B20的温度转换操作 ○
DS18B20为9位数字温度分辨率,精度为0.50C,其温度数据格式如表3-2-5所示。DS18B20的温度与数据对应关系,如表3.7所示,所有的数据都是以最低有效位(LSB)在前的方式进行读写的。
11
攀枝花学院本科毕业设计(论文) 3 硬件设计
表3.7 DS18B20温度寄存器的数据格式
LSB MSB Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 26 Bit15 S 25 Bit14 S 24 Bit13 S 23 Bit12 S 22 Bit11 S 21 Bit10 S 20 Bit9 S 2?1 Bit8 S 表3.8 DS18B20的温度与数据对应关系
温度 +125C +25C +0.5C 0C -0.5C -25C -125C 0000000 数据(二进制数) 0000 0000 1111 1010 0000 0000 0011 0010 0000 0000 0000 0001 0000 0000 0000 0000 1111 1111 1111 1111 1111 1111 1100 1110 1111 1111 1001 0010 数据(十六进制数) 0x00FAH 0x0033H 0x0001H 0x0000H 0xFFFFH 0xFFCEH 0xFF92H DS18B20通过温度转换命令启动一次温度测量。测量结果存放在高速暂存器中,占有暂存器字节0(LSB)和字节1(MSB0)。由于DS18B20可以测量正负温度,因此,测量数据是以16位带符号位扩展的二进制补码形式存放的。1-wire主机使用读暂存器命令可以把高速暂存器中的测量结果读出。 7DS18B20的时序 ○1)复位
图3.8 复位
单片机在t0时刻发出一复位的脉冲(最短为480us的低电平的信号),接着在
t1时刻,释放总线然后进入接收的状态,当DS18B20检测到了,总线地上升沿后,会等待15-60us,接着DS18B20在t2的时刻会发出存在的脉冲(低电平将持续60-240us),如图3.8中虚线所示。 2)写操作
12
攀枝花学院本科毕业设计(论文) 3 硬件设计
图3.9 写操作
当单片机将总线t0时刻从高电平拉至低电平的时候,就产生写时间隙。见上图,从t0时刻开始 15us之内应把所要写的位及时送到总线上。DS18B20在t0后15-60us间会对总线采集样本数据,若低电平写入是0;若高电平,写入的是1。连续写2位间的间隙应大于1us。 3)读操作
图3.10 读操作
当单片机将总线t0时刻从高电平拉到低电平的时候,总线只需要保持,低电平4us之后,在t1的时刻会将总线拉高,会产生读的时的候的间隙,读的时间在t1时刻后t2时刻前有效,t2距t0为15us,也就是说,在t2的时刻前的主机必须要完成读位 并在t0后的60us~120us内要释放总线。
3.3 电磁继电器
电磁继电器具有结构简单、稳定可靠、易于掌握、维修方便、品种繁多和适用范围广等特点。电磁式继电器的结构和工作原理与接触器相似,由电磁系统、触点系统和释放弹簧等组成,是由控制电流通过线圈所产生的电磁吸力驱动磁路中的可动部分而实现触点开、闭或转换功能的继电器。由于继电器用于控制电路,所以流过其触点的电流比较小,故不需要灭弧装置。电磁继电器是由感应机构、变换机构、比较机构和执行机构组成。感应机构是线圈;变换机构是电磁系统,包括铁芯、衔铁、轭铁和线圈;比较机构是反力系统,主要包括反力弹簧和簧片;执行机构是到点接触系统(主要指触点),多为簧片结构。电磁继电器的线圈,是用很细的漆包线在铁芯上绕近万砸的螺管线圈。必须着重指出,线圈是电感性元件,电流不能突变。在电源接通的瞬间,电流不能从0跃变到40毫安,而是按指
13
攀枝花学院本科毕业设计(论文) 3 硬件设计
数规律上升,上升的快慢,取决于线圈的电感L和电阻R。继电器的触点可以分为四类。一类是动合触点,又叫常开触点。由两片簧片组成,平时不接触,继电器吸动后它们闭合。一类是静合触点,又叫常闭触点。两片簧片平时接触着,继电器吸动后分开。一类是切换触点,由三片簧片组成,平时中间一片簧片和上面的簧片接触,而和下面的簧片分开。当继电器吸动后,中间簧片和上簧片分开了,而和下簧片接触。最后一类是先合后离切换触点,也又三片簧片组成,它和一般切换触点的区别,是继电器吸动后,要保证原来分开的两簧片先接触,然后再使原来闭合的两簧片分离,以达到不间断地切换电路的目的。电磁继电器的有点有:热稳定性好,开关组比大,负载特性好,功率放大系数大,互换性强,对维修技术要求不高。缺点是:灰尘沉积在触点上,引起接触不良;断开带电感性负载的电路时,触点间会产生火花,引起烧灼或黏连;继电器线圈本身是电感原件,对电流变化反应具有一定惯性,一秒钟的动作几百次以上的电路无法应用。
图3.11 电磁继电器 要选用继电器,必须先要了解必要的条件:
1控制整个电路的电源电压以及能提供的最大电流; ○
2被控制的电路中的电压和电流; ○
3被控电路需要几组和什么形式的触点。选用继电器的时候,一般控制的电○
路的电源电压可以作为选用的依据。控制的电路应以能给继电器提供足够地工作电流,否则继电器的吸合是不稳定的。
4要查阅相关资料,确定使用条件后,要找出需要的继电器的型号以及规格○
号。如果手头已经有继电器,可以查阅相关的资料。最后考虑尺寸是否能够合适。
3.4 单片机控制系统
单片机系统包括基本的时钟电路与复位电路,单片机的工作频率一般为
11.0592MHZ,复位电路有手动复位和上电自动复位电路,RST复位端,当此引脚
14
攀枝花学院本科毕业设计(论文) 3 硬件设计
能够保持两个机器周期是高电平时,就可完成复位的操作。复位电路如图所示:
图3.12 手动复位电路 图3.13 自动复位电路
单片机时钟信号是由外部的晶振产生的,晶振连接的电路如图所示:
图3.14 单片机晶振电路
单片机AT89S52是一种低功耗、高性能的CMOS 8位微处理器,具有8K在线系统可编程的Flash 存储器。使用Atmel 公司高精度非易失性存储器制造技术,与工业的80C51 系列产品的指令和引脚完全的兼容。片上的Flash允许的程序存储器在系统可编程,亦适用于常规的编程器。在单芯片上,拥有8 位CPU 和系统可编程的Flash,使得AT89S52在众多的嵌入式控制应用的系统中得到广泛的应用。
3.4.1 AT89S52的主要性能
○ 1和MCS-51单片机的产品兼容;
28K字Flash存储器; ○
3一千次的擦写周期; ○
4全静态的操作:0Hz到33MHz; ○
5三级加密的程序字存储器; ○
6有32个I/O口; ○
7有3个16位的定时器/计数器; ○
8有8个中断源; ○
9拥有全双工UART; ○
15