CORTEX-M3在地址0xE000ED08处放的就是"中断向量表"的指针? 我的问题是 stm32如何找到中断服务程序的地址? 谢谢正点原子的例程,这里使用了例程4,我上传了一个。 其中有这么一句程序: SCB->VTOR = NVIC_VectTab|(Offset & (u32)0x1FFFFF80);//设置NVIC的向量表偏移寄存器 这里的 SCB->VTOR 是这个东东: Vector Table Offset Register Use the Vector Table Offset Register to determine: •if the vector table is in RAM or code memory •the vector table offset. The register address, access type, and Reset state are: Address 0xE000ED08 Access Read/write Reset state 0x00000000 简单的说,这条程序做了这个:SCB->VTOR =0x0800 0000 这里是stm32的flash的起始地址。 也就是说中断向量表放在了flash的起始地址。对吗????? 再看keil的仿真: 0x08000000 0208 LSLS r0,r1,#8 0x08000002 2000 MOVS r0,#0x00 0x08000004 0105 LSLS r5,r0,#4 0x08000006 0800 LSRS r0,r0,#0 0x08000008 0109 LSLS r1,r1,#4 0x0800000A 0800 LSRS r0,r0,#0 0x0800000C 010B LSLS r3,r1,#4 0x0800000E 0800 LSRS r0,r0,#0 0x08000010 010D LSLS r5,r1,#4 0x08000012 0800 LSRS r0,r0,#0 0x08000014 010F LSLS r7,r1,#4 0x08000016 0800 LSRS r0,r0,#0 0x08000018 0111 LSLS r1,r2,#4 0x0800001A 0800 LSRS r0,r0,#0 0x0800001C 0000 MOVS r0,r0 0x0800001E 0000 MOVS r0,r0 0x08000020 0000 MOVS r0,r0 0x08000022 0000 MOVS r0,r0 0x08000024 0000 MOVS r0,r0 0x08000026 0000 MOVS r0,r0 0x08000028 0000 MOVS r0,r0 0x0800002A 0000 MOVS r0,r0 0x0800002C 0113 LSLS r3,r2,#4 0x0800002E 0800 LSRS r0,r0,#0 0x08000030 0115 LSLS r5,r2,#4 0x08000032 0800 LSRS r0,r0,#0 0x08000034 0000 MOVS r0,r0 0x08000036 0000 MOVS r0,r0 0x08000038 0117 LSLS r7,r2,#4 0x0800003A 0800 LSRS r0,r0,#0 0x0800003C 0119 LSLS r1,r3,#4 0x0800003E 0800 LSRS r0,r0,#0 0x08000040 011B LSLS r3,r3,#4 0x08000042 0800 LSRS r0,r0,#0 0x08000044 011B LSLS r3,r3,#4 0x08000046 0800 LSRS r0,r0,#0 0x08000048 011B LSLS r3,r3,#4 0x0800004A 0800 LSRS r0,r0,#0 0x0800004C 011B LSLS r3,r3,#4 0x0800004E 0800 LSRS r0,r0,#0 0x08000050 011B LSLS r3,r3,#4 0x08000052 0800 LSRS r0,r0,#0 0x08000054 011B LSLS r3,r3,#4 0x08000056 0800 LSRS r0,r0,#0 0x08000058 05F5 LSLS r5,r6,#23 0x0800005A 0800 LSRS r0,r0,#0 0x0800005C 011B LSLS r3,r3,#4 0x0800005E 0800 LSRS r0,r0,#0 0x08000060 011B LSLS r3,r3,#4 0x08000062 0800 LSRS r0,r0,#0 0x08000064 011B LSLS r3,r3,#4 0x08000066 0800 LSRS r0,r0,#0 0x08000068 011B LSLS r3,r3,#4 0x0800006A 0800 LSRS r0,r0,#0 0x0800006C 011B LSLS r3,r3,#4 0x0800006E 0800 LSRS r0,r0,#0 0x08000070 011B LSLS r3,r3,#4 0x08000072 0800 LSRS r0,r0,#0 0x08000074 011B LSLS r3,r3,#4 0x08000076 0800 LSRS r0,r0,#0 0x08000078 011B LSLS r3,r3,#4 0x0800007A 0800 LSRS r0,r0,#0 0x0800007C 011B LSLS r3,r3,#4 0x0800007E 0800 LSRS r0,r0,#0 0x08000080 011B LSLS r3,r3,#4 0x08000082 0800 LSRS r0,r0,#0 0x08000084 011B LSLS r3,r3,#4 0x08000086 0800 LSRS r0,r0,#0 0x08000088 011B LSLS r3,r3,#4 0x0800008A 0800 LSRS r0,r0,#0 0x0800008C 011B LSLS r3,r3,#4 0x0800008E 0800 LSRS r0,r0,#0 0x08000090 011B LSLS r3,r3,#4 0x08000092 0800 LSRS r0,r0,#0 0x08000094 011B LSLS r3,r3,#4 0x08000096 0800 LSRS r0,r0,#0 0x08000098 011B LSLS r3,r3,#4 0x0800009A 0800 LSRS r0,r0,#0 0x0800009C 011B LSLS r3,r3,#4 0x0800009E 0800 LSRS r0,r0,#0 0x080000A0 011B LSLS r3,r3,#4 0x080000A2 0800 LSRS r0,r0,#0 0x080000A4 011B LSLS r3,r3,#4 0x080000A6 0800 LSRS r0,r0,#0 0x080000A8 011B LSLS r3,r3,#4 0x080000AA 0800 LSRS r0,r0,#0 0x080000AC 011B LSLS r3,r3,#4 0x080000AE 0800 LSRS r0,r0,#0 0x080000B0 011B LSLS r3,r3,#4 0x080000B2 0800 LSRS r0,r0,#0 0x080000B4 011B LSLS r3,r3,#4 0x080000B6 0800 LSRS r0,r0,#0 0x080000B8 011B LSLS r3,r3,#4 0x080000BA 0800 LSRS r0,r0,#0 0x080000BC 011B LSLS r3,r3,#4 0x080000BE 0800 LSRS r0,r0,#0 0x080000C0 011B LSLS r3,r3,#4 0x080000C2 0800 LSRS r0,r0,#0 0x080000C4 011B LSLS r3,r3,#4 0x080000C6 0800 LSRS r0,r0,#0 0x080000C8 011B LSLS r3,r3,#4 0x080000CA 0800 LSRS r0,r0,#0 0x080000CC 011B LSLS r3,r3,#4 0x080000CE 0800 LSRS r0,r0,#0 0x080000D0 011B LSLS r3,r3,#4 0x080000D2 0800 LSRS r0,r0,#0 0x080000D4 011B LSLS r3,r3,#4 0x080000D6 0800 LSRS r0,r0,#0 0x080000D8 011B LSLS r3,r3,#4 0x080000DA 0800 LSRS r0,r0,#0 0x080000DC 011B LSLS r3,r3,#4 0x080000DE 0800 LSRS r0,r0,#0 0x080000E0 0633 LSLS r3,r6,#24 0x080000E2 0800 LSRS r0,r0,#0 0x080000E4 011B LSLS r3,r3,#4 0x080000E6 0800 LSRS r0,r0,#0 0x080000E8 011B LSLS r3,r3,#4 0x080000EA 0800 LSRS r0,r0,#0 _main_stk: 0x080000EC F8DFD00C LDR.W sp,[pc,#12] ; @0x080000FC _main_scatterload: 0x080000F0 F000FC3C BL.W __scatterload_rt2 (0x0800096C) _main_init: 0x080000F4 4800 LDR r0,[pc,#0] ; @0x080000F8 0x080000F6 4700 BX r0 0x080000F8 0121 LSLS r1,r4,#4 0x080000FA 0800 LSRS r0,r0,#0 0x080000FC 0208 LSLS r0,r1,#8 0x080000FE 2000 MOVS r0,#0x00 //******************************************************************************************************问题在这里: 怎么看我的 中断向量表 在 0x0800 0000 里是怎么被安排的啊? 中断服务程序在下面: 如何由0x0800 0000 附近的表格里的数据找到0x080005F4,0x08000632的中断服务程序的呢??? //******************************************************************************************************问题 23: GPIOD->ODR|=1 |
RE:CORTEX-M3在地址0xE000ED08处放的就是
RE:CORTEX-M3在地址0xE000ED08处放的就是