|
- ;==================================================================
- ;程序编写人:兰建文
- ;编写地点:51hei培训机构
- ;时间:6月8日下午星期一
- ;功能:本程利用节拍法,三个按键,一个实现正转到反转的切换,
- ;一个实现反转到正转的切换,一个实现步进电机哦暂停。
- ;===============================================================
- ;=========================开始初始化============================
- SHUCHU EQU P2 ;定义P2口为输出口
- ZANT BIT 20H.0 ;设置暂停标志位
- ZHENGZ BIT 20H.1 ;设置正转标志位
- FANZ BIT 20H.2 ;设置反转标志位
- BIT0 BIT 20H.3 ;设置中断定时器0标志位
- MODE EQU 01H
- ;========================程序开始==============================
- ORG 00H ;程序开始
- LJMP START ;跳到START
- ORG 0BH ;中断定时器0入口地址
- JMP T0_1 ;跳到定时器0服务程序
- ORG 0030H ;入口地址
- ;=========================主程序===============================
- START:MOV SP,#60H ;移开指针
- MOV A,#0EEH
- CALL INIT ;开中断
-
- CLR ZANT ;暂停按键标志位清0
- CLR ZHENGZ ;正转按键标志位清0
- CLR FANZ ;反转按键标志位清0
- SETB BIT0 ;中断标志位置1
-
- MAIN:JNB BIT0,MAIN ;等待中断
- CLR BIT0 ;中断标志位清0
- JB ZANT,ZANCHULI ;判断暂停标志位是否为1,为1则暂停
- JB P1.0,L1
- SETB ZANT
- CLR ZHENGZ
- CLR FANZ
- JMP MAIN
- L1:JB ZHENGZ,ZHENGCHULI ;判断正转标志位是否为1,为1则正转
- JB P1.1,L2
- SETB ZHENGZ
- CLR ZANT
- CLR FANZ
- JMP MAIN
- L2:JB FANZ,FANCHULI ;判断反转标志位是否为1,为1则反转
- JB P1.2,MAIN
- SETB FANZ
- CLR ZANT
- CLR ZHENGZ
- JMP MAIN
- ZANCHULI: ;暂停处理
- MOV SHUCHU,#0FFH
- JB P1.1,L3
- CLR ZANT
- SETB ZHENGZ
- CLR FANZ
- L3:JB P1.2,MAIN
- SETB FANZ
- CLR ZANT
- CLR ZHENGZ
- JMP MAIN
- ZHENGCHULI: ;正转处理
- RR A
- MOV SHUCHU,A
- JB P1.2,MAIN
- CLR ZANT
- CLR ZHENGZ
- SETB FANZ
- JMP MAIN
- FANCHULI: ;反转处理
- RL A
- MOV SHUCHU,A
- JMP MAIN
- ;====================定时中断0服务子程序========================
- ;输入:无
- ;输出:无
- ;实现的功能:实现定时20MS,影响标志位BIT0.
- ;===============================================================
- T0_1:MOV TL0,#0E0H ;设置定时初值
- MOV TH0,#0B1H
- SETB BIT0 ;定时标志位清0
- RETI
- ;========================中断设置子程序=========================
- ;输入:无
- ;输出:无
- ;实现的功能:初始化设置定时器,设置初值
- ;===============================================================
- INIT:MOV TMOD,#MODE ;定时器0工作方式1
- MOV TL0,#0E0H
- MOV TH0,#0B1H
- MOV IE,#82H ;开定时器中断0
- SETB TR0 ;开定时器0
- RET
- ;=======================程序结束================================
- END
复制代码
|
评分
-
查看全部评分
|