版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1004402121计科本101 黄远利课程设计报告书设计名称: 单片机原理与应用 题 目: 数码管显示4X4矩阵键盘按键号 专 业: 计算机科学与技术 日 期: 2012 年 6 月 11日一设计目的:1) 了解单片机系统实现LED动态显示的原理及方法;2) 较为详细了解8051芯片的性能;3) 能够了解到单片机系统的基本原理,了解单片机控制原理;4) 掌握AT89C51程序控制方法;5) 掌握AT89C51 C语言中的设计和学会分析程序,进而能够根据自己的需要编写代码;6) 掌握4X4矩阵式键盘程序识别原理;7) 掌握4X4矩阵式键盘的设计方法;8) 学习键盘的扫描方式和应用程序设计;9)
2、 培养根据课题需要选学参考书籍、查阅手册和文献资料的能力;10) 能够按课程设计的要求编写课程设计报告,能够正确反映设计和实验成果。二设计要求与主要内容: 设计要求:单片机的P1口P1.0P1.7连接4X4矩阵键盘,P0口控制一只P0口控制一只数码管,当4×4矩阵键盘中的某一按键按下时,数码管上显示对应的键号。例如,1号键按下时,数码管显示“1”, 二号按下的时候,数码管显示“2”,14号键按下时,数码管显示“E”等等。主要内容:1)4×4矩阵键盘程序识别原理 。 2)每个按键都有它的行值和列值,行值和列值的组合就是识别这个按键的编码。矩阵的行线和列线都连接到AT89C51
3、中,通过按键K0K16,来在数码管显示不同的值。 实验步骤:1) 启动keiuvision3 2)新建工程命名为单片机的C语言设计与应用 3)新建文件并另存为C51c.c 4)在SourceGroop1导入文件 5)编写代码,并生成C语言设计与应用.hex文件。6) 在Proteus中设计电路图 7) 将keil与Proteus联机调试,记下实验记录,得出实验结果。初始化三设计程序原理:(包含仿真图和流程图) 1)主程序流程图是否有按键按下 请按键标识键值处理显示所有按键2)程序流程图结束,返回开始若有按键按下,显示键盘号初始化扫描键盘第一行 若无按键按下扫描键盘第二行若无按键按下扫描键盘第三
4、行:若无按键按下扫描键第四行若无按键按下结束,返回3)仿真图四程序代码#include<reg51.h> #define uchar unsigned char #define uint unsigned int /段码 ucharcode DSY_CODE=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90, 0x88,0x83,0xc6,0xa1,0x86,0x8e,0x00; sbit BEEP=P37; /上次按键和当前按键的序号,该矩阵中序号范围 015,16 表示无按键 uchar Pre_KeyNo=16,KeyNo=1
5、6; /延时 void DelayMS(uint x) uchar i; while(x-) for(i=0;i<120;i+); /矩阵键盘扫描 void Keys_Scan() uchar Tmp; P1=0x0f; /高 4 位置 0,放入 4 行 DelayMS(1); Tmp=P10x0f; /按键后 0f 变成 0000XXXX,X 中一个为 0,3 个仍为1,通过异或把3个1变为 0,唯一的0变为1 switch(Tmp) /判断按键发生于 03 列的哪一列 case 1: KeyNo=0;break; case 2: KeyNo=1;break; case 4: KeyN
6、o=2;break; case 8: KeyNo=3;break; default:KeyNo=16; /无键按下 P1=0xf0; /低 4 位置 0,放入 4 列 DelayMS(1); Tmp=P1>>40x0f; /按键后 f0 变成 XXXX0000,X 中有 1 个为 0,三个仍为 1;高4位转移到低 4 位并异或得到改变的值 switch(Tmp) /对 03 行分别附加起始值 0,4,8,12 case 1: KeyNo+=0;break; case 2: KeyNo+=4;break; case 4: KeyNo+=8;break; case 8: KeyNo+=
7、12; /蜂鸣器 void Beep() uchar i; for(i=0;i<100;i+) DelayMS(1); BEEP=BEEP; BEEP=0; /主程序 void main() P0=0x00; BEEP=0; while(1) P1=0xf0; if(P1!=0xf0) Keys_Scan(); /获取键序号 if(Pre_KeyNo!=KeyNo) P0= DSY_CODEKeyNo; Beep(); Pre_KeyNo=KeyNo; DelayMS(100); 五实验结果:当按键按下k0,显示管显示0,当按键按下k1时显示1,显示管可以显示1,2,3,4,5,6,7,8,9,A,B,C,D,F.六实验体会: 这次的实验提高了我的设计能力与对电路的分析能力。同时在软件的编程方面得到了很大的提高,使编程能力得到加强,在此同时对所学的单片机知识得到很大的巩固与加强。本次实验熟悉单片机的使用功能,熟悉了Keil uVision 进行程序调试,利用proteus7.8进行硬件设计。在本实验中,我明白了4X4矩阵
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年湖南四水职业学院高职单招职业技能考试模拟试卷及参考答案详解
- 2027年山东鲁南职业学院高职单招职业适应性测试考试题库及参考答案详解(模拟题)
- 2027年石梅专修学院高职单招职业适应性测试考试题库及参考答案详解【A卷】
- 2025年四川建筑职业技术学院单招综合素质考试模拟试卷附完整答案详解【易错题】
- 2026年湖南洞庭技师学院高职高职单招职业技能考试模拟试卷附参考答案详解【综合题】
- 2025年山东省青岛市高职单招职业技能考试模拟试卷及完整答案详解【夺冠】
- 2026年湖南怀化鹤城职业学院单招综合素质考试题库及完整答案详解(考点梳理)
- 2025年秦岭中药材学院高职单招职业技能考试题库新版附答案详解
- 2025年湖南信息学院单招综合素质考试题库附答案详解(A卷)
- 2027年陕西商贸职业学院高职单招职业技能考试模拟试卷及答案详解(真题汇编)
- JG/T 324-2011建筑幕墙用陶板
- T/CECS 10187-2022无机复合聚苯不燃保温板
- 居间费居间服务合同范本
- 安全风险分级管控与隐患排查治理制度
- 主题班会对学生的教育意义
- 人体八大系统与生理功能
- 哈萨克斯坦劳动法中文版
- 2023学年完整公开课版《短歌行》微课
- 皮下气肿的学习课件
- 酒店开业验收标准
- GB/T 79-2007内六角圆柱端紧定螺钉
评论
0/150
提交评论