📄 av matrix.lst
字号:
* low_vector located at address 0x18. C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
*/ C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
//底优先级中断向量 C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
#pragma code low_vector=0x18 C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
void low_interrupt (void) C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
{ C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
/* C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
* Inline assembly that will jump to the ISR. C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
*/ C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
000018 ef16 GOTO 0x2c _asm GOTO timer_isr _endasm //跳到低优先级中断程序 C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
00001a f000
00001c 0012 RETURN 0x0 } C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
/* C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
* Returns the compiler to the default code section. C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
*/ C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
#pragma code C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
/* C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
* Specifies the function timer_isr as a low-priority interrupt service C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
* routine. This is required in order for the compiler to generate a C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
* RETFIE instruction instead of a RETURN instruction for the timer_isr C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
* function. C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
*/ C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
#pragma interruptlow timer_isr C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
/* C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
* Define the timer_isr function. Notice that it does not take any C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
* parameters, and does not return anything (as required by ISRs). C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
*/ C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
void C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
00002c cfd8 MOVFF 0xfd8,0xfe4 timer_isr (void) C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
00002e ffe4
000030 cfe0 MOVFF 0xfe0,0xfe4
000032 ffe4
000034 6ee4 MOVWF 0xe4,0x0
000036 cfda MOVFF 0xfda,0xfe4
000038 ffe4
00003a cfe2 MOVFF 0xfe2,0xfda
00003c ffda
00003e 52e6 MOVF 0xe6,0x1,0x0
{ C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
/* C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
* Clears the TMR0 interrupt flag to stop the program from processing the C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
* same interrupt multiple times. C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
*/ C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
000040 94f2 BCF 0xf2,0x2,0x0 INTCONbits.TMR0IF = 0; //Clear Timer0 overflow flag C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
000042 9ed5 BCF 0xd5,0x7,0x0 T0CONbits.TMR0ON = 0; //8ms超时,停止TMR0,停止限时监控 C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
//下面写用户程序 C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
000044 0100 MOVLB 0x0 RC_Over = 1; //产生超时事件 C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
000046 0e01 MOVLW 0x1
000048 6f6d MOVWF 0x6d,0x1
00004a c06a MOVFF 0x6a,0x6b byte_Count = RC_Count; //保存接受字符数 C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
00004c f06b
00004e 6b6a CLRF 0x6a,0x1 RC_Count = 0; //准备再次接受串行口信号 C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
000050 52e5 MOVF 0xe5,0x1,0x0 } C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
000052 cfe5 MOVFF 0xfe5,0xfda
000054 ffda
000056 50e5 MOVF 0xe5,0x0,0x0
000058 cfe5 MOVFF 0xfe5,0xfe0
00005a ffe0
00005c cfe5 MOVFF 0xfe5,0xfd8
00005e ffd8
000060 0010 RETFIE 0x0
C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
//高优先级中断向量 C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
#pragma code InterruptVectorHigh=0x08 C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
void InterruptVectorHigh (void) C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
{ C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
_asm C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
000008 ef31 GOTO 0x62 goto InterruptHandlerHigh //跳到高优先级中断程序 C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
00000a f000
_endasm C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
00000c 0012 RETURN 0x0 } C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
//高优先级中断服务程序 C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
#pragma code C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
#pragma interrupt InterruptHandlerHigh C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
000062 cfda MOVFF 0xfda,0xfe4 void InterruptHandlerHigh () C:\MCC18\example\AV MATRIX\AV3_MATRIX.c
000064 ffe4
000066 cfe2 MOVFF 0xfe2,0xfda
000068 ffda
00006a cfe9 MOVFF 0xfe9,0xfe4
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -