基于ds18b20数字式温度计课程设计(编辑修改稿)内容摘要:
路,简化了电路,缩短了系统的工作时间,降低了系统的硬件成本。 该系统的总体设计思路如下:温度传感器 DS18B20 把所测得的温度发送到 AT89C51单片机上,经过 51 单片机处理,将把温度在显示电路上显示,本系统显示器用 4 位共阳LED 数码管以动态扫描法实现。 检测范围 55 摄氏度到 128 摄氏度。 按照系统设计功能的要求,确定系统由 3 个模块组 成:主控制器、测温电路和显示电路。 数字温度计总体电路结构框图如图 1 所示。 图 1 数字温度计总体电路结构框图 第 8 页 第 3 章 硬件部分设计 硬件设计 温度计电路设计原理图如图 2 所示,控制器使用单片机 AT89C51,温度传感器使用DS18B20,用 4 位共阳 LED 数码管实现温度显示。 图 2 温度计电路设计原理图 主控制器 AT89C51 是一种带 4K 字节闪烁可编程可擦除只读存储器的低电压,高性能 CMOS8位微处理器。 该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的MCS51 指令集和输出管脚相兼容。 由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片 第 9 页 中, ATMEL 的 AT89C51 是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 显示电路 显示电路采用 4 位共阳 LED 数码管。 温度传感器工作原理 DS18B20 温度传感器是美国 DALLAS 半导体公司最新推出的一种改进型智能温 度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现 9~ 12 位的数字值读数方式。 DS18B20 的性能特点如下: ●独特的单线接口方式仅需要一个端口引脚进行通信; ●多个 DS18B20 可以并联在唯一的三线上,实现多点组网功能; ●无需外部器件; ●可通过数据线供电,电压范围: ~ ; ●测温范围- 55℃ ~+ 125℃ ,在 10~ +85℃ 时精度为 177。 ℃ ●零待机功耗 ●温度以 9 或 12 位数字量读出; ●用户可定义的非易失性温度报警设置 ●报警搜索命令 识别并标志超过程序限定温度(温度报警条件)的器件 ●负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作 第 10 页 第 4 章 软件电路设计 软件设计思路 单片机应用系统的程序设计,可以采用汇编语言完成,也可以采用 C 语言实现。 汇编语言对单片机内部资源的操作直接,简洁,代码紧凑。 但是当系统规模较大时,设计人员更趋于采用 C 语言进行程序设计。 这是由于 C 语言具有良好的可读性,可移植性和基本的硬件操作能力。 采用 C51 进行单片机应用程序设计,编译器能自动完成变量的存储单元的分配,编程者可以专 注于应用程序的逻辑思想;对常用功能模块和算法编制相应的函数,可以方便地进行算法和应用程序的移植。 因此,用 C51 进行程序设计可以大大提高实际工程的开发效率。 目前, C51 的代码长度已经做到了汇编水平的 ~ 倍。 当代码长度超过 4KB 以上时, C51 比汇编语言更具有明显优势。 我们还可以借助仿真器,对应用程序的关键代码进行优化,以减少代码长度,提高运行速度。 由于单片机生产工艺的改善,单片机的运行速度和内部存储器容量都有了较大的提高,这些都为 C51 语言的使用创造了有利的条件。 综上所述,故软件语言使用 C51 语 言。 流程图 主 要包括主程序、读出温度子程序、温度转换命令子程序、计算温度子程序和现实数据刷新子程序等。 主程序 主程序的主要功能是负责温度的实时显示、读出并处理 DS18B20 的测量温度值。 温度测量每 1S 进行一次。 主流程图如下 第 11 页 读出温度值温度计算处理显示数据刷新 初次上电 1s 到。 调用显示程序 发温度转换开始命令 N Y Y 初始化 第 12 页 程序: //使用 AT89C2051 单片机, 12MHZ 晶振,用共阳 LED 数码管 //P1 口输出段码, P3 口扫描 //pragma src(d:\) include include //_nop_()。 延时函数用 define Disdata P1 //段码输出口 define discan P3 //扫描口 define uchar unsigned char define uint unsigned int sbit DQ=P3^7。 //温度输入口 sbit DIN=P1^7。 //LED 小数点控制 uint h。 //*******温度小数部分用查表 法 **********// uchar code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09}。 uchar code dis_7[12]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x00,0x40}。 /* 共阳 LED段码表 0 1 2 3 4 5 6 7 8 9 不亮 */ uchar code scan_con[4]={0xfe,0xfd,0xfb,0xf7}。 // 列扫描控制字 uchar data temp_data[2]={0x00,0x00}。 // 读出温度暂放 uchar data display[5]={0x00,0x00,0x00,0x。基于ds18b20数字式温度计课程设计(编辑修改稿)
相关推荐
换精度,测温分辨率可达 摄氏度,分辨率设定参 数以及用户设定的报警温度存储在EEPROM 中,掉电后依然保存。 被测温度用符号扩展的 16 位数字量方式串行输出;其工作电源既可以在远端引入,也可以采用寄生电源方式产生;多个 DS18B20可以并联到 3 根或 2 根线上, CPU 只需一根端口线就能与诸多 DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。
第 9页 机上。 NRF24L01P+PA+LNA 无线模块工作于免许可证的 频段,可以点对点应用,也可组成星形网络。 NRF24L01P+PA+LNA 无线模块的核心为挪威NORDIC 公司最新的高性能无线数传芯片 NRF24L01,经过国内的专业设计和改造,增加大功率 PA 和 LNA 芯片,射频开关,带通滤波器等组成了专业的全双向的射 频功放,即现在的 Nrf24l01 模块
( 1) 单片机的 P0 口 单片机中的 P0口既可以作为通用的 I/O 口进行数据的输入和输出,也可以作为单片机系统的地址 /数据线使用 ,并且 P0 口得电路中有一个多路转换电路 MUX。 在控5 制信号的作用下,多路接电路可以分别接通锁存器输出或地址 /数据线。 我出于对此的考虑,所以在 P0口在做输入输出接口时,加上 了 拉电阻,其 阻止我查资料,可以选择 千欧到 10千欧。 又因为
个 门限的电源故障报警电路,可用于检测电池电压和非 5V 的电源。 PFI 为电源故障电压监控输入,当 PFI 小于 时, PFO 变为低电平, PFO 为电源故障输出端,通过外接电阻 R1﹑ R2 可组成不同门限电压监视网络。 当电源电压低于容限电压时即视为报警输出。 监控电路还具有上电复位输出和外部手动复位输出功能,芯片内部有一个上电比较器,当电源电压上升到可靠的工 作电压后,即在
图。 表 本版对讲机共有两行的文本显示区域,位于第 15行~ 30行,第 3列~ 126列,每行可以显示15个标准 ASCII字符,两行可以显示 30个字符。 各种状态下的各个不同状态界面(等消息定义完成后再定) 短信功能人机接口 (输入法,界面) 功能配置界面(通过上位机软件或人机接口配置) 电话功能 (主叫呼叫、接听来电 、 通话状态、通话结束 ) 主叫呼叫 (相关操作和显示定义)
PIO)引脚 ● 灵活的 PLL 时钟发生器 ● 支持 ( JTAG)边界扫描接口 ● 548 引脚球栅阵列( BGA)封装( GDK 和 ZDK 支持), ● 548 引脚球栅阵列( BGA)封装( GNK 支持), ● 毕业设计(论文)报告纸 9 第三 章 Altium Designer 的使用 PROTEL 概述 PROTEL 是 ALTUUM 公司(前身为 PORTEL 公司)在 20