51单片机测量5V电压
基于51单片机-PCF8591数字电压表课程设计
课程名称:微机原理课程设计题目:数字电压表ﻬ摘要单片微型计算机简称单片机,是典型的嵌入式微控制器,常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
单片机由运算器,控制器,存储器,输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。
概括的讲:一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
它最早是被用在工业控制领域。
其中我们用于学习用的最多的是STC89C52单片机,STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
STC89C52使用经典的MCS-51内核,但也做了很多改进使得芯片具有传统51单片机不具备的功能。
STC89C52具有8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KB EE PROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构,全双工串行口。
本设计就是以单片机STC89C52为核心,附以外围电路,实现数字电压表的功能,并运用软件Proteus进行仿真来得到实验结果。
关键词:STC89C52单片机、仿真、中断、数字电压表、数码管显示ﻬ目录一、任务要求ﻩ错误!未定义书签。
1.1 设计任务ﻩ错误!未定义书签。
1.2设计要求ﻩ错误!未定义书签。
1.3发挥部分 ...................................................................................... 错误!未定义书签。
1.4 创新部分 ........................................................................................... 错误!未定义书签。
51单片机数据采集系统
课程设计报告书设计任务书一、设计任务1一秒钟采集一次。
2把INO口采集的电压值放入30H单元中。
3做出原理图。
4画出流程图并写出所要运行的程序。
二、设计方案及工作原理方案: 1. 采用8051和ADC0809构成一个8通道数据采集系统。
2. 能够顺序采集各个通道的信号。
3. 采集信号的动态范围:0~5V。
4. 每个通道的采样速率:100 SPS。
5.在面包板上完成电路,将采样数据送入单片机20h~27h存储单元。
6.编写相应的单片机采集程序,到达规定的性能。
工作原理:通过一个A/D转换器循环采样模拟电压,每隔一定时间去采样一次,一次按顺序采样信号。
A/D转换器芯片AD0809将采样到的模拟信号转换为数字信号,转换完成后,CPU读取数据转换结果,并将结果送入外设即CRT/LED显示,显示电压路数和数据值。
目录第一章系统设计要求和解决方案第二章硬件系统第三章软件系统第四章实现的功能第五章缺点及可能的解决方法第六章心得体会附录一参考文献附录二硬件原理图附录三程序流程图第一章系统设计要求和解决方案根据系统基本要求,将本系统划分为如下几个部分:●信号调理电路●8路模拟信号的产生与A/D转换器●发送端的数据采集与传输控制器●人机通道的接口电路●数据传输接口电路数据采集与传输系统一般由信号调理电路,多路开关,采样保持电路,A/D,单片机,电平转换接口,接收端(单片机、PC或其它设备)组成。
系统框图如图1-1所示1.1 信号采集分析被测电压为0~5V 直流电压,可通过电位器调节产生。
1.1.1 信号采集多路数据采集系统多采用共享数据采集通道的结构形式。
数据采集方式选择程序控制数据采集。
程序控制数据采集,由硬件和软件两部分组成。
,据不同的采集需要,在程序存储器中,存放若干种信号采集程序,选择相应的采集程序进行采集工作,还可通过编新的程序,以满足不同采样任务的要求。
如图1-3所示。
程序控制数据采集的采样通道地址可随意选择,控制多路传输门开启的通道地址码由存储器中读出的指令确定。
51单片机结构功能
51单片机结构功能51单片机是指基于Intel的8051微处理器为核心的单片机,其结构功能丰富,被广泛应用于各种嵌入式系统。
一、结构51单片机采用冯·诺依曼结构,具有指令存储器和数据存储器,其中程序存储器(ROM)用于存储程序和表格数据,而数据存储器(RAM)用于存储可变数据。
51单片机还具有特殊功能寄存器(SFR),这些寄存器专门用于控制和设置单片机的各种功能。
二、功能1、运算功能:51单片机具有8位运算器,可以进行算术、逻辑和位运算。
2、控制功能:51单片机具有丰富的控制指令,可以实现如条件转移、跳转、中断等功能,还可以进行定时器和计数器的控制。
3、通信功能:51单片机可以通过串行口实现串行通信,也可以通过并行口实现并行通信。
4、存储功能:51单片机内部具有少量的RAM和ROM存储器,同时还可以外接扩展存储器。
5、定时/计数功能:51单片机内部具有定时器和计数器,可以实现定时和计数的功能。
6、中断功能:51单片机具有多个中断源,可以实现多级中断控制。
7、输入/输出功能:51单片机具有多个输入/输出端口,可以实现多种输入/输出控制。
51单片机以其结构紧凑、功能丰富、易于使用等特点,被广泛应用于工业控制、智能家居、消费电子等领域。
C51单片机寄存器功能湖山网络广播系统设计方案一、概述随着科技的发展和数字化的普及,网络广播系统在各种场所扮演着越来越重要的角色。
湖山网络广播系统设计方案旨在满足湖山地区对高质量、高效的网络广播系统的需求。
该方案旨在构建一个稳定、可靠、易用的网络广播系统,以满足湖山地区在公共广播、紧急通知、日常资讯等方面的需求。
二、系统需求分析1、稳定性:系统应具备高度的稳定性,能够保证长时间的连续运行,避免因设备故障或网络问题导致的广播中断。
2、可靠性:系统应具备可靠的备份机制,确保在主设备出现问题时,备份设备能够迅速接管,保证广播的连续性。
3、易用性:系统应具备良好的用户界面,操作简单易懂,方便管理员进行配置和管理。
基于51单片机的数字电压表设计
目录摘要 (I)1 绪论 (1)1.1数字电压表介绍 (1)1.2仿真软件介绍 (1)1.3 本次设计要求 (2)2 单片机和AD相关知识 (3)2.1 51单片机相关知识 (3)2.2 AD转换器相关知识 (4)3 数字电压表系统设计 (5)3.1系统设计框图 (5)3.2 单片机电路 (5)3.3 ADC采样电路 (6)3.4显示电路 (6)3.5供电电路和参考电压 (7)3.6 数字电压表系统电路原理图 (7)4 软件设计 (8)4.1 系统总流程图 (8)4.2 程序代码 (8)5 数字电压表电路仿真 (15)5.1 仿真总图 (15)5.2 仿真结果显示 (15)6 系统优缺点分析 (16)7 心得体会 (17)参考文献 (18)1 绪论1.1数字电压表介绍数字电压表简称DVM,数字电压表基本原理是将输入的模拟电压信号转化为数字信号,再进行输出显示。
而A/D转换器的作用是将连续变化的模拟信号量转化为离散的数字信号,器基本结构是由采样保持,量化,编码等几部分组成。
因此AD转换是此次设计的核心元件。
输入的模拟量经过AD转换器转换,再由驱动器驱动显示器输出,便得到测量的数字电压。
本次自己的设计作品从各个角度分析了AD转换器组成的数字电压表的设计过程及各部分电路的组成及原理,并且分析了数模转换进而使系统运行起来的原理及方法。
通过自己的实践提高了动手能力,也只有亲历亲为才能收获掌握到液晶学过的知识。
其实也为建立节约成本的意识有些帮助。
本次设计同时也牵涉到了几个问题:精度、位数、速度、还有功耗等不足之处,这些都是要慎重考虑的,这些也是在本次设计中的收获。
1.2仿真软件介绍Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。
它运行于Windows 操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:(1)现了单片机仿真和SPICE电路仿真相结合。
基于51单片机的数字电压表仿真设计(有参考文献)
基于51单片机的数字电压表仿真设计一、引言随着电子科学技术的发展,电子测量成为广大电子工作者必须掌握的手段,对测量的精度和功能的要求也越来越高,而电压的测量甚为突出,因为电压的测量最为普遍。
数字电压表是采用数字化测量技术设计的电压表。
数字电压表与模拟电压表相比,具有读数直观、准确、显示范围宽、分辨力高、输入阻抗大、集成度高、功耗小、抗干扰能力强,可扩展能力强等特点,因此在电压测量、电压校准中有着广泛的应用。
而单片机也越来越广泛的应用与家用电器领域、办公自动化领域、商业营销领域、工业自动化领域、智能仪表与集成智能传感器传统的控制电路、汽车电子与航空航天电子系统。
单片机是现代计算机技术、电子技术的新兴领域。
本文采用ADC0808对输入模拟信号进行转换,控制核心C51单片机对转换的结果进行运算和处理,最后驱动输出装置显示数字电压信号,通过Proteus仿真软件实现接口电路设计,并进行实时仿真。
Proteus软件是一种电路分析和实物模拟仿真软件。
它运行于Windows 操作系统上,可以进行仿真、分析(SPICE)各种模拟器件和集成电路,是集单片机和SPICE分析于一身的仿真软件,功能强大,具有系统资源丰富、硬件投入少、形象直观等优点,近年来受到广大用户的青睐。
二、数字电压表概述1、数字电压表的发展与应用电压表指固定安装在电力、电信、电子设备面板上使用的仪表,用来测量交、直流电路中的电压。
传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,并且传统的电压表在测量电压时需要手动切换量程,不仅不方便,而且要求不能超过该量程。
目前,由各种单片A/D转换器构成的数字电压表,已被广泛用于电子及电工测量领域,并且由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。
2、本次设计数字电压表的组成部分本设计是由单片机AT89C51作为整个系统控制的核心,整个系统由衰减输入电路、量程自动转换电路、交直流转换电路、模数转换及控制电路以及接口电路五大部分构成。
单片机课程设计 数字电压表
一目的和意义 (2)二任务和要求 (2)1、设计任务 (2)2、设计要求 (2)三设计思路 (2)四、系统结构框图与工作原理 (2)1、系统结构框图 (2)2、工作原理 (3)五、硬件介绍 (3)1、单片机系统 (3)2、ADC0808主要特性 (5)ADC0808的外部引脚特征: (5)3、ADC0808的内部结构及工作流程 (7)六、复位电路和时钟电路 (8)1、复位电路设计 (8)2、时钟电路设计 (8)七LED显示系统设计 (9)1、 LED基本结构 (9)2、LED显示器的选择 (9)3、 LED译码方式 (9)4、LED显示器与单片机接口间的设计 (10)八、A/D转换电路和测量电路的设计 (11)九、程序设计 (12)1、程序设计总方案 (12)2、系统子程序设计 (12)十、使用说明与调试结果 (14)十一、总结 (15)参考文献 (16)附一系统原理图 (17)附二程序清单 (18)一目的和意义《单片机原理与接口技术》课程设计是在完成《单片机原理及其接口技术》的理论教学之后安排的一个实践教学环节。
《单片机原理与接口技术》课程设计是学习单片机理论的重要实践环节。
在单片机课程基础上,通过本课程设计的学习使学生增进对单片机的感性认识,加深对单片机理论方面的理解;使学生了解和掌握单片机应用系统软件的软硬件设计工程、方法及实现,强化单片机应用电路的设计与分析能力。
提高学生在单片机应用方面的实践技能和科学作风,培养学生综合运用理论知识解决问题的能力。
二任务和要求1、设计任务基于MCS-51系列单片机AT89C51,设计一个能测量0~5V直流电压的数字电压表2、设计要求(1)选用A/D转换器ADC0808,测定0——+5V范围内的直流电压值。
(2)采集的数据送四位数码管实时显示。
(3)实现多路电压循环测量和循环显示。
三设计思路1、根据设计要求,选择AT89C51单片机为核心控制器件。
2、A/D转换采用ADC0808实现,与单片机的接口为P0口和P2口。
基于51单片机的数字电容测量仪设计
设计课题 基于单片机地电容测量仪设计
学 院 信息科学与工程
学生姓名
学号
专业班级
队友
指导教师
设计时间
2014.6.4-2014.7.3
本设计详细介绍了一种基于单片机地数字式电容测量仪设计方案及实现方法
.设计地主
要方法是采用 555 芯片构成单稳态触发器 ,将电容容量转换为脉冲宽度 .通过单片机地计时器
根据设计要求、可行性和设计成本地考虑选择了基于
STC89C52 单片机和 555 芯片构成地
单稳态触发电路测量电容地方案 . 现在一一介绍论证如下 .
1.3 方案Ⅱ
根据积分电路原理可得 C=Ui*dt/R*Uo ,将经过 RC 充电电路后,输出地与电容对应地 电压值输入到 ADC0809 中,经过处理后,将相应地数值传到单片机里,再通过公式运 算,求得相应地电容 C 值,在 LCD 上显示 .
R1
10K
P1.0 1 P1.1 2
P1.2 3 P1.3 4 P1.4 5 P1.5 6
P1.6 7 P1.7 8
P1.0 P1.1 P1.2 P1.3
P1.4 P1.5 P1.6 P1.7
AT89C51
P0.0/AD0
39 38
P0.1/AD1 P0.2/AD2
37
P0.3/AD3 P0.4/AD4
测量脉宽 , 根据已知地 R 值,通过单片机地运算功能,计算出电容容量
,最后,再通过单片
机地普通 I/O 口控制液晶屏显示出电容容量地计算结果 .系统地测量范围为 10pF~ 500uF, 具
有多个量程,可根据用户需要由用户选择,与用户地交互是通过键盘实现,不同量程地实
51单片机温度计
目前,单片机已经广泛应用于测控领域。
它不仅可以测量电信,还可以测量温度、湿度等非电信号。
可独立工作的单片机温度检测与控制系统已广泛应用于许多领域。
单片机是一种特殊的计算机,它将CPU、存储器、RAM、ROM和输入输出接口电路集成在一块半导体芯片上。
这个芯片叫单片机。
单片机由于集成度高、功能强、通用性好,具有体积小、重量轻、能耗低、价格低、抗干扰能力强、可仿制等优点。
得到了迅速的推广和应用,现已成为测控系统中的优秀机型和新型电子产品中的关键元器件。
单片机不仅仅局限于小系统的概念,还广泛应用于家用电器、机电产品、办公自动化产品、机器人、儿童玩具、航天器等领域。
这次我们的模拟电气设计是用单片机来控制温度。
传统的温度传感器大多采用热敏电阻作为温度传感器,但热敏电阻的可靠性差,测温精度低,必须通过专门的接口电路转换成数字信号,才能由单片机进行处理。
这次我和同学陆鲁豫用的是DS18B。
20数字温度传感器实现基于51单片机的温度计设计。
传统温度计存在反射速度慢、读数麻烦、测量精度低、误差大等缺点。
利用集成温度传感器DS18B20,设计并制作了一种基于AT89C51的4位数码管数字温度计。
其电路简单,软硬件结构模块化,易于实现。
数字温度计是利用温度传感器和接口电路测量温度并转换成模拟电压信号,通过模数转换器转换成单片机可以处理的数字信号,然后送到单片机进行处理和转换,最后在数码管上显示温度值。
该系统由单片机为控制核心,DS18B20温度传感器,带4位温度数据显示的共阴极数码管,外围电源和报警电路组成。
2.设计任务和要求2.1设计任务在现代生活中,多功能数字体温计可以给我们的生活带来极大的便利。
支持“一线总线”接口的温度传感器简化了数字温度计的设计,降低了成本。
以美国MA*IM/DALLAS半导体公司的单总线温度传感器DS18B20为核心,ATMEL公司的AT89S52位控制器设计的AT89S51为智能温度控制器,结构简单,测温准确,具有一定的控制功能。
51单片机的数字电压表设计
51单片机的数字电压表设计随着科技的快速发展,单片机在许多领域得到了广泛应用。
51单片机作为一种常见的单片机,具有功能强大、易于编程等优点,因此在数字电压表设计中具有独特优势。
本文将介绍如何利用51单片机设计数字电压表。
数字电压表的电源电路通常采用直流电源,可以通过变压器将交流电转换为直流电,再经过滤波和稳压电路,将电压稳定在单片机所需的电压范围内。
数字电压表的信号采集电路可以采用电阻分压的方式,将待测电压分压后送入单片机进行测量。
为了提高测量精度,可以采用差分放大器对信号进行放大和差分输出。
51单片机内置ADC模块,可以将模拟信号转换为数字信号。
在数字电压表中,可以使用ADC模块对放大后的模拟信号进行转换,得到数字信号后进行处理和显示。
数字电压表的显示电路可以采用液晶显示屏或LED数码管,将测量结果以数字形式显示出来。
液晶显示屏具有显示清晰、亮度高、视角广等优点,但价格较高;LED数码管价格便宜、亮度高、寿命长,但显示内容有限。
数字电压表的主程序主要完成电压的采集、A/D转换和显示等功能。
主程序首先进行系统初始化,包括设置ADC模块参数、初始化显示等;然后不断循环采集电压信号,将采集到的模拟信号转换为数字信号后进行处理和显示。
51单片机的ADC模块可以通过特殊功能寄存器进行配置和控制。
在数字电压表的软件设计中,需要编写ADC模块驱动程序,以控制ADC 模块完成模拟信号到数字信号的转换。
具体实现可以参考51单片机的ADC模块寄存器定义和操作指南。
数字电压表的显示程序需要根据显示硬件选择合适的显示库或驱动程序。
在编写显示程序时,需要将采集到的数字信号转换为合适的数值,并将其显示在显示屏上。
具体实现可以参考所选显示库或驱动程序的文档说明。
精度问题:数字电压表的精度直接影响到测量结果的质量。
为了提高测量精度,可以采用高精度的ADC模块和合适的信号处理技术。
同时,需要注意信号采集电路中电阻的精度和稳定性。
基于51单片机的酒精测试仪设计_毕业设计
基于51单片机的酒精测试仪设计_毕业设计基于51单片机的酒精测试仪设计基于51单片机的酒精测试仪设计摘要近年来,随着我国经济的发展,人民的生活水平提高,越来越多的人有了自己的私家车,而酒后驾车造成的交通事故也频频发生。
如今国家法律出台道路交通安全法规定,饮酒后或者醉酒驾驶机动车发生重大交通事故,构成犯罪的,依法追究刑事责任,并由公安机关交通管理部门吊销机动车驾驶证,终生不得重新取得机动车驾驶证。
鉴于人们对于醉酒驾驶的逐渐重视,酒精测试课题便引起了广泛的关注。
酒后驾车引起的交通事故是由于司机的过量饮酒造成人体内酒精浓度过高,麻痹神经,造成大脑反应迟缓,肢体不受控制等症状。
为本课题研究的是一种以气敏传感器和单片机为主,监测空气酒精浓度,并具有LCD显示功能的空气酒精浓度监测仪。
此需要设计一智能仪器能够监测驾驶员体内酒精含量。
本课题研究的是一种以气敏传感器和单片机为主,监测空气酒精浓度,并具有声报警功能及LCD显示功能的空气酒精浓度监测仪。
其可监测出空气环境中和呼气中酒精浓度值,并根据不同的环境设定不同的阀值,对超过的阀值进行声报警,并显示阀值(来提示危害。
从而达到以下目的:(1)有利于社会公共交通安全;(2)提高人们法律意识;(3)使之便捷、安全、准确、高效,便于提高家庭酒精测试的普及化。
本作品是基于单片机控制ADC0809对TGS822酒精浓度取样来反映人体血液酒精浓度;以及对DS18B20获取温度关键词:ADC0809;目录第1章绪论 11.1 精测试仪现状和发展趋势 ..................................................................... . (1)1.2研究内容 ..................................................................... .. (2)基于51单片机的酒精测试仪设计第2章总体设计 32.1 本课题的设计任务及要求 ..................................................................... . (3)2.1.1 设计任务 ..................................................................... (3)2.1.2 设计要求 ..................................................................... (3)2.2 系统整机原理图分析 ..................................................................... ............ 4 第3章硬件设计 53.1 单片机模块 ..................................................................... (5)3.2 ADC0809资料 ..................................................................... .. (7)3.3酒精传感器模块 ..................................................................... .. (9)3.3.1传感器性能分析 ..................................................................... . (9)3.3.2呼出酒精气体浓度与血液酒精浓度关系 (12)3.4 LCD模块...................................................................... .......................... 13 第4章系统软件 154.1整机系统流程图 ..................................................................... (16)4.1.1ADC程序流程图 ..................................................................... .. (16)4.1.2 LCD程序流程图 ..................................................................... .......... 17 第5章总结与展望 18参考文献 19第1章绪论1.1 精测试仪现状和发展趋势喝酒后,呼出的气体会有酒味,表情行为会有反常。
基于.51单片机的数字电压表设计说明书
扬州市职业大学毕业设计(论文)设计(论文)题目:基于51单片机的数字电压表设计系别:电子系1专业:通信技术1班级:07通信3班1姓名:1学号:0706020305 1指导教师:李金奎完成时间:10年5月基于51单片机的数字电压表设计摘要:数字电压表简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。
数字电压表自从一九五二年问世以来,随着电子技术的飞跃发展,特别是目前,作为测量仪表、模拟指示仪表的数字化以及自动测量的系统,而得到了很大的发展。
数字电压表是从电位差计的自动化这种想法研制出来的,因此即便是最初的数字电压表,其精度也要比模拟式仪表高,而其成本比电位差计也高。
以后,DVM的发展就着眼在高精度和低成本两个方面。
单片机可单独地完成现代工业控制所要求的智能化控制功能,这是单片机最大的特征。
本电路主要采用AT89S51芯片和ADC0809芯片来完成一个简易的数字电压表,能够对输入的0~5 V的模拟直流电压进行测量,并通过一个4位一体的7段LED数码管进行显示。
该电压表的测量电路主要由三个模块组成:A/D转换模块、数据处理模块及显示控制模块。
A/D转换主要由芯片ADC0809来完成,它负责把采集到的模拟量转换为相应的数字量再传送到数据处理模块。
数据处理则由芯片AT89S51来完成,其负责把ADC0809传送来的数字量经一定的数据处理,产生相应的显示码送到显示模块进行显示;另外它还控制着ADC0809芯片的工作。
关键词:单片机数字电压表AT89S51 A/D转换ADC0809目录第1章产品要求及方案选择 (4)1.1设计的目的 (4)1.2产品的要求 (4)1.3各模块方案选择及论证 (4)第2章主要原件介绍 (6)2.1模数转换芯片ADC0809 (6)2.2控制芯片AT89S51 (7)2.3锁存芯片SN74LS373 (9)2.4 SEG-MPXE数码管 (10)第3章电压表原理系统硬件电路设计与实现 (11)3.1电压表的原理 (11)3.2 电源部分 (11)3.3 A/D转换电路 (11)3.4 单片机最小系统电路部分 (13)3.4.1时钟电路部分 (13)3.4.2复位电路部分 (14)3.5 显示电路部分 (14)3.7量程标定电路 (15)第4章系统软件设计 (17)4.1 主程序设计 (17)4.2 各子程序设计 (17)4.3源程序代码 (20)第5章调试 (24)参考文献 (24)附录 (25)附录A 原理图 (25)附录B 总结与感谢 (27)附录C 元件清单 (29)第1章产品要求及方案选择1.1 设计的目的通过制作简易数字电压表,加深对所学专业知识的认识,提高分析、解决工程实际问题的能力,提高对单片机的应用能力,提高收集文献、资料的能力,从而达到综合运用所学的专业知识进行电子产品设计、制作与调试的能力。
基于51单片机的温度测量系统
目录摘要 (I)ABSTRACT (II)1 绪论 (1)1.1选题的背景 (1)1.2课题研究的目的和意义 (1)1.3本文的结构 (1)2 系统总体方案设计 (1)2.1总体方案设计 (2)2.2部分模块方案选择 (3)2.2.1单片机的选择 (3)2.2.2温度检测方式的选择 (3)2.2.3显示部分的选择 (4)2.2.4电源模块的选择 (4)3 硬件电路的设计 (4)3.1 硬件电路设计软件 (4)3.2系统整体原理图 (5)3.3单片机最小系统电路 (6)3.4单片机的选型 (7)3.5温度测量模块 (8)3.5.1 DS18B20概述 (8)3.5.2 DS18B20测温工作原理 (11)3.5.3 DS18B20温度传感器与单片机的接口电路 (12)3.6 显示模块 (13)3.7 按键以及无线遥控模块 (15)3.7.1按键的相关知识 (15)3.7.2 5伏带解码四路无线接收板模块 (16)3.8 报警及指示灯模块 (18)3.9 电源模块 (19)4 系统软件设计及仿真部分 (20)4.1软件设计的工具 (20)4.1.1程序编写软件 (20)4.1.2仿真软件 (21)4.2各模块对应的软件设计 (22)4.2.1显示模块的程序 (22)4.2.2温度测量的程序 (26)4.2.3报警系统程序 (32)4.2.4按键程序 (33)4.2.5总体程序 (35)5 实物制作 (37)5.1电源部分 (37)5.2单片机最小系统部分 (37)5.3 总体实物 (37)6 总结 (38)7 致谢 (39)参考文献 (40)附录一 (41)附录二 (49)基于单片机的温度测量系统摘要随着测温系统的极速的发展,国外的测量系统已经很成熟,产品也比较多。
近几年来,国内也有许多高精度温度测量系统的产品,但是对于用户来说价格较高。
随着市场的竞争越来越激烈,现在企业发展的趋势是如何在降低成本的前提下,有效的提高生产能力。
基于51单片机的电压表的设计
引言在电量的测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测量最为经常。
而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器。
数字电压表简称DVM,它是采用数字化测量技术,把连续的模拟量转换成不连续、离散的数字形式并加以显示的仪表。
由于数字式仪器具有读数准确方便、精度高、误差小、测量速度快等特而得到广泛应用[1]。
传统的指针式刻度电压表功能单一,进度低,容易引起视差和视觉疲劳,因而不能满足数字化时代的需要。
采用单片机的数字电压表,将连续的模拟量如直流电压转换成不连续的离散的数字形式并加以显示,从而精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC实时通信。
数字电压表是诸多数字化仪表的核心与基础[2]。
以数字电压表为核心,可以扩展成各种通用数字仪表、专用数字仪表及各种非电量的数字化仪表。
目前,由各种单片机和A/D转换器构成的数字电压表作全面深入的了解是很有必要的。
最近的几十年来,随着半导体技术、集成电路(IC)和微处理器技术的发展,数字电路和数字化测量技术也有了巨大的进步,从而促使了数字电压表的快速发展,并不断出现新的类型[3]。
数字电压表从1952年问世以来,经历了不断改进的过程,从最早采用继电器、电子管和形式发展到了现在的全固态化、集成化(IC化),另一方面,精度也从0.01%-0.005%。
目前,数字电压表的内部核心部件是A/D转换器,转换的精度很大程度上影响着数字电压表的准确度,因而,以后数字电压表的发展就着眼在高精度和低成本这两个方面[4]。
本文是以简易数字直流电压表的设计为研究内容,本系统主要包括三大模块:转换模块、数据处理模块及显示模块。
其中,A/D转换采用ADC0808对输入的模拟信号进行转换,控制核心AT89C51再对转换的结果进行运算处理,最后驱动输出装置LED显示数字电压信号[5]。
1 设计总体方案1.1设计要求:完成系统的硬件电路设计与软件设计; 采用汇编或C 语言编程;采用Proteus 、KeilC 等软件实现系统的仿真调试。
单片机研究报告——数字电压表
数字电压表单片机课程设计报告姓名:刘俊草班级:10级电气一班学号:2010061189指导教师:杨志帮成绩:日期:2012年6月14日数字电压表电路设计报告一、题目及设计要求采用51系列单片机和ADC 设计一个数字电压表,输入为0~5V 线性模拟信号,输出通过LED 显示,要求显示两位小数.b5E2R 。
二、主要技术指标1、数字芯片A/D 转换技术2、单片机控制地数码管显示技术3、单片机地数据处理技术三、方案论证及选择主要设计方框图如下:1、主控芯片方案1:选用专用转化芯片INC7107实现电压地测量和实现,用四位数码管显示出最后地转换电压结果.缺点是京都比较低,内部电压转换和控制部分不可控制.优点是价格低廉.p1Ean 。
方案2:选用单片机AT89C51和A/D 转换芯片ADC0809实现电压地转换和控制,用四位数码管显示出最后地转换电压结果.缺点是价格稍贵;优点是转换京都高,且转换地过程和控制、显示部分可以控制.DXDiT 。
基于课程设计地要求和实验室能提供地芯片,我选用了:方案2. 2、显示部分方案1:选用4个单体地共阴极数码管.优点是价格比较便宜;缺点是焊接时比较麻烦,容易出错.方案2:选用一个四联地共阴极数码管,外加四个三极管驱动.这个电路几乎没有缺点;优点是便于控制,价格低廉,焊接简单.RTCrp 。
基于课程设计地要求和实验室所能提供地仪器,我选用了:方案2.四、电路设计原理电压采集模数转换单片机处理数码管显示模拟电压经过档位切换到不同地分压电路筛减后,经隔离干扰送到A/D 转换器进行A/D 转换.然后送到单片机中进行数据处理.处理后地数据送到LED 中显示.同时通过串行通讯与上位通信.硬件电路及软件程序.而硬件电路又大体可分为A/D 转换电路、LED 显示电路,各部分电路地设计及原理将会在硬件电路设计部分详细介绍;程序地设计使用汇编语言编程,利用Keil 和PROTEUS 软件对其编译和仿真.5PCzV 。
单片机电压采集
单片机电压采集(总10页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--基于Proteus的数字电压表设计与仿真专业:0811电子信息工程学号: 08128041 姓名:唐浩摘要:在现代检测技术中,常用高精度数字电压表进行检测,将检测到的数据送入微型计算机系统,完成计算、存储、控制等功能。
本文中数字电压表的控制系统采用AT89C51单片机,A/D转换器采用ADC0809为主要硬件,实现数字电压表的硬件电路与软件设计。
该系统的数字电压表电路简单,所用的元件较少,成本低,调节工作可实现自动化,还可以方便地进行8路A/D转换的测量,远程测量结果传送等功能。
数字电压表可以测量0~5V的电压值,并在四位LED数码管上轮流显示, 并且应用Proteus的ISIS软件进行单片机系统设计与仿真.关键词:单片机;数字电压表;A/D转换ADC0809;ProteusDesign and Simulation of digital Voltmeter Based on Proteus Abstract:In modern measuring technology, it is often required to conduct site measuring with a digital voltmeter. The data measured will then be input into the micro-computer system to execute such functions like calculating, storing, controlling, and displaying. The digital voltmeter control system described in this paper makes use of AT89C51 SC computer and ADC0809 A/D converter to fulfill the designing of the software as well as the electrical circuit. The voltmeter features in simple electrical circuit, lower use of elements, low cost and automatic regulation, while it can also easily carry out the duties of measuringA/D converted values from 8 routes and remote transfer of measuring data. The meter is capable of measuring voltage from 0 to 5 volt, and displaying themeasurements in turn or only that from a selected route,and use software ISIS of Proteus to realize the circuit design and simulation.。
动手用单片机控制5V继电器
用单片机控制继电器这里继电器由相应的S8050三极管来驱动,开机时,单片机初始化后的为高电平,+5伏电源通过电阻使三极管导通,所以开机后继电器始终处于吸合状态,如果我们在程序中给单片机一条:CLR 或者CLR 的指令的话,相应三极管的基极就会被拉低到零伏左右,使相应的三极管截至,继电器就会断电释放,每个继电器都有一个常开转常闭的接点,便于在其他电路中使用,继电器线圈两端反相并联的二极管是起到吸收反向电动势的功能,保护相应的驱动三极管.51单片机驱动继电器电路1.基本电路如右图。
2.单片机的IO口输出电流很小4到20mA,所以要用三极管放大来驱动继电器。
主要技术参数1.触点参数:触点形式:1C(SPDT)触点负载: 3A 220V AC/30V DC阻抗:≤100mΩ额定电流: 3A电气寿命:≥10万次机械寿命:≥1000万次2.线圈参数:阻值(士10%): 120Ω线圈功耗:额定电压:DC 5V吸合电压:DC释放电压:DC工作温度:-25℃~+70℃绝缘电阻:≥100MΩ型号:HK4100F-DC5V-SH线圈与触点间耐压:4000VAC/1分钟触点与触点间耐压:750VAC/1分钟继电器工作吸合电流为5V=40mA或5V/120Ω≈40mA。
三极管基极电流:继电器的吸合电流/放大倍数=基极电流(40mA/100 =4mA),为工作稳定,实际基极电流应为计算值的2倍以上。
基极电阻:()/基极电流=电阻值8mA =Ω)。
这里单片机IO口输出高电平触发三极管导通。
经过以上的分析计算得出:三极管可用极性是NPN的9014或8050,电阻选AT89S52 每个单个的引脚,输出低电平的时候,允许外部电路,向引脚灌入的最大电流为?10?mA;?每个?8?位的接口(P1、P2?以及?P3),允许向引脚灌入的总电流最大为?15?mA,而?P0?的能力强一些,允许向引脚灌入的最大总电流为?26?mA;?全部的四个接口所允许的灌电流之和,最大为?71?mA。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字电压表
1.实验任务
利用单片机STC89C52与ADC0809设计一个数字电压表,能够测量0-5V之间的直流电压值,四位数码显示。
2.现有元件
模数转换器ADC0804,STC89C52单片机,两个共阳极数码管。
3.硬件设计
3.1模数转换器ADC0809与单片机STC89C52的连接
(1) ADC0809规格及引脚分配图如下图3-1所示:
图3-1 ADC0809引脚图
(2) STC89C52各个引脚分布如下图3-2所示:
图3-2 STC89C52引脚图
(3) 硬件连线
(a) 把“单片机系统”区域中的P3.0与”模数转换模块ADC0809“区域中的ST端子用导线
相连接。
(b) 把“单片机系统”区域中的P3.1与”模数转换模块ADC0809“区域中的ALE端子用导线相连接。
(c) 把“单片机系统”区域中的P3.2与”模数转换模块ADC0809“区域中的OE端子用导线相连接。
(d) 把“单片机系统”区域中的P3.6与”模数转换模块ADC0809“区域中的EOC端子用导线相连接。
(e) 把“单片机系统”区域中的P3.7与”模数转换模块ADC0809“区域中的CLK端子用导线相连接。
(f) 把“模数转换模块ADC0809”区域中的ADDA、ADDB、ADDC端子用导线连接到单片机的VCC端子上。
把“模数转换模块ADC0809”区域中IN7与外接输入电压相连。
(g) 把“单片机系统”区域中的P2.0-P2.7连接到“模数转换模块ADC0809”区域中D0D1D2D3D4D5D6D7端子上。
(h) 把“单片机系统”区域中的P1.0-P1.7连接到“数码管”区域中ABCDEFG端子上。
把“单片机系统”区域中的P0.0-P0.1连接到“数码管”区域中12端口。
4. 电路原理图
图4 电路原理图
5. 程序设计内容
由于ADC0809在进行A/D转换时需要CLK信号,而此时ADC0809的CLK是接在单片机的P3.7口,也就是要求从P3.7输出CLK信号供ADC0809使用。
因此产生CLK信号的方法就要用软件来产生。
6. C语言源程序
#include<reg52.h>
sbit ALE = P3^1;
sbit ST = P3^0;
sbit EOC = P3^2;
sbit OE = P3^6;
sbit CLK = P3^7;
sbit wexuan1=P0^0;
sbit wexuan2=P0^1;
//sbit IN1 = P0^5;
//sbit IN2 = P0^6;
//sbit IN3 = P0^7;
unsigned int code table[]={
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90}; //段码表
unsigned int n=0,flag1=1;flag=1,ad_data,num1=0,num2=0;
void delay(xms)
{
unsigned int x,y;
for(x=xms;x>0;x--)
for(y=110;y>0;y--);
}
void display()//2位数码管显示
{
float a;
a=(float)ad_data/256*5*1000;
num1=(int)a/1000;
num2=(int)a/100-num1*10;
P1=table[num1];
wexuan1=1;
delay(1);
wexuan1=0;
P1=0xff;
P1=0x7f; //小数点
wexuan1=1;
delay(1);
wexuan1=0;
P1=0xff;
P1=table[num2];
wexuan2=1;
delay(1);
wexuan2=0;
P1=0xff;
}
void init()
{
ST = 0;
ALE = 0;
OE = 0;
CLK = 0;
// _EOC= 1;
TMOD=0x12;IP=0x09;
TH0=(65536-22)/256;
TL0=(65536-22)%256;
TH1=(65536-45872)/256;
TL1=(65536-45872)%256;
EA=1;
ET0=1;ET1=1;
TR0=1;TR1=1;
EX0=1;//打开外部中断
IT0=1;//从高到低的负跳变有效
P0=0x00;
}
void start() //int a,int b,int c) //选择通道{
// IN1 = a;IN2 = b;IN3 = c;
ALE = 0;ALE = 1;
ST = 0;ST = 1;
ALE = 0;ST = 0;
display();
delay(10);
}
int read()
{
unsigned int dat;
P2 = 0xff;
OE = 1;
display();
dat = P2;
OE = 0;
return (dat);
}
void main()
{
init();
while(1)
{ ST = 0;
ST = 1;
ST = 0;
if(n==20)
{
flag=1;
// display();
// start();
// while(EOC==0);//转换结束(EOC=1)读出数据后显示
// _EOC=0;
ad_data=read();
flag=0;
display();
//
n = 0;
// display();
// _EOC = 1;
}
display();//显示的是if中的电压值
}
}
void INTR_0() interrupt 0
{
while(1){
ad_data = read();
flag = 0;
display();}
}
void timer0() interrupt 1 // 输出500kHz 方波{
CLK=~CLK;
}
void timer1() interrupt 3
{
TH1=(65536-45872)/256;
TL1=(65536-45872)%256;
n++;
flag1=0;
}。