六、使小车前进、后退、左转弯、右转弯、左滚动、右滚动的基本指令
◆ MOV P2,#11111010B ; 小车前进
LCALL K1 ; 调延时3秒子程序K1。改变延时时间长短,可改
; 变小车的前进路程。
MOV P2,#11111111B ; 小车停止前进
◆ MOV P2,#11110101B ; 小车后退
LCALL K1 ; 调延时3秒子程序K1
MOV P2,#11111111B ; 小车停止后退
◆ MOV P2,#11110110B ; 小车左转弯
LCALL K2 ; 调延时1秒子程序K2。如果小车转弯的角度大于
; 或小于90度,可调整延时时间长短实现之
MOV P2,#11111111B ; 小车停止左转弯
◆ MOV P2,#11111001B ; 小车右转弯
LCALL K2 ; 调延时1秒子程序K2
MOV P2,#11111111B ; 小车停止左转弯
◆ MOV P2,#11110110B ; 小车左滚动
LCALL K3 ; 调较长时间延时5秒子程序K3
MOV P2,#11111111B ; 小车停止左滚动
◆ MOV P2,#11111001B ; 小车右滚动
LCALL K2 ; 调较长时间延时5秒子程序K3
MOV P2,#11111111B ; 小车停止右滚动
七、完整程序清单
ORG 0000H
LJMP MAIN ; 跳到MAIN
ORG 0003H ; 外部中断0入口地址
LJMP BB ; 跳到外部中断0服务子程序首地址BB
ORG 000BH ; T0中断入口地址
LJMP CC ; 跳到T0外部中断服务子程序首地址CC
ORG 0013H ; 外部中断1入口地址
LJMP DD ; 跳到外部中断1服务子程序首地址DD
;◆ 外部中断0设置
MAIN:MOV SP,#30H ; 堆栈指针指向30H
SETB IT0 ; 设置外部中断0为下降沿触发方式
SETB EX0 ; 设置外部中断0分开关接通(中断源允许)
;◆ 外部中断1设置
SETB IT1 ; 设置设置外部中断1为下降沿触发方式
SETB EX1 ; 设置外部中断1分开关接通(中断源允许)
;◆ TO外部中断设置
MOV TMOD,#00000110B; 设置T0方式2为对外部引脚计数功能
SETB ET0 ; 设置T0分开关接通(T0中断源允许)
MOV TL0,#0FFH ; T0装满初值
MOV TH0,#0FFH
SETB TR0 ; 启动T0
;◆ 中断总允许
SETB EA ; 设置3个中断总允许
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !