(19)51单片机温度传感器DS18B20

(19)51单片机

温度传感器DS18B20

GL9型51单片机学习教程

(19)51单片机温度传感器DS18B20温度传感器DS18B20

(19)51单片机温度传感器DS18B20 DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。其一个工作周期可分为两个部分,即温度检测和数据处理。在讲解其工作流程之

前我们有必要了解18B20的内部存储器资源。18B20共有2种形态的存储器资源,它们分别是:

(1)ROM只读存储器,用于存放DS18B20 ID编码,其前8位是单线系列编码(DS18B20的编码是19H),后面48位是芯片唯一的序列号,最后8位是以上56的位的CRC码(冗余校验)。数据在出产时设置不由用户更改。

DS18B20共64位ROM。

(19)51单片机温度传感器DS18B20

(2)RAM数据暂存器,用于内部计算

和数据存取,数据在掉电后丢失,

DS18B20共9个字节RAM,每个字节

为8位。第1、2个字节是温度转换后的

数据值信息,第3、4个字节是用

户EEPROM(常用于温度报警值储存)

的镜像。在上电复位时其值将被刷新。

第5个字节则是用户第3个EEPROM的

镜像。字节6,7和8是保留供内部使用的

设备,不能被覆盖,当被读到时,这些位

将返回1。第9个字节为前8个字节CRC

码。

EEPROM非易失性记忆体,用于存放

长期需要保存的数据

(19)51单片机温度传感器DS18B20

(19)51单片机温度传感器DS18B20 DS18B20需要严格的单总线协议以确保数据的完整性。协议包括中单总线信类型:复位脉冲、存在脉冲、写0、写1、读0和读1。所有这些信号,除存在脉冲外,都是由总线控制器发出的。

复位序列:和DS18B20间的任何通讯都需要以初始化序列开始

一个复位脉冲跟着一个存在脉冲表明DS18B20已经准备好发送和接收数据。在初始化序列期间,总线控制器拉低总线并保持480us以发出(TX)一个复位脉冲,然后释放总线,进入接收状态(RX)。单总线由上拉电阻拉到高电平。当18B20探测到I/O引脚上的上升沿后,等待15-60us,然后发出一个由60-240us低电平信号构成的存在脉冲。

(19)51单片机温度传感器DS18B20读/写时序:DS18B20的数据读写是通过时序处理位来确认信息交换的。

写时序由两种写时序: 写1时序和写0时序。总线控制器通过写1时序写逻辑1到DS18B20,写0时序写逻辑0到DS18B20。所有写时序必须最少持续60us,包括两个写周期之间至少1us的恢复时间。当总线控制器把数据线从逻辑高电平拉到低电平的时候,写时序开始(见下图)。总线控制器要生产一个写1时序,必须把数据线拉到低电平然后释放,在写时序开始后的15us内释放总线。当总线被释放的时候,上拉电阻将拉高总线。总控制器要生成一个写0时序,必须把数据线拉到低电平并持续保持(至少60us)。总线控制器初始化写时序后,DS18B20在一个15us到60us的窗口内对I/O线采样。如果线上是高电平,就是写1。如果线上是低电平,就是写0。

(19)51单片机温度传感器DS18B20读时序:总线控制器发起读时序时,DS18B20仅被用来传输数据给控制器。因此

总线控制器在发出读暂存器指令[BEh]后必须立刻开始读时序,所有读时序必须最少60us,包括两个读周期间至少1us的恢复时间。当总线控制器把数据线从高电平

拉到低电平时,读时序开始,数据线必须至少保持1us,然后总线被释放(见下图)。在总线控制器发出读时序后,DS18B20通过拉高或拉低总线上来传输1或0。当传输逻辑0结束后,总线将被释放,通过上拉电阻回到上升沿状态。从DS18B20输出的数据在读时序的下降沿出现后15us内有效。因此,总线控制器在读时序开始后必须停止把I/O脚驱动为低电平15us,以读取I/O脚状态。

(19)51单片机温度传感器DS18B20?DS1820 依靠一个单线端口通讯。在单线端口条

件下,必须先建立ROM 操作协议,才能进行存储器和

控制操作。因此,控制器必须首先提供下面5 个ROM

操作命令之一:

1)读ROM,2)匹配ROM,3)搜索ROM,4)跳过ROM,5)报警搜索。

这些命令对每个器件的激光ROM 部分进行操作,

在单线总线上挂有多个器件时,可以区分出单个器件,同时可以向总线控制器指明有多少器件或是什么型号的器件。成功执行完一条ROM 操作序列后,即可进行存

储器和控制操作,控制器可以提供6 条存储器和控制操作指令中的任一条。

(19)51单片机温度传感器DS18B20

(19)51单片机温度传感器DS18B20?存储器操作命令:

(19)51单片机温度传感器DS18B20?通过单线总线端口访问DS1820 的协议如下:

?初始化

?ROM 操作命令

?存储器操作命令

?执行/数据

启动温度转换步骤:

1,初始化2,发送ROM操作指令0XCC 3,发送存储器操作命令0X44

启动温度读取步骤:

1,初始化2,发送ROM操作指令0XCC 3,发送存储器操作命令0Xbe

4,读出2个字节的数据

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

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

电路实物图如下图所示: C 语言程序如下所示: /******************************************************************** zicreate ----------------------------- Copyright (C) https://www.360docs.net/doc/af16952253.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 头文件包含到主程序

单片机简易示波器论文

基于单片机的简易示波器设计 摘要 随着电子科学技术的迅速发展,特别是随着大规模集成电路的出现,给人类生活带来了根本性的改变。尤其是单片机技术的开发应用发展,现在产品几乎已经走进了千家万户。而示波器的出现更是给人们的生活带来了极大的方便与实用。 本文首先描述了在整个设计中所用到的一些重要元器件的功能及相关特性并系统地介绍硬件部分的工作原理,并附以系统结构框图加以说明,着重介绍了本系统所应用的各硬件接口技术和各个接口模块的功能及工作过程,其次,详细阐述了程序的各个模块和实现过程,详细讨论了在软件上实现的过程。本设计单片机技术为核心。本文编写的主导思想是软硬件相结合,以硬件为基础,来进行各功能模块运行来编写。 关键词:ADC0809数模转换、AT89C51、128×64LCD液晶显示模块。

A simple oscilloscope design based on MCU Abstract Especially the development and application of SCM technology, now the product has almost entered thousands of households. The oscilloscope has brought convenience and practicability greatly to people's life. This paper describes some important components used in the design of the function and related characteristics and introduces working principle of hardware, and attached to the system block diagram to illustrate the structure, function and working process are introduced, the hardware interface technology and the application of the system interface module. Secondly, detailed describes the procedures for the various modules and the realization process, process is realized in the software are discussed in detail. The design of single-chip technology as the core. In this paper the compiling principle is the combination of software and hardware, the hardware as the foundation, to the module operates to write. Key words: ADC0809 digital-analog conversion, AT89C51, 128 × 64LCD liquid crystal display module.

基于51单片机的智能密码锁

单片机的电子密码锁 目录 第一章绪论......................................................... . (2) 1.1电子密码锁简介......................................................... .. (2) 1.2电子密码锁设计的背景及意 义............................................................................. . (3) 第2章总体设计............................................................................. . (3) 2.1设计分析............................................................................. (3) 2.2系统结构............................................................................. (4) 第3章硬件电路设计............................................................................. (5) 3.1单片机最小系统设计............................................................................. . (5) 3.1.1时钟电路............................................................................. (5) 3.1.2 复位电 路 ............................................................................ . (6) 3.1.3 最小系 统 ............................................................................

80c51单片机交通灯课程设计报告1.pdf

80C51单片机交通灯课程设计报告 目录 第一章引言 (3) 第二章单片机概述 (4) 第三章芯片介绍 (6) 3.1AT89S51单片机介绍 (6) 3.1.1简介 (6) 3.1.2主要管脚介绍 (6) 3.274LS164介绍 (8) 3.3共阳数码管介绍 (8) 3.3.1分类简介 (8) 图3.3LED数码管引脚定义 (9) 3.3.2驱动方式 (9) 3.3.3主要参数 (10) 3.3.4应用范围 (10) 第四章系统硬件设计 (11) 4.1硬件设计要求 (11) 4.2硬件设计所用元器件 (11) 4.3硬件设计图 (11) 4.4设计流程图 (12) 第五章系统软件设计 (13) 5.1流程图 (13)

5.2程序设计 (14) 第六章结论 (16) 参考文献 (18)

第一章引言 在今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。 1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。 1914年,电气启动的红绿灯出现在美国。这种红绿灯由红绿黄三色圆形的投光器组成,安装在纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 智能的交通信号灯指挥着人和各种车辆的安全运行,实现红、黄、绿灯的自动指挥是城乡交通管理现代化的重要课题.在城乡街道的十字交叉路口,为了保证交通秩序和行人安全,一般在每条道路上各有一组红、黄、绿交通信号灯,其中红灯亮,表示该条道路禁止通行;黄灯亮,表示该条道路上未过停车线的车辆停止通行,已过停车线的车辆继续通行;绿灯亮,表示该条道路允许通行.交通灯控制电路自动控制十字路口两组红、黄、绿交通灯的状态转换,指挥各种车辆和行人安全通行,实现十字路口城乡交通管理自动化。 本文为了实现交通道路的管理,力求交通管理先进性、科学化.分析应用了单片机实现智能交通灯管制的控制系统,以及该系统软、硬件设计方法,实验证明该系统实现简单、经济,能够有效地疏导交通,提高交通路口的通行能力。

基于51单片机的简易计算器制作

基于51单片机的简易计算器制作专业:电气信息班级:11级电类一班 姓名:王康胡松勇 时间:2012年7月12日 一:设计任务 本系统选用AT89C52单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计,具体设计如下: (1)由于设计的计算器要进行四则运算,为了得到较好的显示效果,经综合分析后,最后采用LED 显示数据和结果。 (2)采用键盘输入方式,键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键(on\c)和等号键(=),故只需要16 个按键即可,设计中采用集成的计算键盘。 (3)在执行过程中,开机显示零,等待键入数值,当键入数字,通过LED显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LED上输出运算结果。 (4)错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示范围时,计算器会在LED上提示八个0;当除数为0时,计算器会在LED上会提示八个负号。 设计要求:分别对键盘输入检测模块;LED显示模块;算术运算模块;错误处理及提示模块进行设计,并用Visio画系统方框图,keil与protues仿真 分析其设计结果。 二.硬件设计 单片机最小系统 CPU:A T89C52 显示模块:两个4位7段共阴极数码管 输入模块:4*4矩阵键盘 1.电路图

电路图说明 本电路图采用AT89C52作为中处理器,以4*4矩阵键盘扫描输入,用两个74HC573(锁存器)控制分别控制数码管的位于段,并以动态显示的方式显示键盘输入结果及运算结果。为编程方便,以一个一位共阴极数码管显示负号。 三,程序设计 #include #define Lint long int #define uint unsigned int #define uchar unsigned char sbit dula=P2^6; //锁存器段选sbit wela=P2^7; sbit display_g=P2^0; //负号段选 sbit display_w=P2^1; //负号位选uchar code table[]={0x3f,0x06,0x5b,0x4f, //0,1,2,3

基于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单片机示波器

ADC #define uchar unsigned char #define uchar unsigned char #define uint unsigned int sbit START=P3^4; sbit OE=P3^6; sbit EOC=P3^5; uint AD; void adc() { START=1; START=0; while(EOC==0) { OE=1; } AD=P0; OE=0; }

89c51 #include #include #include sbit DI=P2^2; // 数据\指令选择 sbit RW=P2^1; // 读\写选择 sbit E=P2^0; // 读\写使能 sbit CS1=P2^4; // 片选1 sbit CS2=P2^3; // 片选2 sbit busy=P1^7; sbit jia=P3^7; sbit jian=P3^3; sbit jia1=P3^0; sbit jian1=P3^1; unsigned int i; unsigned char ye,lei,shu; unsigned char a[91]; void checkstate() { DI=0; RW=1; do { E=1; E=0; //仅当第7位为0时才可操作(判别busy信号) }while(busy==1); } void writecommand(unsigned char command) //写命令 { checkstate(); DI=0; RW=0; P1=command; E=1; E=0; } void writedate(unsigned char date) //写数据 { checkstate();

基于51单片机的智能窗帘控制系统设计与实现

项目编号___201111 ___ 江南大学物联网工程学院 大学生创新训练计划结题报告 项目名称基于51单片机的智能窗帘控制系统设计与实现项目负责人晶 所学专业电气工程及其自动化 所在学院物联网工程学院 (手机) 电子信箱diamond-heartqq. 项目起止年月2011/11-2012/05 第一指导教师肖永松 专业技术职务工程师 (手机) 电子信箱https://www.360docs.net/doc/af16952253.html, 结题日期2012年5月

江南大学物联网工程学院创新训练计划项目结题验收表学院名称:物联网工程学院填写日期:2012 年5 月

大学生创新训练计划 《基于AT89C51单片机的智能窗帘控制系统》成果精粹 江南大学 二○一二年五月

简介 随着物联网概念的发展,智能家居的理念也渐渐渗透到我们的生活中,受此启发,我们想尝试着做一个智能窗帘的控制系统,希望可以通过光强和时间来控制窗帘的开合。恰好我们都进行了电路、模电数电的学习,也曾初步接触了单片机,我们想通过设计这个控制系统来加深我们对所学容的理解和掌握,更加熟悉使用protel等专业软件。 计划设计一个系统可以实现以下功能: 在自动模式下,在设定的时间,如早成6点至晚上8点,晚上8点至早晨6点,时间控制,可以避免室开灯造成窗帘自动拉开。通过光强控制,在设定光照强度围,窗帘拉开,超过设定强度,如夏日中午,为避免房间被光直射造成温度过高,窗帘关闭。在手动模式下,通过按键来调整窗帘的开合状态。 最终设计使用STC89C51单片机,STC89C51有512字节的数据存储空间,是AT89C51的两倍,并且带有4K字节的EEPROM存储空间,可以断电后保存资料,可以直接使用串口下载,而AT89C51需要专用下载器。 控制系统可以实现对光信号的采集、转换、传输,并根据单片机接收到的信号,结合时钟电路的信号,对步进电机进行控制,通过控制步进电机转向及转动圈数,来实现对窗帘的打开及拉合控制。 设计时对硬件进行了模块化分析,以STC89C51作为主控芯片,光信号采集使用光敏模块,数模转换主要使用PCF8591芯片,显示模块采用1602液晶显示器,时钟电路采用DS1302芯片,电机驱动器主要使用ULN2003。

基于51单片机课程设计报告

单片机课程设计 课题:基于51单片机的交通灯设计 专业:机械设计制造及其自动化 学号: 指导教师:邵添 设计日期:2017/12/18 成绩: 大学城市科技学院电气学院 基于51单片机数字温度计设计报告

一、设计目的作用 本设计是一款简单实用的小型数字温度计,所采用的主要元件有传感器DS18B20,单片机AT89C52,,四位共阴极数码管一个,电容电阻若干。DS18B20支持“一线总线”接口,测量温度围-55°C~+125°C。在-10~+85°C围,精度为±0.5°C。18B20的精度较差,为±2°C 。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。 本次数字温度计的设计共分为五部分,主控制器,LED显示部分,传感器部分,复位部分,按键设置部分,时钟电路。主控制器即单片机部分,用于存储程序和控制电路;LED显示部分是指四位共阴极数码管,用来显示温度;传感器部分,即温度传感器,用来采集温度,进行温度转换;复位部分,即复位电路,按键部分用来设置上下限报警温度。测量的总过程是,传感器采集到外部环境的温度,并进行转换后传到单片机,经过单片机处理判断后将温度传递到数码管显示。 二、设计要求 (1).利用DS18B20传感器实时检测温度并显示。 (2).利用数码管实时显示温度。 (3).当温度超过或者低于设定值时蜂鸣器报警,LED闪烁指示。 (4).能够手动设置上限和下限报警温度。 三、设计的具体实现 1、系统概述 方案一:由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。 方案设计框图如下:

基于51单片机的计算器设计

目录 第一章引言 (3) 1.1 简述简易计算器 (3) 1.2 本设计主要任务 (3) 1.3 系统主要功能 (4) 第二章系统主要硬件电路设计 (4) 2.1 系统的硬件构成及功能 (4) 2.2 键盘电路设计 (5) 2.3 显示电路设计 (6) 第三章系统软件设计 (7) 3.1 计算器的软件规划 (7) 3.2 键盘扫描的程序设计 (7) 3.3 显示模块的程序设计 (8) 3.4 主程序的设计 (9) 3.5 软件的可靠性设计 (9) 第四章调试 (9) 第五章结束语 (10) 参考文献 (11) 附录源程序 (11)

第一章引言 1.1 简述简易计算器 近几年单片机技术的发展很快,其中电子产品的更新速度迅猛。计算器是日常生活中比较的常见的电子产品之一。如何才能使计算器技术更加的成熟,充分利用已有的软件和硬件条件,设计出更出色的计算器呢? 本设计是以AT89S52单片机为核心的计算器模拟系统设计,输入采用4×6矩阵键盘,可以进行加、减、乘、除9位带符号数字运算,并在LCD1602上显示操作过程。 科技的进步告别了以前复杂的模拟电路,一块几厘米平方的单片机可以省去很多繁琐的电路。现在应用较广泛的是科学计算器,与我们日常所用的简单计算器有较大差别,除了能进行加减乘除,科学计算器还可以进行正数的四则运算和乘方、开方运算,具有指数、对数、三角函数、反三角函数及存储等计算功能。计算器的未来是小型化和轻便化,现在市面上出现的使用太阳能电池的计算器, 使用ASIC设计的计算器,如使用纯软件实现的计算器等,未来的智能化计算器将是我们的发展方向,更希望成为应用广泛的计算工具。 1.2 本设计主要任务 以下是初步设定的矩阵键盘简易计算器的功能: 1.扩展4*6键盘,其中10个数字,5个功能键,1个清零 2.强化对于电路的焊接 3.使用五位数码管接口电路 4. 完成十进制的四则运算(加、减、乘、除); 5. 实现结果低于五位的连续运算; 6. 使用keil 软件编写程序,使用汇编语言; 7. 最后用ptoteus模拟仿真; 8.学会对电路的调试

基于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单片机的波形发生器的设计讲解

目录 1 引言 (1) 1.1 题目要求及分析 (1) 1.1.1 示意图 (1) 1.2 设计要求 (1) 2 波形发生器系统设计方案 (2) 2.1 方案的设计思路 (2) 2.2 设计框图及系统介绍 (2) 2.3 选择合适的设计方案 (2) 3 主要硬件电路及器件介绍 (4) 3.1 80C51单片机 (4) 3.2 DAC0832 (5) 3.3 数码显示管 (6) 4 系统的硬件设计 (8) 4.1 硬件原理框图 (8) 4.2 89C51系统设计 (8) 4.3 时钟电路 (9) 4.4 复位电路 (9) 4.5 键盘接口电路 (10) 4.7 数模转换器 (11) 5 系统软件设计 (12) 5.1 流程图: (12) 5.2 产生波形图 (12) 5.2.1 正弦波 (12) 5.2.2 三角波 (13) 5.2.3 方波 (14) 6 结论 (16) 主要参考文献 (17) 致谢...................................................... 错误!未定义书签。

1引言 1.1题目要求及分析 题目:基于51单片机的波形发生器设计,即由51单片机控制产生正弦波、方波、三角波等的多种波形。 1.1.1示意图 图1:系统流程示意图 1.2设计要求 (1) 系统具有产生正弦波、三角波、方波三种周期性波形的功能。 (2) 用键盘控制上述三种波形(同周期)的生成,以及由基波和它的谐波(5次以下)线性组合的波形。 (3) 系统具有存储波形功能。 (4) 系统输出波形的频率范围为1Hz~1MHz,重复频率可调,频率步进间隔≤100Hz,非正弦波的频率按照10次谐波来计算。 (5) 系统输出波形幅度范围0~5V。 (6) 系统具有显示输出波形的类型、重复频率和幅度的功能。

基于51单片机的智能交通灯课程设计

简易智能交通灯设计 1、设计背景 自从1886两个德国人发明了第一辆汽车交通灯改变了交通路况,交通问题也渐渐被人们所重视。从英国伦敦街头的第一个以燃煤气为光源的红,蓝两色的机械扳手式信号灯,到现在以电为光源的红黄绿三色交通灯,不知不觉中交通信号灯在人们日常生活中占据了重要地位。随着人们社会活动日益增加,经济发展,汽车数量急剧增加,城市道路日渐拥挤,交通灯更加显示出了它的功能,使得交通得到有效管制,对于交通疏导,提高道路导通能力,减少交通事故有显著的效果。 近年来,随着科技的飞速发展,电子器件也随之广泛应用,其中单片机也不断深入人民的生活当中。本次课程设计以模拟交通灯系统利用单片机AT89C51作为核心元件,实现了通过信号灯对路面状况的智能控制。在一定程度上解决了交通路口堵塞、车辆停车,特殊情况的交通灯等待时间不合理、急车强通等问题。在该次的设计系统具有结构简单、可靠性高、成本低、实时性好、安装维护方便等优点,有广泛的应用前景。 本模拟系统由单片机软件系统,两位8段数码管和LED灯显示系统。和复位电路控制电路等组成,较好的模拟了对交通路面的控制。 1.1 设计思路 (1)分析目前交通路口的基本控制技术以及各种通行方案,并以此为基础提出自己的交通控制的初步方案。 (2)确定系统交通控制的总体设计,包括,十字路口具体的通行禁行方案设计以及系统应拥有的各项功能,在这里,本设计除了有信号灯状态控制能实现基本的交通功能,还增加了倒计时显示提示,并基于实际情况,又增加了紧急状况处理和通行时间可调这两项特特殊功能。 (3)进行倒计时显示电路,灯状态电路,特殊情况按键电路的设计和对各器件的选择及连接,大体分配各个器件及模块的基本功能要求。 (4)进行软件系统的设计和仿真中,程序在KEIL软件中用单片机c语言编写,电路的搭建和仿真实现是在proteus软件中实现的。在本次课程设计中通过对单片机内部结构和工作情况做了一定的研究,充分了解定时器,中断以及延时原理,为本次智能交通灯的设计提供了理论基础。

基于51单片机的计算器设计程序代码汇编

DBUF EQU 30H TEMP EQU 40H YJ EQU 50H ;结果存放 YJ1 EQU 51H ;中间结果存放GONG EQU 52H ;功能键存放 ORG 00H START: MOV R3,#0 ;初始化显示为空MOV GONG,#0 MOV 30H,#10H MOV 31H,#10H MOV 32H,#10H MOV 33H,#10H MOV 34H,#10H MLOOP: CALL DISP ;PAN调显示子程序WAIT: CALL TESTKEY ; 判断有无按键JZ WAIT CALL GETKEY ;读键 INC R3 ;按键个数 CJNE A,#0,NEXT1 ; 判断就是否数字键 LJMP E1 ; 转数字键处理NEXT1: CJNE A,#1,NEXT2 LJMP E1 NEXT2: CJNE A,#2,NEXT3 LJMP E1 NEXT3: CJNE A,#3,NEXT4 LJMP E1 NEXT4: CJNE A,#4,NEXT5 LJMP E1 NEXT5: CJNE A,#5,NEXT6 LJMP E1 NEXT6: CJNE A,#6,NEXT7 LJMP E1 NEXT7: CJNE A,#7,NEXT8 LJMP E1 NEXT8: CJNE A,#8,NEXT9 LJMP E1 NEXT9: CJNE A,#9,NEXT10 LJMP E1 NEXT10: CJNE A,#10,NEXT11 ;判断就是否功能键LJMP E2 ;转功能键处理NEXT11: CJNE A,#11,NEXT12 LJMP E2 NEXT12: CJNE A,#12, NEXT13 LJMP E2

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

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

(完整word版)基于51单片机的温度控制系统设计

基于51单片机的水温自动控制系统 0 引言 在现代的各种工业生产中 ,很多地方都需要用到温度控制系统。而智能化的控制系统成为一种发展的趋势。本文所阐述的就是一种基于89C51单片机的温度控制系统。本温控系统可应用于温度范围30℃到96℃。 1 设计任务、要求和技术指标 1.1任务 设计并制作一水温自动控制系统,可以在一定范围(30℃到96℃)内自动调节温度,使水温保持在一定的范围(30℃到96℃)内。 1.2要求 (1)利用模拟温度传感器检测温度,要求检测电路尽可能简单。 (2)当液位低于某一值时,停止加热。 (3)用AD转换器把采集到的模拟温度值送入单片机。 (4)无竞争-冒险,无抖动。 1.3技术指标 (1)温度显示误差不超过1℃。 (2)温度显示范围为0℃—99℃。 (3)程序部分用PID算法实现温度自动控制。 (4)检测信号为电压信号。 2 方案分析与论证 2.1主控系统分析与论证 根据设计要求和所学的专业知识,采用AT89C51为本系统的核心控制器件。AT89C51是一种带4K字节闪存可编程可擦除只读存储器的低电压,高性能CMOS 8位微处理器。其引脚图如图1所示。 2.2显示系统分析与论证 显示模块主要用于显示时间,由于显示范围为0~99℃,因此可采用两个共阴的数码管作为显示元件。在显示驱动电路中拟订了两种设计方案: 方案一:采用静态显示的方案 采用三片移位寄存器74LS164作为显示电路,其优点在于占用主控系统的I/O口少,编程简单且静态显示的内容无闪烁,但电路消耗的电流较大。 方案二:采用动态显示的方案 由单片机的I/O口直接带数码管实现动态显示,占用资源少,动态控制节省了驱动芯片的成本,节省了电 ,但编程比较复杂,亮度不如静态的好。 由于对电路的功耗要求不大,因此就在尽量节省I/O口线的前提下选用方案一的静态显示。

基于51单片机智能控制仪表简单设计

智能控制仪表简单设计 龙岩学院电子信息工程 学号:200402208 姓名:邓晶晶指导老师:吴春富 【摘要】:随着传感器技术、微电子技术、单片机技术的不断发展,为智能控制仪表测控功能的完善、 测控精度的提高和抗干扰能力的增强等提供了条件。本设计介绍了一种用变送器现场采集的温、湿度等信号再经A/D 转换送单片机进行处理,最后通过数码显示器,键盘等硬件设计实现了工作过程的自动化。一般的单片机系统在工业现场等恶劣的环境下容易死机,所以在本文中外加监视电路对系统起保护作 用。 关键词】:AT89C52 单片机;HD7279A; 看门狗;

第1章引言 仪器仪表是人类认识世界的工具,人们借助于各种仪器仪表对各种物理量进行度量,反映其大小与变化规律.随着人类认识能力的提高与科学技术不断进步,仪器仪表技术得到了飞速发展.50年代以前, 仪器仪表多为指针式,其理论基础是机电学?从50年代起,电子技术特别是数字技术的发展,给仪表行业带来了生机,各种数字式仪表相继问世,许多传统的指针式仪表相继被淘汰,数字仪表使仪表外观耳目 一新,数据表达能力与总体性能都大幅提高? 70年代中期,随着微处理器的出现以及单片机的兴起与应 用,设计者将计算机特有的许多优点引入仪表设计,随之产生了一代崭新的智能仪表,使仪表逐渐由数字型向智能化发展,其功能也由单一显示功能转变为具有信息处理、传输、存贮、显示、控制等功能,使仪 表性能产生了质的飞跃.,品种繁多?目前,我国仪器仪表有13大类,1 300多个产品.其中自动化仪表及控制系统是和国民经济各产业部门关系最为密切的一类产品,其传感变送单元与主控装置及I/O接口 均正朝智能化方向发展?在本设计中采用以单片机作为仪表核心控制器件,可以利用A/D转换芯片对标 准信号进行采集、转换,将输入的模拟量转换成单片机能够检测的数字量进行分析和监测控制,同时可 以利用键盘显示电路将相关数据进行显示。与此同时通过所查阅的资料我还了解到随着测量技术的发展 和微处理器的广泛应用,单片机系统的电路越来越复杂,而系统的可靠性问题也越来越突出,一般的单 片机系统在工业现场等恶劣的环境下容易死机,因此系统在这些场合要保证能够稳定的工作就必须外加 监视电路,在设计中采用了美国集把关定时器、电压监控和串行EEPRO三项功能于一体的专用集成芯 片X5045。该芯片的应用将有利于简化单片机系统的结构,增强功能、降低系统的成本,尤其是大大的增加了系统的可靠性。X5045中的看门狗对系统提供了保护功能。当系统发生故障而超过设置时间时,电路中的看门狗将通过RESET言号向CPU作出反应。X5045提供了三个时间值供用户选择使用。它所具 有的电压临控功能还可以保护系统免受低电压的影响,当电源电压降到允许范围以下时,系统将复位,直到电源电压返回到稳定值为止。本次毕业设计旨在掌握智能控制仪表的设计方法,同时掌握在开发系 统下实现部分软件的仿真方法。 第2章控制系统的硬件设计 硬件组成智能仪表的硬件方框图如图 2.1 图2.1 智能控制仪表的原理框图 2

(完整word版)51单片机课程设计实验报告

51单片机课程设计报告 学院: 专业班级: 姓名: 指导教师: 设计时间:

51单片机课程设计 一、设计任务与要求 1.任务:制作并调试51单片机学习板 2.要求: (1)了解并能识别学习板上的各种元器件,会读元器件标示; (2)会看电路原理图; (3)制作51单片机学习板; (4)学会使用Keil C软件下载调试程序; 用调试程序将51单片机学习板调试成功。 二、总原理图及元器件清单 1.总原理图 2.元件清单 三、模块电路分析 1. 最小系统: 单片机最小系统电路分为振荡电路和复位电路, 振荡电路选用12MHz 高精度晶振, 振荡电容选用22p和30p 独石电容;

图 1 图 2 复位电路使用RC 电路,使用普通的电解电容与金属膜电阻即可; 图 3 当单片机上电瞬间由于电容电压不能突变会使电容两边的电位相同,此时RST 为高电平,之后随着时间推移电源负极通过电阻对电容放电,放完电时RST 为低电平。正常工作为低电平,高电平复位。 2. 显示模块: 分析发光二极管显示电路: 图 4 发光二极管显示电路分析:它是半导体二极管的一种,可以把电能转化成光能,常简写为

LED。发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。当给发光二极管加上正向电压后,产生自发辐射的荧光。图中一共有五个发光二极管其中一个为电源指示灯,当学习板通电时会发光以指示状态。其余四个为功能状态指示灯,实际作用与学习板有关 分析数码管显示电路 图 5 数码管显示电路分析:数码管按段数分为七段数码管和八段数码管,图中所用为八段数码管(比七段管多了一个小数点显示位),按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管.共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。数码管主要用来显示经电路板处理后的程序的运行结果。图中使用了八个八段数码管,可以显示八个0-15的数字。使用数码管可以直观的得到程序运行所显示的结果.也可以显示预置在学习板上的程序,主要通过16个开关来控制。 四、硬件调试 1、是否短路 用万用表检查P2两端是短路。电阻为0,则短路,电阻为一适值,电路正常。 2、焊接顺序 焊接的顺序很重要,按功能划分的器件进行焊接,顺序是功能部件的焊接--调试--另一功能部件的焊接,这样容易找到问题的所在。 3、器件功能 1)检查原理图连接是否正确 2)检查原理图与PCB图是否一致 3)检查原理图与器件的DATASHEET上引脚是否一致 4)用万用表检查是否有虚焊,引脚短路现象 5)查询器件的DATASHEET,分析一下时序是否一致,同时分析一下命令字是否正确 6)通过示波器对芯片各个引脚进行检查,检查地址线是否有信号的 7)飞线。用别的的口线进行控制,看看能不能对其进行正常操作,多试验,才能找到问题出现在什么地方。 1、详细描述硬件安装过程中出现的故障现象,并作故障分析,及解决方法。 六、软件调试

相关文档
最新文档