📄 dac08.asm
字号:
;learn how to operate the I/O ports,how to control motor
.mmregs
.global _main
.text
_main:
stm 3000h,sp
stm 1000h,ar1 ;define the address
;start palse 00h=0v
st 00h,*ar1
portw *ar1,01h
portw *ar1,00h
nop
nop
call delaya
nop
nop
loop:
;positive pulse +5v
st 00ffh,*ar1
portw *ar1,01h
portw *ar1,00h
nop
nop
call delay
nop
nop ; set break point here to stop motor
;reverse pulse 0v
st 0000h,*ar1
portw *ar1,01h
portw *ar1,00h
nop
nop
call delayb
nop
nop
b loop
nop
nop
;----------------------------
delay:
stm 0400h,ar3
loop1:
stm 08h,ar4
loop2:
banz loop2,*ar4-
banz loop1,*ar3-
ret
nop
nop
;------------------------------
delayb:
stm 100h,ar3
loopb1:
stm 080h,ar4
loopb2:
banz loopb2,*ar4-
banz loopb1,*ar3-
ret
nop
nop
;-------------------------------
delaya:
stm 4000h,ar3
loopa1:
stm 080h,ar4
loopa2:
banz loopb2,*ar4-
banz loopb1,*ar3-
ret
nop
nop
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -