0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

设计一个节约端口线器件的新型键盘的详细资料概述

Wildesbeast 来源:福星电子网 作者:佚名 2019-11-09 11:00 次阅读

1 引言

键盘电路是单片机应用系统最常用的人机接口,往往要占用较多的I/O端口, 现在有些很节约I/O资源的键盘电路,但它在键盘上使用的二极管较多,或有些使用的编码芯片。利用本文介绍的电路,可以最大限度地减少键盘电路对I/O端口的点用 和器件。本电路特别适合一些直接搭焊、或需要导线延长键盘(如密码锁) 其节省宝贵的延长线数量。

2 硬件原理

这里以4根I/O线为例,普通接法只能接4个键,本文介绍的电路是在组合接法的基础上增加了4个二极管。其软件处理使用了端口扫描检测方法,从而使按键数可达到12个,同时由于采用了组合逻辑来直接对端口进行读取,因此极大地简经了程序的处理过程。下图是该电路的电路原理图。 也可以根据此原理图类是做3线、5线等的键盘。

3 软件过程和程序

检测过程:先将口1执低电平,然后读取口2、3、4,如有低电平则端口对应的按键被按下;如都是高电平,则将口2执低,然后读取口1、3、4,以此类推。

程序如下:

;端口定义

K1 BIT P1.0

K2 BIT P1.1

K3 BIT P1.2

K4 BIT P1.3

;******************************************

; 键盘扫描

;******************************************

KEY: SETB K2 ;一行

SETB K3

SETB K4

CLR K1

JB K2,KEY1

LCALL T1MS

JB K2,KEY1

MOV KEYZ,#01H

KT1: JNB K2,KT1

LJMP KEYOUT

KEY1: JB K3,KEY2

LCALL T1MS

JB K3,KEY2

MOV KEYZ,#02H

KT2: JNB K3,KT2

LJMP KEYOUT

KEY2: JB K4,KEY3

LCALL T1MS

JB K4,KEY3

MOV KEYZ,#03H

KT3: JNB K4,KT3

LJMP KEYOUT

KEY3: SETB K1 ;二行

CLR K2

JB K1,KEY4

LCALL T1MS

JB K1,KEY4

MOV KEYZ,#04H

KT4: JNB K1,KT4

LJMP KEYOUT

KEY4: JB K3,KEY5

LCALL T1MS

JB K3,KEY5

MOV KEYZ,#05H

KT5: JNB K3,KT5

LJMP KEYOUT

KEY5: JB K4,KEY6

LCALL T1MS

JB K4,KEY6

MOV KEYZ,#06H

KT6: JNB K4,KT6

LJMP KEYOUT

KEY6: SETB K2 ;三行

CLR K3

JB K1,KEY7

LCALL T1MS

JB K1,KEY7

MOV KEYZ,#07H

KT7: JNB K1,KT7

LJMP KEYOUT

KEY7: JB K2,KEY8

LCALL T1MS

JB K2,KEY8

MOV KEYZ,#08H

KT8: JNB K2,KT8

LJMP KEYOUT

KEY8: JB K4,KEY9

LCALL T1MS

JB K4,KEY9

MOV KEYZ,#09H

KT9: JNB K4,KT9

LJMP KEYOUT

KEY9: SETB K3 ;四行

CLR K4

JB K1,KEY10

LCALL T1MS

JB K1,KEY10

MOV KEYZ,#0AH

KT10: JNB K1,KT10

LJMP KEYOUT

KEY10: JB K2,KEY11

LCALL T1MS

JB K2,KEY11

MOV KEYZ,#0BH

KT11: JNB K2,KT11

LJMP KEYOUT

KEY11: JB K3,KEY

LCALL T1MS

JB K3,KEY

MOV KEYZ,#0CH

KT12: JNB K3,KT12

KEYOUT: RET

;********************************************

; 延时

;********************************************

T1MS: MOV R4,#0FEH ;1ms延时

T1MS0: NOP

NOP

DJNZ R4,T1MS0

RET

责任编辑 LK

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 二极管
    +关注

    关注

    144

    文章

    9011

    浏览量

    161327
  • 单片机
    +关注

    关注

    6001

    文章

    43971

    浏览量

    620794
  • 键盘电路
    +关注

    关注

    3

    文章

    29

    浏览量

    19798
收藏 人收藏

    评论

    相关推荐

    求allegro高速信号蛇形走线和10度线的走法详细资料

    求高速信号蛇形走线和10度线的走法详细资料,先谢谢啦!!!
    发表于 07-06 02:26

    ps 2键盘编程详细资料

    ps 2键盘编程详细资料 一.电气特性
    发表于 11-19 17:23 1188次阅读
    ps 2<b class='flag-5'>键盘</b>编程<b class='flag-5'>详细资料</b>

    节约端口线及器件新型键盘

    键盘电路是单片机应用系统最常用的人机接口,往往要占用较多的I/O端口, 现在有些很节约I/O资源的键盘电路,但它在键盘上使用的二极管较多,或
    发表于 10-10 11:27 1189次阅读
    <b class='flag-5'>节约</b><b class='flag-5'>端口</b>线及<b class='flag-5'>器件</b>的<b class='flag-5'>新型</b><b class='flag-5'>键盘</b>

    节约单片机端口资源的键盘电路

    I/0 端 口是单片机实现对目标控制的端口,一般小型单片机的 I/0 端口都十分宝贵。文中介绍了一种可节省单片机I/O端口键盘电路,分析了新型
    发表于 03-29 10:21 12次下载

    TIAM37x器件CUS路由指引的详细资料概述

    本文的主要内容是TI的产品AM37x器件CUS路由指引的详细资料概述
    发表于 04-19 14:55 2次下载
    TIAM37x<b class='flag-5'>器件</b>CUS路由指引的<b class='flag-5'>详细资料</b><b class='flag-5'>概述</b>

    AM37x器件EVM软件详细资料概述

    本文的主要内容是TI的产品AM37x器件EVM软件详细资料概述
    发表于 04-19 15:01 2次下载
    AM37x<b class='flag-5'>器件</b>EVM软件<b class='flag-5'>详细资料</b><b class='flag-5'>概述</b>

    如何使用具有MSP430 USI端口的ADS8361的详细资料概述

    本文的主要内容介绍的是如何使用具有MSP430 USI端口的ADS8361的详细资料概述
    发表于 05-30 10:29 13次下载

    LabVIEW在信捷PLC通讯上的应用详细资料概述

    本文档详细介绍的是LabVIEW在信捷PLC通讯上的应用详细资料概述
    发表于 06-07 08:00 312次下载

    基于STM32单片机的指纹识别设计的详细资料概述

    本文档的主要内容介绍的是基于STM32单片机的指纹识别设计的详细资料概述包括了STM32程序和原理图的详细资料概述
    发表于 06-07 08:00 55次下载
    基于STM32单片机的指纹识别设计的<b class='flag-5'>详细资料</b><b class='flag-5'>概述</b>

    开关电源的正激变换器基本工作原理及元器件如何选择等详细资料概述

    开关电源的正激变换器基本工作原理及元器件如何选择等详细资料概述
    的头像 发表于 07-17 19:13 1.2w次阅读
    开关电源的正激变换器基本工作原理及元<b class='flag-5'>器件</b>如何选择等<b class='flag-5'>详细资料</b><b class='flag-5'>概述</b>

    键盘控制和PWM调光脉宽调制的详细资料概述

    本文档的主要内容详细介绍的是键盘控制和PWM调光脉宽调制的详细资料概述
    发表于 07-24 08:00 14次下载
    <b class='flag-5'>键盘</b>控制和PWM调光脉宽调制的<b class='flag-5'>详细资料</b><b class='flag-5'>概述</b>

    SV601187的详细资料合集包括了电路图,原理图和介绍等详细资料概述

    本文档的主要内容详细介绍的是SV601187的详细资料合集包括了电路图,原理图和介绍等详细资料概述
    发表于 07-30 08:00 18次下载
    SV601187的<b class='flag-5'>详细资料</b>合集包括了电路图,原理图和介绍等<b class='flag-5'>详细资料</b><b class='flag-5'>概述</b>

    51单片机教程之51单片机IO端口应用的详细资料概述

    本文档的主要内容详细介绍的是51单片机教程之51单片机IO端口应用的详细资料概述主要内容包括了:1 原理图设计与说明2 流水灯程序设计3 数码管显示程序设计4 矩阵
    发表于 10-24 16:22 19次下载
    51单片机教程之51单片机IO<b class='flag-5'>端口</b>应用的<b class='flag-5'>详细资料</b><b class='flag-5'>概述</b>

    python的内置函数详细资料概述

    本文档的主要内容详细介绍的是python的内置函数详细资料概述
    发表于 11-18 08:00 0次下载

    EMC HF垫圈的详细资料概述

    本文档的主要内容详细介绍的是EMC HF垫圈的详细资料概述免费下载。
    发表于 09-07 08:00 0次下载
    EMC HF垫圈的<b class='flag-5'>详细资料</b><b class='flag-5'>概述</b>