微型计算机课设报告,微型计算机课程设计报告.doc

微型计算机课程设计报告

微型计算机技术

课程设计报告

专 业: 通信工程

班 级: 通信072班

姓 名: 徐宗志

学 号: 200727067

指导教师: 吴泽举

时 间:2010-03-08~19

通信与电子工程学院

键盘接口和显示设计

课程设计报告

一、1.课设目的

为了进一步巩固学习的理论知识,增强学生对所学知识的实际应用能力和运用所学的知识解决实际问题的能力,开始为期两周的课程设计。通过设计使学生在巩固所学知识的基础之上具有初步的单片机系统设计与应用能力。

1、通过本设计,使学生综合运用《微型计算机技术》、《C语言程序设计》以及《数字电路》、《模拟电路》等课程的内容,为以后从事电子产品设计、软件编程、系统控制等工作奠定一定的基础。

2、学会使用KEIL C和PROTEUS等软件,用C语言或汇编语言编写一个较完整的实用程序,并仿真运行,保证设计的正确性。

3、了解单片机接口应用开发的全过程:分析需求、设计原理图、选用元器件、布线、编程、调试、撰写报告等。

2.课设内容

设计并实现一个4×4键盘的接口,并在两个数码管上显示键盘所在的行与列。

二、1.问题分析、方案的提出

键盘可以分为独立联接式和行列式两类,每一类有可根据对键盘的译码方法分为编码键盘和非编码键盘两种类型。

编码键盘主要是通过硬件电路产生被按按键的键码和一个选通脉冲,这种键盘使用方便,但硬件电路复杂,常常不被微型计算机采用。在非编码键盘中,每个按键的作用只是使相应节点接通和断开,每个按键的键码并非由硬件电路产生,而是由相应扫描处理程序对它扫描形成的。因此,非编码键盘硬件电路极为简单。

在独立联接式非编码键盘中,每个啊年都是彼此独立的,均需占用CPU的一条I/O输入数据线。

4×4键盘的每个按键菌核单片机的P1口的两条相连。若没有按键按下时,单片机从P1口读得的引脚电平为“1”;若某一按键被按下,则该键所对应的端口线变为地电平。单片机定时对P1口进行程序查询,即可发现键盘上是否有按键按下以及哪个按键被按下。

实现4×4键盘的接口需要用到单片机并编写相应的程序来识别键盘的十六个按键中哪个按键被按下。因为此题目还要求将被按下的按键显示出来,因此可以用两个数码管来分别显示被按下的按键的行与列。我们可以将4×4键盘的八个接口与单片机的P1端口相连,两个数码管分别与单片机的P0口和P2口相连。从而编写相应的程序使P1口能够识别出4×4键盘中的哪个按键被按下并且将被按下的按键的这一信息通过P0口和P2口的两个数码管显示出来。(我们选择P1口作为输入口(将按键信息从此端口输入)和选择P0口和P2口作为输出口(从该端口将哪个按键被按下的信息传出来送到数码管上)是根据PROTEUS软件所提供的芯片的引脚排列及布线方便美观来考虑的。其实P1端口、P2端口和P3端口都是输入输出端口,都可以输入输出数据!)

对于数码管的连接,采用了共阳极的接法,其下拉电阻应保证芯片不会因为电流过大而烧坏。

2.设计思路及原因

对于4×4键盘,共有十六个按键。如果每个按键与单片机的一个引脚相连,就会占用16个引脚,这样会使的单片机的接口不够用(即使够用,也是对单片机端口的极大浪费)。因此我们应该行列式的接法。行列式非编码键盘是一种吧所有按键排列成行列矩阵的键盘。在这种键盘中,每根行线和列线的交叉处都接有一个按键,每当某个按键被按下时,与这个按键相连的行线和列线就会接通,否则是断开状态。。因此4×4行列式非编码键盘只需4条行线和4条列线,总共占用8条I/O端口线。大大减少了I/O端口线的利用。

若没有按键按下时,单片机从P1口读得的引脚电平为“1”;若某一按键被按下,则该键所对应的端口线变为地电平。因此0xEX(X表示任意一个十六进制数)表示4×4键盘的第一行中的某个按键被按下,相应的0xDX、0xBX、0x7X(X表示任意一个十六进制数)分别表示键盘的第二行、第三行、第四行;0xXE、0xXD、0xXB、0xX7(X表示任意一个十六进制数)则分别表示键盘的第一列、第二列、第三列和第四列。例如0xD7是键盘的第二行第四列的按键

三、1.电路设计及功能说明

4×4键盘的十六个按键分成四行四列分别于P1端口的八条I/O数据线相连;两个七段数码管分别与单片机的P0口和P2口的低七位I/O数据线相连。数码管采用共阳极的接法,所以需要下拉电阻来分流。(在单片机的P3端口上安装了一个喇叭,通过编程实现当有按键按下的时候喇叭出现响声予以提示。)结合软件程序,即可实现4×4键盘的接口及显示的设计。当按下键盘其中的一个按键时,数码管上会显示出该按键在4×4键盘上的行值和列值。所以实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值