51单片机(七).单片机输入电路实践——按键键盘的使用

单片机输入电路中最常用的是键盘,键盘分为两类:一类是独立键盘;另一类是矩阵键盘。下面分别是51单片机外围电路中常见的独立按键电路以及4*4矩阵键盘电路:

独立键盘

矩阵键盘

 

对于键盘操作还有一个重要的问题,按键抖动现象。即按一下按键然后松开手,由于单片机运行速度很快,能够多次运行到键盘程序,往往会认为按了多次按键。消除键盘抖动的方法有硬件消抖和软件消抖。最常用的是软件消抖,即在程序中检测到按键按下后,延迟一段时间,在按键程序结束后,在延时一段时间。

下面结合之前介绍过的输入电路与按键实现两个应用实例。

1、按下按键在1602上显示对应的数字,再按下一个按键后面显示℃,再按下一个按键后清零,为下一次输入做准备。

#include <reg52.h>
#include "LCD1602.h"
#include <intrins.h>
uchar code table[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f};
uchar tab1;
int keyscan(void)
{
	uchar i,temp,key=16;
	for(i=0;i<4;i++)
	{
		P3=_crol_(0xfe,i);
		temp=P3;
		temp=temp&0xf0;
		if(temp!=0xf0)
		{
			delay(5);
			temp=P3;
			temp=temp&0xf0;
			if(temp!=0xf0)
			{
				temp=P3;
				switch(temp)
				{
					case 0xee:key=0;break;
					case 0xde:key=1;break;
					case 0xbe:key=2;break;
					case 0x7e:key=3;break;
					case 0xed:key=4;break;
					case 0xdd:key=5;break;
					case 0xbd:key=6;break;
					case 0x7d:key=7;break;
					case 0xeb:key=8;break;
					case 0xdb:key=9;break;
					case 0xbb:key=10;break;
					case 0x7b:key=11;break;
					case 0xe7:key=12;break;
					case 0xd7:key=13;break;
					case 0xb7:key=14;break;
					case 0x77:key=15;break;
					default:break;
				}
				while((temp&0xf0)!=0xf0)
				{
					temp=P3;
					temp=temp&0xf0;
				}
			}
		}
	}
	return key;
}
void mian()
{
	uchar i,a,key1;
	Lcd_Init();
	while(1)
	{
		write_data(0x80+table[0]);
		key1=keyscan();
		if(key1==10)
		{
			 write_com(0x01);
			 write_com(0x80);
			 a=0;
		}
		if(key1<10)
		{
			write_com(0x80+table[a]);
			delay(5);
			tab1=key1;
			write_data(tab1='0');
			a++;
		}
		if(key1==11)
		{
			write_com(0x80+table[a]);
			write_data(0xdf);
			delay(20);
			write_com(0x80+table[a+1]);
			delay(5);
			write_data('C');
		} 
	}
}


2、按下按键在8位数码管上显示相应的数字。

#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit duan=P2^6;
sbit wei=P2^7;
uchar code 	table[]={0x3f,0x6,0x5b,0x4f,0x66,0x6d,0x7d,0x7,0x7f,0x6f,
0x76,0x79,0x38,0x3f,0x5b,0x6};
uchar temp,num,num1;
void delay()
{
  uchar x,y;
  for(y=0;y<100;y++)
     for(x=0;x<10;x++);
} 
main()
{
	duan=1;
	P0=0;
	duan=0;
	wei=1;
	P0=0xc0;
	wei=0;
  	P1=0xfe;
	while(1)
	{
		P3=0xfe;
		temp=P3;
		temp=temp&0xf0;
		if(temp!=0xf0)
		{
		    delay();
			temp=P3;
			temp=temp&0xf0;
			while(temp!=0xf0)
			{
				temp=P3;
				switch(temp)
				{
					case 0xee:num=1;
						break;
					case 0xde:num=2;
						break;
					case 0xbe:num=3;
						break;
					case 0x7e:num=4;
						break;
				}
				while(temp!=0xf0)
				{
					temp=P3;
					temp=temp&0xf0;
				}	  //松手检测
				P1=_crol_(P1,num);
			}
		} 
		P3=0xfd;
		temp=P3;
		temp=temp&0xf0;
		if(temp!=0xf0)
		{
		    delay();
			temp=P3;
			temp=temp&0xf0;
			while(temp!=0xf0)
			{
				temp=P3;
				switch(temp)
				{
					case 0xed:num=5;
						break;
					case 0xdd:num=6;
						break;
					case 0xbd:num=7;
						break;
					case 0x7d:num=8;
						break;
				}
				while(temp!=0xf0)
				{
					temp=P3;
					temp=temp&0xf0;
				}	 
				duan=1;
				P0=table[num-1];
				duan=0;
			}
		}
		P3=0xfb;
		temp=P3;
		temp=temp&0xf0;
		if(temp!=0xf0)
		{
		    delay();
			temp=P3;
			temp=temp&0xf0;
			while(temp!=0xf0)
			{
				temp=P3;
				switch(temp)
				{
					case 0xeb:num=9;
						break;
					case 0xdb:num=10;
						break;
					case 0xbb:num=11;
						break;
					case 0x7b:num=12;
						break;
				}
				while(temp!=0xf0)
				{
					temp=P3;
					temp=temp&0xf0;
				}	
				duan=1;
				P0=table[num-1];
				duan=0;
			}
		}
	    P3=0xf7;
		temp=P3;
		temp=temp&0xf0;
		if(temp!=0xf0)
		{
		    delay();
			temp=P3;
			temp=temp&0xf0;
			while(temp!=0xf0)
			{
				temp=P3;
				switch(temp)
				{
					case 0xe7:num=13;
						break;
					case 0xd7:num=14;
						break;
					case 0xb7:num=15;
						break;
					case 0x77:num=16;
						break;
				}
				while(temp!=0xf0)
				{
					temp=P3;
					temp=temp&0xf0;
				}	
				duan=1;
				P0=table[num-1];
				duan=0;
			}
		}
	}
}

最后推荐一个字符及汉字取模软件(无需积分可下载)。

 

 

 

 

 

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目录 一、设计总绪 2 1.1设计思想 2 1.2设计说明 2 1.3关键词:矩阵键盘单片机,数码管显示,汇编语言 2 1.4设计目的 2 1.5设计要求 2 二、设计方案 3 2.1硬件电路设计方案 3 2.1.1基本结构 3 2.1.2系统框架图 3 2.1.3工作流程图 4 2.1.4单片机主控制模块 5 2.2系统功能描述 6 三、各模块功能介绍 7 3.1键盘输入模块 7 3.1.1键盘分布图 7 3.1.2工作原理 7 3.2运算控制模块 8 3.3显示模块 8 3.4振荡电路模块 9 四、仿真电路 10 仿真运行结果 10 五、调试过程总结 12 附录: 13 参考文献: 13 源程序代码 13 一、设计总绪 1.1设计思想 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术 日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件 来使用,但仅单片机方面的知识是不够的,还应根据具体硬件结构、软硬件结合,来加 以完善。 计算机在人们的日常生活中是比较常见的电子产品之一。可是它还在发展之中,以后必 将出现功能更加强大的计算机,基于这样的理念,本次设计是用AT89c51单片机、LCD显 示器、控制按键为元件来设计的计算器。利用此设计熟悉单片机微控制器及汇编语言编 程,对其片资源及各个I/O端口的功能和基本用途的了解。掌握应用程序开发环境,常用 的LCD显示器的使用方法和一般键盘使用方法 此设计是基于单片机技术的简易计算器的方案,本次设计所提出的一种基于单片机技术 的简易计算器的方案,采用具有数据处理能力的中央处理器CPU,随机存储器ROM,多种 I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算 机系统——单片机,配以汇编语言编写的执行程序,能更好的解决计算机计算的问题,随 着数字生活的到来,单片机在生活中越来越重要,它能将大量的逻辑功能集成与一个集 成电路中,使用起来十分方便。 1.2设计说明 本次课程设计讨论了单片机技术的计算器构思,设计方案,工作原理,主要系统包括 单片机80C51,排阻RESPACK—8,开关,六位数码管显示器等,主要组成部分包括:键盘 输入模块,运算模块,控制模块,显示模块。通过键盘输入数值,单片机进行运算后在 数码管显示出结果。 1.3关键词:矩阵键盘单片机,数码管显示,汇编语言 1.4设计目的 通过本次课程设计,运用《单片机微型计算机原理及应用》所学到的知识及查询相关资料 ,完成简易计算器的设计,进一步提高单片机的系统设计和开发能力,达到理论知识与 实践更好的结合,提高综合运用所学知识和设计能力的目的。 1.5设计要求 要求设计一个单片机应用系统,利用keil和proteus软件完成系统软硬件的设计及模拟调 试。实现五位数(可为带小数点)的加减乘除运算,通过按键输入十进制数据。利用六 位数码管显示运算结果。并实现复位操作。由于要设计的是简单的计算器,可以进行四 则运算,为了得到教好的显示效果,采用LCD显示数据和结果。、另外键盘包括数字键( 0-9)、符号键(+、- 、*、/)、清除键和等号键,故只需要16个按键即可,设计中采用集成的计算机键盘来 ,当键入+、- 、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值后将显示键入 的数值,按等号就会在LCD上输出运算结果,执行程序:开机显示零,等待键入数值,当 键入数字,通过LCD显示出 二、设计方案 2.1硬件电路设计方案 2.1.1基本结构 计算器一般由运算器、控制器、键盘、显示器、电源和一些可选外围设备及电子配件通 过人工或机器设备组成。键盘是计算器的输入部件,一般采用接触式或传感式。显示器 是计算器的输出部件,有发光二极管显示器或液晶显示器等。除显示计算结果外,还常 有溢出指示、错误指示等。计算器电源采用交流转换器或电池。计算器都采用CMOS工艺 制作的大规模集成电路。 本次课程设计中我是采用了以MCS—51系列的单片机AT89C51单片机为核心构成的简易计算 器。该系统通过单片机控制,实现对4*4键盘进行实时扫描的按键检测,并把检测数据存 储下来。整个计算器系统的工作过程为:首先存储单元初始化,显示初始值和键盘扫描 ,判断按键位置,查表得出按键值,单片机则对数据进行储存与相应处理转换,之后送 入数码管动态显示。整个系统可分为三个主要功能模块:功能模块一,实时键盘扫描; 功能模块二,数据转换成显示器显示;功能模块三,计算控制模块。功能模块四:显示 模块。 2.1.2系统框架图 图2.1 系统总体框架图 2.1.3工作流程图 No Yes 图2.2 系统工作流程图 2.1.4单片机主控制模块 AT89C51是一种带4K字节闪烁可编程可擦除只
单片机控制直流电动机——课程设计 单片机控制直流电动机——课程设计全文共17页,当前为第1页。单片机控制直流电动机——课程设计全文共17页,当前为第1页。目录 单片机控制直流电动机——课程设计全文共17页,当前为第1页。 单片机控制直流电动机——课程设计全文共17页,当前为第1页。 设计目的 设计任务和要求 设计原理分析 硬件资源及原理 硬件图 程序框图 程序 调试运行 仿真截图 设计心得体会 单片机控制直流电动机——课程设计全文共17页,当前为第2页。单片机控制直流电动机——课程设计全文共17页,当前为第2页。 单片机控制直流电动机——课程设计全文共17页,当前为第2页。 单片机控制直流电动机——课程设计全文共17页,当前为第2页。 一、设计目的 1、通过单片机课程设计,熟练掌握C语言的编程方法,将理论联系到实践中,提高我们的动脑和动手的能力。 2、通过对单片机控制直流电动机控制系统的设计,掌握A/D转换、D/A转换的有关原理,加深对PWM波的理解和使用,同时对单片机使用更加熟练,通过对简单程序的编写提高我们的逻辑抽象能力。 二、设计任务和要求 任务:采用单片机设计一个控制直流电动机并测量转速的装置。 要求: 1、通过改变A/D输入端的可变电阻来改变A/D输入电压,D/A输入检测量大小,进而改变直流电机的转速。 2、手动控制。在键盘上设置两个按键——直流电动机加速键和直流电机减速键。在手动状态下,每按一次键,电机的转速按照约定的速率改变。 3、键盘列扫描(4*6)。 三、设计原理分析 1. 设计思路 本文设计的直流PWM调速系统采用的是调压调速。系统主电路采用大功率GTR为开关器件、H桥单极式电路为功率放大电路的结构。PWM调制部分是在单片机开发平台之上,运用汇编语言编程控制。由定时器来产生宽度可调的矩形波。通过调节波形的宽度来控制H电路中的GTR通断时间,以达到调节电机速度的目的。增加了系统的灵活性和精确性,使整个PWM脉冲的产生过程得到了大大的简化。设计以AT89C51单片机为核心,以键盘作为输入达到控制直流电机的启停、速度和方向,完成了基本要求和发挥部分的要求。在设计中,采用了PWM技术对电机进行控制,通过对占空比的计算达到精确调速的目的。本文介绍了直流电机的工作原理和数学模型、脉宽调制控制原理和H桥电路基本原理设计了驱动电路的总体结构,根据模型,利用PROTEUS软件对各个子电路及整体电路进行了仿真,确保设计的电路能够满足性能指标要求,并给出了仿真结果。 2、 基本原理 单片机控制直流电动机——课程设计全文共17页,当前为第3页。单片机控制直流电动机——课程设计全文共17页,当前为第3页。主体电路:即直流电机PWM控制模块。PWM(脉冲宽度调制)是通过控制固定电压的直流电源开关频率,改变负载两端的电压,从而达到控制要求的一种电压调整方法。这部分电路主要由80C51单片机的I/O端口、定时计数器、外部中断扩展等控制直流电机的加速、减速,并且可以调整电机的转速,还可以方便的读出电机转速的大小和了解电机的转向,能够很方便的实现电机的智能控制。其间是通过80C51单片机产生脉宽可调的脉冲信号并输入到L298驱动芯片来控制直流电机工作的。 单片机控制直流电动机——课程设计全文共17页,当前为第3页。 单片机控制直流电动机——课程设计全文共17页,当前为第3页。 四、硬件资源及原理 1.1直流电机调速原理 直流电动机根据励磁方式不同,直流电动机分为自励和他励两种类型。不同励磁方式的直流电动机机械特性曲线有所不同。但是对于直流电动机的转速有以下公式: n=U/Cc-TR内/CrCc 其中:U—电压;—励磁绕组本身的电阻;—每极磁通(Wb);Cc—电势常数;Cr—转矩常量。由上式可知,直流电机的速度控制既可采用电枢控制法,也可采用磁场控制法。磁场控制法控制磁通,其控制功率虽然较小,但低速时受到磁极饱和的限制,高速时受到换向火花和换向器结构强度的限制,而且由于励磁线圈电感较大,动态响应较差。所以在工业生产过程中常用的方法是电枢控制法。 图1-1 直流电机的工作原理图 单片机控制直流电动机——课程设计全文共17页,当前为第4页。单片机控制直流电动机——课程设计全文共17页,当前为第4页。电枢控制是在励磁电压不变的情况下,把控制电压信号加到电机的电枢上,以控制电机的转速。在工业生产中广泛使用其中脉宽调制(PWM)应用更为广泛。脉宽调速利用一个固定的频率来控制电源的接通或断开,并通过改变一个周期内"接通"和"断开"时间的长短,即改变直流电机电枢上电压的"占空比"来改变平均电压的大小,从而控制电动机的转速,因此,PWM又被称为"开关驱动装置"。 单片机控制直流电动机——课程设计全文共17页,当前为第4页。 单片机控制直流电动机——课程设计
单片机原理及应用课程设计》报告 ——数码管显示4*4矩阵键盘键盘号设计 专 业: 班 级: 姓 名: 学 号: 2013年1月 1.课程设计目的 1.1巩固和加深对单片机原理和接口技术知识的理解; 1.2培养根据课题需要选学参考书籍、查阅手册和文献资料的能力; 1.3学会方案论证的比较方法,拓宽知识,初步掌握工程设计的基本方法; 1.4掌握常用仪器、仪表的正确使用方法,学会软、硬件的设计和调试方法; 1.5能按课程设计的要求编写课程设计报告,能正确反映设计和实验成果,能用计算 机绘制电路图和流程图。 2.课程设计要求 单片机的P1口的P1.0~P1.7连接4×4矩阵键盘,P0口控制一只数码管,当4×4矩阵键盘 中的某一按键按下时,数码管上显示对应的键号。例如,1号键按下时,数码管显示"1" , 14号键按下时,数码管显示"E"等等。 3. 硬件设计 3.1 设计思想 分析本任务的要求,使设计能够完成当4*4矩阵键盘中的某一按键按下时,数码管上 显示对应的键盘号。则本系统主要由以下几大模块构成: 显示模块,共阴极LED数码管; 输入模块,4*4矩阵键盘; 3.2主要元器件介绍 矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键 盘。在行线和列线的每一个交叉点上,设置一个按键。这样键盘按键的个数是4×4个。 这种行列式键盘结构能够有效地提高单片机系统中I/O口的利用率。 数码管不同位显示的时间间隔可以通过调整延时程序的延时长短来完成。数码管显示 的时间间隔也能够确定数码管显示时的亮度,若显示的时间间隔长,显示时数码管的亮 度将亮些,若显示的时间间隔短,显示时数码管的亮度将暗些。若显示的时间间隔过长 的话,数码管显示时将产生闪烁现象。所以,在调整显示的时间间隔时,即要考虑到显 示时数码管的亮度,又要数码管显示时不产生闪烁现象。 3.3 原理图及功能电路介绍 矩阵键盘电路 数码管电路 4. 软件设计 4.1 设计思想 按键采用线反转法先把列线置成低电平,行线置成输入状态,读行线;再把行线置成 低电平,列线输入状态,读列线。当有键按下时,由两次所读状态即可确定所按键的位 置,不需扫描,键盘响应速度大大加快。 4.2软件流程图 4.3 源程序 org 0000h mov p2,#0ffh ljmp main org 0100h main:acall keyscan mov a,30h mov dptr,#table movc a,@a+dptr mov p2,a acall delay sjmp main keyscan:mov p3,#0fh mov a,p3 anl a,#0fh mov b,a mov p3,#0f0h mov a,p3 anl a,#0f0h orl a,b cjne a,#0ffh,keypro ret keypro:mov b,a mov dptr,#keyvalue mov r3,#0ffh key1:inc r3 mov a,r3 movc a,@a+dptr cjne a,b,key2 mov a,r3 mov 30h,a ret key2:cjne a,#00h,key1 ret delay:mov r0,#20 next1:mov r1,#20 next2:mov r2,#248 djnz r2,$ djnz r1,next2 djnz r0,next1 ret keyvalue:db 77h,7bh,7dh,7eh db 0b7h,0bbh,0bdh,0beh db 0d7h,0dbh,0ddh,0deh db 0e7h,0ebh,0edh,0eeh db 00h table:db 0c0h,0f9h,0a4h,0b0h db 99h,92h,82h,0f8h db 80h,90h,88h,83h db 0c6h,0a1h,86h,8eh end 5. 调试运行 依次按下开关,八段数码管会对应显示出0—f的16个数字 6. 设计心得体会 经过这次课程设计,我对51单片机有了更高程度的理解。更加明白了做设计是一项很考 验心智的一件事儿,需要时间、精力和耐心。 参考书目: 肖金球. 单片机原理与接口技术.[M].北京:清华大学出版社,2004.12 ----------------------- 单片机课程设计——数码管显示4×4矩阵键盘全文共7页,当前为第1页。 单片机课程设计——数码管显示4×4矩阵键盘全文共7页,当前为第2页。 单片机课程设计——数码管显示4×4矩阵键盘全文共7页,当前为第3页。 开始 初始化 先把列线置成低电平,行线置成输入状态,读行线 再把行线置成低电平,列线输入状态,读列线 有键按下时 按键的位置 结束,返回 结束,返回 单片机课程设计—
目录 一、设计总绪 2 1.1设计思想 2 1.2设计说明 2 1.3关键词:矩阵键盘单片机,数码管显示,汇编语言 2 1.4设计目的 2 1.5设计要求 2 二、设计方案 3 2.1硬件电路设计方案 3 2.1.1基本结构 3 2.1.2系统框架图 3 2.1.3工作流程图 4 2.1.4单片机主控制模块 5 2.2系统功能描述 6 三、各模块功能介绍 7 3.1键盘输入模块 7 3.1.1键盘分布图 7 3.1.2工作原理 7 3.2运算控制模块 8 3.3显示模块 8 3.4振荡电路模块 9 四、仿真电路 10 仿真运行结果 10 五、调试过程总结 12 附录: 13 参考文献: 13 源程序代码 13 一、设计总绪 1.1设计思想 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术 日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件 来使用,但仅单片机方面的知识是不够的,还应根据具体硬件结构、软硬件结合,来加 以完善。 计算机在人们的日常生活中是比较常见的电子产品之一。可是它还在发展之中,以后必 将出现功能更加强大的计算机,基于这样的理念,本次设计是用AT89c51单片机、LCD显 示器、控制按键为元件来设计的计算器。利用此设计熟悉单片机微控制器及汇编语言编 程,对其片资源及各个I/O端口的功能和基本用途的了解。掌握应用程序开发环境,常用 的LCD显示器的使用方法和一般键盘使用方法 此设计是基于单片机技术的简易计算器的方案,本次设计所提出的一种基于单片机技术 的简易计算器的方案,采用具有数据处理能力的中央处理器CPU,随机存储器ROM,多种 I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算 机系统——单片机,配以汇编语言编写的执行程序,能更好的解决计算机计算的问题,随 着数字生活的到来,单片机在生活中越来越重要,它能将大量的逻辑功能集成与一个集 成电路中,使用起来十分方便。 1.2设计说明 本次课程设计讨论了单片机技术的计算器构思,设计方案,工作原理,主要系统包括 单片机80C51,排阻RESPACK—8,开关,六位数码管显示器等,主要组成部分包括:键盘 输入模块,运算模块,控制模块,显示模块。通过键盘输入数值,单片机进行运算后在 数码管显示出结果。 1.3关键词:矩阵键盘单片机,数码管显示,汇编语言 1.4设计目的 通过本次课程设计,运用《单片机微型计算机原理及应用》所学到的知识及查询相关资料 ,完成简易计算器的设计,进一步提高单片机的系统设计和开发能力,达到理论知识与 实践更好的结合,提高综合运用所学知识和设计能力的目的。 1.5设计要求 要求设计一个单片机应用系统,利用keil和proteus软件完成系统软硬件的设计及模拟调 试。实现五位数(可为带小数点)的加减乘除运算,通过按键输入十进制数据。利用六 位数码管显示运算结果。并实现复位操作。由于要设计的是简单的计算器,可以进行四 则运算,为了得到教好的显示效果,采用LCD显示数据和结果。、另外键盘包括数字键( 0-9)、符号键(+、- 、*、/)、清除键和等号键,故只需要16个按键即可,设计中采用集成的计算机键盘来 ,当键入+、- 、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值后将显示键入 的数值,按等号就会在LCD上输出运算结果,执行程序:开机显示零,等待键入数值,当 键入数字,通过LCD显示出 二、设计方案 2.1硬件电路设计方案 2.1.1基本结构 计算器一般由运算器、控制器、键盘、显示器、电源和一些可选外围设备及电子配件通 过人工或机器设备组成。键盘是计算器的输入部件,一般采用接触式或传感式。显示器 是计算器的输出部件,有发光二极管显示器或液晶显示器等。除显示计算结果外,还常 有溢出指示、错误指示等。计算器电源采用交流转换器或电池。计算器都采用CMOS工艺 制作的大规模集成电路。 本次课程设计中我是采用了以MCS—51系列的单片机AT89C51单片机为核心构成的简易计算 器。该系统通过单片机控制,实现对4*4键盘进行实时扫描的按键检测,并把检测数据存 储下来。整个计算器系统的工作过程为:首先存储单元初始化,显示初始值和键盘扫描 ,判断按键位置,查表得出按键值,单片机则对数据进行储存与相应处理转换,之后送 入数码管动态显示。整个系统可分为三个主要功能模块:功能模块一,实时键盘扫描; 功能模块二,数据转换成显示器显示;功能模块三,计算控制模块。功能模块四:显示 模块。 2.1.2系统框架图 图2.1 系统总体框架图 2.1.3工作流程图 No Yes 图2.2 系统工作流程图 2.1.4单片机主控制模块 AT89C51是一种带4K字节闪烁可编程可擦除只

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值