📄 2109asic.lst
字号:
00256
00EC 1D03 00257 BTFSS STATUS,Z
00ED 2C07 00258 GOTO END_SPI
00259
00EE 2443 00260 CALL ADD_NOP6
00261
00EF 1683 00262 BSF STATUS,RP0
Message[302]: Argument out of range. Least significant bits used.
00F0 082E 00263 MOVF FINADATA1,W ; 1st Pad data
00F1 1283 00264 BCF STATUS,RP0
00265
00266 SPI_TRANSMIT
00F2 2413 M CALL SPI_COMM
00F3 1803 M BTFSC STATUS,C
00F4 2C07 M GOTO END_SPI
00267
00F5 10C6 00268 BCF F_SETTING_MODE
00F6 3A01 00269 XORLW 0X01 ; 01h ?
00F7 1D03 00270 BTFSS STATUS,Z
00F8 28FB 00271 GOTO REPORT_43_SEND_2ND
00272
00F9 1446 00273 BSF F_NMODE ; psx mode 2.0
00FA 14C6 00274 BSF F_SETTING_MODE ; parameter setting mode
00275
00276
00FB 00277 REPORT_43_SEND_2ND:
00FB 2443 00278 CALL ADD_NOP6
00FC 1683 00279 BSF STATUS,RP0
Message[302]: Argument out of range. Least significant bits used.
00FD 082F 00280 MOVF FINADATA2,W ; 2nd Pad data
00FE 1283 00281 BCF STATUS,RP0
00282 SPI_TRANSMIT
00FF 2413 M CALL SPI_COMM
0100 1803 M BTFSC STATUS,C
0101 2C07 M GOTO END_SPI
00283
0102 0830 00284 MOVF PAD_ID,W
0103 390F 00285 ANDLW 0X0F
0104 3A01 00286 XORLW 0X01
0105 1903 00287 BTFSC STATUS,Z
0106 2C07 00288 GOTO END_SPI ; = x1 mode
00289
0107 1683 00290 BSF STATUS,RP0
Message[302]: Argument out of range. Least significant bits used.
0108 0830 00291 MOVF FINADATA3,W ; 3rd Pad data
0109 1283 00292 BCF STATUS,RP0
00293 SPI_TRANSMIT
010A 2413 M CALL SPI_COMM
010B 1803 M BTFSC STATUS,C
010C 2C07 M GOTO END_SPI
00294
010D 1683 00295 BSF STATUS,RP0
Message[302]: Argument out of range. Least significant bits used.
010E 0831 00296 MOVF FINADATA4,W ; 4th Pad data
010F 1283 00297 BCF STATUS,RP0
00298 SPI_TRANSMIT
0110 2413 M CALL SPI_COMM
0111 1803 M BTFSC STATUS,C
0112 2C07 M GOTO END_SPI
00299
0113 0830 00300 MOVF PAD_ID,W
0114 390F 00301 ANDLW 0X0F
0115 3A02 00302 XORLW 0X02
0116 1903 00303 BTFSC STATUS,Z
0117 2C07 00304 GOTO END_SPI ; = x2 mode
00305
0118 1683 00306 BSF STATUS,RP0
Message[302]: Argument out of range. Least significant bits used.
0119 0832 00307 MOVF FINADATA5,W ; 5th Pad data
011A 1283 00308 BCF STATUS,RP0
00309 SPI_TRANSMIT
011B 2413 M CALL SPI_COMM
011C 1803 M BTFSC STATUS,C
011D 2C07 M GOTO END_SPI
00310
011E 1683 00311 BSF STATUS,RP0
Message[302]: Argument out of range. Least significant bits used.
011F 0833 00312 MOVF FINADATA6,W ; 6th Pad data
0120 1283 00313 BCF STATUS,RP0
00314 SPI_TRANSMIT
0121 2413 M CALL SPI_COMM
0122 1803 M BTFSC STATUS,C
0123 2C07 M GOTO END_SPI
00315
0124 0830 00316 MOVF PAD_ID,W
0125 390F 00317 ANDLW 0X0F
0126 3A03 00318 XORLW 0X03
0127 1903 00319 BTFSC STATUS,Z
0128 2C07 00320 GOTO END_SPI ; = x3 mode
00321
0129 2877 00322 GOTO COM_42_DATA7
00323
00324
00325 ;------------------------------------------
00326 ;psx mode 2.0
00327 ;parameter setting mode
00328 ;------------------------------------------
012A 00329 PARAMETER_SETTING_MODE: ;
012A 30F3 00330 MOVLW 0XF3 ; f3
00331
00332 SPI_TRANSMIT
012B 2413 M CALL SPI_COMM
012C 1803 M BTFSC STATUS,C
012D 2C07 M GOTO END_SPI
00333
012E 00B1 00334 MOVWF LAST_COMMAND ; 4x ?
012F 39F0 00335 ANDLW 0XF0
0130 3A40 00336 XORLW 0X40
0131 1D03 00337 BTFSS STATUS,Z
0132 2C07 00338 GOTO END_SPI
00339
0133 305A 00340 MOVLW 0X5A ; ack 5A
00341 SPI_TRANSMIT
0134 2413 M CALL SPI_COMM
0135 1803 M BTFSC STATUS,C
0136 2C07 M GOTO END_SPI
00342
0137 1903 00343 BTFSC STATUS,Z ; only 42 accept 00,
0138 293D 00344 GOTO SEND_COMMAND ; all others not reply
00345
0139 3042 00346 MOVLW 0X42
013A 0631 00347 XORWF LAST_COMMAND,W
013B 1D03 00348 BTFSS STATUS,Z
013C 2C07 00349 GOTO END_SPI
00350
013D 00351 SEND_COMMAND:
013D 3001 00352 MOVLW HIGH COMMAND_TABLE
013E 0082 00353 MOVWF PCLATH
00354
013F 0831 00355 MOVF LAST_COMMAND,W
0140 390F 00356 ANDLW 0X0F
00357
0141 00358 COMMAND_TABLE:
0141 0781 00359 ADDWF PCL,F
0142 0000 00360 NOP ;specif for ASIC VCP201 ***
0143 2953 00361 GOTO PS2_COMMAND_40
0144 29AE 00362 GOTO PS2_COMMAND_41
0145 29D6 00363 GOTO PS2_COMMAND_42
0146 2A00 00364 GOTO PS2_COMMAND_43
0147 2A11 00365 GOTO PS2_COMMAND_44
0148 2A38 00366 GOTO PS2_COMMAND_45
0149 2A58 00367 GOTO PS2_COMMAND_46
014A 2A84 00368 GOTO PS2_COMMAND_47
014B 2AA9 00369 GOTO PS2_COMMAND_48
014C 2AD9 00370 GOTO PS2_COMMAND_49
014D 2AFA 00371 GOTO PS2_COMMAND_4A
014E 2B05 00372 GOTO PS2_COMMAND_4B
014F 2B23 00373 GOTO PS2_COMMAND_4C
0150 2B41 00374 GOTO PS2_COMMAND_4D
0151 2B7C 00375 GOTO PS2_COMMAND_4E
0152 2BA0 00376 GOTO PS2_COMMAND_4F
00377
00378 ;----------------------------------
00379 ; command = 40
00380 ; Reserved
00381 ;----------------------------------
0153 00382 PS2_COMMAND_40:
0153 1F46 00383 BTFSS D_A_MODE
0154 2B05 00384 GOTO PS2_COMMAND_4B
00385
0155 162C 00386 BSF F_SIO_ACK
0156 308E 00387 MOVLW ANA_SEN_1
0157 0084 00388 MOVWF FSR
0158 0100 00389 CLRW ; 1st data
00390 SPI_TRANSMIT
0159 2413 M CALL SPI_COMM
015A 1803 M BTFSC STATUS,C
015B 2C07 M GOTO END_SPI
00391
015C 1683 00392 BSF STATUS,RP0
Message[302]: Argument out of range. Least significant bits used.
015D 008A 00393 MOVWF SIO_TMP3
00394 ; clrf sio_tmp1
00395
015E 3C0B 00396 SUBLW D'11' ;>11?
015F 1283 00397 BCF STATUS,RP0
0160 1803 00398 BTFSC STATUS,C
0161 122C 00399 BCF F_SIO_ACK
00400
0162 00401 COM_40_2ND_DATA:
0162 1283 00402 BCF STATUS,RP0
0163 0100 00403 CLRW ; 2nd data
00404 SPI_TRANSMIT
0164 2413 M CALL SPI_COMM
0165 1803 M BTFSC STATUS,C
0166 2C07 M GOTO END_SPI
00405
0167 1683 00406 BSF STATUS,RP0
Message[302]: Argument out of range. Least significant bits used.
0168 0088 00407 MOVWF SIO_TMP1
0169 1283 00408 BCF STATUS,RP0
00409
016A 30FF 00410 MOVLW 0XFF ; previous data > 11
016B 1A2C 00411 BTFSC F_SIO_ACK
016C 2976 00412 GOTO COM_40_3RD_DATA
00413
016D 1683 00414 BSF STATUS,RP0
016E 1003 00415 BCF STATUS,C
Message[302]: Argument out of range. Least significant bits used.
016F 0C0A 00416 RRF SIO_TMP3,W ; add half of it
0170 0784 00417 ADDWF FSR,F
00418
0171 0800 00419 MOVF INDF,W ; 3rd data
Message[302]: Argument out of range. Least significant bits used.
0172 180A 00420 BTFSC SIO_TMP3,0
0173 0E00 00421 SWAPF INDF,W
0174 390F 00422 ANDLW 0X0F
0175 1283 00423 BCF STATUS,RP0
00424
0176 00425 COM_40_3RD_DATA:
00426 SPI_TRANSMIT
0176 2413 M CALL SPI_COMM
0177 1803 M BTFSC STATUS,C
0178 2C07 M GOTO END_SPI
00427
0179 1D03 00428 BTFSS STATUS,Z
017A 162C 00429 BSF F_SIO_ACK
00430
017B 1683 00431 BSF STATUS,RP0
Message[302]: Argument out of range. Least significant bits used.
017C 0808 00432 MOVF SIO_TMP1,W
017D 3AFF 00433 XORLW 0XFF
017E 1903 00434 BTFSC STATUS,Z
017F 2985
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -