4位数码管实验报告

合集下载

4bitled数码管

4bitled数码管

4bitled数码管4位LED数码管是一种常见的显示器件,它由四个独立的发光二极管组成,每个管子都可以显示0到9的数字。

它在电子设备、数码时钟、计算器等各种应用中得到广泛应用。

下面我将就4位LED数码管的原理、使用方法和一些常见问题进行详细介绍。

首先,4位LED数码管使用的是共阴共阳的工作方式。

通过控制四个管子的导通和不导通,可以实现不同数字的显示。

比如,要显示数字0,只需将1、2、3、4四个管子同时导通,其他数字也是相同的道理。

数码管是以数字编码的方式来控制数码管上的显示内容。

常见的编码方式有BCD码和7段码两种。

其中,BCD码是二进制编码的一种,使用4位二进制数来编码0到9的数字。

而7段码则是用7位二进制数来编码0到9的数字和一些字母、符号等。

在使用4位LED数码管时,需要接入控制电路,并通过该电路来实现数字的显示。

常用的控制电路有集成电路和单片机等。

集成电路是一种常见的控制4位LED数码管的方式。

通过将控制电路与数码管连接,可以实现不同数字的显示。

集成电路中有很多种类和型号,常用的有74HC138、74HC595等。

这些集成电路可以将控制信号转化为数码管的工作电压和电流,从而控制数码管的亮灭。

单片机也是常见的控制4位LED数码管的方式。

通过编写程序,将需要显示的数字发送到数码管的对应引脚上,就可以实现数字的显示。

单片机有很多种类和型号,常用的有51单片机、Arduino等。

在使用4位LED数码管时,还需要注意一些问题。

首先,需要合理选择控制电路的工作电压和工作电流,以免损坏数码管。

其次,需要正确连接数码管的引脚,以确保正常工作。

另外,要注意信号的稳定性和抗干扰能力,尽量避免信号的干扰和失真。

总结起来,4位LED数码管是一种常见的显示器件,它通过控制四个发光二极管的亮灭,可以实现不同数字的显示。

使用4位LED数码管需要接入控制电路,常见的控制方式有集成电路和单片机。

在使用过程中,需要注意电压电流的合理选择、引脚的正确连接和信号的稳定性等问题。

数码管的显示的实验报告

数码管的显示的实验报告

数码管的显示的实验报告数码管的显示的实验报告引言:数码管是一种常见的数字显示装置,广泛应用于各种电子设备中。

本实验旨在通过实际操作,了解数码管的原理和工作方式,并通过一系列实验验证其显示效果和功能。

实验一:数码管的基本原理数码管是由多个发光二极管(LED)组成的,每个发光二极管代表一个数字或符号。

通过对不同的发光二极管进行点亮或熄灭,可以显示出不同的数字或符号。

本实验使用的是共阳数码管,即共阳极连接在一起,而阴极分别连接到控制芯片的输出引脚。

实验二:数码管的驱动电路为了控制数码管的显示,需要使用驱动电路。

常见的驱动电路有共阴极驱动和共阳极驱动两种。

本实验使用的是共阳极驱动电路。

驱动电路由控制芯片、电阻和电容组成。

控制芯片通过控制输出引脚的高低电平来控制数码管的点亮和熄灭。

实验三:数码管的显示效果通过控制芯片的输出引脚,可以实现数码管的显示效果。

本实验使用的是四位数码管,可以显示0-9的数字。

通过改变控制芯片输出引脚的电平,可以控制数码管显示不同的数字。

实验中通过编写程序,使数码管显示从0到9的数字循环显示,并通过按键控制数字的增加和减少。

实验四:数码管的多位显示除了显示单个数字外,数码管还可以实现多位显示。

通过控制不同位数的数码管,可以显示更多的数字或符号。

本实验使用的是四位数码管,可以同时显示四个数字。

通过编写程序,可以实现四位数码管的多位显示,例如显示当前时间、温度等信息。

实验五:数码管的亮度调节数码管的亮度可以通过改变驱动电路中的电阻值来实现。

本实验通过改变电阻值,调节数码管的亮度。

实验中通过编写程序,通过按键控制数码管的亮度增加和减少,从而实现亮度的调节。

结论:通过本次实验,我们深入了解了数码管的原理和工作方式。

数码管可以通过驱动电路的控制,实现数字和符号的显示。

同时,数码管还可以实现多位显示和亮度调节。

数码管作为一种常见的数字显示装置,具有广泛的应用前景,可以应用于各种电子设备中。

通过进一步的研究和实践,我们可以更好地利用数码管的功能,满足不同应用场景的需求。

拨码开关输入数码管显示实验

拨码开关输入数码管显示实验

综合课程设计实验报告班级:姓名:学号:11指导老师:实验名称:拨码开关输入数码管显示实验实验要求:1. 掌握数码管显示原理2. 掌握拨码开关工作原理3. 通过FPGA用拨码开关控制数码管显示实验目标:4位拨码开关分别对应4位数码管,拨动任意1位开关,对应的数码管将显示数字1,否则显示数字0。

实验设计软件Quartus II实验原理1.数码管显示模块电路原理图:如图所示,数码管中a,b,c,d,e,f,g,dp分别由一个引脚引出,给对应的引脚高电平,则对应引脚的LED点亮,故我们在程序中可以设定一个8位的二进制数reg【7:0】h,每一位对应一个相应的引脚输出,那么我们就可以通过对x的赋值,控制对应的8个LED亮灭的状态进行数字显示。

例如,如果我们显示数字2,则在数码管中,a、b、d、e、g亮,c、f、dp不亮,则显示的是数字2,即h=’b代表显示数字2。

2.拨码开关模块电路原理图:拨码开关有8个引脚,每个引脚对应于数码管的一个LED灯,当拨码开关的一个引脚是高电平时,则对应的数码管一个LED灯亮,其他7个LED等不亮。

通过此原理来实现数码管的LED灯亮暗情况从而实现数码管的数字显示。

例如当第一个拨码接通时,此时输入信号为8'b对应的数码管的输出信号为out=8'b,此时相当于数码管a,b,c,d,e,f,g亮,7段数码管全部显示,显示的数字为8。

程序代码module bomakaiguan(out,key_in,clk);assign p='b1111;output[7:0] out=8'b;input[7:0] key_in;input clk;reg[7:0] out;always @(posedge clk)begincase(key_in)8'b: out=8'b;8'b00000001: out=8'b01100000;8'b00000010: out=8'b;8'b00000100: out=8'b;8'b00001000: out=8'b01100100;8'b00010000: out=8'b;8'b00100000: out=8'b;8'b01000000: out=8'b;endcaseendendmodule。

数电实验报告数码管显示控制电路设计

数电实验报告数码管显示控制电路设计

数电实验报告数码管显示控制电路设计实验目的:设计一个数码管显示控制电路,实现对数码管的显示控制。

实验器材:数码管、集成电路、电阻、开关、电源等。

实验原理:数码管是一种用它们来显示数字和字母的一种装置。

它由几个独立的发光二极管组成,每个数字由不同的发光二极管的组合表示。

对数码管的显示控制通常使用多路复用技术实现,即通过控制数码管的分段和共阴极或共阳极来实现不同数字的显示。

实验步骤:1.确定数码管的类型和接线方式。

本实验中使用共阳数码管,数码管共阳极通过电阻连接到正极电源。

2.选取适当的集成电路作为显示控制电路。

本实验中选择CD4511作为显示控制芯片,它可以实现对4位共阳数码管的显示控制。

3.连接电路。

将4位共阳数码管的阳极分别连接到CD4511芯片的A、B、C和D端口,共阴极连接到电源正极。

将CD4511芯片的输入端口IN1、IN2、IN3和IN4连接到微控制器的输出端口,控制微控制器输出的电平来选通不同的数码管。

4.设置微控制器的输出。

通过编程或手动设置微控制器的输出端口来控制数字的显示。

