按键控制显示;键盘位P3.2/P3.3/P3.4/P3.5 按下相应键盘,则显示不同的数据
时间:02-27
来源:互联网
点击:
现在:我带领大家从字符型1602液晶入手,一步一步的来掌握液晶的编程 这个程序是在上一个程序改进过来的, 增加了键盘检测程序。 大家仔细体会一下看看。实际上在单片机教程里有一个小键盘控制的数字显示,程序很类似。当然, 这只是个例子程序,没有增加消除键盘抖动的子程序。 |
RS EQU P3.0 RW EQU P3.1 E EQU P3.5 mov p3,#0ffh MOV P1,#01H;qingpin ACALL ENABLE MOV P1,#38H;8wei dianzhen ACALL ENABLE MOV P1,#0FH;xian shi Kai ACALL ENABLE MOV P1,#06H;yi dong guang biao ACALL ENABLE MOV P1,#80H;wei zhi ACALL ENABLE l3:mov p1,#01h acall enable mov dptr,#table3 call write1 call enable mov p1,#01h ljmp l1 l4:mov p1,#01h acall enable mov dptr,#table2 call write1 call enable mov p1,#01h ljmp l1 l5:mov p1,#01h acall enable mov dptr,#table1 call write1 acall enable mov p1,#01h ljmp l1 l6:mov p1,#01h acall enable mov dptr,#table4 call write1 acall enable mov p1,#01h ljmp l1 l1:jnb p3.3,l3;检测键盘,如果P3.3按下则执行L3 jnb p3.4,l4 jnb p3.5,l5 JNB P3.2,L6 jmp l1 ENABLE: CLR RS CLR RW CLR E ACALL DELAY SETB E RET write1: mov r1,#00h a1:mov a,r1 movc a,@a+dptr call write2 inc r1 cjne a,#00h,a1 ret write2: mov p1,a setb rs clr rw clr e call delay setb e ret delay: mov r7,#255 d1:mov r6,#255 d2:djnz r6,d2 djnz r7,d1 ret table1: db 57h,57h,57h,2Eh,35h,31h,43h,35h,31h,2Eh,43h,4Fh,4Dh,20h,20h,20h,20h,00h ;数据表,参看上一个实验的注释 |
单片机 51单片机 MCU 单片机视频教程 单片机开发 ARM单片机 AVR单片机 PIC单片机 Atmel stm32 单片机学习 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)