基于单片机实现的温度控制器课程设计内容摘要:
初始化时序图 总线上的所有传输过程都是以初始化开始的,主机响应应答脉冲。 应答脉冲使主机知道,总线上有从机设备,且准备就绪。 主机输出低电平,保持低电平时间至少 480us,以产生复位脉冲。 接着主机释放总线,上拉电阻将总线拉高,延时 15~ 60us,并进入接受模式,以产生低电平应答脉冲,若为低电平,再延时 480us。 第 8 页 西华大学课程设计说明书 ( 2 ) 写时序 d s 1 8 b 2 0 采 样 d s 1 8 b 2 0 采 样控 制 器 写 “ 0 ” 时 间 间隙 6 0 u s T X 1 2 0 u s控 制 器 写 “ 1 ” 时 间 间隙 1 u s T R E C1 5 us1 5 us3 0 u s1 5 us1 5 us3 0 u s 1 u s 图 写时序图 当主机把数据线从逻辑高电平拉到低电平的时候,写时序开始。 有两种情况,写 1时间间隙和写 0 时间间隙,所以写时间间隙最少持续 60us,包括两个写周期至少 1us的恢复时间, I/O 线电平变低后, DS18B20 在一个 5us 到 60us 的窗口内对 I/O 线采样,如果线上时高电平,就是写 1,如果线上是低电平,就是写 0。 ( 3) 读时序 主机采样主机采样主 机 写 “ 0 ” 时 序 主 机 写 “ 1 ” 时 序 1 u s 1 u s1 5 u s 4 5 u s 1 5 u s 4 5 u s 图 读时序图 总线器件仅在主机发出读时序是,才向主机传输数据,所以,在主机发出读数据命令后,必须马上产生读时序,以便从机能够传输数据。 所有读时序至少需要 60us。 当主机把高电平拉到低电平时写时间开始,在 2 次独立的读时序之间至少需要 1us 的恢复时间。 每个时序都由主机发起,至少拉低总线 1us。 主机在读时序期间必须释放总线,并且在时序起始后的 15us 之内采样总线状态。 主机输出低电平延时 2us,然后主机转入输入模式延时 12us,然后读取总线当前电平,然后延时 50us。 第 9 页 西华大学课程设计说明书 DS18B20 温度流程 图 DS18B20 温度流程图 ROM 操作命令 表 34 ROM 操作命令 指令 约定代码 功能 读 ROM 33H 读 DS18B20ROM 中的编码 符合 ROM 55H 发出此命令之后,接着发出 64位 ROM 编码,访问单线总线与改变码相对应得 DS18B20 使之做出响应,为下一步对该 DS18B20的读写做准备 搜索 ROM 0F0H 读 ROM 跳过 ROM 0CCH 忽略 64 位 ROM 地址,直接向 DS18B20 发温度变换命令,适用于单片工作 告警搜索 ROM 0ECH 执行后,只有温度超过设定值上限或者下限的片子才做出响应 温度变换 44H 启动 DS18B20 进行温度转换,转换时间最长为 500MS,结果存入内部 9 字节 RAM 中 读暂存器 0BEH 读内部 RAM 中 9 字节的内容 写暂存器 4EH 发出向内部 RAM 的第 3, 4 字节写上、下限温度数据命令,紧跟读命令之后,是传送两字节的数据 复制暂存器 48H 将 E2PRAM 中第 3, 4 字节内容复制到 E2PRAM 中 重调 E2PRAM 0BBH 将 E2PRAM 中内容恢复到 RAM 中的第 3, 4 字节 读供电方式 0B4H 读 DS18B20 的供电模式,寄生供电时 DS18B20 发送“ 0”,外接电源供电 DS18B20 发送“ 1” 初始化 DS18B20 跳过 ROM匹配 温度变换 延时 1s 跳过 ROM匹配 读暂存器 转换成显示码 数码管显示 第 10 页 西华大学课程设计说明书 4 软件设计 高级语言是面向问题和计算过程的语言,它可通过于各种不同的计算机,用户编程时不必仔细了解所用的计算机的具体性能与指令系统,而且语句的功能强,常常一个语句已相当于很多条计算机指令,于是用高级语言编制程序的速度比较快,也便于学习和交流,而 MCS— 52 指令系统的指令长度较短,它在存储空间和执行时间方面具 有较高的效率,编成的程序占用内存单元少,执行也非常的快捷,与本系统的应用要求很适合。 而且 MCS— 52 指令系统有丰富的位操作(或称位处理)指令,可以形成一个相当完整的位操作指令子集,这是 MCS— 52 指令系统主要的优点之一。 对于要求反应灵敏与控制及时的工控、检测等实时控制系统以及要求体积小、系统小的许多“电脑化”产品,可以充分体现出汇编语言简明、整齐、执行时间短和易于使用的特点。 图 系统总流程图 系统程序主要有主程序和 LCD1602 初始化子程序及读写时序程序、 DS18B20 复位及读写时序子程序温度数字处理子程。 第 11 页 西华大学课程设计说明书 系统调试读出温度子程序 图 读出温度子程序 读出温度子程序的主要功能是读出 RAM 中的 9 字节,在读出时需进行 CRC 校验,校验有错时不进行温度数据的改写。 DS18B20 的各个命令对时序的要求特别严格,所以必须按照所要求的时序才能达到预期的目的,同时,要注意读进来的是高位在后低位在前,共有 12 位数,小数 4位,整数 7位,还有一位符号位。 第 12 页 西华大学课程设计说明书 系统调试写入子程序 图 写入子程序流程图 第 13 页 西华大学课程设计说明书 5 系统调试 硬件调试 是对温度显示器 LCD1602 进行调试,温度显示器通电后不显示温度,使用示波器对 LCD160单片机的每个管脚进行测试,对其进行分析是由于电阻值过大,调节滑动变阻器减小其阻值,液晶显示器显示温度为 0。 软件 调试是在温度大于 31℃,而报警器不报警,经检查,发现是温度写成 31000。 多写了两个 0,改正过后又发现报警器在温度大于 31℃时,只响一 次。 把 如下 程序的 =改为〉就 排出了这个异常。 void main() { init_play()。 //初始化显示 while(1) { read_temp()。 //读取温度 ds1820disp()。 //显示 if(tvalue310) Beef=0。 else Beef=1。 } }。基于单片机实现的温度控制器课程设计
相关推荐
第 10 页图 数码管引脚图 图 数码管仿真图 图 数码管实物图 键盘部分 键盘是由一组按压式或触摸式开关构成的阵列,是一种常用的输入设备。 键盘可分为编码式键盘和非编码式键盘两种。 ,这种键盘所需程序简单,但硬件电路复杂、价格昂贵通常不被单片机系统采用。 ,其硬件逻辑与按键编码不存在严格的对应关系,而要由所用的程序来决定。 非编码键盘的硬件接口简单,但是要占用较多的CPU 时间
Flash存储器结合在一起,特别是可反复擦写的 Flash存储器 可有效地降低开发成本。 9 图 311 单片机的引脚 ( 1) Vcc:供电电压。 ( 2) GND:接地。 ( 3) P0口: P9口为一个 8位漏级开路双向 I/O口,每脚可吸收 8TTL门流。 当P1口的管脚第一次写 1时,被定义为高阻输入。 P0能够用于外部程序数据存储器,它可以被定义为数据 /地址的第八位。 在
程学院 2020 届本科生毕业设计 1 1 绪 论 课题的背景 步进电机是一种将脉冲信号转换成相应的线性位移(角位移)的电磁装置,是一种纯粹的数字控制电机。 由于步进电机的精确性和良好的性能, 可以将数字脉冲控制的信号直接转换成一定数值的线性位移,并且自动的产生定位转矩,进而使转轴锁定。 当前打印机,机器人,数控机床等设备都是以步进电机为核心。 在各种控制系统及办公自动化设备等领域中
T A 89S52 数码管 第八路 . . . 第一路 蜂鸣器 启动 复位 4 2. 器件说明 ( 1) 电源电路 由于单片 机工作时需要的 +5V 电压 , 所以在设计电源电路时 , 需要一个电子元件能够提供 +5V 电压 , 此处 采用最典型的 7805 提供电压的电路 , 即在 7805的 1 脚和公共接地端 (即 2 脚 ) 之间接入 0. 47μ F 的电容 , 在公共接地端和三脚 +
程序NO = 1。 ZH EN G = 1 ?F AN = ?AS = 0 ?SS = 0 ?把 R 0 中的值改为 10 HYE SNOYE S主程序加速子程序减速子程序NONONOYE SYE S返回正转时的开始程序 10 ( 图 7) 注:电机反转流程图 把反转标志FAN 单元清零DE C R 0把 R 0 中的值送给 AR 0 = 0 EH。 把以 R 0 中值为地址其单元中的值通过 P
电路、 44 键盘电路、报警电路、压力传感器数据采集电路、 A/D 转换电路 、继电器控制等七 部分组成。 系统工作原理:将压力传感器采集的数据经模数转换后输入单片机, 单片机将得到的数据分别与键盘预先设定的上限压力 和下限压力比较 ,如果数据大于上限压力单片机控制报警并关闭电机电源,如果数据小于下限压力单片机控制报警并接通电机电源,整个过程 LCD 实时显示:上限压力值、下限压力值、实际压力值