根据需要显示的数字,将相应的输出端口设置为高电平,其余端口设置为低电平。

通过适当的延时控制,便可以实现数字的连续显示。

实验结果与分析:经过上述步骤完成电路搭建后,我们可以通过改变微控制器的输出端口来控制数码管的显示。

当我们设置不同的输出端口为高电平时,相应的数码管会显示对应的数字。

通过适当的延时控制,我们可以实现数字的连续显示,从而实现对数码管的显示控制。

实验结论:通过本次实验,我们成功地设计并实现了一个数码管显示控制电路。

通过对微控制器输出端口的控制,我们可以实现对数码管的数字显示控制。

这对于数字显示系统的设计和开发具有重要意义。

实验心得:通过本次实验,我对数码管的显示控制有了更深入的了解。

数码管作为一种常见的数字显示装置,广泛应用于各种电子设备中。

掌握其显示控制原理和方法对于电子技术爱好者来说至关重要。

通过实际操作,我对数码管显示控制电路的设计和实现有了更深入的认识,同时也提高了我对数字显示系统的理解和设计能力。

《静态显示学号》实验报告(可编程逻辑器件)

《静态显示学号》实验报告(可编程逻辑器件)

电子信息与自动化学院《可编程逻辑器件》实验报告学号:姓名:实验名称:静态显示学号一、实验原理LED七段数码管根据LED的接法不同分为共阴和共阳两类,是电子开发过程中常用的输出显示设备。

在本次实验中,使用的是四个共阳极型七段数码管。

每当送入一次字形码后,四个数码管同时显示同一数字,显示字形可一直保持,然后间隔1s再送入新的字形码,四个数码管同时显示下一个数字,以此类推,直到显示完四个数字再重头开始,轮流往复,便可实现四位学号的静态显示。

图1二、实验步骤1、编辑数码管静态显示的源程序执行“File”→“New”→“Verilog HDL File ”命令,进入Verilog HDL 文本编辑方式,按下列数码管静态显示的Verilog HDL 源代码输入源程序:module jiaoduxianshi (clk, rst, out0) ;input clk,rst;output reg[6:0] out0;reg [3:0] state;parameters0=4'd0,s1=4'd1, s2=4'd2, s3=4'd3, s4=4'd4,s5=4'd5, s6=4'd6, s7=4'd7;always@ (posedge clk or negedge rst)beginif(!rst) begin out0=7'b0111111;state=s0;endelsebegincase (state)//共阳s0: begin out0=7'b0010010;state<=s1;end//display 2s1: begin out0=7'b0000001;state<=s2;end//display 0s2: begin out0=7'b1001111;state<=s3;end //display 1s3: begin out0=7'b0001111;state<=s4;end //display 7s4: begin out0=7'b1000001;state<=s5;end //display 6s5: begin out0=7'b0001111;state<=s6;end //display 7 s6: begin out0=7'b0000110;state<=s7;end //display 3s7: begin out0=7'b1001111;state<=s0;end //display 1default:state<=0;endcaseendendendmodule图2 RTL viewer2、设计文件存盘和编译完成数码管静态显示的文本编辑后,以jingtaixianshi.v件名将设计文件保存在工程目录中,“.v”表示Verilog HDL 源程序文件。

单片机实验3 数码管控制实验-动态显示

单片机实验3  数码管控制实验-动态显示
/**********实验二数码管控制实验-动态显示**************/
;实验名称:数码管动态显示
;功能:4位数码管循环显示“0123”“4567”“89AB”“CDEF”,间隔0.5S。
;编写人:陈建泽
;编写时间:2010年11月2日
/**********************程序代码************************/
D1MS: MOV R2,#250 ;250*(1+1+2)=1000us=1ms
L1:NOP
NOP
DJNZ R2,L1
RET
/*****************中断服务子程序*****************/
T0_INT:MOV TH0,#(65536-50000)/256
MOV TL0,#(65536-50000)MOD 256
MOV A,R4
CJNE A,#16,L3
AJMP MAIN
L3:MOV R5,A
AJMP L1
DIS:MOV P2,R6;用A作为中间寄存器,因后面要循环显示
MOV A,R5
ACALL SQR ;查表
MOV P0,A
ACALL D1MS ;1ms
INC R5
MOV A,R6
RL A;指向下一位
MOV R6,A
RET;子程序返回
TAB: DB 0C0H,0F9H,0A4H,0B0H ;共阳极字型码表0、1、2、3
DB 99H, 92H, 82H, 0F8H;共阳极字型码表4、5、6、7
DB 80H, 90H, 88H, 83H;共阳极字型码表8、9、A、B
DB 0C6H,0A1H,86H, 8EH;共阳极字型码表C、D、E、F

(完整word版)数码管动态显示实验报告

(完整word版)数码管动态显示实验报告

实验四数码管动向显示实验一一、实验要求1.在 Proteus 软件中画好 51 单片机最小核心电路,包括复位电路和晶振电路2.在电路中增加四个7 段数码管 ( 共阳 / 共阴自选 ), 将 P1 口作数据输出口与 7 段数码管数据引脚相连, P2.0~P2.3 引脚输出选控制信号3.在 Keil 软件中编写程序 , 采用动向显示法 , 实现数码管分别显示数字1,2, 3, 4二、实验目的1.坚固 Proteus 软件和 Keil 软件的使用方法2.学习端口输入输出的高级应用3.掌握 7 段数码管的连接方式和动向显示法4.掌握查表程序和延时等子程序的设计三.实验说明本实验是将单片机的P1 口做为输出口,将四个数码管的七段引脚分别接到至P1.7 。

由于电路中采用共阳极的数码管,因此当P1 端口相应的引脚为0 时,对应的数码管段点亮。

程序中预设了数字0-9 的段码。

由于是让四个数码管显示不同样的数值,因此要用扫描的方式来实现。

因此定义了scan 函数,接到单片机的p2.0 至在实验中,预设的数字段码表存放在数组TAB中,由于段码表是固定的,因此储藏种类可设为 code。

在 Proteus 软件中依照要求画出电路,再利用Keil软件按需要实现的功能编写 c 程序,生成 Hex 文件,把Hex 文件导到Proteus 软件中进行仿真。

为了可以更好的考据明验要求,在编写程序时需要延时0.5s ,能让人眼更好的分辨;89C51 的一个机器周期包括12 个时钟脉冲,而我们采用的是12MHz晶振,每一个时钟脉冲的时间是1/12us ,因此一个机器周期为 1us。

在 keil程序中,子函数的实现是用void delay_ms(int x),其中x为1时是代表1ms。

四、硬件原理图及程序设计〔一〕硬件原理图设计电路中 P1.0 到 P1.7 为数码管七段端口的控制口,排阻 RP1阻值为 220Ω,到为数码管的扫描信号。

单片机课程设计实验报告+基于单片机的数字时钟+含完整实验代码

单片机课程设计实验报告+基于单片机的数字时钟+含完整实验代码

单片机课程设计报告基于单片机的数字时钟姓名:班级:学号:一、前言利用实验板上的4个LED数码管,设计带有闹铃、秒表功能的数字时钟。

功能要求:a)计时并显示(LED)。

由于实验板上只有4位数码管,可设计成显示“时分”和显示“分秒”并可切换。

b)时间调整功能。

利用4个独立按钮,实现时钟调整功能。

这4个按钮的功能为工作模式切换按钮(MODE),数字加(INC),数字减(DEC)和数字移位(SHITF)。

c)定闹功能。

利用4个独立按钮设定闹钟时间,时间到以蜂鸣器响、继电器动作作为闹铃。

d)秒表功能。

最小时间单位0.01秒。

二、硬件原理分析1.电源部分电源部份采用两种输入接口(如上图)。

a)外电源供电,采用2.1电源座,可接入电源DC5V,经单向保护D1接入开关S1。

b)USB供电,USB供电口输入电源也经D1单向保护,送到开关S1。

注:两路电源输入是并连的,因此只选择一路就可以了,以免出问题。

S1为板子工作电源开关,按下后接通电源,提供VCC给板子各功能电路。

电路采用两个滤波电容,给板子一个更加稳定的工作电源。

LED为电源的指示灯,通电后LED灯亮。

2.蜂鸣器蜂鸣器分为有源和无源两种,有源即两引脚有一个直流电源就可以长鸣,无源则需要一个1K左右的脉冲才可以蜂鸣,因此对于按键的提示音及报警蜂鸣使用有源来得方便。

有源也可以当无源使用,而无源则不能当有源使用,当然用有源蜂鸣器作音乐发声会失真厉害。

如上图:单片机P15输出高低电平经R21连接三极管B极,控制三极管的导通与截止,从而控制蜂鸣器的工作。

低电平时三极管导通,蜂鸣器得电蜂鸣,高电平时三极管截止,蜂鸣器失电关闭蜂鸣。

电路使用一个四位共阳型数码管,四个公共阳级由三极管放大电流来驱动,三极管由P10-P13控制开与关。

数码管的阴级由P0口经过电阻限流连接。

例如,要十位的数码管工作,P12输出0,使三极管Q12导通,8脚得电,当P0口相应位有输出0时,点亮相应的LED灯组合各种字符数字。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

竭诚为您提供优质文档/双击可除
4位数码管实验报告
篇一:数码管实验报告
篇一:实验八数码管led实验报告
苏州大学实验报告
院、系年级专业姓名学号课程名称成绩指导教师同组实验者实验日期
实验名称:数码管led实验
一.实验目的
理解8段数码管的基本原理,理解8段数码管的显示和编程方法,理解4连排共阴极8段数码管lg5641ah与mcu
的接线图。

二.实验内容
理解8段数码管原理,运行与理解各子程序,编制一个4连排8段数码管程序,mcu的排8段数码管显示mcu复位后的开始到现在的运行时间。

由于只有四个数码管,所以只显示mcu运行到目前为止的分钟和秒,当计时达到一个小时,
就重新从00:00开始计时。

另外,也可以通过pc方的串口通信程序,指定计时的开始值。

三.实验过程(一)原理图图8-2数码管外形
dp
abc
efgdp
图8-1数码管(二)接线图
图8-3mcu与4连排8段数码管的连接第1页
(三)基本原理
8段数码管一般由8个发光二极管
(llight-emittingdiode,led)组成,每一个位段就是一个发光二极管。

一个8段数码管分别由a、b、c、d、e、f、g位段,外加上一个小数点的位段h(或记为dp)组成。

根据公共端所接电平的高低,可分为共阳极和共阴极两种。

有时数码管不需要小数点,只有7个位段,称7段数码管。

共阴极8段数码管的信号端高电平有效,只要在各个位段上加上相应的信号即可使相应的位段发光,比如:要使a段发光,则在发光。

四.编程
(一)流程图
图8-4数码管led显示流程图(及其中断子程序)
(二)所用寄存器名称及其各个位
程序中没有使用与led显示相关的控制和状态寄存器,仅仅使用了通用i/o口a口和b口。

(三)主要代码段
1第2页第3页
2.
c
第4页
第5页
篇二:数码管实验报告
单片机实验报告
一、实验名称
数码管动态扫描显示01234567(实验五)
二、实验目的
(1)掌握数码管显示数字的原理。

(2)通过不同的编程实现灵活运用数码管。

三、实验原理
四、相关原理图
五、实验内容
数码管显示12345678
c程序:
#include
#include
unsignedchardatadis_digit;
unsignedcharcodedis_code[11]={0x28,0x7e,0xa2,0x62,0 x74,0x61,0x21,0x7a,0x20,0x60,0xff};//0,1,2,3,4,5,6, 7,8,9,关显示,数码管码表
unsignedchardatadis_buf[8];//显示缓冲区
unsignedchardatadis_index;
charcodesst516[3]_at_0x003b;
voidmain()
{
p0=0xff;
p2=0xff;
tmod=0x01;
th0=0xfc;
tl0=0x17;
ie=0x82;
dis_buf[0]=dis_code[0x1];
dis_buf[1]=dis_code[0x2];
dis_buf[2]=dis_code[0x3];
dis_buf[3]=dis_code[0x4];
dis_buf[4]=dis_code[0x5];
dis_buf[5]=dis_code[0x6];
dis_buf[6]=dis_code[0x7];
dis_buf[7]=dis_code[0x8];
dis_digit=0xfe;
dis_index=0;
tr0=1;
while(1);}
voidtimer0()interrupt1
//定时器0中断服务程序,用于数码管的动态扫描
//dis_index---显示索引,用于标识当前显示的数码管和缓冲区的偏移量
//dis_digit---位选通值,传送到p2口用于选通当前数码管的数值,如等于0xfe时,//选通p2.0口数码管//dis_buf---显于缓冲区基地址
{
th0=0xfc;
tl0=0x17;
p2=0xff;//先关闭所有数码管
p0=dis_buf[dis_index];//显示代码传送到p0口
p2=dis_digit;//
dis_digit=_crol_(dis_digit,1);//位选通值左移,下次中断时选通下一位数码管dis_index++;//
dis_index//8个数码管全部扫描完一遍之后,再回到第
一个开始下一次扫描}汇编程序:
code_segsegmentcode
data_segsegmentdata
rsegdata_seg
dis_digit:ds1
dis_index:ds1
dis_buf:ds8
stack:ds20
;============================================== =============
csegat00000h;reset向量
ljmpmain
csegat0000bh;定时器0中断向量
ljmptimer0
;============================================== =============
rsegcode_seg
org0080h
main:
movsp,#(stack-1);初始化堆栈指针
movp0,#0ffh;初始化i/o口
movp2,#0ffh
movtmod,#01h;初始化timer0 movth0,#0fch
movtl0,#017h
movie,#082h
movdptr,#dis_code;设定显示初值mova,#1
movca,@a+dptr
movdis_buf,a
mova,#2
movca,@a+dptr
movdis_buf+01h,a
mova,#3
movca,@a+dptr
movdis_buf+02h,a
mova,#4
movca,@a+dptr
movdis_buf+03h,amova,#5 movca,@a+dptr
movdis_buf+04h,a
mova,#6
movca,@a+dptr
movdis_buf+05h,a
mova,#7
movca,@a+dptr
movdis_buf+06h,a
mova,#8
movca,@a+dptr
movdis_buf+07h,a
movdis_digit,#0feh;初始从第一个数码管开始扫描
movdis_index,a
setbtr0;启动定时器0,开始动态扫描显示
main_lp:
;主程序循环,增加其它代码
sjmpmain_lp
;============================================== =============
using0
timer0:
;定时器0中断服程序,用于数码管的动态扫描
;dis_index---显示索引,用于标识当前显示的数码管和缓冲区的偏移量
;dis_digit---位选通值,传送到p2口用于选通当前数码管的数值,如等于0xfe时,;选通p2.0口数码管;dis_buf---显于缓冲区基地址
pushacc
pushpsw
pushar0
movth0,#0fch
movtl0,#017h
movp2,#0ffh;先关闭所有数码管
mova,#dis_buf;获得显示缓冲区基地址
adda,dis_index;获得偏移量
movr0,a;r0=基地址+偏移量
mova,@r0;获得显示代码
movp0,a;显示代码传送到p0口
movp2,dis_digit;
mova,dis_digit;位选通值左移,下次中断时选通下一位数码管
rla篇三:数码管动态显示实验报告
实验四数码管动态显示实验一
一、实验要求
1.在proteus软件中画好51单片机最小核心电路,包括复位电路和晶振电路
2.在电路中增加四个7段数码管(共阳/共阴自选),将p1口作数据输出口与7段数码管数据引脚相连,p2.0~p2.3引脚输出选控制信号。

相关文档
最新文档