?? main.s
字號:
; case 2: P1DATA &= ~(0x08);break; // P1.3 low (on)
and REG[0x1],-9
.dbline 129
.dbline 130
; default: break;
L31:
.dbline 134
; }
; // Check to see if the endpoint is empty
; // while(USB_bGetEPState(1) != IN_BUFFER_EMPTY);
; USB_LoadEP(1, &b_ram[0], 8);
mov [_USB_APIEPNumber],1
.dbline 134
mov [_USB_APICount],8
.dbline 134
push X
mov A,>_b_ram
push A
mov A,<_b_ram
mov X,A
pop A
xcall _USB_XLoadEP
pop X
.dbline 135
; }
L28:
.dbline 137
; ///////////////////
; if (right_button == UP)
cmp [_right_button],0
jnz L36
.dbline 138
; {
.dbline 139
; P1DATA |= 0x08; // P1.3 high (off)
or REG[0x1],8
.dbline 140
; pre_RB_down =UP;
mov [_pre_RB_down],0
.dbline 143
; // while(USB_bGetEPState(1) != IN_BUFFER_EMPTY);
; // USB_LoadEP(1, &c_ram[0], 8);
; }
L36:
.dbline 144
; if (right_button == DOWN && pre_RB_down ==UP)
cmp [_right_button],1
jnz L38
cmp [_pre_RB_down],0
jnz L38
.dbline 145
; {
.dbline 146
; P1DATA &= ~(0x08); // P0.6 low (on)
and REG[0x1],-9
.dbline 147
; pre_RB_down=DOWN;
mov [_pre_RB_down],1
.dbline 149
; // USB_EnableEP(1);
; switch (USB_bGetEPState(1))
push X
mov A,1
xcall _USB_bGetEPState
pop X
mov [X+7],A
mov [X+6],0
cmp [X+6],0
jnz X5
cmp [X+7],0
jz L43
X5:
cmp [X+6],0
jnz X6
cmp [X+7],1
jz L44
X6:
cmp [X+6],0
jnz X7
cmp [X+7],2
jz L45
X7:
xjmp L41
X1:
.dbline 150
; {
L43:
.dbline 151
; case 0: P0DATA &= ~(0x20);break; // P0.5 low (on)
and REG[ 0],-33
.dbline 151
xjmp L41
L44:
.dbline 152
; case 1: P0DATA &= ~(0x40);break; // P0.6 low (on)
and REG[ 0],-65
.dbline 152
xjmp L41
L45:
.dbline 153
; case 2: P1DATA &= ~(0x08);break; // P1.3 low (on)
and REG[0x1],-9
.dbline 153
.dbline 154
; default: break;
L41:
.dbline 158
; }
; // Check to see if the endpoint is empty
; // while(USB_bGetEPState(1) != IN_BUFFER_EMPTY);
; USB_LoadEP(1, &d_ram[0], 8);
mov [_USB_APIEPNumber],1
.dbline 158
mov [_USB_APICount],8
.dbline 158
push X
mov A,>_d_ram
push A
mov A,<_d_ram
mov X,A
pop A
xcall _USB_XLoadEP
pop X
.dbline 159
; }
L38:
.dbline 193
L8:
.dbline 93
xjmp L7
L46:
.dbline 196
; /*
;
; switch (USB_bGetEPState(1))
; {
; case 0: P0DATA &= ~(0x20);break; // P0.5 low (on)
; case 1: P0DATA &= ~(0x40);break; // P0.6 low (on)
; case 2: P1DATA &= ~(0x08);break; // P1.3 low (on)
; default: break;
; }
; while(USB_bGetEPState(1) != IN_BUFFER_EMPTY);
; USB_LoadEP(1, &b_ram[0], 8);
; USB_LoadEP(1, &c_ram[0], 8);
;
; USB_EnableEP(1);
;
; switch (USB_bGetEPState(1))
; {
; case 0: P0DATA &= ~(0x20);break; // P0.5 low (on)
; case 1: P0DATA &= ~(0x40);break; // P0.6 low (on)
; case 2: P1DATA &= ~(0x08);break; // P1.3 low (on)
; default: break;
; }
;
; USB_LoadEP(1, &a_ram[0], 8);
;
; USB_DisableEP(1);
; switch (USB_bGetEPState(1))
; {
; case 0: P0DATA &= ~(0x20);break; // P0.5 low (on)
; case 1: P0DATA &= ~(0x40);break; // P0.6 low (on)
; case 2: P1DATA &= ~(0x08);break; // P1.3 low (on)
; default: break;
; }*/
; }
;
; while (0)
; {
.dbline 199
; //USB接收保存PC數(shù)據(jù)
; // while (USB_bGetEPState(1) == OUT_BUFFER_EMPTY)
; {
.dbline 203
; // USB_EnableEP(1);
;
; //USB按鍵發(fā)送鍵盤數(shù)據(jù)
; move = ((P0DATA & 0x04) ? STOP : GO); // P0.2 Up or Down
tst REG[ 0],4
jz L50
mov [X+1],0
mov [X+0],0
xjmp L51
L50:
mov [X+1],1
mov [X+0],0
L51:
mov A,[X+1]
mov [_move],A
.dbline 204
; left_button = ((P0DATA & 0x08) ? UP : DOWN); // P0.3 Up or Down
tst REG[ 0],8
jz L53
mov [X+3],0
mov [X+2],0
xjmp L54
L53:
mov [X+3],1
mov [X+2],0
L54:
mov A,[X+3]
mov [_left_button],A
.dbline 206
; ///////////////////
; if(move== GO || left_button==DOWN)
cmp [_move],1
jz L57
cmp [_left_button],1
jnz L55
L57:
.dbline 207
; {
.dbline 208
; if (move == STOP)
cmp [_move],0
jnz L58
.dbline 209
; {
.dbline 210
; P0DATA |= 0x20; // P0.5 high (off)
or REG[ 0],32
.dbline 211
; pre_move=UP;
mov [_pre_move],0
L60:
.dbline 212
L61:
.dbline 212
; while(USB_bGetEPState(1) != IN_BUFFER_EMPTY);
push X
mov A,1
xcall _USB_bGetEPState
pop X
cmp A,1
jnz L60
.dbline 213
; USB_LoadEP(1, &c_ram[0], 8);
mov [_USB_APIEPNumber],1
.dbline 213
mov [_USB_APICount],8
.dbline 213
push X
mov A,>_c_ram
push A
mov A,<_c_ram
mov X,A
pop A
xcall _USB_XLoadEP
pop X
.dbline 214
; }
L58:
.dbline 215
; if (move == GO && pre_move ==UP)
cmp [_move],1
jnz L63
cmp [_pre_move],0
jnz L63
.dbline 216
; {
.dbline 217
; P0DATA &= ~(0x20); // P0.5 low (on)
and REG[ 0],-33
.dbline 218
; pre_move=DOWN;
mov [_pre_move],1
L65:
.dbline 220
L66:
.dbline 220
; // Check to see if the endpoint is empty
; while(USB_bGetEPState(1) != IN_BUFFER_EMPTY);
push X
mov A,1
xcall _USB_bGetEPState
pop X
cmp A,1
jnz L65
.dbline 221
; USB_LoadEP(1, &a_ram[0], 8);
mov [_USB_APIEPNumber],1
.dbline 221
mov [_USB_APICount],8
.dbline 221
push X
mov A,>_a_ram
push A
mov A,<_a_ram
mov X,A
pop A
xcall _USB_XLoadEP
pop X
.dbline 222
; }
L63:
.dbline 224
; ///////////////////
; if (left_button == UP)
cmp [_left_button],0
jnz L68
.dbline 225
; {
.dbline 226
; P0DATA |= 0x40; // P0.6 high (off)
or REG[ 0],64
.dbline 227
; pre_LB_down =UP;
mov [_pre_LB_down],0
L70:
.dbline 228
L71:
.dbline 228
; while(USB_bGetEPState(1) != IN_BUFFER_EMPTY);
push X
mov A,1
xcall _USB_bGetEPState
pop X
cmp A,1
jnz L70
.dbline 229
; USB_LoadEP(1, &c_ram[0], 8);
mov [_USB_APIEPNumber],1
.dbline 229
mov [_USB_APICount],8
.dbline 229
push X
mov A,>_c_ram
push A
mov A,<_c_ram
mov X,A
pop A
xcall _USB_XLoadEP
pop X
.dbline 230
; }
L68:
.dbline 231
; if (left_button == DOWN && pre_LB_down ==UP)
cmp [_left_button],1
jnz L73
cmp [_pre_LB_down],0
jnz L73
.dbline 232
; {
.dbline 233
; P0DATA &= ~(0x40); // P0.6 low (on)
and REG[ 0],-65
.dbline 234
; pre_LB_down=DOWN;
mov [_pre_LB_down],1
L75:
.dbline 236
L76:
.dbline 236
; // Check to see if the endpoint is empty
; while(USB_bGetEPState(1) != IN_BUFFER_EMPTY);
push X
mov A,1
xcall _USB_bGetEPState
pop X
cmp A,1
jnz L75
.dbline 237
; USB_LoadEP(1, &b_ram[0], 8);
mov [_USB_APIEPNumber],1
.dbline 237
mov [_USB_APICount],8
.dbline 237
push X
mov A,>_b_ram
push A
mov A,<_b_ram
mov X,A
pop A
xcall _USB_XLoadEP
pop X
.dbline 238
; }
L73:
.dbline 239
; }
L55:
.dbline 240
.dbline 241
L47:
.dbline 195
.dbline -2
.dbline 242
; }
; }
; }
L6:
add SP,-8
pop X
.dbline 0 ; func end
jmp .
.dbend
.area bss(ram, con, rel)
.dbfile ./main.c
_pre_RB_down::
.blkb 1
.dbsym e pre_RB_down _pre_RB_down c
_pre_LB_down::
.blkb 1
.dbsym e pre_LB_down _pre_LB_down c
_pre_move::
.blkb 1
.dbsym e pre_move _pre_move c
_right_button::
.blkb 1
.dbsym e right_button _right_button c
_move::
.blkb 1
.dbsym e move _move c
_left_button::
.blkb 1
.dbsym e left_button _left_button c
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -