基于51单片机和Labview的家庭烟雾和温度报警系统

干货联盟原理图

外接USB转TTL线

最小系统

程序

#include

#include //包含_nop_()函数定义的头文件#include "DAAD.h"

#define PCF8591 0x90 //PCF8591 地址

#define uint8 unsigned char

#define uint16 unsigned int

sbit DQ = P2^2;

sbit Speck = P2^3;

sbit LED = P2^4;

uint8 aa,adc2,adc3;

int adc0=0,dac=65,adcx;

float adcnum = 0;

uint16 adc1=0;

unsigned char tmp; //tmp是接收到Labview的字节uint8 baifenbi;

float baifenbiFloat;

unsigned char TL; //储存暂存器的温度低位

unsigned char TH; //储存暂存器的温度高位

unsigned int TempInt;

float TempFloat;

unsigned int tempdata;

volatile unsigned int counter;

unsigned char time_DS18B20; //设置全局变量,专门用于严格延时

bit Init_DS18B20(void)

{

bit flag_DS18B20; //储存DS18B20是否存在的标志,flag=0,表示存在;flag=1,表示不存在

DQ = 1; //先将数据线拉高

for(time_DS18B20=0;time_DS18B20<2;time_DS18B20++) //略微延时约6微秒;

DQ = 0; //再将数据线从高拉低,要求保持480~960us

for(time_DS18B20=0;time_DS18B20<200;time_DS18B20++) //略微延时约600微秒; //以向DS18B20发出一持续480~960us的低电平复位脉冲DQ = 1; //释放数据线(将数据线拉高)

for(time_DS18B20=0;time_DS18B20<10;time_DS18B20++)

; //延时约30us(释放总线后需等待15~60us让DS18B20输出存在脉冲)flag_DS18B20=DQ; //让单片机检测是否输出了存在脉冲(DQ=0表示存在)

for(time_DS18B20=0;time_DS18B20<200;time_DS18B20++) //延时足够长时间,等待存在脉冲输出完毕

;

return (flag_DS18B20); //返回检测成功标志

}

unsigned char ReadOneChar( )

{

unsigned char i=0;

unsigned char dat; //储存读出的一个字节数据

for (i=0;i<8;i++)

{

DQ =1; // 先将数据线拉高

_nop_(); //等待一个机器周期

DQ = 0; //单片机从DS18B20读书据时,将数据线从高拉低即启动读时序

dat>>=1;

_nop_(); //等待一个机器周期

DQ = 1; //将数据线"人为"拉高,为单片机检测DS18B20的输出电平作准备

for(time_DS18B20=0;time_DS18B20<3;time_DS18B20++); //延时约6us,使主机在15us内采样

if(DQ==1)

dat|=0x80; //如果读到的数据是1,则将1存入dat

else

dat|=0x00;//如果读到的数据是0,则将0存入dat

//将单片机检测到的电平信号DQ存入r[i]

for(time_DS18B20=0;time_DS18B20<8;time_DS18B20++)

; //延时3us,两个读时序之间必须有大于1us的恢复期}

return(dat); //返回读出的十进制数据

}

void WriteOneChar(unsigned char dat)

{

unsigned char i=0;

for (i=0; i<8; i++)

{

DQ =1; // 先将数据线拉高

_nop_(); //等待一个机器周期

DQ=0; //将数据线从高拉低时即启动写时序

DQ=dat&0x01; //利用与运算取出要写的某位二进制数据,

//并将其送到数据线上等待DS18B20采样

for(time_DS18B20=0;time_DS18B20<10;time_DS18B20++)

;//延时约30us,DS18B20在拉低后的约15~60us期间从数据线上采样DQ=1; //释放数据线

for(time_DS18B20=0;time_DS18B20<1;time_DS18B20++)

;//延时3us,两个写时序间至少需要1us的恢复期

dat>>=1; //将dat中的各二进制位数据右移1位

}

for(time_DS18B20=0;time_DS18B20<4;time_DS18B20++)

; //稍作延时,给硬件一点反应时间

}

void ReadyReadTemp(void)

{

Init_DS18B20(); //将DS18B20初始化

WriteOneChar(0xCC); // 跳过读序号列号的操作

WriteOneChar(0x44); // 启动温度转换

for(time_DS18B20=0;time_DS18B20<100;time_DS18B20++)

; //温度转换需要一点时间

Init_DS18B20(); //将DS18B20初始化

WriteOneChar(0xCC); //跳过读序号列号的操作

WriteOneChar(0xBE); //读取温度寄存器,前两个分别是温度的低位和高位}

//初始化串行口

void csh()

{

SM0=0;

SM1=1;

REN=1;

TI=0;

RI=0;//以上是初始化scon寄存器,想当于SCON=0x50;

PCON=0;//初始化电源,为波特率不增加

TH1=0xFd;

TL1=0XFd;//设置波特率为9600

TMOD|=0X20;//设置定时器,定时器1工作于8位自动重载模式, 用于产生波特率EA=1;//开总中断

ES=1;//ES-串行中断允许控制位ES = 1 允许串行中断。

TR1=1;//启动定时器开始工作

}

void send_char(unsigned char txd)// 传送一个字符

{

SBUF = txd;

while(!TI); // 等特数据传送

TI = 0; // 清除数据传送标志

}

void Init_Timer0(void)

{

TMOD |=0x01;

TH0=0x00;

TL0=0x00;

EA=1;

ET0=1;

TR0=1;

}

main()

{

csh();

Init_Timer0();

while(1)

{

if(counter>=20)

{

counter = 0;

switch(aa)

{

case 0: ISendByte(PCF8591,0x41);

adc0 = IRcvByte(PCF8591); //ADC0 模数转换1

break;

case 1: ISendByte(PCF8591,0x42);

adc1 = IRcvByte(PCF8591); //ADC1 模数转换2

break;

case 2: ISendByte(PCF8591,0x43);

adc2 = IRcvByte(PCF8591); //ADC2 模数转换3

break;

case 3: ISendByte(PCF8591,0x40);

adc3 = IRcvByte(PCF8591); //ADC3 模数转换4

break;

case 4: DACconversion(PCF8591,0x40, dac); //DAC 数模转换

break;

}

if(++aa>4) aa=0; //控制循环

baifenbi = adc0;

ReadyReadTemp(); //读温度准备

TL=ReadOneChar(); //先读的是温度值低位

TH=ReadOneChar(); //接着读的是温度值高位

// LED = ~LED;

// Speck = ~Speck;

}

}

}

//定时10ms

void Timer0_isr(void) interrupt 1

{

TH0=(65536-10000)/256;

TL0=(65536-10000)%256;

counter++;

}

void intrr() interrupt 4 //接收中断{

基于51单片机及DS18B20温度传感器的数字温度计程序(详细注释)

基于51单片机及DS18B20温度传感器的数字温度计程序(详细注释)

电路实物图如下图所示: C 语言程序如下所示: /******************************************************************** zicreate ----------------------------- Copyright (C) https://www.360docs.net/doc/6018817927.html, -------------------------- * 程序名; 基于DS18B20的测温系统 * 功 能: 实时测量温度,超过上下限报警,报警温度可手动调整。K1是用来 * 进入上下限调节模式的,当按一下K1进入上限调节模式,再按一下进入下限 * 调节模式。在正常模式下,按一下K2进入查看上限温度模式,显示1s 左右自动 * 退出;按一下K3进入查看下限温度模式,显示1s 左右自动退出;按一下K4消除 * 按键音,再按一下启动按键音。在调节上下限温度模式下,K2是实现加1功能, * K1是实现减1功能,K3是用来设定上下限温度正负的。 * 编程者:Jason * 编程时间:2009/10/2 *********************************************************************/ #include //将AT89X52.h 头文件包含到主程序 #include //将intrins.h 头文件包含到主程序(调用其中的_nop_()空操作函数延时) #define uint unsigned int //变量类型宏定义,用uint 表示无符号整形(16位) #define uchar unsigned char //变量类型宏定义,用uchar 表示无符号字符型(8位) uchar max=0x00,min=0x00; //max 是上限报警温度,min 是下限报警温度 bit s=0; //s 是调整上下限温度时温度闪烁的标志位,s=0不显示200ms ,s=1显示1s 左右 bit s1=0; //s1标志位用于上下限查看时的显示 void display1(uint z); //声明display1()函数 #include"ds18b20.h" //将ds18b20.h 头文件包含到主程序 #include"keyscan.h" //将keyscan.h 头文件包含到主程序 #include"display.h" //将display.h 头文件包含到主程序

基于51单片机的温度警报器的设计

西安文理学院物理与机械电子工程学院课程设计任务书

目录 摘要 (3) 1 引言 (3) 1.1课题背景 (3) 1.2研究内容和意义 (5) 2 芯片介绍 (5) 2.1 DS18B20概述 (5) 2.1.1 DS18B20封装形式及引脚功能 (6) 2.1.2 DS18B20内部结构 (6) 2.1.3 DS18B20供电方式 (9) 2.1.4 DS18B20的测温原理 (10) 2.1.5 DS18B20的ROM命令 (11) 2.2 AT89C52概述 (13) 2.2.1单片机AT89C52介绍 (13) 2.2.2功能特性概述 (13) 3 系统硬件设计 (13) 3.1 单片机最小系统的设计 (13) 3.2 温度采集电路的设计 (14) 3.3 LED显示报警电路的设计 (15) 4 系统软件设计...................................................15 4.1 流程图........................................................15 4.2 温度报警器程序.................................................16 4.3 总电路图..................................................... 19 5总结 (20)

摘要 随着时代的进步和发展,温度的测试已经影响到我们的生活、工作、科研、各个领域,已经成为了一种非常重要的事情,因此设计一个温度测试的系统势在必行。 本文主要介绍了一个基于AT89C52单片机的数字温度报警器系统。详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统可以方便的实现温度的采集和报警,并可以根据需要任意上下限报警温度,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当做温度处理模块潜入其他系统中,作为其他主系统的辅助扩展。DS18B20与AT89C52结合实现最简温度报警系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。 关键词:单片机;温度检测;AT89C52;DS18B20; 1 引言 1.1课题背景 温度是工业对象中主要的被控参数之一,如冶金、机械、食品、化工各类工业生产中,广泛使用的各种加热炉、热处理炉、反应炉等,对工件的温度处理要求严格控制。随着科学技术的发展,要求温度测量的范围向深度和广度发展,以满足工业生产和科学技术的要求。 基于AT89C51单片机提高了系统的可移植性、扩展性,利于现代测控、自动化、电气技术等专业实训要求。以单片机为核心设计的温度报警器,具有安全可靠、操作简单方便、智能控制等优点。 温度对于工业生产如此重要,由此推进了温度传感器的发展。温度传感器主要经过了三个发展阶段[1]: (1)模拟集成温度传感器。该传感器是采用硅半导体集成工艺制成,因此亦称硅传感器或单片集成温度传感器。此种传感器具有功能单一(仅测量温度)、

基于51单片机的数字温度计的设计报告(王强)

西安文理学院物理与机械电子工程学院 课程设计报告 专业班级 2011级测控技术与仪器一班 课程单片机课程设计 题目基于51单片机的数字温度计的设计 学号 0703110135 学生姓名王强 指导教师陈琦 2014年 5月

西安文理学院物理与机械电子工程学院 课程设计任务书 学生姓名王强专业班级11级测控一班学号0703110135 指导教师陈琦职称讲师教研室 B0406 课程单片机课程设计 题目基于51单片机的数字温度计的设计 任务与要求 1、学会使用51单片机,并对其内部结构进行深入的了解。 2、了解DS18B20的原理以及使用方式。 3、对于共阳极、共阴极数码管有个清楚的认识和掌握。 4、测得的结果范围在-55~125度,精度为0.5。 开始日期 2014年5月12日完成日期 2014年5月25日 2014年5月28日

基于51单片机的数字温度计的设计 摘要 本设计主要介绍了一个基于AT89C51单片机的测温系统,详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统可以方便的实现温度采集和显示,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。DS18B20与AT89C51结合实现最简温度检测系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。 关键词:单片机;数字温度传感器;最简温度检测系统;

基于AT89C51单片机的温度传感器

基于AT89C51单片机的温度传感器 目录 摘要.............................................................. I ABSTRACT........................................................... I I 第一章绪论 (1) 1.1 课题背景 (1) 1.2本课题研究意义 (2) 1.3本课题的任务 (2) 1.4系统整体目标 (2) 第二章方案论证比较与选择 (3) 2.1引言 (3) 2.2方案设计 (3) 2.2.1 设计方案一 (3) 2.2.2 设计方案二 (3) 2.2.3 设计方案三 (3) 2.3方案的比较与选择 (4) 2.4方案的阐述与论证 (4) 第三章硬件设计 (6) 3.1 温度传感器 (6) 3.1.1 温度传感器选用细则 (6) 3.1.2 温度传感器DS18B20 (7) 3.2.单片机系统设计 (13)

3.3显示电路设计.................................错误!未定义书签。 3.4键盘电路设计................................错误!未定义书签。 3.5报警电路设计.................................错误!未定义书签。 3.6通信模块设计.................................错误!未定义书签。 3.6.1 RS-232接口简介..............................错误!未定义书签。 3.6.2 MAX232芯片简介.............................错误!未定义书签。 3.6.3 PC机与单片机的串行通信接口电路.............错误!未定义书签。 第四章软件设计..................................错误!未定义书签。 4.1 软件开发工具的选择..........................错误!未定义书签。 4.2系统软件设计的一般原则.......................错误!未定义书签。 4..3系统软件设计的一般步骤......................错误!未定义书签。 4.4软件实现....................................错误!未定义书签。 4.4.1系统主程序流程图.........................错误!未定义书签。 4.4.2 传感器程序设计...........................错误!未定义书签。 4.4.3 显示程序设计.............................错误!未定义书签。 4.4.4 键盘程序设计.............................错误!未定义书签。 4.4.5 报警程序设计.............................错误!未定义书签。 4.4.6 通信模块程序设计.........................错误!未定义书签。 第五章调试与小结..................................错误!未定义书签。致谢...............................................错误!未定义书签。参考文献...........................................错误!未定义书签。附录...............................................错误!未定义书签。系统电路图.......................................错误!未定义书签。系统程序.........................................错误!未定义书签。

基于51单片机设计的带有测温功能的电子时钟汇总

、 职业技能训练之 电子技术课程设计报告 学院电子与信息学院 设计题目基于51单片机设计的带有测温功能的电子时钟班级XXX 姓名XXX 学号XXX 指导教师XXX 时间2012年06月25日

目录 一、设计要求 二、课程设计的方案、目的及意义 三、硬件设计方案 四、软件设计方案 五、总结 六、参考资料

一、设计要求 用51单片机设计带温度显示的电子时钟,具体要求如下: 1、利用DS1302时钟芯片实现时钟功能模块。 2、时钟要求可以调节时间:年、月、日、时、分、秒。 3、利用LCD1602显示。 4、利用DS18B20芯片实现温度功能模块。 5、利用按键完成各项功能。 二、课程设计方案、目的及意义 1、总体方案: 用STC89C51单片机作为CPU主控制器,DS1302时钟芯片提供准确时钟信号,DS18B20温度传感器采集温度信息,三个按键进行加减调整、功能切换作用,通过LCD1602对外多功能显示。 2、具体方案: CPU控制所有模块,通过循环反复从DS1302中读取时钟信息,传送至LCD1602显示,得到基本时钟功能。当分为59,秒为56时开始,每隔一秒LED 灯点亮240毫秒,0分0秒时LED灯点亮700毫秒。从而实现整点光报时。 定时循环从DS18B20中读取温度信息,传送至LCD1602显示,得到基本温度计功能。当温度高于30度(包括30度)时,点亮红色LED灯,提醒当天为高温天气。低于0度时,点亮蓝色LED灯,提醒当天为冰冻天气。 键盘使用扫面方式,MENU键控制功能切换,完成时钟和温度间的转换。OK键控制时间调整与确定,UP、DOWN键调节时间,R、L 键选择调整对象。进入调整时,暂停DS1302数据读取,并将改变的时间数据写入DS1302,并送LCD1602显示,同时,启动LCD1602光标闪烁,确定调整对象,完成人机对话。退出调整时,停止写入数据,重新读取DS1302时钟信息。从而完善时钟功能。 3、目的及意义 可作为产品生产,作为居家的时钟显示与温度计。

基于51单片机的的温度报警器设计

1引言 (1) 1.1 单片机的应用背景 (1) 2 总体设计方案 (2) 2.1 功能简介 (2) 2.2 设计思路 (2) 2.3 芯片器材 (3) 3 硬件设计 (3) 3.1 AT89C51 (3) 3.1.1 AT98C51引脚图 (3) 3.1.2 AT89C51结构特点 (5) 3.2 温度获取 (5) (7) 3.3 时钟电路 (8) 3.4 温度显示电路 (8) 3.5报警电路 (10) (10) 4 程序设计 (10) 4.1 程序流程图 (11) 4.2 初始化子程序 (11) 4.3 读子程序 (12) 4.4 写子程序 (13) 4.5 数据处理子程序 (13) 4.6 显示子程序 (15) 4.7报警子程序 (17) 5 实验仿真 (18) (18) 6 总结 (19) 参考文献 (20) 附录 (21) 1引言 1.1 单片机的应用背景 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通信与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机,更不用说自动控制领域的机器人、智能仪表、医疗机械了。

世面上主要的单片机类型有Motorola 单片机、Microchip 单片机、东芝单片机、8051单片机、Atmel 单片机等。此次课设中用到的是ATMEL公司,下面着重介绍一下ATMEL公司的单片机。 ATMEL 公司是世界上著名的高性能低功耗非易失性存储器和数字集成电路的一流半导体制造公司。ATMEL 公司最令人注目的是它的EEPROM 电可擦除技术闪速存储器技术和质量高可靠性的生产技术。在CMOS 器件生产领域中,ATMEL 的先进设计水平优秀的生产工艺及封装技术一直处于世界的领先地位。这些技术用于单片机生产,使单片机也具有优秀的品质在结构性能和功能等方面都有明显的优势,ATMEL 公司的单片机是目前世界上一种独具特色。 而性能卓越的单片机它在计算机外部设备通讯设备自动化工业控制宇航设备仪器仪表和各种消费类产品中都有着广泛的应用前景。其生产的AT90系列是增强型RISC内载FLASH单片机,通常称为A VR系列。AT91M系列是基于ARM7TDMI 嵌入式处理器的ATMEL 16/32 微处理器系列中的一个新成员,该处理器用高密度的16 位指令集实现了高效的32 位RISC 结构且功耗很低。另外ATMAL的增强型51系列单片机目前在市场上仍然十分流行,其中AT89S51十分活跃。 当今社会,人们在追求高质量的生活,所以生活中离不开单片机,根据国家权威统计显示,目前我国的单片机容量达3亿片,且每年以大约20%的速度增长,但在世界市场我国的占有率还不到1%。沿海地区尤其像电子产品高度发达的深圳大部分单片机应用更是广泛,这种发展趋势也不断向内地辐射,因此,学好单片机有很重要的意义。 2 总体设计方案 2.1 功能简介 8位LED数码管直接显示DS18B20所测量的温度,超出-50~110℃范围时喇叭报警,并且对应的发光二极管开始闪烁,在温度范围内时喇叭停止报警并且数码管显示其温度,测量精度为0.5℃。 2.2 设计思路

基于51单片机的DS18B20数字温度计的实训报告

电子信息职业技术学院 暨国家示性软件职业技术学院 单片机实训 题目:用MCS-51单片机和 18B20实现数字温度计 姓名: 系别:网络系 专业:计算机控制技术 班级:计控 指导教师: * 伟 时间安排:2013年1月7日至 2013年1月11日

摘要 随着国民经济的发展,人们需要对各中加热炉、热处理炉、反应炉和锅炉中温度进行监测和控制。采用单片机来对他们控制不仅具有控制方便,简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。 在日常生活及工业生产过程中,经常要用到温度的检测及控制,温度是生产过程和科学实验中普遍而且重要的物理参数之一。在生产过程中,为了高效地进行生产,必须对它的主要参数,如温度、压力、流量等进行有效的控制。温度控制在生产过程中占有相当大的比例。温度测量是温度控制的基础,技术已经比较成熟。传统的测温元件有热电偶和二电阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,这些方法相对比较复杂,需要比较多的外部硬件支持。我们用一种相对比较简单的方式来测量。 我们采用美国DALLAS半导体公司继DS18B20之后推出的一种改进型智能温度传感器DS18B20作为检测元件,温度围为-55~125 oC,最高分辨率可达0.0625 oC。DS18B20可以直接读出北侧温度值,而且采用三线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的特点。 本文介绍一种基于AT89C51单片机的一种温度测量及报警电路,该电路采用DS18B20作为温度监测元件,测量围0℃-~+100℃,使用LED模块显示,能设置温度报警上下限。正文着重给出了软硬件系统的各部分电路,介绍了集成温度传感器DS18B20的原理,AT89C51单片机功能和应用。该电路设计新颖、功能强大、结构简单。 关键词:单片机,数字控制,温度计, DS18B20,AT89S51

基于51单片机DS18B20温度传感器的C语言程序和电路

基于51单片机DS18B20温度传感器的C语言程序和电路 DS18B20在外形上和三极管很像,有三只脚。电压范围为3.0 V至5.5 V 无需备用电源测量温度位温度转换为12位数字格式最大值为750毫秒用户可定义的非易失性温度报警设置应用范围包敏感系统。 下面是DS18B20的子程序,本人用过完全可行的: #include #include #define uchar unsigned char #define uint unsigned int sbit DQ=P2^0; void reset(); //DS18B20 void write_byte(uchar val); //DS18B20写命令函数 uchar read_byte(void); //DS18B20读1字节函数 void read_temp(); //温度读取函数 void work_temp(); //温度数据处理函数 uchar data temp_data[2]={0x00,0x00}; uchar data display[5]={0x00,0x00,0x00,0x00,0x00}; //对于温度显示值值 uchar code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x0数部分查表 main() { while(1) { 自己添加; } } void delay1(uint t) { for(;t>0;t--); } ///////温度控制子函数 void reset() { uchar presence=1; while(presence) { while(presence) {

基于51单片机的家用温湿度语音播报系统设计

毕业设计(论文) 题目:基于51单片机的家用温湿度语音播报系统设计 姓名 学院名 专业 指导教师 2014年月日

诚信承诺 本人__________声明,本论文及其研究工作是由本人在导师指导下独立完成,论文所利用的一切资料均符合论文著作要求,且在参考文献中列出。 签名:日期:

摘要 本系统是一个基于单片机AT89C51的语音播报系统的设计,用来测量环境温湿度,整个设计系统分为5部分:单片机控制、DHT11温湿度传感器、液晶显示、语音播报以及键盘控制电路,整个设计是以AT89C51为核心,选用DHT11温湿度传感器,LED12864液晶显示器实现。当测量温湿度超过设定的温度上下限时,启动蜂鸣器和指示灯报警。语音录放选用的集成块是ISD1420 芯片,其保真度高,录音效果好,而且经济实惠。LCD采用的是LCD12864,它具有功耗低、体积小、显示内容丰富、超薄轻巧等优点,应用越来越广泛。整个设计的重点在于编程,因为其外围电路相对比较简单,实现容易。在本论文中附带了软件实现的流程图以及部分子程序以及各种硬件电路图。 关键词:液晶显示;语音播报; ISD1420

ABSTRACT This system is a design of the speech thermometer according to the microprocessor AT89C51,which is used to measure the environment temperature, The whole design system is divided into 5 parts: A microprocessor control, temperature sensor,the LCD display, the speech report and the keyboard control circuit, at the same time ,The whole design take AT89C51 as the core, choose to single bus digital temperature sensor DS18B20, DS1302 serial clock chip, RT1602 LCD monitor realization, LCD display the current date, time, weeks and temperature. When measuring temperature over set temperature fluctuation limit, start with light alarm buzzer. Temperature display stability, and temperature measurement error acuities 1℃, plus or minus temperature the decimal part retained two significant digits. Increased Celsius temperature conversion contrast with Fahrenheit and sets up a display function beep voice automatically broadcast time temperature, manual real-time broadcast time temperature function. The speech recoding &; p layback I choose to use is the IC of ISD1420, it has high fidelity, good record effective, and economic. The LCD I choose is TC1602A, its power consume is low, it has many advantages , for example, the volume is small, the contents is abundant, super thin and agile etc, and its application is becoming more and more extensive. The whole design lies in the program, because its outer circuit is much more simple, and it can carry out more easily. In my thesis, there are flow chart and parts subprogram and various hardware circuit diagrams. Key Words: DS18B20;LCD;speech function;sounding and light alarm.

基于51单片机的数字温度报警器

摘要:随着传感器在生产生活中更加广泛的应用,一种新型的数字式温度传感器实现对温度的测试与控制得到了更快的开发。本文设计了一种基于单片机AT89C52的温度检测及报警系统。该系统将温度传感器DS18B20接到单片机的一个端口上,单片机对温度传感器进行循环采集。将采集到的温度值与设定的上下限进行比较,当超出设定范围的上下限时,通过单片机控制的报警电路就会发出报警信号,从而实现了本次课程设计的要求。该系统设计和布线简单、结构紧凑、体积小、重量轻、抗干扰能力较强、性价比高、扩展方便,在工农业等领域的温度检测中有广阔的应用前景。本次课程设计的测量范围为0℃--99℃,测量误差为±2℃。 关键字:温度传感器、单片机、报警、数码管显示 一、概述 本次设计可以应用到许多我们用过的软件设计,将前面所学的知识融汇在一起实现温度监测及其报警的功能,来提醒农民当前大棚内温度是否适合农作物的生长。 电子技术是在十九世纪末、二十世纪初开始发展起来的新兴技术,在二十世纪发展最迅速,应用最广泛,成为近代科学技术发展的一个重要标志。 随着电子技术的飞速发展,电子技术在日常生活中得到了广泛的应用,各类转换电路的不断推出以及电子产品的快速更新,电子技术已成为世界发展和人们生活中必不可少的工具。 本次课设应用Protues软件设计一个温度检测报警系统,用温度传感器DS18B20采集大棚内的温度,当大棚内的温度高于30℃。或低于15℃。时,电路发出报警信号并显示当前温度,达到提醒农民的效果。 本次课设要求设计一个温度监测报警显示电路,要求温度范围:0℃--99℃;测量误差为±2℃;报警下限温度为:15℃;报警上限温度为:30℃。 二、方案论证 设计一个用于温室大棚温度监测系统。大棚农作物生长时,其温度不能太低,也不能太高,太低或太高均不适合农作物生长。该系统可实时测量、显示大棚的温度,当大棚温度超过农作物生长的温度范围时,报警提醒农民。 方案一: 方案一原理框图如图1所示。 图1 大棚温度检测系统的原理框图 方案二: 方案二原理框图如图2所示。

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

单片机课程设计报告 数字温度计

1 设计要求 ■基本范围-50℃-110℃ ■精度误差小于0.5℃ ■LED数码直读显示 2 扩展功能 ■实现语音报数 ■可以任意设定温度的上下限报警功能

数字温度计 摘要:随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为一种比较成熟的技术,本文将介绍一种基于单片机控制的数字温度计,本温度计属于多功能温度计,可以设置上下报警温度,当温度不在设置范围内时,可以报警。 关键词:单片机,数字控制,温度计,DS18B20,A T89S51 1 引言 随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。 本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单片机A T89S51,测温传感器使用DS18B20,用3位共阳极LED数码管以串口传送数据,实现温度显示,能准确达到以上要求。 2 总体设计方案 2.1数字温度计设计方案论证 2.1.1方案一 由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。 2.1.2 方案二 进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。 从以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故采用了方案二。 2.2方案二的总体设计框图 温度计电路设计总体设计方框图如图1所示,控制器采用单片机AT89S51,温度传感器采用DS18B20,用3位LED数码管以串口传送数据实现温度显示。 图1总体设计方框图 2.2.1 主控制器

基于51单片机自行车测速系统设计

摘要 随着居民生活水平的不断提高,人们对于生活质量的要求也日益增加,尤其是对健身的要求。自行车不再仅仅是普通的运输、代步的工具,而是成为人们娱乐、休闲、锻炼的首选。自行车的速度里程表能够满足人们最基本的需求,让人们能清楚地知道当前的速度、里程等物理量。而对于自行车运动员来说,最为关心的莫过于一段时间内的训练效果。因为教练要根据一段时间内运动员的训练效果进行评估,从而进行适当的调整已使运动员达到最佳的状态。因此爱好自行车运动的人十分学要一款能测速的装置,以知道自己的运动情况。并根据外界条件,如温度,风速等进行适当的调节,已达到最佳运动的效果。 关键词:单片机、LED显示、里程/速度、霍尔元件

第一章系统总方案分析与设计 1.1 课题主要任务及内容 本课题主要任务是利用霍尔元件、单片机等部件设计一个可用LED数码管实时显示里程和速度的自行车的速度里程表。本文主要介绍了自行车的速度里程表的设计思想、电路原理、方案论证以及元件的选择等内容,整体上分为硬件部分设计和软件部分设计。 本文首先扼要对该课题的任务进行方案论证,包括硬件方案和软件方案的设计;继而具体介绍了自行车的速度里程表的硬件设计,包括传感器的选择、单片机的选择、显示电路的设计;然后阐述了该自行车的速度里程表的软件设计,包括数据处理子程序的设计、显示子程序的设计;最后对本次设计进行了系统的总结。 具体的硬件电路包括AT89C52单片机、霍尔元件以及LED显示电路等。 软件设计包括:中断子程序设计,里程计算子程序设计,显示子程序设计。软件采用汇编语言编写,软件设计的思想主要是自顶向下,模块化设计,各个子模块逐一设计。 1.2 任务分析与实现 本设计的任务是:以通用AT89C52单片机为处理核心,用传感器将车轮的转数转换为电脉冲,进行处理后送入单片机。里程及速度的测量,是经过AT89C52的定时/计数器测出总的脉冲数和每转一圈的时间,再经过单片机的计算得出,其结果通过LED显示器显示出来。 本系统总体思路如下:假定轮圈的周长为L,在轮圈上安装m个永久磁铁,则测得的里程值最大误差为L/m。经综合分析,本设计中取m=1。当轮子每转一圈,通过开关型霍尔元件传感器采集到一个脉冲信号,并从引脚P3.2中断0端输入,传感器每获取一个脉冲信号即对系统提供一次计数中断。每次中断代表车轮转动一圈,中断数n和周长L的乘积为里程值。计数器T1计算每转一圈所用的时间t,就可以计算出即时速度v。当里程键按下时,里程指示灯亮,LED切换显示当前里程;当速度键按下时,速度指示灯亮,LED切换显示当前速度。 要求达到的各项指标及实现方法如下: 1. 利用霍尔传感器产生里程数的脉冲信号。 2. 对脉冲信号进行计数。 实现:利用单片机自带的计数器T1对霍尔传感器脉冲信号进行计数。 3. 对数据进行处理,要求用LED显示里程总数和即时速度。 实现:利用软件编程,对数据进行处理得到需要的数值。 最终实现目标:自行车的速度里程表具有里程、速度测试与显示功能,采用单片机作控制,显示电路可显示里程及速度。

单片机课程设计报告——温度报警器

单片机原理与应用 课程设计报告 { 课程设计名称:温度报警器设计 专业班级: 13计转本 | 学生姓名:张朝柱肖娜 学号: 140 113 指导教师:高玉芹 设计时间: 2016-11—2017-12 成绩: 信电工程学院

摘要 2009年6月14日随着时代的进步和发展,单片机技术已经普及到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术。 本文主要介绍了一个基于AT89C52单片机的测温系统,详细描述了利用液晶显示器件传感器DS18B20开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,特别是数字温度传感DS18B20的数据采集过程。对各部分的电路也一一进行了介绍,该系统可以方便的实现实现温度采集和显示,并可根据需要任意设定上下限报警温度,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。DS18B20与AT89C52结合实现最简温度检测系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。 关键词:单片机AT89C51;DS18B20温度传感器;液晶显示LCD1602。

目录 1绪论 (1) 温度报警器简介 (1) 温度报警器的背景与研究意义 (1) 温度报警器的现状及发展趋势 (1) 2 系统整体方案设计 (2) 设计目标 (2) 系统的基本方案 (2) 系统方案选择 (2) 各模块方案选择 (3) 主要元器件介绍 (3) STC89C52的简介 (3) DS18B20的简介 (4) 3 系统的硬件设计与实现 (5) 系统硬件概述 (5) 主要单元电路的设计 (5) 键盘扫描模块电路的设计 (5) 单片机控制模块电路的设计 (5) 报警模块电路的设计 (6) LCD1602显示模块电路的设计 (7) 4 系统的软件设计与实现 (8) KEIL软件介绍 (8) 系统程序设计流程图 (8) 主程序软件设计 (8) 按键软件设计 (9) 密码设置软件设计 (9) 开锁软件设计 (10) 5 系统仿真设计 (12) Proteus 软件介绍 (12) Proteus 仿真图 (12) 硬件调试 (13) 调试结果 (13) 6 结论 (14)

基于单片机的温度报警器解读

基于STC89C51的温度报警器设计 一.设计背景 温度是一个十分重要的物理量,对它的测量与控制有十分重要的意义。随着现代工农业技术的发展及人们对生活环境要求的提高,人们也迫切需要检测与控制温度。温度控制电路在工农业生产中有着广泛的应用。日常生活中也可以见到,如电冰箱的自动制冷,空调器的自动控制等等。在工业生产中,温度、压力、流量和液位是四种最常见的过程变量。其中,温度是一个非常重要的过程变量。例如:在冶金工业、化工工业、电力工业、机械加工和食品加工等许多领域,都需要对各种加热炉、热处理炉、反应炉和锅炉的温度进行监控。然而,用常规的监控方法,潜力是有限的,难以满足较高的性能要求。采用单片机来对它们进行监控不仅具有监控方便、简单和灵活性大的优点,而且可以大幅度提高被测温度的技术指标,从而能够大大提高产品的质量和数量。因此,单片机对温度的监控问题是一个工业生产中经常会遇到的监控问题。现代社会是信息化的社会,随着安全化程度的日益提高,而通过温度报警器及时报警,避免不必要的损失。 二.设计功能介绍 此次要设计的是一个温度报警器,DS18B20采集温度数据送到单片机,单片机根据收到的数据判断是否超过报警界限,如果超过做出报警响应,报警界限可调。12864显示单片机收到的数据。 三.主要器件简介 MCS-51简介 8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。 89C51单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明: ·中央处理器: 中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。 .数据存储器(RAM) 8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。

基于单片机的温度传感器的设计说明

基于单片机的温度传感器 的设计 目录 第一章绪论-------------------------------------------------------- ---2 1.1 课题简介 ----------------------------------------------------------------- 2 1.2 设计目的 ----------------------------------------------------------------- 3 1.3 设计任务 ----------------------------------------------------------------- 3 第二章设计容与所用器件 --------------------------------------------- 4第三章硬件系统设计 -------------------------------------------------- 4 3.1单片机的选择------------------------------------------------------------- 4 3.2温度传感器介绍 ---------------------------------------------------------- 5 3.3温度传感器与单片机的连接---------------------------------------------- 8 3.4单片机与报警电路-------------------------------------------------------- 9 3.5电源电路----------------------------------------------------------------- 10 3.6显示电路----------------------------------------------------------------- 10 3.7复位电路----------------------------------------------------------------- 11 第四章软件设计 ----------------------------------------------------- 12 4.1 读取数据流程图--------------------------------------------------------- 12 4.2 温度数据处理程序的流程图 -------------------------------------------- 13 4.3程序源代码 -------------------------------------------------------------- 14

基于单片机的气象监测仪毕业设计

. .. . 基于单片机的气象监测仪 毕业设计 目录 摘要 (Ⅰ) ABSTRACT (Ⅱ) 绪论 (1) 1 结构设计与方案选择 (2) 1.1 基于Internet的现代传动远程控制系统结构 (2) 1.2 方案选择 (2) 1.2.1 远程通信方案的选择 (2) 1.2.2 变频器与计算机串行通信方案的选择 (2) 2 硬件设计 (3) 2.1 单机控制 (3) 2.1.1 硬件配置 (3) 2.1.2 控制框图 (3) 2.2 多机控制 (3) 2.3 远程控制 (3) …… 结束语 (25) 致谢 (26) 参考文献 (27) 附录1 变频器参数设定程序代码 (28) 附录2 VC程序源代码 (29)

第一章地面自动气象监测仪的现状 目前中国气象局开展的地面气象监测要素包括云、能见度、天气现象、气压、空气温度、空气湿度、风速、风向、降水、雪深、蒸发、辐射、日照、地温、冻土、电线积水和地面状态。能实现仪器自动监测的气象要素有能见度、气压、空气温度湿度、风向、风速、降水、蒸发、辐射、日照和地温,其他气象要素监测只能通过人工观测实现。本研究仅对能实现地面自动气象监测的仪器进行研究。 1.1 国地面气象监测仪现状 我国地面气象监测仪主要有常规地面人工检测仪器和地面自动气象站两大类。在功能齐全和性能稳定方面,与国际上同类产品基本一致,都能满足气象要素检测的要求,国研发出的仪器具有明显的价格优势,技术支持和售后服务良好,维护成本低。目前气象系统使用常规地面气象仪器有EN2型测风数据处理仪,SJ1型虹吸式雨量计,DWJ1型自动温度计,DHJ1型自动湿度计,DYJ1自动气压计和最新研制出并投入气象业务使用的自动气象站等。气象仪器的趋势都是往数字化、智能化、集成化发展。 1.1.1 EN2型测风数据处理仪 EN2型测风数据处理仪用于气象台站观测记录地面风,由微型打印机、液晶显示器、键盘、风速风向传感器接口、上位机接口、可选的外接显示器接口、微型处理板和电源等部件组成。 主要特点:1、风速测量围大,风向测量精度高,尤其适合沿海、高山等高强风地区。2、部数据存贮器可存贮2个月的气表1容及2天的风向风速连续数据,即使打印机损坏,数据记录仍可查血。3、具有4个报警风速点。4、增加了大风组报、加密报,可选择打印次数。5、装有串行通讯接口,配有本公司开发的微机专用数据处理软件,仪器使用更方便,操作更直观。 主要功能:1、自动打印整点前十分钟平均风速及最多风向;并在8个整点前6分钟自动打印二分钟平均风速和风向;二十点自动打印全天4次二钟风速合计及平均值;全天24个整点十分钟风速合计及平均值;全天最大风速风向及发生时间;全天极大风速风向及发生时间。2、自动进行4个风速点(自设、20m/s、24m/s、28m/s)的报警,定时自动打印大风组报、加密报。当风速大于报警风速时自动发出报警音响信号,并打印出报警标志、风向风速和时间;当风速小于报警风速的连续时间达到规定值时,打印出报警解除标志及解除时刻的风向风速和时间,并发出音响信号。3、显示和设置时间,显示和设置大风报警风速,显示瞬时风向风速、当前二分钟、十分钟平均风速和最大风向;当天最大风速风向和发生时间,当天的极大风速风向和发生时间,当天整点十分钟平均风速合计。存贮2个月的气表容及2天的连续风向风速数据。可随时显示2个月任一天任意整点的风向风速,任一天最大风速风向及发生时间,极大风速风速及发生时间。4、可将EN-2数据通过接口输入微机,进行实时观测或由计算机处理成日报表、月报表、风向频率玫瑰图、风速频率图、连续曲线等。打印输出的月报表与气表1

相关文档
最新文档