2018-10-22 07:11 PM
Hi, i able to trigger BSP_CAMERA_SnapshotStart and save the camera output to RAM_D1. But when i change to save the camera output to RAM_D2. I not able to get the output at BSP_CAMERA_FrameEventCallback.
//uint8_t camera_frame_buffer[480*480] __attribute__((section(".ramd1")));
uint8_t camera_frame_buffer[480*480] __attribute__((section(".ramd2")));
......
//Start camera capture
BSP_CAMERA_SnapshotStart((uint8_t *)camera_frame_buffer);
.............
void BSP_CAMERA_FrameEventCallback(void)
{
//Capture data ready
}
Guys, do you have any idea ?
2018-10-22 07:59 PM
Are you seeing the interrupt/callback?
If no call back, double check for error/status reported by the DMA peripheral.
Check address alignment.
Can't see the data? Perhaps you need to invalidate the DCache?
2018-10-23 09:05 AM
I simply declare three array buffer as below and write some data to each array in main function .
Found the RAM_D1 and RAM_D3 able to write and read the data , but only RAM_D2 not able to write data.
uint8_t buffer_A[50] __attribute__((section(".ramd1"))); --->OK for read and write
uint8_t buffer_B[50] __attribute__((section(".ramd2"))); --> NG; data is not written
uint8_t buffer_C[50] __attribute__((section(".ramd3"))); --> OK for read and write
2018-10-23 12:09 PM
Ok, but you see the callback, just not the data?
Are the memory clocks enabled?