单片机汇编实验七:扫描键盘及液晶显示实验

发布者:zdf1966最新更新时间:2015-05-26 来源: 51hei关键字:单片机  汇编实验  扫描键盘  液晶显示 手机看文章 扫描二维码
随时随地手机看文章
实验要求:利用P1口与行列式键盘接口,编写键盘扫描程序,把按键输入的键码,显示在LCD液晶显示器上。
//This is the seventh program of the homework;
//This program is made by Wang Qi Date:2013/3/7
ORG 0000H
sjmp main
org 0050h
//
sbit lcdrs=P1^0;   // 液晶数据/命令选择端口
sbit lcden=P2^5;   // 液晶使能端
sbit lcdrw=P1^1;   //读写选择端口
sbit wei=P2^7;
sbit duan=P2^6;
//
MAIN:
         CALL INTE
         MOV DPTR,#TABLE    
SCAN:   //检测第一行
   MOV P3,#0FEH;
   MOV A,P3
   ANL A,#0F0H
XHPD0:   CJNE A,#0F0H,OK0 
   SJMP NO1
OK0:     CALL DELAY0
   MOV A,P3
   ANL A,#0F0H
   CJNE A,#0F0H,MM0
   SJMP XHPD0
MM0:     CJNE A,#0E0H,MM1
      MOV R1,#01H
   CALL JIEDIAN
MM1:     CJNE A,#0D0H,MM2
      MOV R1,#02H
      CALL JIEDIAN
MM2:     CJNE A,#0B0H,MM3
   MOV R1,#03H
   CALL JIEDIAN
MM3:     CJNE A,#070H,XHPD0
      MOV R1,#04H
   CALL JIEDIAN 
 
      //检测第二行
NO1:     MOV P3,#0FDH;
      MOV A,P3
      ANL A,#0F0H
XHPD1:   CJNE A,#0F0H,OK1
    //CALL  JIEDIAN
      SJMP NO2
OK1:     CALL DELAY0
         MOV A,P3
      ANL A,#0F0H
         CJNE A,#0F0H,MM00
      SJMP XHPD1
MM00:    CJNE A,#0E0H,MM10
         MOV R1,#05H
      CALL JIEDIAN
MM10:    CJNE A,#0D0H,MM20
         MOV R1,#06H
      CALL JIEDIAN
MM20:    CJNE A,#0B0H,MM30
      MOV R1,#07H
      CALL JIEDIAN
MM30:    CJNE A,#070H,XHPD1
         MOV R1,#08H 
         CALL JIEDIAN
         //检测第三行
NO2:     MOV P3,#0FBH;
      MOV A,P3
      ANL A,#0F0H
XHPD2:   CJNE A,#0F0H,OK2
         SJMP NO3
OK2:     CALL DELAY0
         MOV A,P3
      ANL A,#0F0H
         CJNE A,#0F0H,MM01
      SJMP XHPD2
MM01:    CJNE A,#0E0H,MM11
         MOV R1,#09H
      CALL JIEDIAN
MM11:    CJNE A,#0D0H,MM21
         MOV R1,#0AH
      CALL JIEDIAN
MM21:    CJNE A,#0B0H,MM31
        MOV R1,#0BH
      CALL JIEDIAN
MM31:    CJNE A,#070H,XHPD2
         MOV R1,#0CH
         CALL JIEDIAN
   
         //检测第四行
NO3:     MOV P3,#0F7H;
      MOV A,P3  
      ANL A,#0F0H
XHPD3:   CJNE A,#0F0H,OK3
         LJMP SCAN
OK3:     CALL DELAY0
      MOV A,P3
         ANL A,#0F0H
      CJNE A,#0F0H,MM40
   SJMP XHPD3
MM40:    CJNE A,#0E0H,MM41
      MOV R1,#0DH
   CALL  JIEDIAN 
MM41:    CJNE A,#0D0H,MM42
      MOV R1,#0EH
   CALL JIEDIAN
MM42:    CJNE A,#0B0H,MM43
   MOV R1,#0FH
   CALL JIEDIAN
MM43:    CJNE A,#070H,XHPD3
   MOV R1,#10H
   CALL JIEDIAN  
   LJMP scan
JIEDIAN:
         DEC R1
         MOV  A,R1
         MOVC A,@A+DPTR 
   CALL WRITE_DATE
   CALL DELAY
         SETB P2.6 
      MOV  P0,A
      CLR  P2.6
      RET[page]
 ////////////////////////////////////
//初始化液晶屏程序段
INTE: CLR P1.1      //读写选择端口清零
   CLR P2.6      //关闭数码管
   CLR P2.7
   MOV A,#0X38
   CALL WRITE_COM
   CALL DELAY
   MOV A,#0X0E
   CALL WRITE_COM
   CALL DELAY
   CALL DELAY
   MOV A,#0X06
   CALL WRITE_COM
   CALL DELAY
   CALL DELAY
   MOV A,#0X01
   CALL WRITE_COM
   CALL DELAY 
   CALL DELAY
   MOV A,#0X80
   CALL WRITE_COM
   CALL DELAY0
   RET  
//10ms延时函数
DELAY:MOV R7,#0FFH 
DELY1:MOV R6,#02AH
DELY2:NOP
      DJNZ R6,DELY2
   DJNZ R7,DELY1
   RET
//5ms延时函数
DELAY0:MOV R7,#0FEH 
DELY10:MOV R6,#02FH
DELY20:NOP
      DJNZ R6,DELY2
   DJNZ R7,DELY1
   RET
//写命令函数
WRITE_COM:
      MOV P0,A    //暂定A为数据传输寄存器
      CLR P1.0   //打开命令选择端口
   CLR P1.1 //打开写选择端口
      CLR P2.5    //液晶使能端
   CALL DELAY  //10MS
   SETB P2.5   //液晶使能端
   CALL DELAY  //10MS
      CLR P2.5    //液晶使能端
      RET 
// 写数据函数
WRITE_DATE:
     MOV P0,A    //暂定A为数据传输寄存器
    SETB P1.0   //液晶数据/命令选择端口
  CLR  P1.1   //读写选择端口
     CLR  P2.5   //液晶使能端
  CALL DELAY  //10MS
  SETB P2.5   //液晶使能端
  CALL DELAY  //10MS
  CLR  P2.5   //液晶使能端
  RET
TABLE: DB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,41H,42H,43H,44H,45H,46H,47H      
     END 
关键字:单片机  汇编实验  扫描键盘  液晶显示 引用地址:单片机汇编实验七:扫描键盘及液晶显示实验

上一篇:单片机汇编实验五-2:单片机与PC机串行通信实验
下一篇:51单片机串口通信试验汇编程序

推荐阅读最新更新时间:2024-03-16 14:03

单片机的分类 三种常见分类方法
单片机的主要分类: 1、 按应用领域可分为:家电类,工控类,通信类,个人信息终端类等等; 2、 按通用性可分为:通用型和专用型。 通用型单片机的主要特点是:内部资源比较丰富,性能全面,而且通用性强,可履盖多种应用要求。所谓资源丰富就是指功能强。性能全面通用性强就是指可以应用在非常广泛的领域。通用型单片机的用途很广泛,使用不同的接口电路及编制不同的应用程序就可完成不同的功能。小到家用电器仪器仪表,大到机器设备和整套生产线都可用单片机来实现自动化控制。 专用型单片机的主要特点是:针对某一种产品或某一种控制应用而专门设计的,设计时已使结构最简,软硬件应用最优,可靠性及应用成本最佳。专用型单片机用途比较专一,出厂时程序已经一次性固化
[单片机]
TM1640与PIC12F629单片机的结合
TM1640是驱动数码管的专用集成电路,可以直接驱动16位共阴数码管,手册请下载附件。 /******************************* *本程序直接驱动16位共阴数码管,各数码管分别驱动0、1、2、……E、F。 */ #include pic.h //PIC12F629 __CONFIG(0x3F84); #define clk GPIO0 //时钟信号 #define dio GPIO1 //数据/地址数据 #define uchar unsigned char #define uint unsigned int
[单片机]
8051单片机架构_封装及原理图
  在1976年时,英特尔首次生产了名称为MCS-48的单片机,即8位单片机。1980年晚些时候,发布了名称为MCS-51的改进版本(也是8位单片机),目前国内广泛使用的8051单片机就是属于Intel的MCS-51单片机家族,而且现在已经过了知识产权期限。   继8051单片机成功之后,许多其他半导体制造商纷纷以自己的品牌发布了使用MCS-51内核的单片机。比如Microchip、Zilog、Atmel、Philips、Siemens等公司。它们的共同点是所有这些单片机都可以使用相同的MCS-51指令集进行编程。它们在支持设备配置(例如改进的内存,是否存在ADC或DAC等)方面基本上有所不同。随后,英特尔于1982年发布了其首
[单片机]
8051<font color='red'>单片机</font>架构_封装及原理图
浅谈51单片机的中断控制
51系列单片机有5个中断源,2个优先级,可以实现二级中断服务嵌套结构。 现在很多兼容51的单片机已经有4个优先级(或更多)和更多的中断源了。 想要研究中断的嵌套,应该从中断优先级入手。 一些资料中,把有关中断优先级的中断响应原则,写成如下三条: 1、CPU同时接收到几个中断申请时,首先响应优先级级别最高的中断请求; 2、正在进行的中断过程不能被新的同级或低优先级的中断请求所中断; 3、正在进行的低优先级中断过程,能被高优先级中断请求所中断。 中断优先级的设置,是在IP寄存器中进行,IP称为中断优先级控制寄存器。 把IP中的某位置为1,则相应的中断源为高优先级;为0,则为低优先级。 当把5个中断源,划分成两个优先级之后,它们的
[单片机]
浅谈51<font color='red'>单片机</font>的中断控制
32位TriCore™ 微控制器设计套件【英飞凌】
2011年3月3日,德国纽必堡和纽伦堡讯——英飞凌科技股份公司近日在2011年世界嵌入式大会上宣布推出一个完整的设计套件,可使基于其领先的32位TriCore™ 微控制器的嵌入式设计符合IEC 61508的功能性安全要求。通过充分利用其在汽车系统安全领域的丰富经验,英飞凌进一步开发出PRO-SIL™ 安全产品,旨在以其基于TriCore产品的高级别安全解决方案来满足不断增长的工业市场需求。在世界嵌入式大会上展出的该设计套件包括SafeTcore测试库、由Hitex公司开发的称为SafeTkit的基于TriCore的完整安全套件以及丰富的软件与文档资源。 按照IEC 61508标准的规定,不同SIL(安全完整性等级)等级规
[嵌入式]
单片机定时中断的精确编程方法
MCS-51 单片机 的中断响应延迟时间,取决于其它中断服务程序是否在进行,或取决于正在执行的是什么样的指令。单中断系统中的中断响应时间为3~8个机器周期 。无论是哪一种原因引起的误差,在精确定时的应用场合,必须考虑它们的影响,以确保精确的定时控制。根据定时中断的不同应用情况,应选择不同的精确定时编程方法。 文中以定时器T1工作在定时方式1为例,晶振频率为12MHz 。 1 方法1   在定时器溢出中断得到响应时,停止定时器计数,读出计数值(反映了中断响应的延迟时间),根据此计数值算出到下一次中断时,需多长时间,由此来重装载和启动定时器。例如定时周期为1ms,则通常定时器重装载值为-1000(0FC18H)。下面的程序在计算每
[单片机]
基于单片机的喷墨打印机控制技术
单片机应用系统中最常用的输出打印设备是微型打印机,例如TP系列、UP系列打印机等,对它们的控制技术也较为成熟。但是近年来随着通用打印机的广泛使用,微型打印机的缺点也日益明显:一是通用性及互换性不强;二是打印输出文档的幅面过小,不便于装订及存档。而通用打印机都配有国际标准并行接口(CENTRONICS)和串行接口(RS232/422),纸张大小可任意选择。这些特点是微型打印机所无法抗衡的。因此在越来越多的单片机应用系统中逐渐趋向于使用通用打印机作为打印输出设备。本文介绍了以MCS-51系列单片机为核心,通过CENTRONICS国际标准8位并行接口控制驱动HP-DJ 600/800系列喷墨打印机的硬件接口电路没计方法及控制程序设计方法
[工业控制]
汽车智能MP3无线发射器的设计
引言 汽车MP3无线发射器可以将MP3播放器内存储的音乐通过FM广播方式发送,再通过FM调频收音机接收,通过汽车音响播放。本文采用单片机AT89C52及数字锁相环MC145152等芯片设计了汽车MP3无线发射器,从仿真结果与目标样机的运行情况来看,均达到了预期效果。 系统组成 图1为汽车智能MP3无线发射器的系统组成框图,它主要由MC145152、MC1648组成数字锁相环频率合成器,采用变容二极管MV209调频。用户可使用简易的按键,通过单片机AT89C52控制并监测发射频率,同时利用液晶显示器显示反馈信息。另外,可使用串行口实现单片机与计算机的通信,从而通过计算机对发射机进行智能控制。音源不仅可以从车载MP3播放器获取,还可
[应用]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved