diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/peripheral/nvic.rs | 22 | ||||
-rw-r--r-- | src/peripheral/test.rs | 6 |
2 files changed, 11 insertions, 17 deletions
diff --git a/src/peripheral/nvic.rs b/src/peripheral/nvic.rs index 1154f38..c8f82e6 100644 --- a/src/peripheral/nvic.rs +++ b/src/peripheral/nvic.rs @@ -8,22 +8,22 @@ use interrupt::Nr; #[repr(C)] pub struct RegisterBlock { /// Interrupt Set-Enable - pub iser: [RW<u32>; 8], - reserved0: [u32; 24], + pub iser: [RW<u32>; 16], + reserved0: [u32; 16], /// Interrupt Clear-Enable - pub icer: [RW<u32>; 8], - reserved1: [u32; 24], + pub icer: [RW<u32>; 16], + reserved1: [u32; 16], /// Interrupt Set-Pending - pub ispr: [RW<u32>; 8], - reserved2: [u32; 24], + pub ispr: [RW<u32>; 16], + reserved2: [u32; 16], /// Interrupt Clear-Pending - pub icpr: [RW<u32>; 8], - reserved3: [u32; 24], + pub icpr: [RW<u32>; 16], + reserved3: [u32; 16], /// Interrupt Active Bit - pub iabr: [RO<u32>; 8], - reserved4: [u32; 56], + pub iabr: [RO<u32>; 16], + reserved4: [u32; 48], /// Interrupt Priority - pub ipr: [RW<u8>; 240], + pub ipr: [RW<u8>; 496], } impl RegisterBlock { diff --git a/src/peripheral/test.rs b/src/peripheral/test.rs index 4283954..d50ece2 100644 --- a/src/peripheral/test.rs +++ b/src/peripheral/test.rs @@ -104,17 +104,11 @@ fn nvic() { let nvic = unsafe { &*::peripheral::NVIC::ptr() }; assert_eq!(address(&nvic.iser), 0xE000E100); - assert_eq!(address(&nvic.iser[7]), 0xE000E11C); assert_eq!(address(&nvic.icer), 0xE000E180); - assert_eq!(address(&nvic.icer[7]), 0xE000E19C); assert_eq!(address(&nvic.ispr), 0xE000E200); - assert_eq!(address(&nvic.ispr[7]), 0xE000E21C); assert_eq!(address(&nvic.icpr), 0xE000E280); - assert_eq!(address(&nvic.icpr[7]), 0xE000E29C); assert_eq!(address(&nvic.iabr), 0xE000E300); - assert_eq!(address(&nvic.iabr[7]), 0xE000E31C); assert_eq!(address(&nvic.ipr), 0xE000E400); - assert_eq!(address(&nvic.ipr[239]), 0xE000E4eF); } #[test] |