当前位置:文档之家› 数码管计数器实训报告

数码管计数器实训报告

数码管计数器实训报告
数码管计数器实训报告

<>应用项目总结报告

工作组:

项目名称:数码管计数器(0000-9999)

组员名单:__ 专业:计算机应用技术

指导教师:龙华

项目进度:

阶段1: 样版程序烧写到学习箱的过程

1.把Jflash_Pxa270_P30文件夹中所有的文件,以及生成的.bin文

件,放到一个盘符下,如d盘根目录。

2.进入windows下的DOS平台(cmd),进入d盘目录,输入以下

指令:Jflashmm.exe pxa270 8SEG.bin

3.重启开发板,可看到数码管亮起来。阶段2: 数码管显示数字的原理

数码管共有八段abcdefg。如图所示.

h g f e d c b a

a

0: 0 1 0 0 0 0 0 0 0x40 1: 0 1 1 1 1 0 0 1 0x79 2: 0 0 1 0 0 1 0 0 0x24 3: 0 0 1 1 0 0 0 0 0x30 4: 0 0 0 1 1 0 0 0 0x19 5: 0 0 0 1 0 0 1 0 0x12 6: 0 0 0 0 0 0 1 0 0x02 7: 0 1 1 1 1 0 0 0 0x78 8: 0 0 0 0 0 0 0 0 0x00 9: 0 0 0 1 0 0 0 0 0x10

阶段3: 样版程序改造为计数器

// 计数器代码main.c

#include

#define LED_CS2 (*((volatile unsigned short int *)(0x10300000))) //LED1 and LED2

#define LED_CS3 (*((volatile unsigned short int *)(0x10400000))) //LED3 and LED4

void Delay(unsigned int x)

{

unsigned int i, j, k;

for (i =0; i <=x; i++)

for (j = 0; j <0xff; j++)

for (k = 0; k <0xff; k++);

}

int main(void)

七段数码管及其驱动七段数码管及其驱动原理,

[转]7段数码管管脚顺序及译码驱动集成电路74LS47,48 7段数码管管脚顺序及译码驱动集成电路74LS47,48 这里介绍一下7段数码管见下图7段数码管又分共阴和共阳两种显示方式。如果把7段数码管的每一段都等效成发光二极管的正负两个极,那共阴就是把abcdefg 这7个发光二极管的负极连接在一起并接地;它们的7个正极接到7段译码驱动电路74LS48的相对应的驱动端上(也是abcdefg)!此时若显示数字1,那么译码驱动电路输出段bc为高电平,其他段扫描输出端为低电平,以此类推。如果7段数码管是共阳显示电路,那就需要选用74LS47译码驱动集成电路。共阳就是把abcdefg的7个发光二极管的正极连接在一起并接到5V电源上,其余的7个负极接到74LS47相应的abcdefg输出端上。无论共阴共阳7段显示电路,都需要加限流电阻,否则通电后就把7段译码管烧坏了!限流电阻的选取是:5V电源电压减去发光二极管的工作电压除上10ma到15ma得数即为限流电阻的值。发光二极管的工作电压一般在1.8V--2.2V,为计算方便,通常选2V即可!发光二极管的工作电流选取在10-20ma,电流选小了,7段数码管不太亮,选大了工作时间长了发光管易烧坏!对于大功率7段数码管可根据实际情况来选取限流电阻及电阻的瓦数!74ls48引脚图管脚功能表 74LS48芯片是一种常用的七段数码管译码器驱动器,常用在各种数字电路和单片机系统的显示系统中,下面我就给大家介绍一下这个元件的一些参数与应用技术等资料。74ls48引脚功能表—七段译码驱动器功能表http://www.51hei. com/chip/312.html74LS47引脚图管脚功能表:

基于msc51单片机实现的四位4乘4矩阵键盘计算器的C语言程序及其PROTUES电路和仿真

单片机原理及接口技术 课程设计报告 设计题目:计算器设计 学号:100230205 姓名:费博文 指导教师:张扬 信息与电气工程学院 二零一三年七月

