?? main.s
字號:
.module main.c
.area text(rom, con, rel)
.dbfile D:\桌面\avr程序設計\循跡小車\main.c
.dbfunc e main _main fV
.even
_main::
.dbline -1
.dbline 9
; /*******************************************************************************
; ** 文件名:main.c 工程主文件
; *******************************************************************************/
; #include "config.h"
;
; volatile uint8 flag; //小車狀態
; //0未偏 1左偏 2右偏 3前出線 4后出線 5脫軌
; void main(void)
; {
.dbline 10
; init_devices();
xcall _init_devices
.dbline 11
; straight();
xcall _straight
.dbline 13
;
; flag_test(); //測試小車狀態
xcall _flag_test
xjmp L3
L2:
.dbline 15
; while(1) //沒有脫軌
; {
.dbline 16
; flag_test();
xcall _flag_test
.dbline 17
; switch(flag)
lds R20,_flag
clr R21
cpi R20,0
cpc R20,R21
breq L8
X0:
cpi R20,1
ldi R30,0
cpc R21,R30
breq L9
cpi R20,2
ldi R30,0
cpc R21,R30
breq L10
cpi R20,3
ldi R30,0
cpc R21,R30
breq L6
cpi R20,4
ldi R30,0
cpc R21,R30
breq L6
cpi R20,5
ldi R30,0
cpc R21,R30
breq L13
xjmp L6
X1:
.dbline 18
; {
L8:
.dbline 20
; case 0: //正常情況將速度設成相等
; motor_right_speed_set(0xFE);
ldi R16,254
xcall _motor_right_speed_set
.dbline 21
; motor_left_speed_set(0xFE);
ldi R16,254
.dbline 22
; break;
xjmp L6
L9:
.dbline 24
; case 1:
; mic_turn_right();
xcall _mic_turn_right
.dbline 25
; break;
xjmp L6
L10:
.dbline 27
; case 2:
; mic_turn_left();
xcall _mic_turn_left
.dbline 28
; break;
xjmp L6
X2:
.dbline 30
; case 3:
; break;
.dbline 32
; case 4:
; break;
L13:
.dbline 34
; case 5:
; stop();
xcall _stop
.dbline 35
; break;
.dbline 37
; default:
; break;
L6:
.dbline 39
L3:
.dbline 14
xjmp L2
X3:
.dbline -2
L1:
.dbline 0 ; func end
ret
.dbend
.area bss(ram, con, rel)
.dbfile D:\桌面\avr程序設計\循跡小車\main.c
_flag::
.blkb 1
.dbsym e flag _flag c
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -