单按键计数器和数码管显示电路
文档
单按键计数器和数码管显示电路
文档
一 实验设计要求(A题)
项目编号 B
项目名称 单按键计数器和数码管显示电路
项目组数 35
每组人数 5
项目开始时间 2012-11-26 9:33:00
项目截至时间 2013-3-8 9:33:00
截至报名时间: 2012-12-28 17:00:00
开设实验室 基础实验室3
项目要求 利用按键产生单次时钟,通过标准计数器电路实现模10的计数,产生
相应的编码,,将该数值通过译码器输出到集成译码电路上显示数码0—9。
该译码器需自行设计实现。
用集成译码电路的“DP”段作为电源上电指示。
计数器有复位清零按键。
集成译码电路采用共阳极结构,如下图:
可以参考教材中计数器的设计原理、数码管的基本电路,在此基础上,自行设计
按键、LED显示等,实现多位数码管显示。
评分标准:
(1) 按照功能要求,自行设计译码器电路、电源指示、按键和数码管显示电路
等。
(2) 设计简洁、功能完整、安装整洁、使用安全、测试方便。
(3) 优先选用本教材所涉及的集成电路。
(4) 团队分工合作情况。
考核知识点:
(1) 逻辑设计和分析,卡诺图化简、集成电路电器特性;
(2) 同步、异步计数器的使用;
(3) 译码器分析,组合逻辑电路设计。
项目介绍 本项目紧密结合课堂教学内容,又可以充分发挥同学的自主设计的
兴趣。请参照设计要求,达到项目的设计要求,可以自由发挥,完成书面报告。
实验室提供基本材料:
1、共阴数码管
2、74ls00 74ls163
3、CD4511
4、单刀双掷开关几个
5、导线若干,电阻若干
文档
二 实验设计
1、简述元件特性及原理
数码管
共阴数码管工作原理:3、8号角接地,其余管脚接高电平时,
二极管发光。
文档
LED发光二极管
发光二极管简称为LED。由镓(Ga)与砷(AS)、磷(P)的化合物制
成的二极管,当电子与空穴复合时能辐射出可见光,因而可以用来制
成发光二极管。
限流电阻计算公式: R=(E-UF)/IF
式中E为电源电压,UF为LED的正向压降,IF为LED的一般工作
电流。
CD4511
CD4511工作原理:
CD4511是BCD共阴7段译码器。
当VDD、BI、LI接高电平,VSS、LE/STROBE接地,D、C、B、
文档
A端接入模十信号,权位从D到A由高到低。
9到15号端分别代表e d c b a g f,对应的与数码管的abcdefg
管脚连接,便能正常工作,将模十BCD信号译码,使数码管
显示模十信号的十进制数字。
74ls163
工作原理:
74ls163是4位二进制同步可预置计数器
当16号端口接高电平,8号端口接地时正常工作。
当1、7、9、10号端口接入高电平,芯片计数,从11、12、
13、14号端口输出。当1号端口为低电平时,输出为0.
2号端接入脉冲信号,每接入一个脉冲信号,记一次数。
文档
2
、电路设计原理
一 利用74ls00制作的RS触发器产生开关消抖动电路,进而产生
CP脉冲。电路如图所示
二 利用74ls163生成模十计数器,电路图如图所示
其中单刀双掷开关接LOAD用来置零,接高电压时计数,接地电压时
置零。图中CP信号源由消抖动信号源产生。
文档
三 通过CD4511将模十信号输入进行译码,输出连接共阴数码管,
电路如图
为防止数码管中的发光二极管因电压过大烧坏,在与CD4511
之间接入电阻分压。
四 总体电路图为下图
文档
三、电路调试说明
在电路调试过程中,开关消抖动最难完成。一开始使用RC电路
滤除杂波,但实际过程中效果不明显,数码管的数字时钟工作不
正常,并不是依次计数。后经多次改变电容、电阻,仍无太大成
效。后来采用RS触发器制成消抖动电路,立即成效。
比较两种电路,RS触发器制成消抖动电路需要1个单刀双掷开
关与1个74ls00,而RC电路需要1个按键开关和2个电阻,1
个电容。相比RS成本较高。
除了消抖动电路外,还发现在调试时忘记焊接74ls00的正负电
源电线,以致数码管无法正常工作,并在检查电路时因74ls00
为整个电路中最简单部分而多次忽略。
四、实验心得
在制作电路板时,应仔细检查是否漏焊,虚焊。
调试时不应遗漏任何一点细节,任何细节都有可能是问题的结症
所在。
设计方案应设计多份不一样的,以防不时之需。
实验项目是靠大家共同努力完成的,大家分工明确,有人负责设
计,有人查找资料,有人焊电路板,调试时大家共同查找问题所
在,所以多人的合作有利于完成的效率。
单片机实验指导书
μVision2 支持所有的Keil 80C51 的工具软件,包括C51 编译器、宏汇编器、链接器/定位器、软硬件调试器和目标文件到HEX 格式文件转换器等,μVision2 可以自动完成编译、汇编、链接程序等操作。
μVision2 具有强大的软件环境、友好的操作界面和简单快捷的操作方法。
双击桌面上的Keil μVision2 快捷图标,可以进入如图1-1 所示的集成开发调试环境,各种调试工具、命令菜单都集成在此开发环境中。
菜单栏提供了各种操作菜单,如编辑器操作、工程维护、程序调试、窗体选择以及操作帮助等。
工具栏按钮和快捷键可以快速执行μVision2命令。
常用的菜单栏及相对应的工具栏按钮与快捷键介绍如表1-1~表1-6所列。
图1-1μVision2 集成环境界面表1-1 文件菜单和文件命令(File)表1-2 编辑菜单和编辑器命令(Edit)表1-3视图菜单(View)表1-4工程菜单和工程命令(Project)表1-5 调试菜单和调试命令(Debug)表1-6外围器件菜单(Peripheral)第2章单片机原理实验通过本章的实验,旨在使学生掌握Keil C51 的操作方法,学习80C51 的指令系统及汇编语言的程序设计方法。
2.1系统认识实验2.1.1实验目的1. 学习Keil C51 集成开发环境的操作;2. 熟悉TD-51 系统板的结构及使用。
2.1.2实验设备PC机一台2.1.3实验内容编写实验程序,将00H~0FH共16个数写入单片机内部RAM的30H~3FH空间。
通过本实验,学生需要掌握Keil C51软件的基本操作,便于后面的学习。
2.1.4实验步骤1. 创建Keil C51 应用程序在Keil C51 集成开发环境下使用工程的方法来管理文件,所有的源文件、头文件甚至说明性文档都可以放在工程项目文件里统一管理。
下面创建一个新的工程文件C51.Uv2,以此详细介绍如何创建一个Keil C51 应用程序。
A032 用计数器中断实现100以内的按键计数
void func(void) interrupt x using y
技术分解
1、需求分析 输入信号:T0口的按键输入作为计数信号源,INT0作为清零输入。 输出信号:2个数码管,0-99计数值显示,总计16个输出。 控制描述:1、对T0口的按键动作进行计数,并显示。 2、当INT0口的清零按键按下,计数值清零,显示清零 2、IO地址分配表
PROTEUS原理图设计
步骤1、数码管驱动电路。上拉排阻 步骤2、按键输入电路
KEIL C编程:
步骤1、KEIL C,新建工程,加载程序文件,工程说明 步骤2、数码管显示 步骤3、计数器初始化、中断函数 步骤4、外部中断初始化、中断程序 步骤4、检查,编译,仿真 拓展实例:利用计数器进行100以内的按键计数,不用中断。
林工QQ:2923105955 林工新浪博客: /lgmcu
[A032 用计数器中断实现100以内的按键计数]
知识点
1、定时器/计数器 D0D1:工作方式,4种 D2: 定时器/计数器选择 1:计数器;0:定时器 2、计数器0和单片机管脚T0的配合使用 D2=1;计数器模式 对T0管脚的输入脉冲进行计数 比如编码器检测转速 3、计数器中断 工作模式设定、初值设定 开中断开关、计数器中断开关 开触发开关、中断函数(重装初值) 8、外部中断-TCON IE1:外部中断1请求标志。 IT1:触发方式。1-下降沿;0-低电平 IE0:外部中断0请求标志。 IT0:触发方式。1-下降沿;0-低电平 4、中断函数
外部设备 计数按键
IO端口 P3.4/T0
信号描述 输入信号,下降沿有效
程序变量
清零按键
十位数码管 个位数码管
P3.2/INT0
P0 P2
独立按键识别-单片机原理-实验报告
宁德师范学院计算机系
实验报告
(2014—2015学年第 2学期)
课程名称单片机原理
实验名称独立按键识别
专业计算机科学与技术(软工)年级 2012级
学号 B2012103145 姓名冯武
指导教师杨烈君
实验日期 2015.5.27
实验步骤、实验结果及分析:
1 实验步骤:
1、使用Proteus ISIS 7 Professional
应用程序,建立一个.DSN文件
2、在“库”下拉菜单中,选中“拾取元件”(快捷键P),分别选择以下元件:AT89C51、CAP、CAP-ELEC、CRYSTAL、RESPACK-8。
3、构建仿真电路
图1 按键识别1、2
图2 按键识别3
图3按一下暂停
图4归零
图5时钟调整
电路图
注:1、报告内的项目或设置,可根据实际情况加以补充和调整 2、教师批改学生实验报告应在学生提交实验报告10日内。
用计数器中断实现100以内的按键计数[1]
3.33 用计数器中断实现100以内的按键计数一. 单片机系统功能简介:本例利用计数器中断实现按键计数,这与此前的按键计数程序看起来比较相似,但是用方法完全不同。
本例用T0计数器中断实现按键计数,由于计数寄存器初值为1,因此P3.4引脚的每次负跳变都会触发T0中断,实现计数值累加。
二.单片机系统硬件电路设计:2.1 proteus原理图:2.2 原件清单:三.软件设计:3.1 主程序流程图:3.2 程序清单:#include <reg51.h>#define uchar unsigned char#define uint unsigned intuchar codeDSY_CODE[]={0X3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00 };uchar Count=100;void main(){P0=0x00;P2=0x00;TMOD=0X06;TH0=TL0=256-1;ET0=1;EX0=1;EA=1;IP=0X02;IT0=1;TR0=1;while (1){P0=DSY_CODE[Count/10];P2=DSY_CODE[Count%10];}}void Clear_Counter()interrupt 0{Count=0;}void Key_Counter() interrupt 1{Count=(Count-1)%100;}四.系统调试4.1 在PROTEUS7.5仿真步骤1将程序在KEIL中编译,直到达到要求的功能为止;2在PROTEUS中绘制硬件图(在PROTEUS仿真时可以不添加最小系统电路;实际电路中需要);3将KEIL C中编译好的HEX文档加载到PROTEUS中;4按下K1开始计数,按下K2可以清零。
仿真效果:按下K1可以看到数码管开始计数,按一次记一次,从0-99,按下K2按键,可以看到数码管变0。
课程设计10进制计数器和8位按键显示器
数电课程设计实验课题:10进制计数器和8位按键显示器所在学院:信息科学与工程学院专业班级:通信工程1103班姓名:吴勇慷学号:110404302指导教师:孙洪林课程设计内容和要求:功能一:能实现0~9九个数持续循环显示的加法计数功能。
功能二:能实现8个按键,当按到某个按键时,数码管上显示该按键所对应的的数字,相互不阻碍。
设计的任务1:设计电路图2:写出电路原理3:对所做的电路进行调试分析4:对实验进行总结和体会实验所需元器件USB插口一个,开关8个,200K的电阻设计方式和步骤:将电路分为两个部份,一部份为按键显示,另一部份是自动循环显示。
按键显示大体部份由开关操纵信号的输入进入编码器然后编码器的输出通过译码器在通过数码管进行显示。
0~9九个数持续循环显示电路用十进制计数器还要有脉冲发生器最后将输出结果显示出来。
最后将这两个电路连接起来通过计数器的预制数端进行功能的转换。
设计原理为实现10进制计数器功能,需用到74LS160芯片。
当把它的LD端与RD端接到高电平常,它工作在计数功能,这时它的工作原理确实是10进制计数器;为实现8按键显示器功能,需要用到74HC148优先编码器与74LS04非门芯片,74HC148为cmos管,因此要加上拉电阻,以后用74HC148把8位信号编码进去,输出时需要用非门将输出信号反转,才能取得所需要的信号。
现在将74LS160 LD端接到低电平,RD端接到高电平,这时它工作在置数功能,将74LS148的编码信号完全输出。
整体电路的显示需要CD4511译码器和译码管的结合利用。
由于整体电路共用一个数码管和译码器,因此需要将这两种功能合在一路,因此需要一个单刀双掷开关(自锁开关)来实现。
当自锁开关自锁时,实现8位按键显示功能;当自锁开关不自锁时,实现10进制计数器功能。
脉冲信号需要不自锁开关操纵。
为使所加脉冲信号加倍稳固,用74LS00做锁存器。
整体电路图:参数计算:上拉电阻阻值2KΩ在74HC148上加入上拉电阻是为了爱惜电路,通常阻Ω之间,在74LS00上加入上拉电阻是为了提高输入电平,产生高驱动。
数字钟的设计
数字钟的设计引言数字钟是一种常见的时钟设计,它能够以数字形式显示时间,方便人们获取准确的时间信息。
本文将介绍数字钟的设计原理、硬件与软件实现,并提供一个示例设计的步骤指南。
设计原理数字钟的设计原理基于计数器和显示器。
计数器用于记录时间,而显示器用于将记录的时间以数字形式显示出来。
一般情况下,数字钟主要涉及到以下几个方面的设计:1.时钟电路:时钟电路是数字钟的核心组成部分,它通过稳定的振荡器产生一个稳定的时钟信号,以确保数字钟的准确性。
2.计数器电路:计数器电路用于记录时间。
它可以根据时钟信号来递增或递减计数值,并将计数值转换成小时、分钟和秒钟等形式。
3.显示器电路:显示器电路用于将计数器记录的时间以数字形式显示出来。
常见的显示器电路包括七段数码管、LCD显示屏等。
硬件设计在数字钟的硬件设计中,需要考虑以下几个方面:1.选取合适的时钟电路:选择合适的时钟电路非常重要,它直接影响到数字钟的准确性。
常用的时钟电路包括晶振电路和石英钟电路等。
2.选择合适的计数器芯片:选择合适的计数器芯片能够简化数字钟的设计。
常见的计数器芯片有74HC4017、CD4510等。
3.选择合适的显示器:根据设计需求选择合适的显示器。
七段数码管是常用的显示器,它能够以数字形式显示时间。
另外,LCD显示屏也是常见的选择之一。
软件设计数字钟的软件设计主要涉及到以下几个方面:1.程序框架设计:设计程序框架能够清晰地组织代码,使得代码具有良好的可读性和可维护性。
可以使用面向对象的思想设计程序框架,将时钟和显示器等抽象为对象,方便调用和管理。
2.时钟管理:设计一个时钟管理模块,用于控制时钟的计数和显示。
该模块需要根据计数器的计数值来更新显示器的显示。
3.用户交互设计:如果有需要,可以设计用户交互模块,允许用户设置时间等功能。
可以通过按键输入实现用户与数字钟的交互。
示例设计以下是一个简单的数字钟设计的示例步骤指南:1.选择合适的时钟电路,比如使用一个晶振电路作为时钟源。
数码管时钟电路的设计
前言单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。
单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。
由于具有上述优点,在我国,单片机已广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而51单片机是各单片机中最为典型和最有代表性的一种。
这次毕业设计通过对它的学习、应用,以AT89C205芯片为核心,辅以必要的电路,设计了一个简易的电子时钟,它由直流电源供电,通过数码管能够准确显示。
.数字时钟是现代社会应用广泛的计时工具,在航天、电子等科研单位,工厂、医院、学校等企事业单位,各种体育赛事及至我们每个人的日常生活中都发挥着重要的作用。
本系统是基于AT89C2051单片机设计的一个具有六位LED显示的数字时实时钟,采用独立式按键进行时间调整,该系统同时具有硬件设计简单、工作稳定性高、价格低廉等优点。
目录摘要时钟,自从它发明的那天起,就成为人类的朋友,但随着时间的推移,科学技术的不断发展,人们对时间计量的精度要求越来越高,应用越来越广。
怎样让时钟更好的为人民服务,怎样让我们的老朋友焕发青春呢?这就要求人们不断设计出新型时钟。
现今,高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调校,数字式电子钟用集成电路计时时,译码代替机械式传动,用LED显示器代替显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时,分,秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。
本文利用单片机实现数字时钟计时功能的主要内容,其中AT89C2051是核心元件同时采用数码管动态显示“时”,“分”,“秒”的现代计时装置。
与传统机械表相比,它具有走时精确,显示直观等特点。
它的计时周期为24小时,显满刻度为“23时59分59秒”,另外具有校时功能,断电后有记忆功能,恢复供电时可实现计时同步等特点。
利用数码管显示倒计时控制器设计
学号1322010119天津城建大学单片机原理及应用A课程设计说明书利用数码管显示的倒计时控制器设计起止日期:2016年05月30日至2016年6月10日学生姓名杨德虎班级电气(1)班成绩指导教师(签字)控制与机械工程学院2016年6月10日天津城建大学课程设计任务书2015 —2016学年第1学期控制与机械工程学院13电气工程及其自动化专业电气(1)班班级课程设计名称:单片机原理及应用A设计题目:利用数码管显示的倒计时控制器设计完成期限:自2016 年 5 月30 日至2016年 6 月10日共 2 周设计依据、要求及主要内容:一.课程设计的目的1.进一步熟悉和掌握单片机的结构及工作原理。
2.掌握单片机的接口技术及相关外围芯片的外特性,控制方法。
3.通过课程设计,掌握以单片机核心的电路设计的基本方法和技术。
4.通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。
5.通过完成一个包括电路设计和程序开发的完整过程,了解开发单片机应用系统的全过程,为今后从事相应开发打下基础。
二.课程设计的基本要求1.认真认识设计的意义,掌握设计工作程序,学会使用工具书和技术参考资料,并培养科学的设计思想和良好的设计作风。
2.提高模型建立和设计能力,学会应用相关设计资料进行设计计算的方法。
3.提高独立分析、解决问题的能力,逐步增强实际应用训练。
4.课程设计的说明书要求简洁、通顺,计算正确,图纸表达内容完整、清楚、规范。
5.课程设计说明书封面格式要求见《天津城建大学课程设计教学工作规范》附表1。
三.课程设计具体要求a) 要求每位同学独立完成设计任务。
b) 原理图及PCB设计1.原理图设计要符合项目的工作原理,连线要正确。
2.图中所使用的元器件要合理选用,电阻、电容等器件的参数要正确标明。
3.原理图要完整,CPU、外围器件、外扩接口、输入/输出装置要一应俱全。
4.设计完成上述原理图对应的PCB图。
c) 程序调计1.根据要求,将总体功能分解成若干个子功能模块,每个功能模块完成一个特定的功能。
基于C51单片机的000-999计数器
[2]迟忠君.单片机应用技术.北京:北京邮电大学出版社,2016(6):3-5。
三、设计执行过程(请根据以下内容填写对该设计项目用到的理论知识)
1、总体设计框图(画出总体设计框图,并结合设计框图简述工作原理,写不下可另附页)
五、项目结题评审(请根据以下内容做好记录,并提交完整的项目设计报告给老师打分)
1、项目答辩记录(请将老师提的问题和答案记录下来)
问题一:
问题二:
记录人:年月日
2、结题答辩组评审意见(以下由老师填写)
成绩专家组:、年月日
3、项目成绩评定(请将老师提的问题和答案记录下来)
项目教学活页成绩:。
答辩成绩:。
若干
12MHz晶振
1个
0.8mm焊锡
若干
30pF瓷片电容
2个
10uF电解电容
1个
10k电阻
1个
5、焊接图纸和说明(用铅笔或专业软件画出详细的焊接布局设计图,元件引脚标注详细清晰。)
说明:使用ProtellDXP画出pcb布线图,布线图采用双层布线模式,蓝色导线位于底层,红色导线位于顶层。
6、实物效果照片和功能说明(用高清相机拍出实物的效果照片,此页彩色打印,要体现出任务书中的功能效果,图片高清,并附有功能效果的文字说明,可另附页。)
说明:考虑到数码管位置的摆放问题,故将程序的P1和P0对调,P0控制十位数显示,P1口控制百位数显示,其余不变。
四、项目总结(请根据以下内容做工作总结,并提交完整的项目设计报告)
1、学习小结(对学习到的知识点进行总结、归纳)
通过这次000-999计数器的设计,总体来说,我的收获很大。无论是在培养自己的实验动手能力还是在自己独立思考能力方面。在此次点阵设计的过程中,更进一步的熟悉了proteus软件和DXP软件的使用以及加深了对芯片结构的了解和掌握,加强了对c语言的认识,学会了如何拆分数字的百位,十位以及个位,并将其传送到单片机的各个端口,了解了数码管的内部结构,在以后的学习中会有很大的帮助。
4X4矩阵键盘及显示电路设计
4X4矩阵键盘与显示电路设计FPGA在数字系统设计中的广泛应用,影响到了生产生活的各个方面。
在FPGA 的设计开发中,VHDL语言作为一种主流的硬件描述语言,具有设计效率高,可靠性好,易读易懂等诸多优点。
作为一种功能强大的FPGA数字系统开发环境,Altera公司推出的Quar-tUSⅡ,为设计者提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程,为使用VHDL语言进行FPGA设计提供了极大的便利。
矩阵键盘作为一种常用的数据输入设备,在各种电子设备上有着广泛的应用,通过7段数码管将按键数值进行显示也是一种常用的数据显示方式。
在设计机械式矩阵键盘控制电路时,按键防抖和按键数据的译码显示是两个重要方面。
本文在QuartusⅡ开发环境下,采用VHDL语言设计了一种按键防抖并能连续记录并显示8次按键数值的矩阵键盘与显示电路。
一、矩阵键盘与显示电路设计思路矩阵键盘与显示电路能够将机械式4×4矩阵键盘的按键值依次显示到8个7段数码管上,每次新的按键值显示在最右端的第O号数码管上,原有第0~6号数码管显示的数值整体左移到第1~7号数码管上显示,见图1。
总体而言,矩阵键盘与显示电路的设计可分为4个局部:(1)矩阵键盘的行与列的扫描控制和译码。
该设计所使用的键盘是通过将列扫描信号作为输入信号,控制行扫描信号输出,然后根据行与列的扫描结果进行译码。
(2)机械式按键的防抖设计。
由于机械式按键在按下和弹起的过程中均有5~10 ms的信号抖动时间,在信号抖动时间内无法有效判断按键值,因此按键的防抖设计是非常关键的,也是该设计的一个重点。
(3)按键数值的移位存放。
由于该设计需要在8个数码管上依次显示前后共8次按键的数值,因此对已有数据的存储和调用也是该设计的重点所在。
(4)数码管的扫描和译码显示。
由于该设计使用了8个数码管,因此需要对每个数码管进行扫描控制,并根据按键值对每个数码管进行7段数码管的译码显示。
