单片机实验二 数码管的控制
- 格式:doc
- 大小:38.50 KB
- 文档页数:2
单片机数码管实验报告单片机数码管实验报告引言:单片机作为一种重要的嵌入式系统,被广泛应用于各个领域。
在本次实验中,我们将探索单片机与数码管的结合,通过编程控制数码管的显示,实现不同的功能。
本文将详细介绍实验的背景、目的、方法和结果,并对实验过程中遇到的问题进行讨论和总结。
一、实验背景数码管是一种常见的输出设备,用于显示数字和字母等信息。
而单片机则是一种集成了微处理器、存储器和输入输出接口等功能的芯片,具有高度集成、灵活性强的特点。
将单片机与数码管结合起来,可以实现对数字的显示和控制,为实际应用提供了很大的便利。
二、实验目的本次实验的目的是通过编程控制单片机,实现对数码管的显示和控制。
具体包括以下几个方面:1. 学习单片机的基本原理和编程方法;2. 掌握数码管的工作原理和接口电路;3. 理解数码管的编码方式和显示原理;4. 实现基本的数码管显示功能,如显示数字、字母、符号等;5. 探索数码管的扩展应用,如时钟、计时器等。
三、实验方法1. 实验器材准备:本次实验所需的器材包括单片机开发板、数码管、连接线等。
2. 实验步骤:(1)搭建实验电路:将数码管与单片机开发板连接,并根据实验要求进行接线。
(2)编写程序:使用C语言编写程序,通过单片机的GPIO口控制数码管的显示。
(3)下载程序:将编写好的程序下载到单片机开发板上。
(4)实验验证:通过观察数码管的显示情况,验证程序的正确性。
四、实验结果经过实验验证,我们成功实现了对数码管的显示和控制。
通过编写不同的程序,我们可以实现以下几种功能:1. 显示数字:通过控制数码管的不同段点亮,可以显示0-9的数字。
2. 显示字母:通过控制数码管的不同段点亮,可以显示A-Z的字母。
3. 显示符号:通过控制数码管的不同段点亮,可以显示一些常见的符号,如"+"、"-"、"*"等。
4. 显示动画:通过快速切换数码管的显示内容,可以实现简单的动画效果,如闪烁、滚动等。
单片机数码管显示实验总结单片机数码管显示实验总结一、实验目的本次实验旨在通过单片机控制数码管显示,掌握数码管的工作原理、编程控制方法以及单片机与数码管的接口技术。
通过实验,提高自己的动手能力和编程技能,为今后的学习和实际工作打下坚实的基础。
二、实验原理数码管是一种常用的电子显示器件,它由多个LED组成,通过控制各个LED的亮灭来显示不同的数字或字符。
本次实验采用的是共阴极数码管,它由8个LED组成,通过单片机控制每个LED的亮灭状态来显示不同的数字或字符。
三、实验步骤1.硬件准备(1)选择合适的单片机开发板,如Arduino、STM32等。
(2)购买数码管及相应的驱动电路。
(3)准备杜邦线、电阻、电容等电子元件。
2.硬件连接(1)将数码管与单片机开发板连接起来。
(2)根据数码管驱动电路的要求,连接电源、地线和控制信号线。
(3)连接电源后,打开开发板电源,观察数码管的显示效果。
3.编程控制(1)在开发板上编写程序,控制数码管显示不同的数字或字符。
(2)使用相应的编译器将程序编译成可执行文件,上传到开发板上。
(3)观察数码管的显示效果,调试程序,使其达到预期效果。
4.测试与评估(1)在不同情况下测试数码管的显示效果,如按键输入、传感器数据等。
(2)对程序进行优化和改进,提高程序的效率和稳定性。
(3)总结实验过程中的问题和解决方法,为今后的学习和实际工作提供参考。
四、实验结果及分析1.实验结果在实验过程中,我们成功地实现了对数码管的编程控制,使其能够根据不同的输入显示不同的数字或字符。
同时,我们也发现了一些问题,如数码管的亮度不够、显示的数字不清晰等。
经过调试和改进,我们解决了这些问题,使数码管的显示效果更加理想。
2.结果分析通过本次实验,我们深入了解了数码管的工作原理和编程控制方法,掌握了单片机与数码管的接口技术。
同时,我们也发现了一些问题,如数码管的亮度不够、显示的数字不清晰等。
这些问题的出现可能与硬件连接、编程控制等方面有关。
单片机实验总结引言单片机是一种集成电路,具有计算、存储和控制功能,并可编程。
在学习单片机的过程中,进行了一系列的实验。
本文旨在总结我在单片机实验中的经验和收获,并对实验中遇到的问题和解决方法进行归纳。
实验一:LED闪烁在第一个实验中,我们学习了如何通过单片机控制LED实现闪烁效果。
这个实验使我对单片机的基本结构和工作原理有了更深的理解。
通过编写简单的程序,我成功实现了LED的闪烁,并通过修改程序中的参数实现了不同频率和节奏的闪烁效果。
实验二:数码管显示计数器实验二是在实验一的基础上进一步学习了数码管的控制。
通过编写程序,我们能够将实验一中的计数器的结果显示在数码管上。
在这个实验中,我学会了如何控制多个数码管的显示,以及如何实现数字的动态显示效果。
这个实验提高了我对单片机编程的熟练程度。
实验三:蜂鸣器发声实验三是学习如何通过单片机控制蜂鸣器发声。
通过对蜂鸣器的控制,我们可以发出不同的音调和节奏。
在这个实验中,我学会了如何使用单片机的PWM功能控制蜂鸣器,以及如何编写程序实现不同的音调和节奏。
这个实验加深了我对单片机的理论与实践的联系。
实验四:温度传感器数据采集实验四是学习如何通过单片机采集温度传感器的数据。
通过编写程序,我们可以获取温度传感器的输出值,并将其显示在数码管上。
在这个实验中,我学会了如何接口温度传感器,以及如何读取和处理传感器的输出值。
这个实验让我更深入地了解了单片机在数据采集方面的应用。
实验五:红外遥控器实验五是学习如何通过单片机接收红外遥控器的信号,并解析出其中的指令。
通过编写程序,我们可以控制LED的亮灭,实现对电器的遥控。
在这个实验中,我学会了如何接口红外接收头,并如何解析红外遥控器发送的信号。
这个实验为我进一步了解单片机在无线通信方面的应用提供了基础。
实验六:电机控制实验六是学习如何通过单片机控制电机的转速和方向。
通过编写程序,我们可以实现电机的正转、反转和调速功能。
在这个实验中,我学会了如何接口电机驱动器,并使用PWM信号控制电机的转速。
单片机实验报告范文一、实验目的本实验的目的是通过学习单片机的基本原理和使用方法,掌握单片机在各个实际应用中的基本技能。
二、实验器材及原理1.实验器材:STC89C52单片机、电源、晶振、按键、LED灯、蜂鸣器等。
2.实验原理:单片机是一种微处理器,能够完成各种复杂的功能。
通过学习单片机的工作原理和编程方法,可以控制各种外围设备,实现不同的功能。
三、实验内容及步骤1.实验一:点亮LED灯步骤:(1)连接电源和晶振,将STC89C52单片机连接到电路板上。
(2)编写程序,点亮LED灯。
2.实验二:按键控制LED灯步骤:(1)连接电源和晶振,将STC89C52单片机连接到电路板上。
(2)将按键和LED灯与单片机相连。
(3)编写程序,实现按下按键控制LED灯亮灭。
3.实验三:数码管显示步骤:(1)连接电源和晶振,将STC89C52单片机连接到电路板上。
(2)将数码管与单片机相连。
(3)编写程序,将数字输出到数码管上显示。
4.实验四:定时器应用步骤:(1)连接电源和晶振,将STC89C52单片机连接到电路板上。
(2)编写程序,实现定时器功能。
四、实验结果及分析1.实验一:点亮LED灯LED灯成功点亮,证明单片机与外部设备的连接正常。
2.实验二:按键控制LED灯按下按键后,LED灯亮起,松开按键后,LED灯熄灭。
按键控制LED 灯的效果良好,说明单片机的输入输出功能正常。
3.实验三:数码管显示数码管成功显示数字,说明单片机能够实现数字输出功能。
通过程序设计,可以实现数码管显示不同的数字。
4.实验四:定时器应用定时器正常运行,能够实现精确的定时功能。
通过调节定时器的参数,可以实现不同的定时功能。
五、实验总结通过本次实验,我们学习了单片机的基本原理和使用方法。
通过掌握单片机的编程技巧,我们能够实现各种复杂的功能,如控制LED灯、按键控制、数码管显示等。
这些技能对于日常生活和工程设计都具有很大的实用性。
在实验过程中,我们遇到了各种问题,如电路连接错误、程序编写错误等。
一、实验目的1、在之前单键实验和中断控制数码管“静态”显示实验的基础上,把单键判断、数码管显示和中断结合起来编写中断程序实现单键控制一位数码管;2、在实现控制一位数码管显示的基础上用单键控制两位数码管显示。
二、实验所需器材与软件硬件:电脑、传输线、AT89S52单片机软件:编程软件Keil uVision3;读写软件MePro V5.02三、实验程序的及其分析:1、单键控制一位数码管显示主要设计思路:在中断主程序后加入单键判断键按下情况判断语句,把数码管显示程序放在中断子程序中。
当有键按下且有中断请求时,重新给数码管显示偏移地址赋值,从而改变显示内容。
程序:ORG 0000HAJMP MAIN ;转向主程序ORG 001BH ;中断矢量地址AJMP T_INT ;转向中断服务程序MAIN: ;主程序标号MOV R3,#0 ;表偏移地址MOV DPTR,#TAB ;把表头地址赋值给寄存器DPTRMOV TMOD,#10H ;设定定时器工作于模式1MOV TH1,#0FEH ;定时器赋初值MOV TL1,#0EHSETB ET1 ;开中断SETB EASETB TR1 ;启动定时器LOOP1:JNB P1.4, LOOP4AJMP LOOP1LOOP4:ACALL DELAYJNB P1.4, LOOP_ADD 单键按下判断程序LOOP_ADD:INC R3CJNE R3,#10,LOOP8MOV R3,#0LOOP8: AJMP LOOP1T_INT: MOV TH1,#0FEHMOV TL1,#0EHMOV A,R3 中断程序内嵌的数码管显示程序MOVC A,@A+DPTRMOV P0,AMOV P2,#11111110BRETITAB:DB 0C0H,0F9H,0A4H,0B0H ,99H,92H,82H,0F8H ;表内容DB 80H,90HDELAY:MOV R5,#64HLOOP5:MOV R7,#0FFHLOOP6:NOPNOP 用于单键按下防抖动的延时程序DJNZ R7,LOOP6DJNZ R5,LOOP5RET2、单键控制两位数码管显示设计思路:用两个寄存器分别存放数码管显示的个位和十位,并且在数码管显示程序中用移位指令对数码管的位码进行移位,使每次执行中断程序时显示一位数,循环两次中断程序后“静态”显示两位数字。
实验二数码管显示本实验的目的是掌握数码管的工作原理与使用,实现数码管的静、动态显示。
静态数码管我们先看看什么是数码管,上图就是各种长相各种样子的数码管了,肯定很眼熟了吧。
不管将几位数码管连在一起,数码管的显示原理都是一样的,都是靠点亮内部的发光二极管来发光,下面就来我们讲解一个数码管是如何亮起来的。
数码管内部电路如下图所示,从右图可看出,一位数码管的引脚是10个,显示一个8字需要7个小段,另外还有一个小数点,所以其内部一共有8个小的发光二极管,最后还有一个公共端,生产商为了封装统一,单位数码管都封装10个引脚,其中第3和第8引脚是连接在一起的。
而它们的公共端又可分为共阳极和共阴极,中间图为共阴极内部原理图,右图为共阳极内部原理图。
上图展出了常用的两种数码管的引脚排列和内部结构。
总所周知,点亮发光二极管就是要给予它足够大的正向压降。
所以点亮数码管其实也就是给它内部相应的发光二极管正向压降。
如上图左(一共a、b、c、d、e、f、g、DP 八段),如果要显示“1”则要点亮b、c 两段LED;显示“A”则点亮a、b、c、e、f、g 这六段LED;我们还知道,既然LED 加载的是正向压降,它的两端电压必然会有高低之分:如果八段LED 电压高的一端为公共端,我们称之为共阳极数码管(如上图中);如果八段LED 电压低的一段为公共端,则称之为共阴极数码管(上图右)。
所以,要点亮共阳极数码管,则要在公共端给予高于非公共端的电平;反之点亮共阴极数码管,则要在非公共端给予较高电平。
对共阴极数码来说,其8个发光二极管的阴极在数码管内部全部连接在一起,所以称“共阴”,而它们的阳极是独立的,通常在设计电路时一般把阴极接地。
当我们给数码管的任意一个阳极加一个高电平时,对应的这个发光二极管就点亮了。
如果想要显示出一个8字,并且把右下角的小数点也点亮的话,可以给8个阳极全部送高电平,如果想让它显示出一个0字,那么我们可以除了给第“g, dp”这两位送低电平外,其余引脚全部都送高电平,这样它就显示出0字了。
51单片机实验报告一、引言51单片机是一种广泛应用于嵌入式系统开发的微控制器芯片。
本实验旨在通过对51单片机的实验研究,加深对该芯片的理解和应用。
二、实验一:LED灯闪烁控制本实验通过编写程序,控制51单片机上的LED灯以特定的频率闪烁。
为了实现这个目标,我们首先需要了解51单片机的引脚布局,确定LED灯的连接方式。
然后,通过编写相应的汇编程序,控制引脚的电平变化,从而实现LED灯的闪烁。
三、实验二:数码管显示数码管是一种常见的输出设备,通过控制引脚的输出来显示特定的数字。
本实验中,我们通过编写程序,实现通过51单片机控制数码管的显示。
通过对数码管的驱动原理和编程的学习,我们可以灵活地控制数码管的显示内容和频率。
四、实验三:蜂鸣器发声蜂鸣器是一种常见的声音输出设备,通过控制引脚的输出来产生特定的声音。
本实验中,我们通过编写程序,实现通过51单片机控制蜂鸣器的发声。
通过学习蜂鸣器的驱动原理和编程,我们可以根据需要产生不同频率和节奏的声音。
五、实验四:温湿度检测温湿度检测是一种常见的环境监测需求。
本实验中,我们通过引入温湿度传感器,实现通过51单片机获取环境的温度和湿度信息。
通过编写程序和读取传感器的数据,我们可以实时监测环境的温湿度,并进行相应的控制和反馈。
六、实验五:红外遥控红外遥控是一种常见的无线通信方式,通过发送和接收红外信号来实现远程控制。
本实验中,我们通过引入红外发射和接收模块,实现通过51单片机进行红外遥控。
通过编写相应的程序,设置红外遥控的编码和解码方式,我们可以实现对外部设备的遥控操作。
七、实验六:定时器应用定时器是51单片机中的重要模块,它可以实现定时和计数等功能。
本实验中,我们通过学习定时器的工作原理和编程,实现通过51单片机进行定时和计数的应用。
通过编写相应的程序和设置定时器的参数,我们可以实现不同的定时和计数功能,满足各种需要。
八、实验七:串口通信串口通信是一种常见的数据通信方式,通过串口接口发送和接收数据。
51单片机实验报告51单片机是一种广泛应用于控制领域的微型处理器。
本文将介绍我所进行的两个基础实验,包括实验目的、实验内容、实验原理和实验结果。
实验一——点亮LED灯实验目的:了解51单片机的基本接口和编程方法;学会使用单片机的开发工具和调试器;掌握51单片机控制LED灯的方法。
实验内容:将LED灯连接至51单片机的P1.0引脚,并进行控制。
编写程序,使得LED灯能稳定地点亮。
实验原理:单片机可通过其IO口控制外部设备,使用高低电平来控制LED灯的开关。
P1.0是51单片机的一个输出端口,可通过赋予其电平状态从而控制LED的点灯与熄灭。
当单片机输出高电平时,LED灯会点亮,否则会熄灭。
实验结果:经过编写程序和调试后,成功实现了LED灯的点亮和熄灭。
按下按键即可改变LED的状态。
实验二——数码管计数器实验目的:了解51单片机的数字口和中断响应机制;掌握编写定时器中断程序的方法;学会使用键盘进行输入和外接数码管进行输出。
实验内容:通过对8位数码管控制台的编程,实现对数字的控制,使用定时器中断实现计数器功能,加深对51单片机中断响应机制的理解。
实验原理:单片机中断请求源包括外部中断源、定时器/计数器中断源以及串口中断源。
本次实验使用定时器中断,可实现一定时间间隔内数字的加减;使用键盘进行输入,采用P3口中断请求源实现按键响应,输出则通过数码管接口外设实现。
实验结果:通过定时器计数器、中断响应和数码管接口外设,成功实现一组数字的计数。
按下按键即可进行数字的加减,并通过数码管显示出来。
结语:本文所述实验为51单片机的基础操作,相信可以为读者提供实用的参考和帮助,帮助大家更加深入地理解51单片机的基础知识和使用方法。
单片机实验报告总结单片机实验报告总结引言:单片机是一种集成电路,具有微处理器核心、存储器、输入输出接口等功能。
在现代电子技术领域中,单片机被广泛应用于各种电子设备中,如家电、汽车、通信设备等。
本文将对我在单片机实验中的学习和实践进行总结,分享我在实验中的收获和心得体会。
实验一:LED灯闪烁实验在这个实验中,我们学习了如何使用单片机控制LED灯的闪烁。
通过编写简单的程序,我们成功地实现了LED灯的闪烁功能。
这个实验让我深刻体会到了单片机的强大和灵活性。
通过控制单片机的GPIO口,我们可以实现各种各样的功能,这让我对单片机的应用前景充满了信心。
实验二:数码管显示实验在这个实验中,我们学习了如何使用单片机控制数码管进行数字的显示。
通过编写程序,我们成功地将数字从0到9依次显示在数码管上。
这个实验让我了解了数码管的工作原理和控制方式。
在实验过程中,我遇到了一些问题,如数字显示不清晰、显示不准确等,但通过不断的调试和优化,最终解决了这些问题。
这个实验让我明白了实践中的问题和挑战,并培养了我解决问题的能力。
实验三:按键控制实验在这个实验中,我们学习了如何使用单片机实现按键控制。
通过编写程序,我们成功地实现了按下按键时LED灯亮起,松开按键时LED灯熄灭的功能。
这个实验让我了解了按键的原理和使用方法。
在实验过程中,我遇到了一些问题,如按键抖动、按键误触等,但通过添加软件消抖和优化程序,最终解决了这些问题。
这个实验让我明白了软件的重要性和优化的必要性。
实验四:PWM调光实验在这个实验中,我们学习了如何使用单片机实现PWM(脉宽调制)调光功能。
通过编写程序,我们成功地实现了LED灯的亮度可调节。
这个实验让我了解了PWM的原理和应用。
在实验过程中,我遇到了一些问题,如PWM频率调节不准确、亮度不连续等,但通过调整参数和优化程序,最终解决了这些问题。
这个实验让我明白了硬件和软件的协同工作的重要性。
实验五:温度检测实验在这个实验中,我们学习了如何使用单片机实现温度检测功能。
单片机实验二数码管的显示控制
[实验要求]
[1] 静态显示实验:利用P0口和两个74HC573分别控制6个数码管的字选和位选,利用查表控制某个或某几个数码管显示给定的相同字符(0-9,A-F)。
[2] 动态显示实验:操作前3个数码管,利用数码管的动态扫描原理,使其显示不同的给定字符(0-9,A-F)。
[实验原理]
数码管的显示原理:本实验所用数码管为八段共阴极数码管,即一个数码管内有8个发光二极管,该8个发光二极管的阴极全部接在一起并接地,阳极是独立的,当我们从外部给任一个阳极加一个高电平时这个发光二极管点亮,想让数码管显示某字符就给相对应的发光二极管送高电平,因此我们在显示显示数字时首先给0~9十个数字编码,点亮某数字时直接送对应的编码到它的阳极即可(程序可采用查表方法)。
另,一般数码管每段点亮至少需要10mA,而单片机I/O口送不出如此大的电流,故实验板使用了驱动芯片74HC573,其输出电流较大,足够点亮数码管。
本实验板上六位数码管中每个相同段号(段指a,b,c,d,e,f,g,h)全部是接在一起的,其中每一个位(阳极)是独立的,所以在静态显示的时候所有的数码管只能显示相同的数字,利用人眼的视觉延时,可采用动态扫描方法实现不同位显示不同数字。
共阴极数码管的数字编码:
“0”3FH “1”06H “2”5BH “3”4FH
“4”66H “5”6DH “6”7DH “7”07H
“8”7FH “9”6FH “A”77H “b”7CH
“C”39H “d”5EH “E”79H “F”71H
[实验目的]
(1)了解八段数码管的显示原理
(2)学习查表子程序的使用。
(3)掌握单片机对数码管的动态扫描显示操作方式。
[硬件电路]
数码管控制实验电路图。