该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

ORG 0000H

LJMP START

ORG 00100H

DBUF EQU 30H

TEMP EQU 40H

DIN BIT P3.0

CLK BIT P3.1

START: MOV A,#16H

MAIN: ACALL DISP

MOV 30H, A

ACALL KEY1

AJMP MAIN

KEY1: MOV P1,#0F0H;对输入应锁存写

1

MOV A,P1

CJNE A,#0F0H, K11 有键按下

K10: AJMP KEY1 无键按下

K11: ACALL DELAY 延时去抖动

MOV P1,#0F0H

MOV A,P1 再读取键盘状况

CJNE A,#0F0H, K12 确有键按下

SJMP K10 误动作

K12: MOV B,A 存列值

MOV P1,#0FEH 检测第一列

MOV A,P1

CJNE A,#0FEH,K13

MOV P1,#0FDH 检测第二列

MOV A,P1

CJNE A,#0FDH,K13

MOV P1,#0FBH 检测第三列

MOV A,P1

CJNE A,#0FBH,K13

MOV P1,#0F7H 检测第四列 MOV A,P1

CJNE A,#0F7H, K13

AJMP K10 多键同时按下

K13: ANL A,#0FH 得行值

ORL A,B 得按下的行列值

MOV B,A 暂存键值

MOV R1,#16 16

个键

MOV R2,#0 键码初值

MOV DPTR,#K1TAB 键码表首址

K14: MOV A,R2

MOVC A,@A+DPTR 从键值表取键值

CJNE A,B, K16 与按下键的键比较

MOV P1,#0F0H

K15: MOV A,P1

CJNE A,#0F0H, K15

ACALL DELAY 延时去抖动

MOV A,R2 得键码

RET

K16: INC R2

DJNZ R1,K14

AJMP K10

K1TAB: DB 0EEH,0EDH,0EBH,0E7H

DB 0DEH,0DDH,0DBH,0D7H

DB 0BEH,0BDH,0BBH,0B7H

DB 07EH,07DH,07BH,077H

DISP: MOV DBUF,#0CH

MOV DBUF+1,#5

MOV DBUF+2,#1

MOV DBUF+3,#16

MOV DBUF+4,A

MOV R0,#DBUF

MOV R1,#TEMP

MOV R2,#8

DP10:MOV DPTR,#SEGTAB

MOV A,@R0

MOVC A,@A+DPTR

MOV @R1,A

INC R0

INC R1

DJNZ R2,DP10

MOV R0,#TEMP

MOV R1,#5

DP12:MOV R2,#8

MOV A,@R0

DP13:RLC A

MOV DIN,C

CLR CLK

SETB CLK

DJNZ R2,DP13

INC R0

DJNZ R1,DP12

RET

SEGTAB:DB 3FH,06H,5BH,4FH,66H,6DH

DB 7DH,07H,7FH,6FH,77H,7CH

DB 58H,5EH,79H,71H,00H,40H

DELAY: MOV R4,#02H

AA1: MOV R5,#0F8H

AA: NOP

NOP

DJNZ R5,AA

DJNZ R4,AA1

RET

END

汇编找到了

阵列式键盘实训C语言,新人求教 阵列式键盘相关推荐

  1. 阵列式键盘实训C语言,阵列式键盘实验详解.doc

    阵列式键盘实验详解 实验二 阵列式键盘实验 一.实验目的 1.掌握键盘和显示器的接口方法和编程方法 2.掌握阵列式键盘的硬件组成和软件编程方法 二.实验说明 本实验提供了一个4X4小建盘,向P0口的低 ...

  2. 单片机应用技能实训(c语言) 李志京,基于应用型人才培养的单片机原理及应用教学改革探讨...

    摘要:本文根据单片机原理及应用课程的特点,从课程教学内容优化.课堂教学改革.实验教学改革等方面进行研究和尝试,目的在于提高学生分析问题和解决问题的能力,增强学生的创新能力和综合素质,并指出了如何改善现 ...

  3. 软件测试技术与项目实训pdf,软件测试技术任务驱动式教程pdf

    软件测试技术任务驱动式教程 内容简介 <软件测试技术任务驱动式教程>分四个篇章介绍了软件测试的基本知识.方法.工具及流程.软件测试的基本理论阐述了软件测试的概念.模型和分类,软件质量管理与 ...

  4. c语言设计指导实训,C语言程序设计实训指导

    与<c语言程序设计(第2版)>配套,给出所有习题及参考答案.按知识点,精选12个典型实训,给出实训目的与要求.实训内容及实训参考程序.附有自测(考试)样卷及参考答案,供读者自测.提供Tur ...

  5. 计算机基础案例式教程实训指导,计算机应用基础案例式实训教程

    摘要: <普通高等教育"十二五"规划教材计算机应用基础案例式实训教程>采用"组织结构分层,案例任务驱动,实验实训结合"的方式编写,集讲述.实训.实验 ...

  6. vr沉浸式仿真实训展厅中控系统提高课堂纪律

    为解决实训教学过程中"看不到.进不去.成本高.危险大"的问题,VR智能中控系统为职业教育及高等教育老师提供一个数字化.沉浸式.集中管控的实训教学工具. VR智能中控系统通过对VR教 ...

  7. 葡萄酒指标实训 Python语言

    本文所需数据下载地址-->点这里下载 众所周知,葡萄酒的价格是与其品质相关的,本实训根据表中提供的数据对包葡萄酒品质数进行了分析与处理. 变量名 含义 fixed acidity 固定酸度 vo ...

  8. 最老程序员创业开发实训5---Swift语言极速入门

    本来,我是特别反对拿着一本书,从头看到尾,认认真真地记住每个细节,以这种方式来学习一门编程语言的.相反,我特别崇尚写了Hello World之后,直接进入编程练习,在编程中学习各种语言细节,当你基本能 ...

  9. 英语字典c语言实训,c语言字典(国外英文资料).doc

    c语言字典(国外英文资料) c语言字典(国外英文资料) The main menu The main menu is on top of the Turbo C 2.0 main screen, di ...

  10. 实训C++语言设计——Date日期系统实现

    平台:VC++ 2005 测试通过! .vcproj 这是使用应用程序向导生成的 VC++ 项目的主项目文件. 它包含生成该文件的 Visual C++ 的版本信息,以及有关使用应用程序向导选择的平台 ...

最新文章

  1. 动动手,用TensorFlow API训练出自己的目标检测模型
  2. Zabbix监控web项目
  3. 指令和伪指令和宏指令区别
  4. opencvsharp打开相机并视频显示
  5. iOS学习笔记之typedef
  6. 白话debounce和throttle
  7. Java核心篇之泛型--day5
  8. 【Java】灵活使用自定义注解和反射
  9. 码农即将被淘汰?未来10年,这样的程序员才值钱!
  10. wpf项目无法使用针式打印机_针式打印机的常见故障和解决方法2
  11. centos6+nagios3.3.1+nrpe2.12
  12. Visual Studio DSL 入门 13---结合T4生成代码
  13. Codeforces-GYM101873 G Water Testing 皮克定理
  14. 百余篇SCI文章的一字经验----短
  15. 计算机组成原理6-20,计算机组成原理课后题6.20PPT课件
  16. matlab绘制函数傅里叶,MATLAB中如何实现矩形函数的傅里叶变换
  17. Ubuntu18.04安装Pangolin0.6
  18. RDF(Resource Description Framework)
  19. 第6章 高级数据查询
  20. 2022年驾驶员考试推土机司机考试模拟试题卷及答案

热门文章

  1. OA项目之我的审批(查询会议签字)
  2. 计算机打印服务总是自动关闭,打印机服务怎么使用 打印机服务自动关闭怎么解决...
  3. 演化博弈论简介(转)
  4. AUTOCAD——快速提取说明文字
  5. Charles使用外部代理服务器
  6. 字词拼音查询易语言代码
  7. c语言外部中断服务程序设计,手把手教你学单片机的C语言程序设计十二中断服务函数.pdf...
  8. multisim中pwl_Multisim 14电路设计与仿真
  9. 暑假第一战——java+mysql 个人信息管理系统
  10. 《Head First设计模式》第二版中译本内文彩页欣赏