计算器设计 单片机体积小,功耗小,价格低,用途灵活,无处不在,属专用计算机。是一种特殊器件,需经过专门学习方能掌握应用,应用中要设计专用的硬件和软件。近年来,单片机以其体积小、价格廉、面向控制等独特优点,在各种工业控制、仪器仪表、设备、产品的自动化、智能化方面获得了广泛的应用。与此同时,单片机应用系统的可靠性成为人们越来越关注的重要课题。影响可靠性的因素是多方面的,如构成系统的元器件本身的可靠性、系统本身各部分之间的相互耦合因素等。其中系统的抗干扰性能是系统可靠性的重要指标。 数学是科技进步的重要工具,数据的运算也随着科技的进步越发变得繁琐复杂,计算器的出现可以大大解放人在设计计算过程中的工作量,使计算的精度、速度得到改善,通过msc51单片机,矩阵键盘和LED数码管可以实现简单的四位数的四则运算和显示,并当运算结果超出范围时予以报错。 注:这一部分主要描述题目的背景和意义,对设计所采取的主要方法做一下简要描述。字数不要太多,300-500字。 另注:本文要当做模板使用,不要随意更改字体、字号、行间距等,学会使用格式刷。文中给出的各项内容都要在大家的报告中体现,可采用填空的方式使用本模板。 1. 设计任务 结合实际情况,基于AT89C51单片机设计一个计算器。该系统应满足的功能要求为: (1) 实现简单的四位十进制数字的四则运算; (2) 按键输入数字,运算法则; (3) LED数码管移位显示每次输入的数据和运算结果; (4) 当运算结果超出范围时实现报错。 主要硬件设备:AT89C51单片机、LED数码管、矩阵键盘。 注:这一部分需要写明系统功能需求,用到的主要硬件(参考实验箱的说明书)。

8位数码管计数器

C:\Documents and Settings\Administrator\桌面\new\1.c /* 单片机52系列, 功能描述:8位数码管显示0~0-9~9 加1计数,数码管使用共阴极,数码管通过2片74HC573接到P0口,P2^6段选择,P2^7位选择 */ #include< reg52.H> #define uchar unsigned char //宏定义uchar 为无符号字符 #define N 1 //宏定义N=1,用于动态显示位 uchar code duan[]={ 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f/* 0x77,0x7c,0x39,0x5e,0x79,0x71*/ }; //共阴段码表uchar code wei[]={ 0xfe, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7f}; //8个位的开通表 uchar ge=0,shi=0,bai=0,qian=0,wan=0,swan=0,bwan=0,qwan=0,num=0; //定义变量及初始化 sbit dula= P2^6; //段变量定义 sbit wela= P2^7; //位变量定义 void delayxms(uchar x); //延时子函数声明 void main() //主函数 Page: 1 C:\Documents and Settings\Administrator\桌面\new\1.c

