📄 vectors08.lis
字号:
.module vectors08.c
.area text
0000 .dbfile vectors08.c
0000 .dbfunc e isrTIMER1 _isrTIMER1 fV
0000 _isrTIMER1::
0000 .dbline -1
0000 8B pshh
0001 B600 lda *__r0
0003 87 psha
0004 B600 lda *__r1
0006 87 psha
0007 B600 lda *__r2
0009 87 psha
000A B600 lda *__r3
000C 87 psha
000D B600 lda *__r4
000F 87 psha
0010 B600 lda *__r5
0012 87 psha
0013 B600 lda *__r6
0015 87 psha
0016 B600 lda *__r7
0018 87 psha
0019 B600 lda *__r8
001B 87 psha
001C B600 lda *__r9
001E 87 psha
001F B600 lda *__r10
0021 87 psha
0022 B600 lda *__r11
0024 87 psha
0025 B600 lda *__rhi
0027 87 psha
0028 B600 lda *__rlo
002A 87 psha
002B .dbline 19
002B ; /*-----------------------------------------------------*
002B ; *文件名:vectors08.c *
002B ; *功 能:用于定义中断矢量表 *
002B ; *-----------------------------------------------------*/
002B ; //[头文件]
002B ; #include "GP32C.H" //包含头文件
002B ; #include "lcd.h" //包含Lcd头文件
002B ; /*[定时器相应寄存器定义]*/
002B ; #define TOFBit 7 //定时器溢出标志位
002B ; //变量声明
002B ; //得到焦点的行号
002B ; extern unsigned char FLine;
002B ; //[外部定义64个字节的Lcd显示缓冲区]
002B ; extern unsigned char LcdShowBuff[64];
002B ;
002B ; //定时器1中断处理函数
002B ; #pragma interrupt_handler isrTIMER1
002B ; void isrTIMER1(void)
002B ; {
002B .dbline 20
002B ; asm("SEI"); //关总中断
002B 9B SEI
002C .dbline 23
002C ; //通过实验,把刷新时间间隔置为1/2秒
002C ; //定时刷新Lcd显示缓冲中的数据
002C ; LcdShCh(LcdShowBuff);
002C 450000 ldhx #_LcdShowBuff
002F 89 pshx
0030 8B pshh
0031 CD0000 jsr _LcdShCh
0034 A702 ais #2
0036 95 tsx
0037 .dbline 32
0037 ; //FLine为行号;1表示有边框;0为无边框
0037 ; //LcdShGrRe(FLine,GrEnable);
0037 ; //在指定位置画圆
0037 ; //LcdShGrCil(31,64,10,4,GrEnable);
0037 ; //LcdShGrCil(31,64,30,30,GrEnable);
0037 ; //在指定位置显示点
0037 ; //LcdShGr1P(31,64);
0037 ; //清除定时器溢出标志位
0037 ; T1SC&=~(1<<TOFBit);
0037 1F20 bclr #7,0x20
0039 .dbline 33
0039 ; asm("CLI"); //开总中断
0039 9A CLI
003A .dbline -2
003A L1:
003A .dbline 0 ; func end
003A 86 pula
003B B700 sta *__rlo
003D 86 pula
003E B700 sta *__rhi
0040 86 pula
0041 B700 sta *__r11
0043 86 pula
0044 B700 sta *__r10
0046 86 pula
0047 B700 sta *__r9
0049 86 pula
004A B700 sta *__r8
004C 86 pula
004D B700 sta *__r7
004F 86 pula
0050 B700 sta *__r6
0052 86 pula
0053 B700 sta *__r5
0055 86 pula
0056 B700 sta *__r4
0058 86 pula
0059 B700 sta *__r3
005B 86 pula
005C B700 sta *__r2
005E 86 pula
005F B700 sta *__r1
0061 86 pula
0062 B700 sta *__r0
0064 8A pulh
0065 80 rti
0066 .dbend
0066 .dbfunc e isrDummy _isrDummy fV
0066 _isrDummy::
0066 .dbline -1
0066 8B pshh
0067 .dbline 39
0067 ; }
0067 ;
0067 ; //未定义的中断处理函数,本函数不能删除
0067 ; #pragma interrupt_handler isrDummy
0067 ; void isrDummy(void)
0067 ; {
0067 .dbline -2
0067 L2:
0067 .dbline 0 ; func end
0067 8A pulh
0068 80 rti
0069 .dbend
.area memory(abs)
.org 0xffdc
FFDC .dbfile vectors08.c
FFDC __vectab::
FFDC 0066 .word _isrDummy
FFDE 0066 .word _isrDummy
FFE0 0066 .word _isrDummy
FFE2 0066 .word _isrDummy
FFE4 0066 .word _isrDummy
FFE6 0066 .word _isrDummy
FFE8 0066 .word _isrDummy
FFEA 0066 .word _isrDummy
FFEC 0066 .word _isrDummy
FFEE 0066 .word _isrDummy
FFF0 0066 .word _isrDummy
FFF2 0000 .word _isrTIMER1
FFF4 0066 .word _isrDummy
FFF6 0066 .word _isrDummy
FFF8 0066 .word _isrDummy
FFFA 0066 .word _isrDummy
FFFC 0066 .word _isrDummy
FFFE .dbsym e _vectab __vectab A[34:17]pfV
.area lit
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -