单片机原理 独立按键识别-单片机原理-实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
宁德师范学院计算机系
实验报告
(2014—2015学年第2学期)
课程名称单片机原理
实验名称独立按键识别
专业计算机科学与技术(非师)年级12级
学号B2012102147 姓名王秋
指导教师杨烈君
实验日期2015.5.27
、创建一个Keil应用程序:新建工程项目文件;为工程选择目标器件(
项目创建源程序文件并输入程序代码;保存创建的源程序项目文件;把源程序文件添加到项目中。
、把程序经过编译后生成的HEX文件添加到仿真电路中的处理器中(编辑元件→文件路径)程序代码:
1. 实现单按键控制Led灯闪烁
#include"reg51.h"
#define uchar unsigned char
sbit Led1=P1^0;
sbit Key=P3^2;
uchar Mode=0;
void delay(int x) //定义时间间隔
图1 单按钮,控制led灯闪烁
图2 单按键多功能识别,控制4路Led灯闪烁
的计数器效果,按一下数值加1
#include"reg51.h"
#define uchar unsigned char
#define disp_null 10
sbit Key=P3^2;
uchar code tab[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff}; 共阳数码管显示0~9的段码表
uchar DispBuf[8];
图3 0-99的计数器效果,按一下数值加1 0-99码表(按一次开始计时,第二次停止,第三次清零)
#include"reg51.h"
#define uchar unsigned char
#define disp_null 10
sbit Key=P3^2;
uchar code tab[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff}; 共阳数码管显示0~9的段码表
uchar DispBuf[8];
uchar sec=0;
uchar temp=30;
图4 0-99码表,按一次开始计时,第二次停止
图7 3按键实现时钟的调整,KEY1选择模式,KEY2 +,KEY3 - 图8 3按键实现时钟的调整,KEY1选择模式,KEY2 +,KEY3 -
注:1、报告内的项目或设置,可根据实际情况加以补充和调整
2、教师批改学生实验报告应在学生提交实验报告10日内