{ P0=duan[0]; // 装载初值 dula=1; dula=0; P0=wei[0]; // 装载初值 wela=1; wela=0; /* 中断设置*/ EA=1; //中断总允许 ET0=1; //定时器0中断允许 TMOD= 0x01; // 定时器器0工作方式1 TH0=-10000/256;// 定时10000高8位,可以直接写成TH0=-10000/256 TL0=-10000%256;// 定时10000低8位,可以直接写成TL0=-10000%256 TR0=1; // 启动定时器0 /* 程序跳转去执行定时中断程序,然后返回此处*/ while(1) //大循环 { P0=duan[qwan]; //送千万位段码 if(qwan==0) // 如果千万位等于0,关闭段选、位选{

单片机简易数字计算器汇编

基 于 单 片 机 的 简 易 计 算 器 设 计 自动化控制一班 kaoyanbaomu521

摘要: 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。 本任务是个简易的两位数的四则运算,程序都是根据教材内和网络中的程序参考编写而成,在功能上还并不完善,限制也较多。本任务重在设计构思与团队合作,使得我们用专业知识、专业技能分析和解决问题全面系统的锻炼。 关键词: 单片机计算器范围加减乘除 1 引言 1.1 计算器的历史 说起计算器,值得我们骄傲的是,最早的计算工具诞生在中国。中国古代最早采用的一种计算工具叫筹策,又被叫做算筹。这种算筹多用竹子制成,也有用木头,兽骨充当材料的。约二百七十枚一束,放在布袋里可随身携带。直到今天仍在使用的珠算盘,是中国古代计算工具领域中的另一项发明,明代时的珠算盘已经与现代的珠算盘几乎相同。17世纪初,西方国家的计算工具有了较大的发展,英国数学家纳皮尔发明的"纳皮尔算筹",英国牧师奥却德发明了圆柱型对数计算尺,这种计算尺不仅能做加减乘除、乘方、开方运算,甚至可以计算三角函数,指数函数和对数函数,这些计算工具不仅带动了计算器的发展,也为现代计算器发展奠定了良好的基础,成为现代社会应用广泛的计算工具。 1.2 电子计算器的特殊键 在使用电子计算器进行四则运算的时候,一般要用到数字键,四则运算键和清除数据键。除了这些按键,还有一些特殊键,可以使计算更加简便迅速。 2 单片机概述 单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。 通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。 单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。 3 芯片简介 3.1 MSC-51芯片简介 MCS-51单片机内部结构 8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。

4位按键控制下的LED、数码管SOPC计数

4位按键控制下的LED、数码管SOPC计数 要求:在Altera公司的FPGA开发板上,利用Nios II CPU软核,实现使用按键进行LED、数码管及在Nios II IDE下Console栏里计数的方法。 实验仪器:SOPC核心板、USB-Blaster下载线、开发实验底板、电源、PC。 //将库函数包含进入 #include"system.h"//SOPC生成的系统库函数 #include //中断库函数 #include"alt_types.h"//类型定义库函数 #include //io端口库函数 #include"altera_avalon_pio_regs.h"//io端口寄存器库函数 #include"altera_avalon_timer_regs.h"//定时器端口寄存器库函数 #include #define TIMER_BASE 0x00011000 #define PIO_KEY_BASE 0x00011020 #define PIO_HIGH_BASE 0x00011030 #define PIO_LOW_BASE 0x00011050 #define PIO_LED_BASE 0x00011040 #define KEY *(alt_u8 *)PIO_KEY_BASE //将按键接口寄存器的按键值取得 //计数函数 static void counter_add(alt_u8 cnt) { IOWR(TIMER_BASE,0,0); if (cnt>= 0x63)//当计数到99 进行清零 cnt= 0x00; else//当没有计数到99 将秒针加1 cnt = cnt+ 1; } //清零函数 static void counter_reset(alt_u8 cnt) {

基于51单片机的简易计算器制作

基于51单片机的简易计算器制作专业:电气信息班级:11级电类一班 姓名:王康胡松勇 时间:2012年7月12日 一:设计任务 本系统选用AT89C52单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计,具体设计如下: (1)由于设计的计算器要进行四则运算,为了得到较好的显示效果,经综合分析后,最后采用LED 显示数据和结果。 (2)采用键盘输入方式,键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键(on\c)和等号键(=),故只需要16 个按键即可,设计中采用集成的计算键盘。 (3)在执行过程中,开机显示零,等待键入数值,当键入数字,通过LED显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LED上输出运算结果。 (4)错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示范围时,计算器会在LED上提示八个0;当除数为0时,计算器会在LED上会提示八个负号。 设计要求:分别对键盘输入检测模块;LED显示模块;算术运算模块;错误处理及提示模块进行设计,并用Visio画系统方框图,keil与protues仿真 分析其设计结果。 二.硬件设计 单片机最小系统 CPU:A T89C52 显示模块:两个4位7段共阴极数码管 输入模块:4*4矩阵键盘 1.电路图

电路图说明 本电路图采用AT89C52作为中处理器,以4*4矩阵键盘扫描输入,用两个74HC573(锁存器)控制分别控制数码管的位于段,并以动态显示的方式显示键盘输入结果及运算结果。为编程方便,以一个一位共阴极数码管显示负号。 三,程序设计 #include #define Lint long int #define uint unsigned int #define uchar unsigned char sbit dula=P2^6; //锁存器段选sbit wela=P2^7; sbit display_g=P2^0; //负号段选 sbit display_w=P2^1; //负号位选uchar code table[]={0x3f,0x06,0x5b,0x4f, //0,1,2,3

0-99手动计数器的设计要点

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊ 第1章绪论 1.1 计数器介绍 本设计是根据我们所学习的单片机课程,按照课程要求进行的课程设计。单片机技术是一个不可或缺的技术,尤其是对于我们电气专业来说它是我们必须要掌握的技能之一,使我们未来工作和生活的根本。现在的社会是一个信息科技高速发展的社会,也是一个电子技术和微机计算机迅速发展的时代,单片机的档次和水平在不断的提高,其应用的领域和范围也越来越广,成为现代电子系统中最重要的智能化核心部分。 随着计数器技术的不断发展与进步,计数器的种类越来越多,应用的范围越来越广,随之而来的竞争也越来越激烈。过硬的技术也成为众多生产厂商竞争的焦点之一。厂商为了在竞争中处于不败之地,从而不断地改进技术,增加产品的种类。 现计数器的种类以增加到:电磁计数器、电子计数器、机械计数器(拉动机械计数器、转动机械计数器、按动机械计数器、测长机械计数器)、液晶计数器等。计数器的应用范围也遍布印刷、纺织、印染、针织、电缆、电讯、军工、轻工、机械、开关、断路器、矿山、实行多班制的纺织行业的织布机、织带机、制线、制带、造纸、制革、薄膜、高压开关电器产品、试验设备,印刷设备、短路器、医疗、纺织、机械、仓库和码头的货运、行人及车辆过往的数量计数、冶金、食品、国防、包装、配料、石油、化工、发电、机床、仪表、自动化控制等行业。 1.2 本次设计的要求 1) 上电时,数码管显示为00。 2) 利用单片机来制作一个手动计数器,在单片机的管脚上接一个轻触开关,作为手动计数的按钮,用单片机的I/O口接数码管,作为计数器,进行加计数显示。 3) 计数器计数到99后,再按计数按钮,则数码管从00重新开始计数。 1.3 本次设计的目的 1) 学习基本理论在实践中综合运用的初步经验,掌握电路设计的基本方法、设计步骤,培养综合设计与调试能力。 2) 掌握汇编语言程序设计方法。 3) 培养实践技能,提高分析和解决实际问题的能力。

模拟计算器数字输入及显示课程设计

摘要 本设计是一个实现加、减、乘、除的计算器,它的硬件主要由四部分组成,一个AT89C51单片机芯片,一个八位共阳极的数码管,一个4*4的键盘,一个排阻(10K)做P0口的上拉电阻(接线图在附录2),它可以实现结果低于65535的加、减、乘、除运算。 显示部分:采用动态显示,由八位共阳极数码管通过P0口,P2口与单片机相连,数码管的A,B,C,D,E,F,G,DP分别依次与单片机的P0.0—P0.7相连,P0口做为单片机的字码控制端,数码管的1,2,3,4,5,6,7,8各引脚分别与单片机的P2.0—P2.7相连,P2口作为数码管的位控制端。 按键部分:采用4*4键盘。采用软件识别键值并执行相应的操作,键盘的第0行到第3行依次与单片机的P3.4—P3.7管脚相连,键盘的第0列到第3列依次与单片机的P1.0—P1.3管脚相连,程序运行时依次扫描各行,查询是否有键按下,如果有则进入键盘识别处理程序,实现相应的运算,然后通过数码管输出结果,如果没有按键就调用显示程序显示一个0,等待按键按下,在进入按键扫描程序。 执行过程:开机即显示0,等待键入数值,当键入数字,将通过数码管显示出来,在键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当在键入数值后将显示键入的数值,按等号就会在数码管上输出运算结果。注:结果不能超出65535。(具体操作见后面仿真图)

目录 1 概述 1.1MCS-51单片机在自动化仪表中的作用 (3) 1.2掌握单片机仿真软件Proteus的使用方法 (3) 1.3设计方法 (3) 1.4基本功能 (4) 2 系统总体方案及硬件设计 2.1计算器总体思想 (5) 2.2硬件的选择与连接 (6) 3 软件设计 3.1显示程序设计 (7) 3.2键盘识别程序设计 (8) 3.3运算程序设计 (10) 3.4风鸣器程序设计 (10) 4 Proteus软件仿真 (12) 5课程设计体会 (16) 参考文献 (18) 附1:源程序代码 (19) 附2:计算器模拟系统电路图 (31)

8位数码管动态显示电路设计.

电子课程设计 — 8位数码管动态显示电路设计 学院:电子信息工程学院 专业、班级: 姓名: 学号: 指导老师: 2014年12月

目录 一、设计任务与要求 (3) 二、总体框图 (3) 三、选择器件 (3) 四、功能模块 (9) 五、总体设计电路图 (10) 六、心得体会 (12)

8位数码管动态显示电路设计 一、设计任务与要求 1. 设计个8位数码管动态显示电路,动态显示1、2、3、4、5、6、7、8。 2. 要求在某一时刻,仅有一个LED 数码管发光。 3. 该数码管发光一段时间后,下一个LED 发光,这样8只数码管循环发光。 4. 当循环扫描速度足够快时,由于视觉暂留的原因,就会感觉8只数码管是在持续发光。 5、研究循环地址码发生器的时钟频率和显示闪烁的关系。 二、总体框图 设计的总体框图如图2-1所示。 图2-1总体框图 三、选择器件 1、数码管 数码管是一种由发光二极管组成的断码型显示器件,如图1所示。 U13 DCD_HEX 图1 数码管 数码管里有八个小LED 发光二极管,通过控制不同的LED 的亮灭来显示出 不同的字形。数码管又分为共阴极和共阳极两种类型,其实共阴极就是将八个 74LS161计数器 74LS138译码 器 数码管

LED的阴极连在一起,让其接地,这样给任何一个LED的另一端高电平,它便能点亮。而共阳极就是将八个LED的阳极连在一起。 2、非门 非门又称为反相器,是实现逻辑非运算的逻辑电路。非门有输入和输出两个端,电路符号如图2所示,其输出端的圆圈代表反相的意思,当其输入端为高电平时输出端为低电平,当其输入端为低电平时输出端为高电平。也就是说,输入端和输出端的电平状态总是反相的。其真值表如表1所示。 图2 非门 表1 真值表 输入输出 A Y 0 1 1 0 3、5V电源 5V VCC电源如图3所示。 图3 5V电源

基于51单片机的红外数码管计算器

基于51单片机的数码管应用 一、设计要求 1、基本要求 (1)焊接一个单片机最小系统,接通电源后,至少能在四位数码管上同时显示四个非0的相同的数字。 (2)至少四位数码管能动态显示出[0,1,2,3],达到一定的效果。 (3)能用按键改变显示的数字。 2、发挥部分 (1)增加数码管至8位。 (2)增加4*4矩阵按键,实现简易的8位计算器功能。 (3)增加红外接收模块,实现遥控功能。 (4)增加蜂鸣器,当有按键按下时发声。 (5)利用遥控器实现倒计时功能。

二、系统硬件配置 本系统采用STC89C52RC单片机作为微控制器,分为6个模块(如下图所示):按键电路,红外感应电路,蜂鸣器响应电路,数码管显示电路,晶振以及复位电路。 下面是电路图部分 :

三、系统软件设计 1、主程序模块 主程序需要调用5 个子程序,各模块程序功能如下: ●数码管显示程序:向数码的显示送数,控制系统的显示部分。 ●按键消抖程序:采用检验连续四次按键状态的方式软件消抖。 ●矩阵按键扫描程序:每4*4 ms扫描一次按键。 ●中断设定程序:实现定时功能。 ●数值计算程序:实现8位计算四则运算功能。 主程序流程见图如下:

四、系统源代码 Main.c部分代码如下: #include sbit BUZZ = P3^3; sbit KEY_IN_1 = P2^3; sbit KEY_IN_2 = P2^2; sbit KEY_IN_3 = P2^1; sbit KEY_IN_4 = P2^0; sbit KEY_OUT_1 = P2^4; sbit KEY_OUT_2 = P2^5; sbit KEY_OUT_3 = P2^6; sbit KEY_OUT_4 = P2^7; unsigned char code LedChar[]={ 0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90, 0x88, 0x83, 0xC6, 0xA1, 0x86, 0x8E }; unsigned char code KeyCodeMap[4][4]={ {0x31,0x32,0x33,0x25}, {0x34,0x35,0x36,0x26}, {0x37,0x38,0x39,0x27}, {0x1B,0x30,0x0D,0x28} }; unsigned char KeySta[4][4]={ {1,1,1,1}, {1,1,1,1}, {1,1,1,1}, {1,1,1,1} };

设计一个四位二进制计数器

1、要求:设计一个四位二进制计数器,将计数结果由数码管显示,显示结果为十进制数。数码管选通为低电平有效,段码为高电平有效。 分析:VHDL 描述包含五部分:计数器、将四位二进制数拆分成十进制数的个位和十位、二选一的数据选择器、七段译码、数码管选通控制信号 线定义为信号 library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity counter3 is Port ( clk:in STD_LOGIC; clk1 : in STD_LOGIC; clr : in STD_LOGIC; en : in STD_LOGIC; co : out STD_LOGIC; scanout:out std_logic_vector(1 downto 0); ledout:out std_logic_vector(6 downto 0)); end counter3; architecture Behavioral of counter3 is signal cnt:std_logic_vector(3 downto 0); signal cnt1:std_logic_vector(3 downto 0); signal cnt2:std_logic_vector(3 downto 0); signal hex:std_logic_vector(3 downto 0); signal scan:std_logic_vector(1 downto 0); en clr

基于51单片机的数字计算器的设计

《单片机技术及其应用》课程设计报告 专业:通信工程 班级:09312班 姓名:某某某 学号:09031069 指导教师: 二0一二年六月十八日

目录 1设计目的 (1) 2 设计题目描述与要求 (1) 3 设计过程 (2) 4硬件总体方案及说明 (6) 5 软件总体方案及设计流程 (9) 6 调试与仿真 (13) 7 心得体会 (14) 8 指导老师意见 (15) 9 参考文献 (16) 附录一 (16) 附录二 (21)

基于51单片机的数字计算器的设计 1设计目的 简易计算器的原理与设计是单片机课程设计课题中的一个。在完成理论学习和必要的实验后,我们掌握了单片机的基本原理以及编程和各种基本功能的应用,但对单片机的硬件实际应用和单片机完整程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。单片机课程设计既巩固了课本学到的理论,还学到了单片机硬件电路和程序设计,简易计算器课程设计通过自己动手用计算机电路设计软件,编写和调试,最后仿真,来加深对单片机的认识,充分发挥我们的个人创新和动手能力,并提高我们对单片机的兴趣,同时学习查阅资料、参考资料的方法。 本设计是基于51系列的单片机进行的简易计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除3位无符号数字的简单四则运算,并在LED 上相应的显示结果。 设计过程在硬件与软件方面进行同步设计。硬件选择AT89C51单片机和74ls164,输入用4×4矩阵键盘。显示用5位7段共阴极LED静态显示。软件从分析计算器功能、流程图设计,再到程序的编写进行系统设计。选用编译效率最高的Keil软件进行编程,并用proteus仿真。 2 设计题目描述与要求 基于AT89C51数字计算器设计的基本要求与基本思路: (1)扩展4*4键盘,其中10个数字,5个功能键,1个清零 (2)使用五位数码管接口电路

单片机数码管计数器

MAIN: NOP CALL DISPLAY0;LED动态显示刷新 CALL DELAY100 JNB B_T1IF,MAIN;每50ms处理一次。 ;====================================== CLR B_T1IF MOV A,TIMES_50MS CJNE A,#20,NO_1S JMP YES_1S; 满20次即为一秒钟 ;===================================== NO_1S: MOV A,TIMES_50MS CJNE A,#1,NO_1S_END ;TIMES_50MS不为1,返回 ;当TIMES_50MS为1时,判断当前所选档位是否过高或者过低 ;若计数器BUF大于100,则说明满1秒时必然大于2000,则提前调高频率衰减档位, ;并清零各计数值,重新在新档位测量 MOV A,COUNTER_BUF_H JNZ NO_1S_1;计数器高位不为0,说明超100 MOV A,COUNTER_BUF_L CJNE A,#100,NO_1S_0 NO_1S_0:JC NO_1S_LOW;计数器BUF小于100,继续跳转到NO_1S_LOW判断是否需要调低档位 NO_1S_1: MOV A,FREQ_LOSS;超量程,判断当前频率衰减档位,若小于3则加一档 CJNE A,#3,NO_1S_2 JMP NO_1S_END NO_1S_2:JC NO_1S_3 MOV A,#3 MOV FREQ_LOSS,A;档位大于3,则修正为3 NO_1S_3: INC FREQ_LOSS;频率衰减档位加1 MOV A,FREQ_LOSS CJNE A,#1,NO_1S_4 SETB P153_B;FREQ_LOSS=1 CLR P153_A JMP NO_1S_20 NO_1S_4:CJNE A,#2,NO_1S_5 CLR P153_B;FREQ_LOSS=2 SETB P153_A

数字电路设计——加法计算器

姓名罗银贵班级1208105 学号1120810501 实验日期节次教师签字成绩 加法计算器 1.实验目的 通过对加法计算器的设计,掌握组合逻辑电路、时序逻辑电路的分析和设计方法; 了解及掌握中规模集成电路以及各个芯片的管脚图及结构图。 掌握全加器、计数器等芯片的功能及实现方法; 锻炼动手实践能力,提高自身设计能力。 2.总体设计方案或技术路线 设计一个简单的加法计算器,能实现简单的加法运算,计算结果为0—16的和数,并输出到数码管。加法运算的实现要求:用四个开关代表四位二进制数,操纵开关,输入二进制数码,则在相应的数码管上显示出相应的十进制数,即代表被加数;用同样的方法在另外的四个开关上输入二进制数,则在相应的数码管上显示相应的十进制数,即代表加数;当加数与被加数都输入后,在另外的两个数码管上出现两数的和。

3.实验电路图 4.仪器设备名称、型号和技术指标 直流稳压电源、试验箱、万用表; 2个74LS00D、1个74LS283D、1个74LS04D、2个74LS08D、1个74LS20D; 单刀双掷开关9个、导线若干。

5.理论分析或仿真分析结果 开关9置0,闭合J1、J2、J3、J4相应开关输入被加数: 开关9置0,闭合J5、J6、J7、J8相应开关输入加数:

开关9置1,输入相应的被加数和加数,并求和,输出到另外两个数码管上: 6.详细实验步骤及实验测量数据记录 根据实验电路图连接好电路; 检查实验电路无误后,开关9置0; 闭合J1、J2、J3、J4相应开关输入被加数; 闭合J5、J6、J7、J8相应开关输入加数; 开关9置1,输出相应被加数与加数的和。

实验四八位七段数码管动态显示电路的设计

实验四八位七段数码管 动态显示电路的设计 Document serial number【KK89K-LLS98YT-SS8CB-SSUT-SST108】

八位七段数码管动态显示电路的设计 一、实验目的 1、了解数码管的工作原理。 2、学习七段数码管显示译码器的设计。 3、学习VHDL的CASE语句及多层次设计方法。 二、实验原理 七段数码管是电子开发过程中常用的输出显示设备。在实验系统中使用的是两个四位一体、共阴极型七段数码管。其单个静态数码管如下图4-4-1所示。 图4-1 静态七段数码管 由于七段数码管公共端连接到GND(共阴极型),当数码管的中的那一个段被输入高电平,则相应的这一段被点亮。反之则不亮。共阳极性的数码管与之相么。四位一体的七段数码管在单个静态数码管的基础上加入了用于选择哪一位数码管的位选信号端口。八个数码管的a、b、c、d、e、f、g、h、dp都连在了一起,8个数码管分别由各自的位选信号来控制,被选通的数码管显示数据,其余关闭。 三、实验内容 本实验要求完成的任务是在时钟信号的作用下,通过输入的键值在数码管上显示相应的键值。在实验中时,数字时钟选择1024HZ作为扫描时钟,用四个拨动开关做为输入,当四个拨动开关置为一个二进制数时,在数码管上显示其十六进制的值。 四、实验步骤 1、打开QUARTUSII软件,新建一个工程。 2、建完工程之后,再新建一个VHDL File,打开VHDL编辑器对话框。 3、按照实验原理和自己的想法,在VHDL编辑窗口编写VHDL程序,用户可参照光盘中 提供的示例程序。 4、编写完VHDL程序后,保存起来。方法同实验一。 5、对自己编写的VHDL程序进行编译并仿真,对程序的错误进行修改。 6、编译仿真无误后,根据用户自己的要求进行管脚分配。分配完成后,再进行全编译 一次,以使管脚分配生效。 7、根据实验内容用实验导线将上面管脚分配的FPGA管脚与对应的模块连接起来。 如果是调用的本书提供的VHDL代码,则实验连线如下: CLK:FPGA时钟信号,接数字时钟CLOCK3,并将这组时钟设为1024HZ。

2位数码管显示00-99计数器

2位数码管显示00-99 计数器样图: C源码: #include #define out P0 unsigned char disp[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; sbit SW2=P1^0; sbit SWXS=P3^0; sbit GWXS=P3^1; unsigned char buff; unsigned int m; void delayms(unsigned int k){ unsigned int i,j; for(i=k;i>0;i--) for(j=141;j>0;j--); } bit key_test(){ bit temp; if(!SW2){

delayms(10); if(!SW2){ delayms(10); while(!SW2); temp=1; } } else temp=0; return temp; } void display(unsigned dat){ unsigned char sw,gw; sw=dat/10%10; gw=dat%10; out=0x00; SWXS=0; GWXS=1; out = disp[sw]; delayms(5); SWXS=1; GWXS=0; out=disp[gw]; delayms(5); } main(){ while(1){ if(key_test()){ buff++; if(buff>=100){ buff=0; } } display(buff); } } 原件: AT89C52 X 1 7SEG-MPX2-CC X 1 BUTTON X 1 RES (10K) X 3 RESPACK-8 (10k) x 1

4位数计算器的设计

摘要 0 1 总体任务 (1) 1.1设计目的 (1) 1.2设计内容和要求 (1) 1.3 设计思路 (1) 2 设计原理分析 (2) 2.1 计算器的工作原理 (2) 2.1.1 计算器的工作流程 (2) 2.1.2 编程实现控制 (2) 2.1.3 功能拓展 (2) 2.2 单片机计算器的基本构成及原理 (2) 3硬件电路的设计 (4) 3.1系统硬件总电路构成及原理 (4) 3.2硬件电路的部分组成元器件的简介 (4) 3.2.1AT89C51单片机 (4) 3.2.2 八段LED数码管 (4) 3.2.3 矩阵键盘 (6) 3.3 元器件清单 (7) 3.4 电路原理图 (7) 4 系统程序的简单设计 (8) 4.1 程序方框图 (8) 4.2 计算器程序 (8) 5 系统的仿真调试 (15) 6 课程设计总结 (16) 参考文献 (17)

本文论述了单片机4位数加法计算器的设计,从对设计任务的分析到画电原理图到编程和最后的仿真调试,都进行了一个简单的描述。 在设计过程中,采用Keil软件编写源程序,用Protues 7 professional的ISIS 7 professional软件画电原理图并且仿真,通过对编程时的编译和对仿真结果现象的观察,不断地对源程序以及电原理图的修改,最后成功设计出了一个能够进行4位数加法运算的计算器。该计算器通过4×4的矩阵键盘输入数字及运算符,若运算结果超过4位十进制数,则显示为E;另外,也能进行减法、乘法以及除法的运算,在进行减法运算时,若运算结果小于零,则显示其绝对值;进行除法运算时,若除数等于零,则显示E。 关键词:计算器;单片机;数码管;矩阵键盘

数码管计数器-报告

目录 一、题目名称 (2) 二、内容摘要 (2) 三、设计任务与要求 (2) 四、系统方案,画出系统框图..................................................................................................... - 2 - 4.1 方案比较 ...................................................................................................................................... - 2 - 4.2方案论证........................................................................................................................................ - 3 - 4.3方案选择........................................................................................................................................ - 3 - 五、硬件设计,画出程序流程图 5.1 一般数字式计数器的原理....................................................................................................... - 4 - 5.2计数器方案的概述 ..................................................................................................................... - 4 - 5.3 单片机........................................................................................................................................... - 5 - 5.3.1 89S51一般概述 ..................................................................................................................... - 5 - 5.3.2引脚功能说明.......................................................................................................................... - 5 - 5.4 分频电路 ...................................................................................................................................... - 6 - 5.5 显示电路 ...................................................................................................................................... - 6 - 5.6硬件设计简介和系统整体原理图 .......................................................................................... - 7 - 5.6.1 硬件设计简介......................................................................................................................... - 7 - 5.6.2 系统整体原理图 .................................................................................................................... - 8 - 六、软件设计,画出程序流程图 ............................................................................................... - 8 - 6.1 测频软件实现原理 .................................................................................................................... - 8 - 6.2软件流程图 ................................................................................................................................... - 8 - 6.3程序设计...................................................................................................................................... - 11 - 七、系统调试........................................................................................................................................ - 11 - 7.1使用的主要仪器和仪表 ........................................................................................................ - 11 - 7.2调试电路的方法和技巧 .......................................................................................................... - 11 - 7.3调试中出现的故障、原因及排除方法 ............................................................................... - 12 - 八、设计成果........................................................................................................................................ - 12 - 九、结束语 ............................................................................................................................................. - 13 - 1.结论 .................................................................................................................................................. - 13 - 2.体会 .................................................................................................................................................. - 13 - 参考文献...................................................................................................................................................... - 14 -

相关主题
文本预览
相关文档 最新文档