计数器及数码显示实验报告
- 格式:doc
- 大小:627.21 KB
- 文档页数:14
计算机科学与工程系实验报告实验题目:制作一个LED数码管显示的秒表班级:姓名:学号:日期:一、实验目的掌握单片机使用定时计数器控制LED数码管的设计与软件编程二、实验要求1、用2位数码管显示计时时间,最小计时单位为“百毫秒”,计时范围0.1~9.9s;2、当第1次按下并松开计时功能键时,秒表开始计时并显示时间;3、第2次按下并松开计时功能键时,停止计时,计算两次按下计时功能键的时间,并在数码管上显示;4、第3次按下计时功能键,秒表清0,再按1次计时功能键,重新开始计时。
5、如果计时到9.9s时,将停止计时,按下计时功能键,秒表清零,再按下重新开始计时。
三、实验要求提交的实验报告中应包括:电路原理图、实验设计思路、C51源程序(含注释语句)、运行效果(含运行截图与说明)、实验小结三、硬件电路原理图的设计四、编程思路及C51源程序编程思路:使用外中断服务处理程序处理按键,内部设计一个计数器,记录按键按下的次数,根据按键次数完成相应的功能。
用数码管显示计时时间,根据按键的次数以及其功能来显示数字。
#include<reg51.h> //包含8051单片机寄存器定义的头文件unsigned char code discode1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef} unsigned char code discode2[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};unsigned char timer=0; //记录中断次数unsigned char second; //存储秒数unsigned char key=0; //记录按键次数main() //主函数{TMOD=0x01; //定时器T0方式1定时ET0=1; // 允许定时器T0中断EA=1; // 总中断允许second=0; //设初始值P0=discode1[second/10]; //显示秒位P2=discode2[second%10]; //显示0.1S位while(1) //循环{if((P3&0x80)==0x00) //当按键被按下时{key++; //按键次数加一switch(key) //根据按键次数分三种情况{case 1: //第一次按下为启动秒表表示TH0=0xee; //TL0=0x00; //TR0=1; //break; //case 2: //按下两次暂停秒表TR0=0; //break; //case 3: //按下三次秒表清零key=0; //second=0; //P0=discode1[second/10]; //P2=discode2[second%10]; //break;}while((P3&0x80)==0x00); //如果按键时间过长在此循环}}}}void int_t0() interrupt 1 using 0 //定时器T0中断子程序{TR0=0; //停止计时,执行以下操作(计时出现误差)TH0=0xee; //向TH0写入初值的高8位TL0=0x00; //向TL0写入初值的低8位,定时5mstimer++; //记录中断次数if (timer==20) //中断20次,20*5ms=100ms=0.1s{timer=0; //中断次数清0second++; //加0.1sP0=discode1[second/10]; //根据计时时间,即时显示秒位P2=discode2[second%10]; //根据计时时间,即时显示0.1s位}if(second==99) //当计时到9.9s时{TR0=0; //停止计时second=0; //秒数清0key=2; //按键数置2,当再次按下按键时,key++,即key=3,秒表清0复原}else //计时不到9.9s时{TR0=1; //继续计时}}五、仿真运行效果展示1、第一次按键,秒表开始计时,并计时到9.92、2次按键,停止计时,将计时的时间值送到数码管显示3、第3次按下计时功能键,秒表清零六、实验小结在实验的过程中,出现过几次错误,自己对理论知识了解的还不够透彻,所幸,通过自己思考解决了。
数电计数器实验报告数电计数器实验报告引言:数电计数器是数字电路中常见的一种组合逻辑电路,用于实现对输入信号进行计数的功能。
在本次实验中,我们将通过搭建一个四位二进制计数器的电路,来深入了解计数器的工作原理和应用。
实验目的:1. 熟悉计数器的基本原理和工作方式;2. 掌握计数器的设计与搭建方法;3. 理解计数器在数字系统中的应用。
实验器材:1. 74LS161四位二进制同步计数器芯片;2. 74LS47七段数码管芯片;3. 电路连接线、电源等。
实验步骤:1. 按照电路原理图,连接74LS161计数器芯片和74LS47七段数码管芯片;2. 将74LS161的CLK输入引脚连接到一个可调的方波发生器,用于提供时钟信号;3. 将74LS161的RST引脚连接到一个开关,用于手动复位计数器;4. 将74LS161的QA~QD引脚连接到74LS47的A~D引脚,用于输出计数结果;5. 将74LS47的LT引脚连接到一个LED灯,用于指示计数溢出。
实验原理:计数器是由触发器和逻辑门组成的组合逻辑电路。
在本次实验中,我们使用74LS161芯片作为计数器,它具有四位二进制计数功能。
74LS161芯片内部包含四个D触发器,每个触发器的输出与下一个触发器的时钟输入相连,形成级联的工作方式。
当时钟信号上升沿到来时,触发器会根据输入信号的状态进行状态转移,从而实现计数功能。
实验结果:通过调节方波发生器的频率,我们可以观察到七段数码管上显示的数字不断变化。
当计数器达到最大值时,LED灯会亮起,指示计数溢出。
通过手动复位开关,我们可以将计数器重新复位为0,重新开始计数。
实验分析:1. 在实验过程中,我们发现计数器的工作稳定性较好,能够准确地进行计数;2. 通过改变方波发生器的频率,我们可以调整计数器的计数速度,从而实现不同的计数效果;3. 计数器的应用非常广泛,比如在时钟、计时器、频率分频器等数字系统中都有广泛的应用。
实验总结:通过本次实验,我们深入了解了数电计数器的工作原理和应用。
七段数码管显示实验报告实验目的:本实验的目的是通过控制7段数码管的亮灭状态来显示不同的数字和字母。
实验原理:7段数码管常用于显示数字和字母,每个数码管由7个LED灯组成,分别表示A、B、C、D、E、F、G等7个段。
通过控制这些LED灯的亮灭状态,就可以显示不同的数字和字母。
在实际应用中,通常需要使用一个译码器来根据输入的数字或字母输出相应的控制信号。
常用的译码器有7447、DM9368等。
这些译码器通常都是BCD码到7段数码管的译码器。
在本实验中,我们将使用7447译码器来控制7段数码管的亮灭状态。
7447译码器具有4个输入线和7个输出线,每个输入线上的BCD码可以转换成相应的控制信号,用于控制数码管的7个LED 灯。
实验材料:1.7段数码管2.7447译码器3.电路板4.电压源5.连接线实验步骤:1.将7447译码器插入电路板上相应的插槽中,并将数码管连接到电路板上。
2.将电压源连接到电路板上,并调节电压和电流值。
3.根据所需显示的数字或字母,设置相应的BCD码输入信号。
4.打开电源,观察数码管是否能够正确显示。
实验结果:通过本实验,我们可以成功控制7段数码管的亮灭状态,实现了数字和字母的显示。
同时,我们也了解了7447译码器的原理和使用方法。
实验小结:本实验是电子技术的基础实验之一,通过实验我们深入了解了7段数码管和7447译码器的原理和应用,同时也锻炼了我们的动手能力和实验技能。
在实际应用中,7段数码管和译码器常常被用于数字显示、计数器、时钟、温度计等电子设备中,具有广泛的应用前景。
计数器实验报告引言:计数器是数字电路中的重要组件,用于计数、计时和测量等应用。
它可以在各种电子设备中起到决策、控制和计算等作用。
本次实验旨在探究计数器的工作原理并验证其功能。
一、实验目的:本次实验旨在研究计数器的工作原理,了解计数器的结构和使用方法,以及探究不同类型计数器的特点和应用。
二、实验器材和原理:1. 实验器材:- 7400系列逻辑门芯片(74LS00、74LS02等)- 74LS163 4位二进制同步计数器芯片- 连线板及连接线- 示波器- 电源2. 实验原理:计数器是由触发器和逻辑门组成的电路,根据输入脉冲的时序和频率来实现计数功能。
常见的计数器有同步计数器和异步计数器。
同步计数器:所有触发器在同一脉冲上同时工作,具有高速、同步性好等特点。
4位同步二进制计数器(74LS163)是本次实验主要研究的对象。
三、实验步骤和结果:1. 连接电路:将四个J-K触发器连接成同步二进制计数器电路。
采用74LS163芯片,选用外部时钟输入。
根据芯片引脚连接示意图连接芯片和示波器。
2. 设置电路状态:给予计数器电路适当的输入电平,根据实验的需求和目的,调整电路状态,例如设置计数范围、初始值等。
3. 测量输出波形:利用示波器观察和记录计数器的输出波形。
分析波形特点,如波形幅值、周期、高低电平时间等。
实验结果表明,计数器能够按照预期的次序进行计数,并在达到最大值后回到初始值重新计数。
输出波形清晰、稳定,符合设计要求。
四、实验讨论:1. 计数器的应用:计数器广泛应用于各种计数、计时和测量场合,例如时钟、频率计、定时器、计数器、计数调制解调器等。
计数器还可用于控制和决策等功能,比如在数字电子秤中用于计算重量。
2. 计数器的类型:除了同步计数器,异步计数器也是常见的计数器类型。
异步计数器与同步计数器相比,其工作原理和时序不同,有着不同的特点和优劣势。
3. 计数器的扩展:计数器可以通过级联扩展实现更大位数的计数。
数字电路技术实验报告一、学号: 姓名: 日期:实验目的:(1).用数码显示管实现0.1.2.3.4.0.3.0.3.4;(2).用74LS90,5421BCD码实现模十计数;二、实验设备:(1).数字电路试验箱;(2).数字双踪示波器;(3).函数信号发生器;(4).集成电路: 74LS90;(5).集成电路: 74LS00;三、实验原理:计数是一种最简单的基本运算计数器在数字系统中主要是对脉冲的个数进行计数以实现测量、计数和控制的功能同时兼有分频功能。
计数器按计数进制分为二进制计数器十进制计数器和任意进制计数器按计数单元中触发器所接收计数脉冲和翻转顺序分为异步计数器同步计数器按计数功能分有加法计数器减法计数器可逆双向计数器等。
异步清零2-5-10进制异步计数器74LS9074LS90是一块2-5-10进制异步计数器它由四个主从JK触发器和一些附加门电路组成其中一个触发器构成一位二进制计数器另三个触发器构成异步五进制计数器。
在74LS90计数器电路中设有专用置0端R01 R02和置9端S91 S92 当R1=R2=S1=S2=0时时钟从CP1引入Q0输出为二进制时钟从CP2引入Q3输出为五进制时钟从CP1引入Q0接CP2即二进制的输出与五进制的输入相连则Q3Q2Q1Q0输出为十进制8421BCD 码时钟从CP2引入而Q3接CP1即五进制的输出与二进制的输入相连Q0Q3Q2Q1输出为十进制5421BCD码。
74LS90管脚定义74LS00管脚定义74LS90功能表四、实验内容:(1).用74LS90实现0123403034 (2).用5421BCD实现计数;五、实验结果:(1).列出真值表;(2).画出卡诺图;(3).按化简结果连接图;(循环数字列表)(1).F8=0;.四变量卡诺图:F 2=Q .Q .Q .Q 1020;F 1=Q 1;(5).把F 8接地;F 4接Q3;F 2与相接Q .Q .Q .Q 1020;F 1与Q 1链接;六、心得体会:这次实验综合性较强, 主要考察了我们从实际问题中抽象出逻辑函数的能力。
实验五 LED数码显示控制在LED数码显示控制实验区完成本实验。
一、实验目的了解并掌握置位与复位指令SET、RST在控制中的应用及其编程方法。
二、置位与复位指令SET、RST的介绍SET为置位指令,使动作保持;RST为复位指令,使操作保持复位。
当X0一接通,即使再变成断开,Y0也保持接通。
X1接通后,即使再变成断开,Y0也将保持断开。
SET指令的操作目标元件为Y、M、S。
而RST指令的操作元件为Y、M、S、D、V、Z、T、C。
这两条指令是1~3个程序步。
用RST指令可以对定时器、计数器、数据寄存器、变址寄存器的内容清零。
三、控制要求按下启动按钮后,由八组LED发光二极管模拟的八段数码管开始显示:先是一段段显示,显示次序是A、B、C、D、E、F、G、H。
随后显示数字及字符,显示次序是0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F,再返回初始显示,并循环不止。
四、LED数码显示控制的实验面板图:上图中,下框中的A、B…H分别接主机的输出点Y0、Y1…Y7;SD接主机的输入点X0。
上框中的A、B、C、D、E、F、G、H用发光二极管模拟输出。
五、编制梯形图并写出程序,实验梯形图参考图5实验七十字路口交通灯控制的模拟在十字路口交通灯模拟控制实验区完成本实验。
一、实验目的熟练使用各基本指令,根据控制要求,掌握PLC的编程方法和程序调试方法,使学生了解用PLC解决一个实际问题的全过程。
二、十字路口交通灯控制的实验面板图:实验面板图中,下框中的南北红、黄、绿灯R、Y、G分别接主机的输出点Y2、Y1、Y0,东西红、黄、绿灯R、Y、G分别接主机的输出点Y5、Y4、Y3,模拟南北向行驶车的灯接主机的输出点Y6,模拟东西向行驶车的灯接主机的输出点Y7;下框中的SD接主机的输入端X0。
上框中的东西南北三组红绿黄三色发光二极管模拟十字路口的交通灯。
三、控制要求信号灯受一个启动开关控制,当启动开关接通时,信号灯系统开始工作,且先南北红灯亮,东西绿灯亮。
第1篇一、实验目的1. 熟悉数码显示模块的结构和工作原理;2. 掌握51单片机控制数码显示模块的方法;3. 学会使用移位寄存器实现数码显示的动态扫描;4. 提高单片机编程能力和实践操作能力。
二、实验原理数码显示模块是一种常见的显示器件,主要由7段LED组成,可以显示0-9的数字以及部分英文字符。
51单片机通过控制数码显示模块的段选和位选,实现数字的显示。
移位寄存器是一种常用的数字电路,具有数据串行输入、并行输出的特点。
在本实验中,使用移位寄存器74HC595实现数码显示的动态扫描。
三、实验仪器与材料1. 51单片机实验板;2. 数码显示模块;3. 移位寄存器74HC595;4. 电阻、电容等电子元件;5. 电路连接线;6. 编译软件Keil uVision;7. 仿真软件Proteus。
四、实验步骤1. 电路连接(1)将51单片机的P1口与数码显示模块的段选端相连;(2)将74HC595的串行输入端Q(引脚14)与单片机的P0口相连;(3)将74HC595的时钟端CLK(引脚11)与单片机的P3.0口相连;(4)将74HC595的锁存端LR(引脚12)与单片机的P3.1口相连;(5)将数码显示模块的位选端与74HC595的并行输出端相连。
2. 编写程序(1)初始化51单片机的P1口为输出模式,P3.0口为输出模式,P3.1口为输出模式;(2)编写数码显示模块的段码数据表;(3)编写74HC595的移位和锁存控制函数;(4)编写数码显示模块的动态扫描函数;(5)编写主函数,实现数码显示模块的循环显示。
3. 编译程序使用Keil uVision编译软件将编写的程序编译成hex文件。
4. 仿真实验使用Proteus仿真软件进行实验,观察数码显示模块的显示效果。
五、实验结果与分析1. 编译程序后,将hex文件下载到51单片机实验板上;2. 使用Proteus仿真软件进行实验,观察数码显示模块的显示效果;3. 通过实验验证,数码显示模块可以正常显示0-9的数字以及部分英文字符;4. 通过实验,掌握了51单片机控制数码显示模块的方法,学会了使用移位寄存器实现数码显示的动态扫描。
实验计数、译码和显示电路一、实验目的:1. 掌握二进制加减计数器的工作原理。
2. 熟悉中规模集成计数器及译码驱动器的逻辑功能和使用方法。
二、实验准备:1.计数:计数是一种最简单、最基本的逻辑运算,计数器的种类繁多,如按计数器中图3.11.2另外一种可预计的十进制加减可逆计数器CD4510,用途也非常广,其引脚排列如图3.11.3所示,其中,E P 为预计计数使能端,in C 为进位输入端,1P ~4P 为预计的输入端,out C 为进位输出端,U /D 为加减控制端,R 为复位端,CD4510输入、输出间的逻辑功能如表所示。
表3.11.2:。
2. 译码与显示:十进制计数器的输出经译码后驱动数码管,可以显示0~9十个数字,CD4511是BCD~7段译码驱动集成电路,其引脚排列如图3.11.4所示。
LT 为试灯输入,BI 为消隐输入,LE 为锁定允许输入,A 、B 、C 、D 为BCD 码输入,a~g 为七段译码。
CD4511的逻辑功能如表所示。
LED 数码管是常用的数字显示器,分共阴和共阳两种,BS112201是共阴的磷化镓数码管,其外形和内部结构如图3.11.5所示。
图3.11.5三、计算机仿真实验内容:1. 计数10的电路:(1).单击电子仿真软件Multisim7基本界面左侧左列真实元件工具条“CMOS”按钮,从弹出的对话框“Family”栏中选“CMOS_10V”,再在“Component”栏中选取4093BD和4017BD各一只,如图3.11.6所示,将它们放置在电子平台上。
图3.11.6(2).单击电子仿真软件Multisim7基本界面左侧左列真实元件工具条“Source”按钮,从弹出的对话框“Family”栏中选“POWER_SOURCES”,再在“Component”栏中选取“VDD”和地线,将它们调出放置在电子平台上。
(3). 双击“VDD”图标,将弹出如图3.11.7所示对话框,将“V oltage”栏改成“10”V,再点击下方“确定”按钮退出。
计数译码显示电路实验报告总结本次实验是关于计数译码显示电路的搭建和测试。
通过实验,我们掌握了计数器的原理和译码显示电路的工作原理,并能够正确地搭建和测试这些电路。
实验中,我们使用的计数器是74LS161,它是一种同步4位二进制计数器,能够实现递增和递减计数,并能够输出位宽为4位的计数值。
我们将其与译码显示电路74LS47相连,通过74LS47将计数器的输出值转换成7段数码管所显示的数字。
在实验前,我们先对74LS161计数器和74LS47译码显示电路的原理进行了学习和理解。
我们知道,74LS161计数器拥有一个时钟输入,通过时钟信号的触发,可以实现计数器的递增或递减。
而74LS47译码显示电路拥有四个输入端口,分别对应着四位二进制码的输出,通过译码器将输出值转换成7段数码管所显示的数字。
在搭建电路时,我们按照实验指导书中给出的电路图和连接方式进行了连接。
在连接时,我们要注意电路的接线是否正确,以免出现电路短路或开路等问题。
在实验过程中,我们进行了递增和递减计数的测试,观察数码管的显示结果。
我们发现,当计数器的计数值递增或递减时,数码管显示的数字也相应地改变。
这说明我们搭建的电路连接正确,电路能够正常工作。
在实验中,我们还进行了译码器的测试。
我们先将74LS161计数器的输出接到译码器的输入端口,然后将译码器的输出端口分别接到不同的7段数码管上,观察数码管的显示结果。
我们发现,译码器能够正确地将计数器输出值转换成7段数码管所显示的数字。
这说明我们搭建的译码器电路也正确无误。
总的来说,本次实验使我们掌握了计数器和译码显示电路的原理和工作方式,并能够正确地搭建和测试这些电路。
通过本次实验,我们不仅提高了自己的实验操作能力,也加深了对数字电路原理的理解。
一、实验目的1. 理解计数器的基本原理和构成方式。
2. 掌握中规模集成计数器的使用方法和功能测试。
3. 了解计数器在数字系统中的应用,如定时、分频、数字运算等。
二、实验原理计数器是一种时序逻辑电路,用于对输入脉冲进行计数。
根据计数进制、触发器翻转方式、计数功能等不同,计数器可以分为多种类型。
1. 计数进制:二进制、十进制、任意进制。
2. 触发器翻转方式:同步、异步。
3. 计数功能:加法、减法、可逆(加/减)。
常见的集成计数器有74LS161(4位二进制同步加法计数器)、74LS193(4位二进制同步可逆计数器)等。
三、实验器材1. 数字电路实验箱2. 同步十进制可逆计数器74LS1923. 2输入四与门74LS001四、实验步骤1. 搭建实验电路:根据实验要求,搭建计数器实验电路,包括计数器芯片、时钟源、复位端等。
2. 功能测试:分别对计数器进行加法计数、减法计数、可逆计数等功能的测试,观察输出波形和计数结果。
3. 应用实验:利用计数器实现定时、分频等功能,观察实际效果。
五、实验结果与分析1. 功能测试:- 加法计数:输入时钟脉冲,观察计数器输出端Q0~Q3的变化,验证加法计数功能。
- 减法计数:输入时钟脉冲,观察计数器输出端Q0~Q3的变化,验证减法计数功能。
- 可逆计数:输入时钟脉冲,观察计数器输出端Q0~Q3的变化,验证可逆计数功能。
2. 应用实验:- 定时功能:利用计数器实现定时功能,例如,通过计数器计数1000个脉冲,实现1秒定时。
- 分频功能:利用计数器实现分频功能,例如,将输入的50Hz时钟信号分频为5Hz。
六、实验总结通过本次实验,我们掌握了计数器的基本原理、构成方式和使用方法,了解了计数器在数字系统中的应用。
实验过程中,我们学会了如何搭建实验电路、进行功能测试和应用实验。
本次实验有助于提高我们对数字电路和时序逻辑电路的理解,为后续学习打下基础。
七、实验心得1. 计数器在数字系统中应用广泛,掌握计数器的基本原理和构成方式非常重要。
数电计数器实验报告实验名称:数电计数器实验实验目的:通过实验,了解和掌握数电计数器的原理和工作方式,以及计数器的应用。
实验原理:计数器是一种能够实现数字计数功能的电子元件。
主要由触发器、逻辑门和时钟信号组成。
触发器主要用于储存和传递信号,逻辑门用于控制和处理信号,时钟信号用于控制计数时间。
实验器材:1. 7400四路或五路与门2. 7432四路或五路或六路或七路与非门3. 7474触发器4. 555定时器5. LED灯6. 电源实验步骤:1. 将触发器与逻辑门按照电路图连接,并确保连接正确无误。
2. 将555定时器连接到电路中,并设置合适的时钟频率。
3. 将LED灯连接到电路中,用于显示计数结果。
4. 打开电源,观察LED灯的亮灭情况,并记录计数结果。
5. 可以尝试改变定时器的频率,观察LED灯的计数速度。
实验结果分析:通过实验观察和记录计数结果,可以得出计数器的工作原理和特点。
可以发现,当时钟信号输入时,计数器会根据触发器和逻辑门的控制逻辑实现数字计数功能。
实验结论:1. 数电计数器是一种能够实现数字计数功能的电子元件。
2. 计数器由触发器、逻辑门和时钟信号组成,触发器用于储存和传递信号,逻辑门用于控制和处理信号,时钟信号用于控制计数时间。
3. 数电计数器在实际应用中具有广泛的用途,如计时器、频率计等。
实验中可能遇到的问题和解决方法:1. 连接错误:检查电路连接,确保连接正确无误。
2. LED灯未亮起:检查电路连接,确保连接正确无误。
3. 计数不准确:检查时钟信号的频率,确保设置合适的计数速度。
实验改进思路:1. 尝试使用不同型号的触发器和逻辑门,比较它们的计数效果和特点。
2. 尝试使用其他电子元件,如译码器、多路选择器等,扩展计数器的功能和应用场景。
3. 尝试使用计数器的级联连接,实现更复杂的计数功能和应用。
24进制计数器proteus实验报告24进制计数器是在电子系统的设计中经常使用的计数器,具有高速、稳定、精度高等特点,因此在各种计数相关的操作和应用中被广泛使用。
本次实验的目的是在Proteus软件中实现24进制计数器,并验证其计数功能和参数的准确性。
实验器材:- Proteus软件-一块PIC16F877A单片机-一个24进制数码管实验原理:24进制计数器是指计数器的基数为24,即每一次计数器加1所表示的是24进制数中的1。
在本次实验中,我们将采用PIC16F877A单片机来实现24进制计数器,通过单片机来对计数器的计数值进行控制和显示。
具体实现需要根据PIC16F877A的编程和控制的特点,针对24进制计数器设计适当的算法与操作。
实验过程:1.根据24进制计数器的原理,确定计数器所采用的基数为24,编写程序,对PIC16F877A进行初始化和IO口配置。
2.在Proteus软件中,添加PIC16F877A单片机和24进制数码管,并连接需要的电路。
3.编写程序,设置计数范围,并实现对计数值的加1和显示。
4.进行仿真测试,查看计数器的正确性和稳定性。
5.通过调整程序和电路参数,优化计数器的性能和准确性。
实验结果:经过一系列的设计和测试,实验结果表明,本次24进制计数器的实验操作成功,可以实现稳定的计数功能。
在计数器运行的过程中,可以正确显示当前的计数值,并能够正常进行加1操作。
同时,在根据实际需要调整计数范围和显示参数的过程中,可以使用该计数器进行更加精确和高效率的计数操作。
实验结论:通过本次实验的操作和测试,可以有效地理解和应用24进制计数器的原理和实现方法,掌握PIC16F877A单片机作为控制器的实现技术。
该计数器具有高速、稳定和精度高等特点,在各种计数相关的操作和应用中具有广泛的实用价值。
实验六计数器及其应用一、实验目的1.学习用集成触发器构成计数器的方法2.掌握同步计数的逻辑功能、测试方法及功能扩展方法3.掌握构成任意进制计数器的方法二、实验设备和器件1.+5V直流电源2.双踪示波器3.连续脉冲源4.单次脉冲源5.逻辑电平开关6.逻辑电平显示器7.译码显示器8.CC4013×2(74LS74)CC40192×3(74LS192)CC4011(74LS00)CC4012(74LS20)三、实验原理计数器是一个用以实现计数功能的时序部件,它不仅可用来计脉冲数,还常用作数字系统的定时、分频和执行数字运算以及其它特定的逻辑功能。
计数器种类很多。
计数器计数时所经历的独立状态总数为计数器的模(M)。
计数器按模可分为二进计数器(M=2n)、十进计数器(M=10n)和任意进制计数器(M≠2n、M≠10n)。
按计数脉冲输入方式不同,可分为同步计数和异步计数。
按计数值增减趋势分为:加法计数器、减法计数器和可逆(加/减)计数器。
1.用D触发器构成异步二进制加/减计数器图6-1是用四只D触发器构成的四位二进制异步加法计数器,它的连接特点是将每只D触发器接成T 触发器,再由低位触发器的Q端和高一位的CP端相连接。
若将图6-1稍加改动,即将低位触发器的Q端与高一位的CP端相连接,即构成了一个4位二进制减法计数器。
2.中规模十进制计数器、十六进制计数器(1)CC40192是同步十进制可逆计数器,具有双时钟输入,并具有清除和置数等功能。
当清除端CR为高电平“1”时,计数器直接清零;CR置低电平则执行其它功能。
当CR为低电平,置数端LD也为低电平时,数据直接从置数端D0、D1、D2、D3置入计数器。
当CR为低电平,LD为高电平时,执行计数功能。
执行加计数时,减计数端CP D接高电平,计数脉冲由CP U输入;在计数脉冲上升沿进行8421码十进制加法计数。
执行减计数时,加计数端CP U接高电平,计数脉冲由减计数端CP D 输入,表6-2为8421码十进制加、减计数器的状态转换表。
计数器数电实验报告心得前言计数器是数字电路中的重要组成部分,它能够实现对电路输出信号进行计数并产生相应的计数结果。
在数电课程的学习中,我有幸参与了计数器实验,并通过实验掌握了计数器的基本工作原理和实际应用。
实验内容本次实验中,我们所使用的计数器是模4计数器,采用反馈连接的JK 触发器构成。
实验要求我们通过将四个JK触发器进行级联、运用逻辑门电路控制使之实现模4计数。
实验步骤1. 首先,我们根据实验电路原理图连接JK触发器。
2. 接下来,我们使用逻辑门电路连接JK触发器来实现计数。
3. 确保电路连接正确后,我们给电路供电并观察触发器的输出信号变化。
4. 最后,我们通过示波器对输出进行采样和测量,以验证实验结果的正确性。
实验结果通过实验,我们成功地完成了模4计数器的搭建,并观察到了其正确计数的结果。
实验中,我们分别测试了从0到3的四个计数状态,得到了预期的输出结果。
同时我们也使用示波器对输出进行测量,测得的计数频率也与理论设计值相符合。
这表明我们所搭建的模4计数器是可靠的,并且能够正确输出计数结果。
实验心得通过本次实验,我深刻体会到了计数器在数字电路中的重要性和广泛应用。
计数器不仅仅是用于简单的计数任务,它还能够应用于时钟信号的频率分频、计时等方面。
通过实验,我更深入地了解了计数器的工作原理和实际应用,对于数字电路的设计和实现有了更清晰的认识。
此外,我还学会了使用逻辑门电路来控制计数器的计数状态。
逻辑门电路可以根据需要来实现不同的计数方式,如正向计数、逆向计数等。
这为我们设计更为复杂的计数器提供了更多的灵活性。
实验中,我充分发挥了团队合作的精神,与实验组的成员积极协作,在电路连接、测试结果等方面进行了深入的讨论和交流。
通过合作,我们不仅更好地理解了计数器的工作原理,还提高了实验效率,并且取得了令人满意的实验结果。
总的来说,计数器数电实验使我对计数器的工作原理和实际应用有了更深刻的认识。
通过实验,我不仅提高了自己的动手能力和团队合作能力,还为我今后在数字电路设计和实现方面打下了坚实的基础。
第1篇一、实验背景数码管是一种常用的显示器件,它可以将数字、字母或其他符号显示出来。
数码管广泛应用于各种电子设备中,如计算器、电子钟、电子秤等。
本实验旨在通过实践操作,让学生了解数码管的工作原理,掌握数码管的驱动方法,以及数码管在电子系统中的应用。
二、实验原理1. 数码管类型数码管分为两种类型:七段数码管和液晶数码管。
本实验主要介绍七段数码管。
七段数码管由七个发光二极管(LED)组成,分别代表七个笔画。
当七个LED中的某个或某几个LED点亮时,就可以显示出相应的数字或符号。
根据发光二极管的连接方式,七段数码管可分为共阳极和共阴极两种类型。
2. 数码管驱动方式(1)静态驱动静态驱动是指每个数码管独立驱动,每个数码管都连接到单片机的I/O端口。
这种方式下,数码管显示的数字或符号不会闪烁,但需要较多的I/O端口资源。
(2)动态驱动动态驱动是指多个数码管共用一组I/O端口,通过控制每个数码管的扫描时间来实现动态显示。
这种方式可以节省I/O端口资源,但显示的数字或符号会有闪烁现象。
3. 数码管显示原理(1)共阳极数码管共阳极数码管的特点是七个LED的阳极连接在一起,形成公共阳极。
当要显示数字时,将对应的LED阴极接地,其他LED阴极接高电平,即可显示出相应的数字。
(2)共阴极数码管共阴极数码管的特点是七个LED的阴极连接在一起,形成公共阴极。
当要显示数字时,将对应的LED阳极接地,其他LED阳极接高电平,即可显示出相应的数字。
4. 数码管驱动电路(1)BCD码译码驱动器BCD码译码驱动器是一种将BCD码转换为七段数码管所需段码的电路。
常用的BCD码译码驱动器有CD4511、CD4518等。
(2)74HC595移位寄存器74HC595是一种8位串行输入、并行输出的移位寄存器,常用于数码管的动态驱动。
它可以将单片机输出的串行信号转换为并行信号,驱动数码管显示。
三、实验目的1. 了解数码管的工作原理和驱动方式。
单片机实验报告二-数码管显示实验摘要:本实验使用单片机控制数码管的显示,在实验过程中通过学习单片机的GPIO口的编程,调试程序、调节电路来达到正确的显示效果。
最终按照要求实现了单片机控制数码管的计数器。
关键词:单片机、数码管、GPIO口、计数器一、实验介绍数码管是一种介于机械仪表和液晶显示器之间的电子显示器件,广泛应用于计时器、计数器、仪表等电子产品中。
本实验旨在通过单片机控制数码管的显示来加深对GPIO口的使用和调试程序的理解,同时了解数码管的原理。
本实验主要分为两部分:数码管显示基础实验和数码管控制开关实验。
通过这两部分的实验可以了解数码管的工作原理和单片机的基本控制方式。
二、实验原理2.1 数码管的基本原理数码管显示器将数字显示为一组符号,例如“0”到“9”。
表示不同数字的符号被编码成一个数字码。
七段数码管用一个七段数码字母来表示数字,如下表所示:| 数字 | a | b | c | d | e | f | g || ---- | - | - | - | - | - | - | - || 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 || 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 || 2 | 1 | 1 | 0 | 1 | 1 | 0 | 1 || 3 | 1 | 1 | 1 | 1 | 0 | 0 | 1 || 4 | 0 | 1 | 1 | 0 | 0 | 1 | 1 || 5 | 1 | 0 | 1 | 1 | 0 | 1 | 1 || 6 | 0 | 0 | 1 | 1 | 1 | 1 | 1 || 7 | 1 | 1 | 1 | 0 | 0 | 0 | 0 || 8 | 1 | 1 | 1 | 1 | 1 | 1 | 1 || 9 | 1 | 1 | 1 | 1 | 0 | 1 | 1 |通过控制数码管的七个LED灯的亮灭,可以实现不同符号显示。
一、实验目的1. 了解计数显示的基本原理和方法。
2. 掌握计数显示电路的设计与制作。
3. 熟悉计数显示模块的使用。
二、实验原理计数显示是一种将数字信号转换为直观的数字显示的方法。
常见的计数显示方法有LED数码管显示、LCD液晶显示等。
本实验以LED数码管显示为例,介绍计数显示的基本原理。
LED数码管是一种由多个LED灯组成的显示器件,通过控制LED灯的亮与灭来显示数字。
常见的LED数码管有七段式和十四段式两种。
本实验采用七段式LED数码管,其结构如图1所示。
图1 七段式LED数码管结构图计数显示的基本原理如下:1. 计数器:用于记录输入的脉冲信号数量,常见的计数器有十进制计数器、十六进制计数器等。
2. 比较器:将计数器的输出与预设的数值进行比较,当计数器输出等于预设数值时,输出一个信号。
3. 驱动电路:将比较器输出的信号转换为LED数码管所需的驱动信号,驱动LED数码管显示相应的数字。
三、实验仪器与设备1. 实验箱:1套2. LED数码管:1个3. 74LS90计数器:1个4. 74LS20比较器:1个5. 电阻:若干6. 电容:若干7. 信号发生器:1个8. 电源:1个四、实验步骤1. 连接电路:根据实验原理图,将计数器、比较器、驱动电路、LED数码管等元器件连接到实验箱上。
2. 调整参数:根据实验要求,调整计数器的预设数值和比较器的阈值。
3. 测试电路:将信号发生器输出的脉冲信号连接到计数器的输入端,观察LED数码管显示的数字是否正确。
4. 调试电路:根据观察结果,对电路进行调整,直至LED数码管显示的数字正确。
五、实验结果与分析1. 实验结果:连接电路后,调整参数,观察LED数码管显示的数字为预设数值,实验成功。
2. 实验分析:(1)计数器在脉冲信号的作用下,计数器中的数值逐渐增加。
(2)当计数器的数值达到预设数值时,比较器输出一个信号,该信号通过驱动电路驱动LED数码管显示相应的数字。
(3)实验过程中,若LED数码管显示的数字不正确,可能是电路连接错误、元器件损坏或参数设置不当等原因。
北华航天工业学院课程设计报告(论文)课设名称: EDA技术与应用设计课题:计数器及数码显示综合设计专业班级: B12241学生姓名:白冬雪田尉均指导教师:齐建玲设计时间: 2014年 12月 15日北华航天工业学院电子工程系EDA 课程设计任务书姓名:白冬雪田尉均专业:测控技术与仪器班级:B12241指导教师:齐建玲职称:教授课程设计题目:计数器及数码显示综合设计已知技术参数和设计要求:①总体设计要求:设计一个能在7段数码管上动态刷新显示十进制、十二进制、六十进制、四位二进制计数器计数结果的VHDL语言程序并在EDA实验开发系统上实现该功能。
②技术要点:VHDL语言编辑程序、共阴7段数码管及FPGA可编程芯片的工作原理与连线。
所需仪器设备:实验箱,电脑成果验收形式:实验报告,硬件实验结果参考文献:李国洪、胡辉、沈明山等编著《EDA技术与实验》—机械工业出版社出版。
时间安排2014年12月14日-15日编辑VHDL语言程序2014年12月16日硬件调试程序2014年12月17日实验箱答辩验收指导教师:齐建玲教研室主任:王晓2014年 12月 17日内容摘要用VHDL语言在MAX+PLUS2环境下设计一个带使能输入、进位输出及同步清零的十进制计数器。
设计一个带使能输入及同步清零的十二进制计数器。
设计一个带使能输入及同步清零的六十进制加法计数器。
设计一个四位二进制可逆计数器。
设计一个共阴7段数码管控制接口,在时钟信号的控制下,使六位数码管动态刷新显示上述计数器的计数结果。
最后在EDA实验开发系统实验操作。
目录一、概述 (1)二、方案设计与论证 (1)三、单元电路设计与参数计算 (1)1、十进制计数器 (1)2、十二进制计数器 (2)3、六十进制计数器 (3)4、十六进制可逆计数器 (4)5、六进制计数器 (5)6、数据选择器 (6)7、 4-7译码器 (7)四、顶层文件截图 (8)五、安装与调试 (8)六、心得体会 (8)1.实验注意事项 (8)2.收获与体会 (9)一、概述用VHDL语言在MAX+PLUS2环境下设计一个带使能输入、进位输出及同步清零的十进制计数器。
设计一个带使能输入及同步清零的十二进制计数器。
设计一个带使能输入及同步清零的六十进制加法计数器。
设计一个四位二进制可逆计数器。
设计一个共阴7段数码管控制接口,在时钟信号的控制下,使六位数码管动态刷新显示上述计数器的计数结果。
二、方案设计与论证四个计数器同时开始计数,通过计数器的使能端可以随时控制计数器是否继续工作,通过同步清零端可以随时把任何一个计数器清零重新开始计数。
四位二进制可逆计数器可以随时进行加计数或减计数。
通过六进制计数器扫描数码管和作为对其他4个计数器的选择信号,再通过一个数据选择器选择出计数器的输出信号,通过4-7译码器的输出信号在数码当时钟信号频率足够大时可以实现六个数码管“同时”显示各计数器的计数结果。
因为人的眼睛分辨不出各数码管的快速跳变。
所以能实现所要求的同步计数的目的。
三、单元电路设计与参数计算1、十进制计数器①代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY JINZHI10 ISPORT( CLK,en,rst:IN STD_LOGIC;ci :OUT STD_LOGIC;dout :BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0) );END JINZHI10;ARCHITECTURE ABC OF JINZHI10 ISBEGINci<='1' WHEN dout="1001" AND en='1' ELSE '0';PROCESS(CLK,en,rst)BEGINIF RISING_EDGE(CLK) THENIF rst='1' THEN dout<=(OTHERS=>'0');ELSIF en='1' THENIF dout="1001" THEN dout<="0000";ELSE dout<=dout+1;END IF;END IF;END IF;END PROCESS;END ABC;②仿真结果:2、十二进制计数器①代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY JINZHI12 ISPORT( CLK,en,rst:IN STD_LOGIC;dout :BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0)); END JINZHI12;ARCHITECTURE ABC OF JINZHI12 ISBEGINPROCESS(CLK,en,rst)BEGINif RISING_EDGE(CLK) THENif rst='1'then dout<=(others=>'0');ELSIF en='1' THENIF dout="1011" THEN dout<="0000";ELSE dout<=dout+1;END IF;END IF;END IF;END PROCESS;END ABC;②仿真结果3、六十进制计数器①代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY JINZHI60 ISPORT( CLK,en,rst:IN STD_LOGIC;OL,OH :BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0)); END JINZHI60;ARCHITECTURE ABC OF JINZHI60 ISBEGINPROCESS(CLK,en,rst)BEGINIF RISING_EDGE(CLK) THENIF rst='1' THEN OL<="0000";OH<="0000";ELSIF en='1' THENIF OL="1001" THEN OL<="0000";IF OH="0101" THEN OH<="0000";ELSE OH<=OH+1;END IF;ELSE OL<=OL+1;END IF;END IF;END IF;END PROCESS;END ABC;②仿真结果4、十六进制可逆计数器①代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY KENI16 ISPORT( CLK,JJ,E:IN STD_LOGIC;OL,OH :BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0));END KENI16;ARCHITECTURE ABC OF KENI16 ISBEGINPROCESS(CLK,JJ,E)BEGINIF RISING_EDGE(CLK) THENIF E='1' THENIF JJ='1' THENIF OL="0101" AND OH="0001" THEN OL<="0000"; OH<="0000"; ELSIF OL="1001" THEN OL<="0000"; OH<=OH+1; ELSE OL<=OL+1;END IF;ELSIF JJ='0' THENIF OL="0000" AND OH="0000" THEN OL<="0101"; OH<="0001"; ELSIF OL="0000" THEN OL<="1001"; OH<=OH-1; ELSE OL<=OL-1;END IF;END IF;END IF;END IF;END PROCESS;END ABC;②仿真结果5、六进制计数器①代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY JINZHI6 ISPORT( CLK,E :IN STD_LOGIC;O :BUFFER STD_LOGIC_VECTOR(2 DOWNTO 0)); END JINZHI6;ARCHITECTURE ABC OF JINZHI6 ISBEGINPROCESS(CLK,E)BEGINIF RISING_EDGE(CLK) THENIF E='1' THENIF O="101" THEN O<="000";ELSE O<=O+1;END IF;END IF;END IF;END PROCESS;END ABC;②仿真结果6、数据选择器①代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY XUANZE ISPORT( A,B,C,D,E,F :IN STD_LOGIC_VECTOR(3 DOWNTO 0);I :IN STD_LOGIC_VECTOR(2 DOWNTO 0); O :OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ); END XUANZE;ARCHITECTURE ABC OF XUANZE ISBEGINPROCESS(I)BEGINCASE I ISWHEN "000" => O<=A;WHEN "001" => O<=B;WHEN "010" => O<=C;WHEN "011" => O<=D;WHEN "100" => O<=E;WHEN "101" => O<=F;WHEN OTHERS => NULL;END CASE;END PROCESS;END ABC;②仿真结果7、4-7译码器①代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY YM_47 ISPORT( I:IN STD_LOGIC_VECTOR(3 DOWNTO 0); O:OUT STD_LOGIC_VECTOR(6 DOWNTO 0)); END YM_47;ARCHITECTURE ABC OF YM_47 ISBEGINWITH I SELECTO<="1111110" WHEN "0000","0110000" WHEN "0001","1101101" WHEN "0010","1111001" WHEN "0011","0110011" WHEN "0100","1011011" WHEN "0101","1011111" WHEN "0110","1110000" WHEN "0111","1111111" WHEN "1000","1111011" WHEN "1001","1110111" WHEN "1010","0011111" WHEN "1011","0000000" WHEN OTHERS;END ABC;②仿真结果四、顶层文件截图五、安装与调试在计算机和试验箱均断电的情况下连接好下载电缆和芯片的各端口之间的连线,接下来先给试验箱供电然后打开计算机找到MAX+plus2软件将先前已编辑好的的程序下载到芯片上。