📄 main.lst
字号:
0000003A 4800 LDR R0,=0xE001C018
0000003C 7001 STRB R1,[R0,#0x0]
45: I2CONSET = 0x40; // 使能主I2C
0000003E 2140 MOV R1,#0x40
00000040 4800 LDR R0,=0xE001C000
00000042 7001 STRB R1,[R0,#0x0]
48: VICIntSelect = 0x00000000; // 设置所有通道为IRQ中断
00000044 2100 MOV R1,#0x0
00000046 4800 LDR R0,=0xFFFFF00C
00000048 6001 STR R1,[R0,#0x0]
49: VICVectCntl0 = 0x29; // I2C通道分配到IRQ slot 0
0000004A 2129 MOV R1,#0x29
0000004C 4800 LDR R0,=0xFFFFF200
0000004E 6001 STR R1,[R0,#0x0]
50: VICVectAddr0 = (int)IRQ_I2C; // 设置I2C中断向量地址
00000050 4900 LDR R1,=IRQ_I2C?A ; IRQ_I2C?A
00000052 4800 LDR R0,=0xFFFFF100
ARM COMPILER V2.40a, main 19/07/07 01:23:00 PAGE 5
00000054 6001 STR R1,[R0,#0x0]
51: VICIntEnable |= 0x0200; // 使能I2C中断
00000056 4A80 LDR R2,=0x200
00000058 4800 LDR R0,=0xFFFFF010
0000005A 6801 LDR R1,[R0,#0x0]
0000005C 4311 ORR R1,R2
0000005E 6001 STR R1,[R0,#0x0]
52: }
00000060 BC08 POP {R3}
00000062 4718 BX R3
00000064 ENDP ; 'I2C_Init?T'
*** CODE SEGMENT '?PR?open?T?main':
60: void open(void)
00000000 B500 PUSH {LR}
62: Display(0x80,0xA1,0xF6);//口
00000002 2080 MOV R0,#0x80
00000004 21A1 MOV R1,#0xA1
00000006 22F6 MOV R2,#0xF6
00000008 F7FF BL Display?T ; T=0x0001 (1)
0000000A FFFA BL Display?T ; T=0x0001 (2)
63: Display(0x81,0xB5,0xE7);//电
0000000C 2081 MOV R0,#0x81
0000000E 21B5 MOV R1,#0xB5
00000010 22E7 MOV R2,#0xE7
00000012 F7FF BL Display?T ; T=0x0001 (1)
00000014 FFF5 BL Display?T ; T=0x0001 (2)
64: Display(0x82,0xCC,0xDD);//梯
00000016 2082 MOV R0,#0x82
00000018 21CC MOV R1,#0xCC
0000001A 22DD MOV R2,#0xDD
0000001C F7FF BL Display?T ; T=0x0001 (1)
0000001E FFF0 BL Display?T ; T=0x0001 (2)
65: Display(0x83,0xBF,0xD8);//控
00000020 2083 MOV R0,#0x83
00000022 21BF MOV R1,#0xBF
00000024 22D8 MOV R2,#0xD8
00000026 F7FF BL Display?T ; T=0x0001 (1)
00000028 FFEB BL Display?T ; T=0x0001 (2)
66: Display(0x84,0xD6,0xC6);//制
0000002A 2084 MOV R0,#0x84
0000002C 21D6 MOV R1,#0xD6
0000002E 22C6 MOV R2,#0xC6
00000030 F7FF BL Display?T ; T=0x0001 (1)
00000032 FFE6 BL Display?T ; T=0x0001 (2)
67: Display(0x85,0xCF,0xB5);//系
00000034 2085 MOV R0,#0x85
00000036 21CF MOV R1,#0xCF
00000038 22B5 MOV R2,#0xB5
0000003A F7FF BL Display?T ; T=0x0001 (1)
0000003C FFE1 BL Display?T ; T=0x0001 (2)
68: Display(0x86,0xCD,0xB3);//统
0000003E 2086 MOV R0,#0x86
00000040 21CD MOV R1,#0xCD
00000042 22B3 MOV R2,#0xB3
00000044 F7FF BL Display?T ; T=0x0001 (1)
00000046 FFDC BL Display?T ; T=0x0001 (2)
69: Display(0x87,0xA1,0xF6);//口
00000048 2087 MOV R0,#0x87
0000004A 21A1 MOV R1,#0xA1
0000004C 22F6 MOV R2,#0xF6
0000004E F7FF BL Display?T ; T=0x0001 (1)
00000050 FFD7 BL Display?T ; T=0x0001 (2)
71: Display(0x90,0xA1,0xF6);//口
00000052 2090 MOV R0,#0x90
00000054 21A1 MOV R1,#0xA1
00000056 22F6 MOV R2,#0xF6
ARM COMPILER V2.40a, main 19/07/07 01:23:00 PAGE 6
00000058 F7FF BL Display?T ; T=0x0001 (1)
0000005A FFD2 BL Display?T ; T=0x0001 (2)
72: Display(0x91,0xB5,0xBC);//导
0000005C 2091 MOV R0,#0x91
0000005E 21B5 MOV R1,#0xB5
00000060 22BC MOV R2,#0xBC
00000062 F7FF BL Display?T ; T=0x0001 (1)
00000064 FFCD BL Display?T ; T=0x0001 (2)
73: Display(0x92,0xCA,0xA6);//师
00000066 2092 MOV R0,#0x92
00000068 21CA MOV R1,#0xCA
0000006A 22A6 MOV R2,#0xA6
0000006C F7FF BL Display?T ; T=0x0001 (1)
0000006E FFC8 BL Display?T ; T=0x0001 (2)
74: Display(0x93,0xA3,0xBA);//:
00000070 2093 MOV R0,#0x93
00000072 21A3 MOV R1,#0xA3
00000074 22BA MOV R2,#0xBA
00000076 F7FF BL Display?T ; T=0x0001 (1)
00000078 FFC3 BL Display?T ; T=0x0001 (2)
75: Display(0x94,0xD5,0xD4);//
0000007A 2094 MOV R0,#0x94
0000007C 21D5 MOV R1,#0xD5
0000007E 22D4 MOV R2,#0xD4
00000080 F7FF BL Display?T ; T=0x0001 (1)
00000082 FFBE BL Display?T ; T=0x0001 (2)
76: Display(0x95,0xB9,0xFA);//
00000084 2095 MOV R0,#0x95
00000086 21B9 MOV R1,#0xB9
00000088 22FA MOV R2,#0xFA
0000008A F7FF BL Display?T ; T=0x0001 (1)
0000008C FFB9 BL Display?T ; T=0x0001 (2)
77: Display(0x96,0xBE,0xFC);//
0000008E 2096 MOV R0,#0x96
00000090 21BE MOV R1,#0xBE
00000092 22FC MOV R2,#0xFC
00000094 F7FF BL Display?T ; T=0x0001 (1)
00000096 FFB4 BL Display?T ; T=0x0001 (2)
78: Display(0x97,0xA1,0xF6);//口
00000098 2097 MOV R0,#0x97
0000009A 21A1 MOV R1,#0xA1
0000009C 22F6 MOV R2,#0xF6
0000009E F7FF BL Display?T ; T=0x0001 (1)
000000A0 FFAF BL Display?T ; T=0x0001 (2)
80: Display(0x88,0xA1,0xF6);//口
000000A2 2088 MOV R0,#0x88
000000A4 21A1 MOV R1,#0xA1
000000A6 22F6 MOV R2,#0xF6
000000A8 F7FF BL Display?T ; T=0x0001 (1)
000000AA FFAA BL Display?T ; T=0x0001 (2)
81: Display(0x89,0xC9,0xE8);//设
000000AC 2089 MOV R0,#0x89
000000AE 21C9 MOV R1,#0xC9
000000B0 22E8 MOV R2,#0xE8
000000B2 F7FF BL Display?T ; T=0x0001 (1)
000000B4 FFA5 BL Display?T ; T=0x0001 (2)
82: Display(0x8a,0xBC,0xC6);//计
000000B6 208A MOV R0,#0x8A
000000B8 21BC MOV R1,#0xBC
000000BA 22C6 MOV R2,#0xC6
000000BC F7FF BL Display?T ; T=0x0001 (1)
000000BE FFA0 BL Display?T ; T=0x0001 (2)
83: Display(0x8b,0xA3,0xBA);//:
000000C0 208B MOV R0,#0x8B
000000C2 21A3 MOV R1,#0xA3
000000C4 22BA MOV R2,#0xBA
ARM COMPILER V2.40a, main 19/07/07 01:23:00 PAGE 7
000000C6 F7FF BL Display?T ; T=0x0001 (1)
000000C8 FF9B BL Display?T ; T=0x0001 (2)
84: Display(0x8c,0xc1,0xd6);//
000000CA 208C MOV R0,#0x8C
000000CC 21C1 MOV R1,#0xC1
000000CE 22D6 MOV R2,#0xD6
000000D0 F7FF BL Display?T ; T=0x0001 (1)
000000D2 FF96 BL Display?T ; T=0x0001 (2)
85: Display(0x8d,0xBA,0xEA);//
000000D4 208D MOV R0,#0x8D
000000D6 21BA MOV R1,#0xBA
000000D8 22EA MOV R2,#0xEA
000000DA F7FF BL Display?T ; T=0x0001 (1)
000000DC FF91 BL Display?T ; T=0x0001 (2)
86: Display(0x8e,0xB7,0xC9);//
000000DE 208E MOV R0,#0x8E
000000E0 21B7 MOV R1,#0xB7
000000E2 22C9 MOV R2,#0xC9
000000E4 F7FF BL Display?T ; T=0x0001 (1)
000000E6 FF8C BL Display?T ; T=0x0001 (2)
87: Display(0x8f,0xA1,0xF6);//口
000000E8 208F MOV R0,#0x8F
000000EA 21A1 MOV R1,#0xA1
000000EC 22F6 MOV R2,#0xF6
000000EE F7FF BL Display?T ; T=0x0001 (1)
000000F0 FF87 BL Display?T ; T=0x0001 (2)
89: DispChars(0x98,(uint8 *)"ThankYouForUsing",0x10);
000000F2 4800 LDR R1,=??S_1 ; ??S_1
000000F4 2098 MOV R0,#0x98
000000F6 2210 MOV R2,#0x10
000000F8 F7FF BL DispChars?T ; T=0x0001 (1)
000000FA FF82 BL DispChars?T ; T=0x0001 (2)
90: }
000000FC BC08 POP {R3}
000000FE 4718 BX R3
00000100 ENDP ; 'open?T'
*** CODE SEGMENT '?PR?main?main':
96: int main(void)
00000000 B500 PUSH {LR}
98: IOInit();
00000002 F7FF BL IOInit?T ; T=0x0001 (1)
00000004 FFFD BL IOInit?T ; T=0x0001 (2)
99: IO_input=RcvinputData(0);//IO口输出全为0,获取输入IO值。
00000006 2000 MOV R0,#0x0
00000008 F7FF BL RcvinputData?T ; T=0x0001 (1)
0000000A FFFA BL RcvinputData?T ; T=0x0001 (2)
0000000C 4800 LDR R1,=IO_input ; IO_input
0000000E 8008 STRH R0,[R1,#0x0] ; IO_input
100: InitLcm();
00000010 F7FF BL InitLcm?T ; T=0x0001 (1)
00000012 FFF6 BL InitLcm?T ; T=0x0001 (2)
101: UART0_Ini();
00000014 F7FF BL UART0_Ini?T ; T=0x0001 (1)
00000016 FFF4 BL UART0_Ini?T ; T=0x0001 (2)
102: open();//开机信息显示
00000018 F7FF BL open?T ; T=0x0001 (1)
0000001A FFF2 BL open?T ; T=0x0001 (2)
103: UART0_SendByte(0x55);
0000001C 2055 MOV R0,#0x55
0000001E F7FF BL UART0_SendByte?T ; T=0x0001 (1)
00000020 FFEF BL UART0_SendByte?T ; T=0x0001 (2)
104: I2C_Init(20000);
00000022 4800 LDR R0,=0x4E20
00000024 F7FF BL I2C_Init?T ; T=0x0001 (1)
00000026 FFEC BL I2C_Init?T ; T=0x0001 (2)
106: UART0_SendByte(IO_input);
ARM COMPILER V2.40a, main 19/07/07 01:23:00 PAGE 8
00000028 4800 LDR R0,=IO_input ; IO_input
0000002A 8800 LDRH R0,[R0,#0x0] ; IO_input
0000002C F7FF BL UART0_SendByte?T ; T=0x0001 (1)
0000002E FFE8 BL UART0_SendByte?T ; T=0x0001 (2)
109: }
00000030 L_3:
00000030 E7FE B L_3 ; T=0x00000030
111: }
00000032 BC08 POP {R3}
00000034 4718 BX R3
00000036 ENDP ; 'main'
Module Information Static
----------------------------------
code size = ------
data size = 11
const size = 17
End of Module Information.
ARM COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -