[, , , , , , ]
ldr1 equ p3.0 ; 定義變數ldr1,光線感測器1輸入
ldr2 equ p3.5 ; 定義變數ldr2,光線感測器2輸入
lim1 equ p1.2 ; 定義變數lim1,限位開關1
lim2 equ p1.3 ; 定義變數lim2,限位開關2
sw1 equ p1.0 ; 定義變數sw1,開始跟隨開關
sw2 equ p1.1 ; 定義變數sw2,停止跟隨開關
ena equ p2.5 ; 定義變數ena,x軸電機使能
enb equ p2.6 ; 定義變數enb,y軸電機使能
mx1 equ p2.0 ; 定義變數mx1,x軸電機控制端1
mx2 equ p2.1 ; 定義變數mx2,x軸電機控制端2
my1 equ p2.2 ; 定義變數my1,y軸電機控制端1
my2 equ p2.3 ; 定義變數my2,y軸電機控制端2
mott equ 00h定義變數mott
org 00h
main:
mov p1,#0fhp1低位作輸入端
mov mott,#01hmott=01h
mmins:
call motorr調motorr子程式
jb lim2,mmins
setb ena兩個電機停止
setb enb
clr mx1
clr mx2
clr my1
clr my2
setb sw1等待開始跟隨開關被按下
jb sw1,$
nopjnb sw1,$
mmain:
setb ldr1
setb ldr2
setb lim1
setb lim2
jb ldr1,sd1如果光線感測器1為暗,則跳到sd1
jb ldr2,sd2如果光線感測器2為暗,則跳到sd2
jnb lim1,mmains
jnb sw2,stop判斷停止跟隨按鈕
jb lim2,mmain
setb ena兩個電機停止
setb enb
clr mx1
clr mx2
clr my1
clr my2
jmp start_tracking
stop:
call motorr
jb lim2,stop
jnb sw2,$
jmp main迴圈
sd1:
jb ldr2,sd3如果光線感測器2為暗,跳到sd3
sd4:
jb ldr1,sd4旋轉直到光線感測器1為亮
jb ldr2,sd2旋轉直到光線感測器2為亮
jmp start_tracking
sd2:
call motorl
jnb lim1,mmains
jb ldr2,sd2
jb ldr1,sd1
jmp start_tracking
sd3:
setb lim1
setb lim2
jnb lim1,mmains
jnb ldr1,mmain
jnb ldr2,mmain
jmp sd3
mmains:
call motorr
jb lim2,mmains
snm:
call delay
jnb ldr1,snm
call delay
jb ldr2,snm
jmp mmain
motorl:
mov a,mott
cjne a,#01h,xc1
mov mott,#04h
call motor_rotate
call delay
retxc1:
dec mott
call motor_rotate
call delay
retmotorr:
mov a,mott
cjne a,#04h,xc2
mov mott,#01h
call motor_rotate
call delay
retxc2:
inc mott
call motor_rotate
call delay
retstart_tracking:
jmp mmain
motor_rotatex軸和y軸電機組合運動
mov a,mott
cjne a,#01h,gb1
setb enax軸和y軸電機正轉
setb enb
setb mx1
clr mx2
setb my1
clr my2
retgb1:
cjne a,#02h,gb2
setb enax軸電機正轉y軸電機反轉
setb enb
setb mx1
clr mx2
clr my1
setb my2
retgb2:
cjne a,#03h,gb3
setb enax軸電機反轉y軸電機正轉
setb enb
clr mx1
setb mx2
setb my1
clr my2
retgb3:
cjne a,#04h,gb4
setb enax軸和y軸電機反轉
setb enb
clr mx1
setb mx2
clr my1
setb my2
gb4:
retdelay:
mov r0,#45h
rep2:
mov r1,#99h
rep1:
nop djnz r1,rep1
djnz r0,rep2
retend
匯程式設計序小例項
mov ah,01h系統呼叫輸入乙個字元用於功能選擇 int 21h字元預設輸入到al中 endm 巨集定義字元輸出 charout macro outchar巨集定義將字元outchar輸出 push ax push dx mov dl,outchar mov ah,02h系統呼叫輸出字元outc...
微機原理 匯程式設計序
微機原理 1陣列straing中存放著多個8位有符號數,以 結束,要求分成正陣列和負陣列分別存放,並統計兩個陣列的個數,分別存於正 負陣列的第乙個位元組 data segment dat1 db 12h,0f3h,38h,32h,0e6h,67h,0d9h,buf1 db 10 dup 00h bu...
微控制器程式詳解
微控制器程式詳解.txt 根網線 盡賺了多少人的青春 有時候感動的就是身邊微不足道的小事。破碎不是最殘酷的最殘酷的是踩著這些碎片卻假裝不疼痛固執的尋找 將來就算我遇見再怎麼完美的人,都有乙個缺點,他不是你,下輩子要做男生,娶乙個像我這樣的女生。程式詳解 程式清單 共陽數碼管加減顯示 sp1 bit ...