键盘扫描显示实验_汇编
- 格式:doc
- 大小:359.50 KB
- 文档页数:7


电子科技大学中山学院学生实验报告
院别:电子信息学院 课程名称:微处理器实验
班级:通信11A 姓名:xxxx 学号:
实验名称:键盘扫描与数码管显示实验 实验时间:2013年10月21日
成绩: 教师签名: 批改时间:
一、实验原理与目的
原理:
74HC164
74HC165
目的:
1、学会利用单片机进行键盘扫描行LED点阵的扫描显示;
2、学会利用单片机实现数码管显示。
二、实验仪器
1、PC机一台
2、DP-51PRO 单片机综合仿真实验仪一台
三、实验内容与分析
1、编写一段程序,此程序的目的是通过单片机的P1口控制扫描,用C5区的74HC164控制显示输出,使C3区的8×8LED点阵显示一个“X”。
CLK EQU P3.2
DINA EQU P3.3
DINB EQU P3.4
CLEAR EQU P3.5
ORG 0000H
AJMP MAIN
ORG 0100H
MAIN:
MOV SP,#70H
MOV 50H,#07EH
MOV 51H,#0BDH
MOV 52H,#0DBH
MOV 53H,#0E7H
MOV 54H,#0E7H
MOV 55H,#0DBH
MOV 56H,#0BDH
MOV 57H,#07EH
CLR CLEAR
SETB CLK
SETB DINA
SETB DINB
SETB CLEAR
MAINLOOP:
MOV R6,#8H
MOV DPTR,#0300H
MOV R1,#50H
FLASHCY:
MOV A,@R1
MOV R0,A
INC R1
CLR A
桂林电子科技大学
实验报告
2016-2017 学年第一学期
开 课 单 位 海洋信息工程学院
适用年级、专业 14级机械设计制造及其自动化
课 程 名 称 《单片微型计算机与接口技术-课内实验》
主 讲 教 师 周旋
课 程 序 号 BS1615000_03
课 程 代 码 BS1615000
实 验 名 称 《独立按键识别》
学 号 1416010516 - 17
姓 名 林亦鹏 卢炳荣
独立按键识别实验报告
一、实验目的
1、了解单片机顺序执行的工作特点。
2、掌握单片机并行控制I/O口的基本方法。
3、掌握C语言的编写,及对I/O口的基本操作方法。
二、实验内容
实验设备:计算机一台、单片机实验箱一台、Proteus软件、Keil软件。
硬件原理图:
电路采用无源蜂鸣器,从P1.5口形成脉冲来驱动。
因为单片机开机初始化瞬间,其I/O口为高电平,会有误响动作。
单片机的独立键盘使用的是P1口。
当有键按下时,P1口相应位为低电平。
1、查找资料说明按键抖动的原因。
2、延时程序是怎么实现延时的?
3、打开Keil新建工程:学号-2.uv2。
4、参考实验程序,编写程序:任意Key按下后让蜂鸣器响一声。生成:学号-2.hex文件。
5、打开下载软件,把学号-2.hex文件烧写到单片机,观察蜂鸣器现象。
6、修改程序将按键绑定在P1.1上,并每按一次按键让蜂鸣器响三声。
三、实验结果分析
1、程序流程图:
#include
sbit Beep = P1^5 ;//定义蜂鸣器的连接端口
//--定义要使用的IO口--//
sbit K1 = P1^0; //对应按钮K1
//--定义全局函数--//
void delay(unsigned int i) ; //延时函数
void beepnoise(unsigned int t); //蜂鸣器发声
矩阵按键识别技术
矩阵按键部份由16个轻触按键按照4行4列排列,连接到JP50端口。将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。这样,当按键没有按下时,所有的输出端都是高电平,代表无键按下。行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。
相关原理:
程序运行照片:
接线方法:
1、用一条8PIN数据排线,把矩阵按键部份的JP50,接到CPU部份的P1口JP44.
2、接8位数码管的数据线。将数码管部份的数据口 JP5接到CPU部份的P0口JP51.
3、接8位数码管的显示位线。将数码管部份的显示位口 JP8接到CPU部份的P2口JP52.
;本程序实现扫描按键显示功能.
;分别按16个键盘显示分别显示数字123A456B789C*0#D
;键盘口P1,数码管显示第二位p21, 数码管段位p0口
确定矩阵式键盘上何键被按下,介绍一种“行扫描法”。行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法.
程序流程图:
8031单片机的P1口用作键盘I/O口,键盘的列线接到P1口的低4位,键盘的行线接到P1口的高4位。列线P1.0-P1.3设置为输入线,行线P1.4-P.17设置为输出线。4根行线和4根列线形成16个相交点。
1、检测当前是否有键被按下。检测的方法是P1.4-P1.7输出全“0”,读取P1.0-P1.3的状态,若P1.0-P1.3为全“1”,则无键闭合,否则有键闭合。
2、去除键抖动。当检测到有键按下后,延时一段时间再做下一步的检测判断。
3、若有键被按下,应识别出是哪一个键闭合。方法是对键盘的行线进行扫描。P1.4-P1.7按下述4种组合依次输出:
在每组行输出时读取P1.0-P1.3,若全为“1”,则表示为“0”这一行没有键闭合,否则有键闭合。由此得到闭合键的行值和列值,然后可采用计算法或查表法将闭合键的行值和列值转换成所定义的键值。
信息工程学院实验报告
课程名称:微机原理与接口技术
实验项目名称:键盘扫描及显示实验 实验时间:2017.1.6
班级: 姓名: 学号:
一、实 验 目 的
1. 掌握 8254 的工作方式及应用编程。
2. 掌握 8254 典型应用电路的接法。
二、实 验 设 备
了解键盘扫描及数码显示的基本原理,熟悉 8255 的编程。
三、实 验 原 理
将 8255 单元与键盘及数码管显示单元连接,编写实验程序,扫描键盘输入,并将扫描结果送数码管显示。键盘采用 4×4 键盘,每个数码管显示值可为 0~F 共 16 个数。实验具体内容如下:将键盘进行编号,记作 0~F,当按下其中一个按键时,将该按键对应的编号在一个数码管上显示出来,当再按下一个按键时,便将这个按键的编号在下一个数码管上显示出来,数码管上可以显示最近 6 次按下的按键编号。
键盘及数码管显示单元电路图如图 7-1 和 7-2 所示。8255 键盘及显示实验参考接线图如图 7-3 所示。
图 7-1 键盘及数码管显示单元 4×4 键盘矩阵电路图 成 绩:
指导老师(签名):
图 7-2 键盘及数码管显示单元 6 组数码管电路图
图 7-3 8255 键盘扫描及数码管显示实验线路图
四、实 验 内 容 与 步 骤
1. 实验接线图如图 7-3 所示,按图连接实验线路图。
图 7-4 8255 键盘扫描及数码管显示实验实物连接图
2. 运行 Tdpit 集成操作软件,根据实验内容,编写实验程序,编译、链接。
图 7-5 8255 键盘扫描及数码管显示实验程序编辑界面
3. 运行程序,按下按键,观察数码管的显示,验证程序功能。
五、实 验 结 果 及 分 析:
1. 运行程序,按下按键,观察数码管的显示。