Skip to content

LPC_MRT->IRQ_FLAG address wrong #16

@frankvnk

Description

@frankvnk

While i was debugging some code, i noticed LPC_MRT->IRQ_FLAG always returned 0.
I found the solution at https://www.lpcware.com/content/forum/lpcmrt-irqflag-address-wrong

lpc8xx.h in CMSIS

In LPC_MRT_TypeDef struct, change Reserved0[1] into Reserved0[45]

typedef struct {
  MRT_Channel_cfg_Type Channel[4];      
   uint32_t Reserved0[1];               
  __IO uint32_t IDLE_CH;            
  __IO uint32_t IRQ_FLAG;                       
} LPC_MRT_TypeDef;

should be

typedef struct {
  MRT_Channel_cfg_Type Channel[4];      
   uint32_t Reserved0[45];              
  __IO uint32_t IDLE_CH;            
  __IO uint32_t IRQ_FLAG;                       
} LPC_MRT_TypeDef;

Questions
Is this codebase still maintained?
Is this codebase usable with any LPC810 mcu revision?
I used this codebase with the LPC800 mini kit (LPC810 rev 2X) and everything worked fine but when i flashed the same code to an LPC810 rev 4C, the code no longer works - see my post at https://www.lpcware.com/content/forum/lpc810-differences-between-rev-2x-and-rev-4c

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions