关于NVIC相关的寄存器NVIC_IPRx的register map

2019-07-21 01:27发布

NVIC_IPRx的偏移地址是Address offset: 0x00- 0x0B,但是为什么下面的map显示有20个32位寄存器,这么多个是怎么寻址的?下面的那段说明看的不是很明白,望大神指教,关于NVIC相关的寄存器操作学习方面能够有什么心得和建议不吝跟本鸟分享下吗,求?!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答
alonejhon
2019-07-21 15:12
typedef struct
{
  __IO uint32_t ISER[8];                 /*!< Offset: 0x000 (R/W)  Interrupt Set Enable Register           */
       uint32_t RESERVED0[24];
  __IO uint32_t ICER[8];                 /*!< Offset: 0x080 (R/W)  Interrupt Clear Enable Register         */
       uint32_t RSERVED1[24];
  __IO uint32_t ISPR[8];                 /*!< Offset: 0x100 (R/W)  Interrupt Set ending Register          */
       uint32_t RESERVED2[24];
  __IO uint32_t ICPR[8];                 /*!< Offset: 0x180 (R/W)  Interrupt Clear ending Register        */
       uint32_t RESERVED3[24];
  __IO uint32_t IABR[8];                 /*!< Offset: 0x200 (R/W)  Interrupt Active bit Register           */
       uint32_t RESERVED4[56];
  __IO uint8_t  IP[240];                 /*!< Offset: 0x300 (R/W)  Interrupt riority Register (8Bit wide) */
       uint32_t RESERVED5[644];
  __O  uint32_t STIR;                    /*!< Offset: 0xE00 ( /W)  Software Trigger Interrupt Register     */
}  NVIC_Type;
为什么要在这个结构体里保留这么多空间?求大神指教!

一周热门 更多>