当前位置:首页 > 单片机 > 单片机
[导读] ;刚才在百度知道上看到一个题目:http://zhidao.baidu.com/question/439326240.html;转眼之间,知道宝贝又找不到了,百度真是变化莫测。;呵呵,做而论道已经提前一步保存下来了题目的要求。;==========

;刚才在百度知道上看到一个题目:http://zhidao.baidu.com/question/439326240.html

;转眼之间,知道宝贝又找不到了,百度真是变化莫测。

;呵呵,做而论道已经提前一步保存下来了题目的要求。

;=================================================

;题目:汽车转向灯控制器的编程

;1号键(左转向)按下时 实现P3.6闪亮,P0-P2口左流水;
;2号键(右转向)按下时 实现P3.7闪亮,P0-P2口右流水;
;3号键(刹车键)按下时 实现P0-P2口同时亮;
;4号键(紧急状况键) 按下时 实现P3.6和P3.7同时闪亮。

;按键按住时,执行上述程序,按键松开后关闭所有灯。

;=================================================

;按照题目要求,做而论道编写了程序,用 PROTEUS 绘出了仿真电路图,运行起来如下所示:



;图片链接:http://hi.baidu.com/%D7%F6%B6%F8%C2%DB%B5%C0/album/item/b4f3e2dea9ec8a134811484bf703918fa1ecc077.html#

;程序如下:

L_T BIT 00H ;按键标志位
R_T BIT 01H
S_T BIT 02H
J_J BIT 03H

SAME EQU 30H;按键缓冲区
Runw EQU 31H ;31H 32H,共16位数,当做流水灯
SP_B EQU 33H ;栈底位置
;--------------------------------
ORG 0000H
SJMP START
ORG 000BH
SJMP T0_INT
;--------------------------------
START:
MOV TMOD, #01H
MOV TH0, #4CH ;定时
MOV R3, #5 ;250ms闪烁一次
SETB TR0
MOV IE, #82H ;开中断
MOV SP, #SP_B
MOV Runw, #255
MOV Runw + 1, #0
;--------------------------------
M_LOOP:
MOV A, P1 ;读一次按键
ANL A, #0FH
MOV SAME, A ;保存

MOV R7, #40 ;延时约20ms
MOV R6, #0
DJNZ R6, $
DJNZ R7, $ - 4

MOV A, P1 ;再读一次按键
ANL A, #0FH
CJNE A, SAME, M_LOOP ;两次不等则是抖动

CPL A
MOV C, ACC.3 ;保存按键信息
MOV R_T, C
MOV C, ACC.2
MOV J_J, C
MOV C, ACC.1
MOV S_T, C
MOV C, ACC.0
MOV L_T, C

SJMP M_LOOP ;继续去读
;--------------------------------
T0_INT:
MOV TH0, #4CH ;定时
PUSH ACC
DJNZ R3, T0_END ;不到5次就退出
MOV R3, #5
;----------------------;以下每隔250ms执行一次
LEFT:
JNB L_T, RIGHT
MOV A, Runw
RRC A
MOV Runw, A
MOV A, Runw + 1
RRC A
MOV Runw + 1, A
MOV A, Runw
MOV ACC.7, C
MOV Runw, A

MOV P2, Runw
MOV P0, Runw + 1
SETB P3.7
CPL P3.6
JMP T0_END
RIGHT:
JNB R_T, STOP
MOV A, Runw
RLC A
MOV Runw, A
MOV A, Runw + 1
RLC A
MOV Runw + 1, A
MOV A, Runw
MOV ACC.0, C
MOV Runw, A

MOV P2, Runw
MOV P0, Runw + 1
CPL P3.7
SETB P3.6
JMP T0_END
STOP:
JNB S_T, JINJI
MOV P2, #0
MOV P0, #0
SETB P3.7
SETB P3.6
JMP T0_END
JINJI:
JNB J_J, NOTHING
MOV P2, #255
MOV P0, #255
CPL P3.7
CPL P3.6
JMP T0_END
NOTHING: ;关闭所有的灯
MOV P2, #255
MOV P0, #255
SETB P3.7
SETB P3.6
T0_END:
POP ACC
RETI
;--------------------------------

END

;试验的时候,应该释放了前一个按键,再按下另一个按键,这才能有理想的结果。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在现代电子技术的快速发展中,单片机以其高度的集成性、稳定性和可靠性,在工业自动化、智能家居、医疗设备、航空航天等诸多领域得到了广泛应用。S32单片机,作为其中的佼佼者,其引脚功能丰富多样,是实现与外部设备通信、控制、数据...

关键字: s32单片机引脚 单片机

在微控制器领域,MSP430与STM32无疑是两颗璀璨的明星。它们各自凭借其独特的技术特点和广泛的应用领域,在市场上占据了重要的位置。本文将深入解析MSP430与STM32之间的区别,探讨它们在不同应用场景下的优势和局限...

关键字: MSP430 STM32 单片机

该系列产品有助于嵌入式设计人员在更广泛的系统中轻松实现USB功能

关键字: 单片机 嵌入式设计 USB

【2024年4月10日,德国慕尼黑讯】英飞凌科技股份公司(FSE代码:IFX / OTCQX代码:IFNNY)推出了业界首款-48 V宽输入电压数字热插拔控制器XDP700-002,扩展了其XDP™数字功率保护控制器系列...

关键字: 控制器 晶体管 5G

【2024年4月10日,德国慕尼黑和美国加利福尼亚州旧金山讯】全球功率系统和物联网领域的半导体领导者英飞凌科技股份公司(FSE代码:IFX / OTCQX代码:IFNNY)宣布其OPTIGA™ Trust M安全控制器现...

关键字: 物联网 控制器 供应链

作为全球最大数据产生国之一,随着数据规模的成倍增长,中国对更高性能数据中心的需求日益迫切。根据IDC Global DataSphere对每年数据产生量的预测,全球数据量的复合年增长率(CAGR)将达到 21.2%,并在...

关键字: 数据中心 CXL技术 控制器

北京,2024年4月8日,运动与控制领域的先行者——派克汉尼汾携APK系列控制器、CRV系列工业电磁阀、RRV系列快开电磁阀和SEHI系列电子膨胀阀组等新品亮相2024中国制冷展,并展示公司在商超冷库、冷水机组、环测设备...

关键字: 控制器 工业电磁阀 数据中心

为增进大家对视频控制器的认识,本文将对视频控制器模块设计、视频控制器的特殊技术予以介绍。

关键字: 控制器 指数 视频控制器

单片机编程语言是程序员与微控制器进行交流的桥梁,它们构成了单片机系统的软件开发基石,决定着如何有效、高效地控制和管理单片机的各项资源。随着微控制器技术的不断发展,针对不同应用场景的需求,形成了丰富多样的编程语言体系。本文...

关键字: 单片机 微控制器

单片机,全称为“单片微型计算机”或“微控制器”(Microcontroller Unit,简称MCU),是一种高度集成化的电子器件,它是现代科技领域的关键组件,尤其在自动化控制、物联网、消费电子、汽车电子、工业控制等领域...

关键字: 单片机 MCU
关闭
关闭