基于51单片机的数字温度计毕业设计


    数字测温计设计

    摘:着时代进步发展单片机技术已普生活工作科研领域已成种较成熟技术工业生产中温度常控参数采单片机控参数进行控制已成流
    文介绍基AT89S51单片机测温系统描述利DS18B20开发测温系统程传感器单片机硬件连接软件编程模块系统流程进行详实分析部分电路逐进行介绍该系统灵活实现温度采集显示设定限报警温度起十分方便适合日常生活生产中温度测量该系统结构相简单抗干扰力较强适合环境温度测量着广阔应前景

    关键词:AT89S51单片机 DS18B20 温度测量












    Abstract:With the progress and development of eramicrocontroller technology has become popular in our lifein the workthe scientific research and various fieldshas become a relatively mature technologyThe temperature measurement method and device of the highlights is very importantPosed by the single chip temperature sensor and temperature measurement system can be widely applied in many fields
     
    目录
    第1章 绪 1

    12 选题目意义 2
    121选题目 2
    122选题意义 2
    第2章 数字温度计设计方案 4
    21 设计方案确立证 4
    211 温度传感器DS18B20选择 4
    212 显示器选择 5
    213 单片机STC89C52选择 5
    第3章 系统硬件电路设计 7
    31 控制器 7
    311 AT89S51介绍 7
    312 DS18B20介绍 9
    313 DS18B20注意事项 16
    32 单片机系统设计 17
    321 时钟电路 17
    322 复位电路 18
    323 系统 19
    33 DS18B20单片机接口电路设计 20
    34 显示电路设计 20
    341 数码简介 20
    第4章 系统程序设计 24
    41 系统设计容 24
    411 程序 24
    412 读出温度子程序 24
    413 温度转换命令子程序 25
    414 计算温度子程序 25
    415 温度数计算处理方法 26
    42 源程序 27
    421 DS18B20条ROM命令 27
    第5章 调试性分析 29
    51 系统调试 29
    52 性分析 30
    结 31
    社会济效益分析 32
    致谢 33
    参考文献 34
    附录1 35
    附录2 错误未定义书签
    附录3 36
    附录4 37

    第1章 绪
    11选题目意义
    111选题目
    单片机AT89S51DS18B20设计温度计够测量25 ~99℃间温度值显示LCD液晶屏温度计测量精度01℃通次设计够更加解数字温度计工作原理熟悉单片机发展应巩固学知识
    112选题意义
    着单片机技术断发展单片机日电子产品中应越越广泛温度传感器DS18B20具性稳定灵敏度高抗干扰力强方便等优点广泛应冰箱空调器粮仓等日常生活中温度测量控制
    着电子技术发展生活日趋数字化功数字温度计生活带方便支持线总线接口温度传感器简化数字温度计设计降低成
    课题研究重意义生产程中着科技断发展现代社会种信息参数准确度精确度求级增长准确迅速获参数需受制现代信息基础发展水三信息信息采集(传感器技术)信息传输(通信技术)信息处理(计算机技术)中传感器属信息技术前尖端产品尤数字温度传感器技术国领域已应非常广泛说渗透社会领域民生活环境温度息息相关

    第2章 数字温度计设计方案
    21 设计方案确立证
    基功求:
    (1)温度测量范围:20~100度
    (2)测量精度:05度
    (3)显示方式:四位显示
    (4)够运Protues仿真
    扩展功求:
    (1)做出实物调试成功
    (2)点测试
    (3)点温度时显示
    211 温度传感器DS18B20选择
    方案:水银温度计
    生活中常水银温度计作监督仪表测量温度时读数时眼睛观察观素容易造成误差水银温度计量程读数前需清分度值热惯性需等温度计达稳定状态读数较麻烦水银毒心破接触水银体伤害危险性较高
    方案二:传统测温元件
    传统测温元件热电偶热电阻热电偶热电阻测出般电压转换成应温度需较外部硬件支持缺点:硬件电路复杂软件调试复杂制作成高
    方案三:DS18B20传感器测温
    设计采DS18B20作检测元件
    DS18B20直接读出测温度值特点成低结构简单便
    设计采方案三DS18B20作温度传感器
    212 显示器选择
    数码足实现温度显示设计中采数码显示
    213 单片机AT89S51选择
    单片机选择考虑80318051系列8031没部RAM系统需量存存储数适单片机AT89S51 具低电压供电体积等特点四端口需两口满足电路系统设计需适合便携手持式产品设计系统二节电池供电选AT89S51更适合
    系统设计功求确定系统4模块组成控制器测温电路显示电路数字温度计总体设计电路结构框图图21示:



    AT89S51
    复位电路
    显示电路
    温度传感器
    时钟电路

    图21 系统框图




















    第3章 系统硬件电路设计
    31 控制器
    单片机AT89S51低功耗高性 CMOS8 位单片机片含 4kbytes 编程 Flash 读程序存储器兼容标准 8051 指令系统引脚集 Flash 程序存储器线编程(ISP)传统方法进行编程
    311 AT89S51介绍

    AT89S51特性引脚
    ●MCS51 兼容
    ●4K字节编程闪烁存储器
    ●全静态工作:0Hz24Hz
    ●三级程序存储器锁定
    ●128*8位部RAM
    ●32编程IO线
    ●两16位定时器计数器
    ●5中断源
    ●编程串行通道
    ●低功耗闲置掉电模式
    ●片振荡器时钟电路 图 32 AT89S51单片机引脚图
    AT89S51 单片机40 引脚双列直插式封装引脚排列逻辑符号图32 示引脚功简单介绍:
    ●VCC:供电电压
    ●GND:接
    ●P0口:P0口8位漏级开路双IO口脚吸收8TTL门电流P0口脚写1时定义高阻输入P0够外部程序数存储器定义数址第八位FLASH编程时P0口作原码输入口FLASH进行校验时P0输出原码时P0外部电位必须拉高
    ●P1口:P1口部提供拉电阻8位双IO口P1口缓器接收输出4TTL门电流P1口脚写入1电位部拉高作输入P1口外部拉低电时输出电流部拉缘FLASH编程校验时P1口作第八位址接收
    ●P2口:P2口部拉电阻8位双IO口P2口缓器接收输出4TTL门电流P2口写1时脚电位部拉电阻拉高作输入作输入时P2口脚电位外部拉低输出电流部拉缘P2口外部程序存储器16位址外部数存储器进行存取时P2口输出址高八位出址1时利部拉优势外部八位址数存储器进行读写时P2口输出特殊功寄存器容P2口FLASH编程校验时接收高八位址信号控制信号
    ●P3口:P3口脚8带部拉电阻双IO口接收输出4TTL门电流P3口写入1部拉高电作输入作输入时外部拉低电P3口输出电流(ILL)拉缘P3口作AT89S51特殊功口:
    P30 RXD(串行输入口)
    l P31 TXD(串行输出口)
    l P32 INT0(外部中断0)
    l P33 INT1(外部中断1)
    l P34 T0(记时器0外部输入)
    l P35 T1(记时器1外部输入)
    l P36 WR (外部数存储器写选通)
    l P37 RD (外部数存储器读选通)
    时P3口时闪烁编程编程校验接收控制信号
    ●RSTALE PROG PSENXTAL1XTAL2:等等笔者赘述详细请参相关资料
    312 DS18B20介绍
    DS18B20数字温度传感器接线方便耐磨耐碰体积方便封装形式样适种狭空间设备数字测温控制领域
    图33 DS18B20实物脚分布图
    DS18B20引脚特点
    (1)引脚功说明
    GND址信号
    DQ数输入输出引脚开漏单总线接口引脚寄生电源器件提供电源
    VDD外接供电电源输入端(寄生电源接线方式时接)
    (2)DS18B20功特点
    1采单总线技术需根IO线根线挂接DS18B20
    2DS18B20具特64位序列号序列号访问应器件
    3低压供电电源范围30~55V供电直接数线窃取电源(寄生电源方式)
    4测温范围55℃~+125℃10℃~+85℃范围误差±05℃
    户设定报警限温度
    5报警搜索命令识寻址超程序限定温度(温度报警条件)器件
    6分辨率户设置9~12位
    7D检测温度值转化数字量控制器进行数通信
    8电源极性接反时温度计正常工作
    DS18B20部结构
    (1)64位激光ROM
    DS18B20包括唯64位长ROM编码64位ROM位结构图35示开始8位单线产品系列编码(DS18B20编码10h)接着48位器件唯系列号8位开始56位CRC检验码64位ROMROM操作控制部分允许DS18B20作单线器件工作遵循单线总线系统节中详述单线协议直ROM操作协议满足DS18B20控制部分功访问
    8位检验CRC 48位序列号 8位工厂代码(10H)


    MSB LSB MSB LSB MSB LSB
    图35 64位ROM结构框图
    (3)运—报警信号
    THTL高较位应16位温度寄存器符号位温度测量结果低TL者高TH器件告警标志置位次温度测量更新标志告警标志置位DS18B20告警搜索命令做出响应允许联接许DS18B20时进行温度测量

    (4)CRC产生
    DS18B20存贮64位ROM高效字节8位CRC总线机根64位ROM前56位计算机CRC值存贮DS18B20值进行较决定ROM数否已机正确接收CRC等效项式函数:
    CRCX8+X5+X4+1 (公式31)
    DS18B20利述相项式函数产生8位CRC值值提供总线机确认数字节传送存贮DS18B20DS18B20计算CRC值总线机产生值相符合时DS18B20没电路阻住命令序列继续执行
    (5)存贮器
    DS18B20存贮器高速暂存(便笺式)RAM非易失性电擦EEPROM组成者存贮高温度低温度触发器THTL暂存存贮器助单线通信时确保数完整性数首先写入暂存存贮器里读回数校验复制暂存存贮器命令数传送非易失性EEPROM程确保更改存贮器时数完整性
    DS18B20测温原理
    图311示图中低温度系数振荡器振荡频率受温度影响产生固定频率脉信号送减法计数器1高温度系数振荡器温度变化振荡频率明显改变产生信号作减法计数器2脉输入












    预置
    斜率累加器
    低温度系数振荡器
    减法计数器1
    预置
    减0
    温度寄存器
    计数较器
    高温度系数振荡器
    减法计数器2
    减0

    图311 DS18B20测温原理图
    图中隐含着计数门计数门开时DS18B20低温度系数振荡器产生时钟脉进行计数进完成温度测量高温度系数振荡器决定计数门开启时间测量前55℃应基数分置入减法计数器温度寄存器中减法计数器温度寄存器预置55℃应基数值

    外DS18B20单线通信功分时完成读写时序重系统DS18B20种操作必须协议进行
    32 单片机系统设计
    单片机系统指单片机工作少器件构成系统单片机已包含数存储器程序存储器外部加时钟电路复位电路构成单片机系统
    321 时钟电路
    图312时钟电路PROTEUS仿真图

    图312时钟电路
    单片机允许振荡晶体12~24MHz间选择般110592MHz电容C2C3取值振荡频率输出稳定性振荡电路起振速度定影响20~100pF间选择典型值位30pF
    322 复位电路
    计算机次开始工作CPU系统中部件必须确定初值复位状态图313单片机复位电路仿真图


    图313 复位电路
    单片机RST引脚高电效单片机电瞬间C1充电RST引脚端引出正脉RST端保持两机械周期高电单片机复位单片机工作果想次复位需开关单片机重新变成复位状态
    晶体振荡频率12MHz时RC典型值C10μFR82KΩ
    323 系统
    图314单片机系统完整仿真图










    图314 单片机系统
    33 DS18B20单片机接口电路设计
    DS18B20采两种供电方式:种电源供电方式种寄生电源供电
    DS18B20处写存储器操作温度AD转换操作时总线必须强拉拉开启时间长500ms采寄生电源供电方式时VDDGND端接单线制根线发送接口必需三态
    34 显示电路设计
    341 261 LED数码技术参数

    数码条件:
    a段数点加限流电阻
    b电压:段:根发光颜色决定   数点:根发光颜色决定
    c电流:静态:总电流 80mA(段 10mA)动态:均电流 45mA     峰值电流 100mA
    图七段数码引脚图中阳极数码引脚图阴极模样4位数码引脚图数码注意说明:
    (1)数码表面手触摸手弄引角
    (2)焊接温度:260度焊接时间:5S
    (3)表面保护膜产品前撕
    262 LED数码引脚说明
    分阳极阴极两种
    单数码正面进左角脚1脚逆时针方110脚左角脚便10脚两图数字分10脚应注意3脚8脚连通两公脚
    外常四位数码部数码a~dp根数线里面4数码加a~dp12引脚图阴四位数码部结构图(引脚排列然左角脚(1脚)开始逆时针方次1~12脚图中数字应

    图218位阳数码部结构
    263数码编码说明
    4位数码编码说明45表示:
    表45 控制命令表

    P27
    P26
    P25
    P24
    P23
    P22
    P21
    P20


    e
    d
    dp
    c
    g
    b
    f
    a

    0
    0
    0
    1
    0
    1
    0
    0
    0
    28H
    1
    1
    1
    1
    0
    1
    0
    1
    1
    EBH
    2
    0
    0
    1
    1
    0
    0
    1
    0
    32H
    3
    1
    0
    1
    0
    0
    0
    1
    0
    A2H
    4
    1
    1
    1
    0
    0
    0
    0
    1
    E1H
    5
    1
    0
    1
    0
    0
    1
    0
    0
    A4H
    6
    0
    0
    1
    0
    0
    1
    0
    0
    24H
    7
    1
    1
    1
    0
    1
    0
    1
    0
    EAH
    8
    0
    0
    1
    0
    0
    0
    0
    0
    20H
    9
    1
    0
    1
    0
    0
    0
    0
    0
    A0H
    H
    0
    1
    1
    0
    0
    0
    0
    1
    61H
    L
    0
    0
    1
    1
    0
    0
    0
    1
    3DH

    1
    1
    1
    1
    0
    1
    1
    1
    F7H
    C
    0
    0
    1
    1
    1
    1
    0
    0
    3CH
    第4章 系统程序设计
    41 系统设计容
    系统程序包括程序读出温度子程序温度转换命令子程序计算温度子程序测量序列号子程序显示数刷新子程序等
    411程序
    程序功负责温度实时显示读出处理DS18B20测量温度值程序流程图图41示:
    开始
    调显示子程序
    显示前四路温度
    初始化
    读取显示序列号

    图41 程序流程图
    412读出温度子程序
    读出温度子程序功读出RAM中9字节读出时须进行CRC校验校验错时进行温度数改写
    读出温度子程序流程图图42示:
    开始
    复位DS18B20
    发跳ROM命令
    发出温度转换命令
    转换完毕
    复位DS18B20
    发匹配ROM命令
    发1DS18B20序列号
    读温度值
    存入储存器

    延时
    N
    Y

    图42 读出温度子程序流程图
    413 温度转换命令子程序
    温度转换命令子程序发温度转换开始命令采12位分辨率时转换时间约750ms程序设计中采1s显示程序延时法等转换完成温度转换命令子程序流程图图43示:
    发DS18B20复位命令
    发跳ROM命令
    发温度转换开始命令
    结束

    图43 温度转换命令子程序流程图
    414计算温度子程序
    计算温度子程序RAM中读取值进行BCD码转换运算进行温度值正负判定计算温度子程序流程图图44示:
    开始
    温度零?
    温度值取补码置标志位
    计算数位温度BCD值
    计算数位温计算数位温度BCD值
    度BCD值
    结束
    置+标志
    N
    Y

    图44 计算温度子程序流程图
    415 温度数计算处理方法
    DS18B20读取出二进制值必须转换成十进制值字符显示DS18B20转换精度9~12位提高精度采12位采12位转换精度时温度寄存器里值00625步进温度值寄存器里二进制值00625实际十进制温度值
    通观察表41发现十进制二进制间明显关系二进制高字节低半字节低字节高半字节组成字节字节二进制化十进制温度值百十位字节二进制值范围0~F转换成十进制数00625倍数(0~15倍)样需4位数码表示数部分实际应必高精度采1位数码显示数精确01℃
    表45 二进制十进制似应关系表
    数部分二进制值
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    A
    B
    C
    D
    E
    F
    十进制值
    0
    0
    1
    1
    2
    3
    3
    4
    5
    5
    6
    6
    7
    8
    8
    9
    42 源程序
    421 DS18B20条ROM命令
    (1)Read ROM[33H]条命令允许总线控制器独DS18B208位系列编码唯序列号8位CRC码总线存单DS18B20时该命令果总线止机机试图时传送信号时会发生数突(漏极开路连起形成相效果)
    (2)Match ROM[55H]条匹配ROM命令64位ROM序列总线控制器点总线定位特定DS18B2064位ROM序列完全匹配DS18B20响应存储器操作64位ROM序列匹配机等复位脉条命令总线单器件时
    (3)Skip ROM[0CCH]条命令允许总线控制器提供64位ROM编码存储器操作命令单点总线情况节省时间果总线止机Skip ROM命令着发条读命令机时传送信号总线会发生数突(漏极开路拉效果相相)
    (4)Search ROM[0F0H]系统初次启动时总线控制器知道单线总线少器件64位ROM编码搜索ROM命令允许总线控制器排法识总线机64位编码
    (5)Alarm Search[0ECH]条命令流程Search ROM相然次测温遇符合报警条件情况DS18B20会响应条命令报警条件定义温度高TH低TLDS18B20掉电报警状态直保持直次测温度值达报警条件
    (6)Write Scratchpad[4EH]条命令DS18B20暂存器THTL中写入数时刻发出复位命令中止写入
    (7)Read Scratchapad[0BEH]条命令读取暂存器容读取第字节开始直进行直第九字节(CRC)读完果想读完字节控制器时间发出复位命令中止读取
    (8)Copy Scratchpad[48H]条命令暂存器容拷贝DS18B20E²PROM存储器里温度报警触发字节存入非易失性存储器里果总线控制器条命令着发出读时间隙DS18B20忙暂存器拷贝E²PROM存储器DS18B20会输出0果拷贝结束DS18B20输出1果寄生电源总线控制器必须条命令发出立启动强拉少保持10ms
    (9)Convert T[44H]条命令启动次温度转换需数温度转换命令执行DS18B20保持等状态果总线控制器条命令着发出读时间隙DS18B20忙做时间转换DS18B20总线输出0果温度转换成功输出1果寄生电源总线控制器必须发出条命令立启动强拉保持500ms时间
    (10)Recall E²[0B8H]条命令报警触发器里值拷贝回暂存器种拷贝操作DS18B20电时动执行样器件电暂存器里马存效数条命令发出发出读数隙器件会输出温度转换忙标识:0表示忙1表示完成
    (11)Read Power Supply[0B4H]条命令发DS18B20发出读时间隙器件会返回电源模式00表示寄生电源1表示外部电源








    第5章 调试性分析
    51 系统调试
    硬件调试较简单首先检查电路焊接否正确然万表测试通电检测
    软件测试文利ProteusKEIL C51单片机点温度测量系统进行仿真设计.文结果出利Proteus进行单片机系统仿真设计极简化单片机程序目标硬件调试工作幅度节省制作电路板时间提高产品开发效率降低开发成等重作.
    硬件电路简单软件复杂代价程序编写调试程中稍粗心会出现错误包括时间延时够设置参数类型误等错误
    课题通分析种温度传感器选定DS18B20种单总线数字温度传感器通信方式较独特软件编写求较新颖特点突出构建系统优点:硬件连线简单省模拟传感器进行放AD转换等工作级联功条总线挂接传感器测量位置温度根DS18B20唯序号识传感器位置温度
    需注意 系统安装工作前应机逐DS18B20 挂接读出序列号外DS18B20 单线通信功分时完成遵循严格时隙概念 系统DS18B20 种操作必须协议进行初始化DS18B20 (发复位脉)—发ROM功命令—发存储器操作命令—处理数现场温度直接线总线数字方式传输带址减少系统电缆数提高系统稳定性抗干扰性
    通调试成型系统发现DS18B20述优点外缺点:简单硬件连接代价复杂软件时序DS18B20测量温度时候灵敏度够高温度快速变化时法迅速显示出变化通系列实验发现:DS18B20构建测温系统适环境温度监控温度变化较敏感适合应求实时性强温度跨度测温方式

    52 性分析
    性测试制作温度计已成品温度计时进行测量较DS18B20精度高误差指标限制±01℃
    外0~100℃测量范围该温度计完全适合般应场合低压供电特性做成电池供电手持电子温度计
    DS18B20温度计高低温报警远距离点测温控制等方面进行应开发实际设计中应注意问题:
    ①DS18B20工作时电流高达15mA总线挂接点数较时进行转换时考虑增加总线驱动单片机端口温度转换时导通MOSFET供电
    ②连接DS18B20总线电缆长度限制DS18B20进行长距离测温系统设计时充分考虑总线分布电容阻抗匹配等问题
    ③DS18B20测温程序设计中DS18B20发出温度转换命令程序总等DS18B20返回信号旦某DS18B20接触短线程序读该DS18B20时没返回信号程序进入死循环点进行DS18B20硬件连接软件设计时予定重视


    该基DS18B20点温度测量系统具硬件结构简单易制作价格低廉测量值精确易操作等许优点实验室条件限暂时做四点温度测量实际应中根具体情况进行更点扩展点进行控制着现代信息技术飞速发展传统工业改造逐步实现基DS18B20点温度测量系统已广泛应控制化工等诸领域总次毕业设计利完成基达毕业设计求
    文深入分析点智测温系统工作原理基础完成该系统设计调试务系统性误差达务书求达现场运行水
    总结学期文工作结
    1针现测温系统特点提出套应数字式温度传感器DS81B20组建温度测控网络新型方案该方案突出特点系统数字化快速化济实性
    2单总线基结构采ATMEL公司 AT89S51单片机总线命令实现DSl8B20总线接口提供具体电路设计
    3软件编程采模块化结构化设计易修改维护
    时间精力限制续研究应方面逐步完善
    1应软件完善温度采集方面次命令全部单总线DS18B20进行温度转换减少系统需时间
    2进步完善系统性实际验欠缺设计难免考虑周处某传感器出现障时然系统发现该测温点障更换传感器时涉序列号修改应程序修改需应时加完善
    3增加控制部分该部分进行PID算法控制提高控制精度
    总 文新型数字温度测控系统方面做定研究工作该系统初步完成温度测控方案预定目标实现数字化网络化温度测控系统工程提供种参考
    社会济效益分析
    温度测控系统产生社会济效益显易见工农业许场合温度测量控制生产起着非常重作通温度测控更提高工农业生产产量效率
    设计利数字化温度传感器作载体AT89S51单片机控制核心通测量温度值进行控制数传数字信息传位机进行进步处理实现套系统商品化技术服务稳定性设计DS18B20温度传感器价格二十元左右AT89S51单片机价格十元加元器件外围芯片端口总成完全控制百元民币套系统产生功强扩展温度传感器端口时传感器进行测量控制需添加DS18B20初始化程序设计两点测控类似程序实现程序修改较方便
    系统实现产品专业化工厂化生产应领域广泛例区供暖系统进行点温度监控实时处理DS18B20温度传感器传数温度求较严格车间进行点温度测控保持室精准温度化学反应炉安装系统化学反应精确温度条件进行等等

























    参考文献
    [1] 沙占友 集成温度传感器原理应 北京:机械工业出版社2002 84~95
    [2] 刘君华 智传感器系统 西安:西安电子科技学出版社199983~105
    [3] 沙占友 智化传感器原理应 北京:电子工业出版社200499~108
    [4] 赵负图 传感器集成电路手册 北京:化学工业出版社2002692~703
    [5] 张毅刚 MCS51单片机原理应 哈尔滨:哈尔滨工业学出版社200481~94
    [6] 李玉峰倪虹霞 MCS51系列单片机原理接口技术 北京:民邮电出版社2004187~216
    [7]胡汉单片机原理接口技术(第2版)[M]北京:清华学出版社20044975
    [8]楼然苗胡佳文李光飞刘玉良俞红杰李良单片机实验课程设计[M]杭州:浙江学出版社2010127148
    [9]刘雨刚洪炳林郝文慧基DS18B20高精度矿温度计传感器设计[J]国外电子元器件2006(12)3537
    [10]黄亚张益维温度传感器DS75LX单片机接口技术[J]国外电子元器件2007(10)4749
    [11]胡雪海单片机原理应系统设计[M]北京:电子工业出版社20045975
    [12]谈根林李慧文汪庆宝李礼贤微型计算机测量中应[M]北京:计量出版社198389105
    [13] 楼然苗李光飞
    [14]胡翔骏电路分单片机课程设计指导[M]北京:北京航空航天学出版社20074655析(第2版)[M]北京:高等教育出版社20076880
    [15] MAXIM NEW Releases Data Book volum 1998
    [16] omas CBarteeComputer Architecture and Logic Design[J]McGrawHill Inc 19919
    [17] G Jiang M Zhang X Xie S LiApplication on temperature control of DS18B2[J]Control Engineering of China 2003
    附录1电路原理图


    数字温度计原理图
    测附录2 温度计实物图


    附录3测量序列号实物图



    附录4温度计程序
    #include
    #define uchar unsigned char
    #define uint unsigned int

    sbit DQP1^0 数传输线接单片机相应引脚

    sbit smg1P2^3第位数码
    sbit smg2P2^2第二位数码
    sbit smg3P2^1第三位数码
    sbit smg4P2^0 符号位第四位数码负温时候显示负号

    unsigned char tempL0 时变量低位(符号字符变量)
    unsigned char tempH0 时变量高位
    unsigned int tempa 温度值(整型变量)

    uchar TH60 设置初始高温度
    uchar TL8 设置初始低温度

    uchar num



    uchar flag0符号位标志0正温度1负温度
    uchar xianshi0
    unsigned int temptemp1
    unsigned char code smg_du[]{0x3f0x240x5d0x750x660x730x7b0x250x7f0x770x770x7c0x390x5e0x790x710x00}

    unsigned int tt0
    void delay_50us(uint t)
    {
    uchar j
    for(t>0t)
    for(j19j>0j)
    }

    DS18B20
    void DS18_delay(int useconds)延时函数
    {
    int s
    for (s0 s }
    unsigned char Init_DS18B20(void)
    {
    unsigned char x0

    DQ0 发送复位脉
    DS18_delay(29) 延时(>480ms)
    DQ1 拉高数线
    DS18_delay(3) 等(15~60ms) 等存脉
    xDQ 获存信号(判断否器件)
    DS18_delay(25) 等时间隙结束
    return(x) 返回存信号0 器件存 1 器件
    }
    ReadOneChar(void)读字节
    {
    unsigned char i0
    unsigned char dat0
    for (i8i>0i)
    {
    DQ1
    DS18_delay(1)
    DQ0
    dat>>1复合赋值运算等效datdat>>1(datdat右移位值)
    DQ1
    if(DQ)
    dat|0x80
    DS18_delay(4)
    }
    return(dat)
    }
    WriteOneChar(unsigned char dat)参函数功写写容括号参数
    {
    unsigned char i0
    for(i8i>0i)
    {
    DQ0
    DQdat&0x01
    DS18_delay(5)
    DQ1
    dat>>1复合赋值运算等效datdat>>1(datdat右移位值)
    }
    DS18_delay(4)
    }
    unsigned int ReadTemperature(void)返回读取温度
    {
    unsigned int tt
    Init_DS18B20() 初始化调初始化函数
    WriteOneChar(0xcc) 跳读序列号操作调写函数写0xcc指令码(跳读序列号)
    WriteOneChar(0x44) 启动温度转换调写函数写0x44指令码(启动温度转换)
    DS18_delay(125) 转换需点时间延时
    Init_DS18B20() 初始化调初始化函数
    WriteOneChar(0xcc) 跳读序列号操作调写函数写0xcc指令码(跳读序列号
    WriteOneChar(0xbe) 调写函数写0xbe指令码读温度寄存器(头两值分温度低位高位)
    tempLReadOneChar() 读出温度低位LSB
    tempHReadOneChar() 读出温度高位MSB
    if(tempH>0x0f)
    {
    flag1tttempHtttt<<8tttt+tempLtt~tttttt+1tempatt*625
    }
    else {tempa((tempH*256)+tempL)*625 flag0} 温度转换扩100返回
    return(tempa)运算结果返回函数
    }
    DS18B20


    void delay(uint z)
    {
    uint xy
    for(xzx>0x)
    for(y110y>0y)
    }
    void display(void)
    {
    xianshi0
    if(flag1)显示负号
    {
    P20XFF关位选
    P00X40产生负号位
    smg40 开通第四位数码
    delay_50us(20)数码延时
    }
    if((temp100)0)
    {
    P20XFF
    P0P0smg_du[temp100]
    smg30
    delay_50us(20)
    xianshi1
    }
    if((xianshi1)||((temp10010)0))
    {
    P20XFF
    P0smg_du[temp10010]
    smg20
    delay_50us(20)
    }
    P20XFF
    P0smg_du[temp10]
    smg10
    delay_50us(20)
    P20XFF

    }
    void main()
    {
    for(num0num<80num++) 防止电显示初始值85
    {
    tempReadTemperature()
    DS18_delay(65535)
    DS18_delay(65535)
    DS18_delay(65535)
    }

    while(1)显示温度
    {

    temp1ReadTemperature()100
    DS18_delay(60)
    tempReadTemperature()100
    DS18_delay(60)
    if(temp1temp)
    display()
    }
    }
    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 8 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    基于51单片机数字温度计设计课程设计

    课 题: 基于51单片机数字温度计设计专 业: 电子信息工程班 级: 班学 号: 姓 名: ...

    3年前   
    971    0

    基于单片机的数字温度计设计课程设计

    基于单片机的数字温度计设计引言随着现代信息技术的飞速发展和传统工业改造的逐步实现.能够独立工作的温度检测和显示系统应用于诸多领域。传统的温度检测以热敏电阻为温度敏感元件。热敏电阻的成本低,但需...

    3年前   
    929    0

    基于单片机的数字温度计课程设计

    摘要 本文提出了关于MCS-51系列单片机的数字温度计的制作电路方法和编程思想。设计一直灌输着电子电路制作软硬结合,以硬件为主的理念。采用模块化的设计思想。硬件模块分为温度的感应模块、时钟...

    3年前   
    779    0

    基于AT89S51单片机无线传输系统设计毕业设计

    毕业论文(设计) 题 目: 单片机无线传输系统设计 完 成 人: ...

    4年前   
    871    0

    基于51单片机的智能窗户设计毕业设计

    基于51单片机的智能窗户设计【摘 要】 随着电子技术的发展和人民生活水平的不断提高,智能窗已经越来越多地被用到了现代智能化建筑中,提供住户一个安全、方便的环境。据统计,在未来的几年内,安装智...

    5个月前   
    113    0

    基于51单片机压力检测系统设计毕业设计

     学号: xx 大 学 毕业设计(论文) (xxxx届) 题 目 ...

    5年前   
    2717    0

    学士论文开题报告基于51单片机的数字示波器设计

    XX学院信息工程学院学士学位论文开题报告课题名称 基于51单片机的数字示波器设计 学生姓名 导师姓名 所在系部 信息工程学院 ...

    2年前   
    743    0

    基于51单片机的俄罗斯方块游戏毕业设计论文

    基于单片机的俄罗斯方块游戏设计摘 要俄罗斯方块是一款风靡全球的益智游戏。它规则简单,容易上手,且游戏过程变化无穷,使用户在游戏中得到乐趣。本文讨论了一种基于增强型单片机硬件平台和实时操作...

    3年前   
    893    0

    基于51单片机的定时闹钟设计单片机课程设计

    单片机 课 程 设 计 报 告 院系: 信息工程学院 ...

    1年前   
    487    0

    基于单片机智能小车毕业设计

    毕 业 设 计(论 文)设计(论文)题目: 基于单片机的智能小车 ...

    6个月前   
    197    0

    基于单片机的数字电压表

     基于单片机的数字电压表 摘要:本文介绍一种基于89S52单片机的一种电压测量电路,该电路采用ICL7135高精度、双积分A/D转换电路,测量范围直流0-±2000伏,使用LCD液晶模...

    5年前   
    1048    0

    基于热敏电阻数字温度计课程设计

    单片机应用系统(三级)项目设计说明书(2012/2013学年第二学期)题 目 : 基于热敏电阻的数字温度计 __专业班级 : 电子信息工程 学生姓...

    4年前   
    650    0

    基于51单片机的智能窗帘控制系统

     毕业论文(设计) 学 院: 工学院 ...

    3年前   
    1106    0

    基于AT89C51单片机的简易计算器的设计

     毕 业 设 计 题目 简易计算器的制作 ...

    5年前   
    2340    0

    基于51单片机红外迎宾及人数检测报警系统

    红外感应式门铃如今常用于店铺门口用于迎接顾客。它可依据顾客的进出状况作出有所差别的反应。主要研究了红外感应技术在我们日常生活中的应用,即感应式门铃。通过对它的研究,学会红外接近开关的原理、电路设...

    3年前   
    832    0

    基于51单片机的8路智能抢答器

    抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。

    6年前   
    2339    0

    论文:基于51单片机的智能充电器的设计

    在我们的日常生活中,手机已经变得越来越重要了。我们经常需要使用手机,打电话、发短信、上网、看电影、听歌、玩游戏等等。随着大屏幕和高主频的手机出现,锂离子电池就变得更加重要了,其锂离子电池充电器也...

    5年前   
    1658    0

    基于51单片机的数码管简易计算器

    基于51/52单片机的简易计算器制作级自动化班一、题目 利用单片机芯片STC89C52、四位八段共阳数码管及已制作好的电路板等器件设计制作一个计算器。 二、任务与要求 要求计算器能实现加减乘除...

    2年前   
    699    0

    基于51单片机的教室智能照明控制系统

    目 录绪论1 教室灯光自动控制整体描述 1.1 灯光控制总体思想 ................................................................

    3年前   
    869    0

    基于51单片机的智能家居报警系统

    随着网络和信息技术的飞速发展以及生活水平的提高,现在的社会有了很大的发展,信息化的概念已经越来越贴近我们的生活。伴随着社会的发展,家庭安全问题也被更加重视了。

    3年前   
    857    0

    文档贡献者

    文***享

    贡献于2020-12-06

    下载需要 8 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档

    该用户的其他文档