Access to AHB SRAM from the code for LPC1754

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Access to AHB SRAM from the code for LPC1754

699 次查看
user_o
Contributor I

Hello,

I need some help with AHB SRAM. I am developing firmware for LPC1754 MCU. I want to use AHB SRAM to keep there an array with data which should be sent from time to time to UART over DMA. Sending these data to UART over DMA works, but I can't write anything to this AHB SRAM array from the code. I try to fill the array with some values, but the array stays filled with zeroes. I also can't write anything to AHB SRAM manually during debugging. No exception occurs when the code tries to write to this array, code execution goes on as if it has successfully written the values.

The array is declared as below:
uint8_t uart_buffers_tx[3][UART_OUTPUT_BUFFER_SZ] __attribute__((section(".bss.$RamAHB16")));

After building the project I do see that the array is located in AHB SRAM.
Once I remove placement attribute from the array declaration, the linker places the array in ordinary SRAM and writing to the array from the code start working without problems (I see desired values during debugging and also see these values coming from that array via UART).
Did I miss anything about AHB SRAM? 

0 项奖励
回复
1 回复

660 次查看
xiangjun_rong
NXP TechSupport
NXP TechSupport

Hi,

If you disable DMA, and use core to access the AHB SRAM, is it okay?

When both the core with data bus and the DMA access the same AHB SRAM, the Multilayer AHB Matrix arbitrates between several masters, by default, the Cortex-M3
D-code bus has the highest priority, followed by the I-Code bus. All other masters share a lower priority.

Hope it can help you

BR

XiangJun Rong

0 项奖励
回复