杰发科技AC7840——Eclipse环境DMA注意事项

0.序

用 户 使 用 DMA 时 , 所 有 DMA 搬 运 的 SRAM 数 据 都 必 须 存 放 在 SRAM_U 区
(0x20000000~0x2000EFFF) 。

1. 修改办法

第一步:

RAM定义

cpp 复制代码
/* Specify the memory areas */
MEMORY
{
  FLASH (rx)      	: ORIGIN = 0x00000000, LENGTH = 0x00100000
  RAM 	(xrw)		: ORIGIN = 0x1FFF0000, LENGTH = 0x00010000
  RAM_1 	(xrw)	: ORIGIN = 0x20000000, LENGTH = 0x0000F000
}

第二步:

增加DMA片段

cpp 复制代码
  .DMA_DATA (NOLOAD):
  {
    . = ALIGN(4);
    * (.DMA_DATA);
    . = ALIGN(4);
  } > RAM_1

第三步:

定义数组时候注意

cpp 复制代码
uint8_t g_sendData[UART_DATA_LEN] __attribute__ ((section(".DMA_DATA")));
uint8_t g_receiveData[UART_DATA_LEN] __attribute__ ((section(".DMA_DATA")));

2.检验是否生效

编译结果搜索数组名

相关推荐
liu_endong1 天前
杰发科技AC7840/7843——晶振修改
mcu·国产·杰发科技·autochips·车规芯片
Coding Peasant3 天前
GD32E230 I2C从机功能深度解析与实现指南
c语言·stm32·单片机·mcu·arm
slp9410193 天前
mcu内存划分
mcu
MounRiver_Studio4 天前
RISC-V IDE MRS2使用笔记(九):静态代码分析
ide·mcu·risc-v·嵌入式开发
MounRiver_Studio4 天前
RISC-V IDE MRS2使用笔记(八):手动切换文件编码
ide·mcu·嵌入式·risc-v
minglie15 天前
树莓派Pico‌的hc595例子
mcu
The️5 天前
STM32-FreeRTOS操作系统-事件
arm开发·stm32·单片机·嵌入式硬件·mcu·物联网
意法半导体STM326 天前
【官方原创】使用STM32N6测试Helium指令 LAT1567
stm32·单片机·嵌入式硬件·mcu·stm32开发
飞来客isdn8 天前
GD32F407ZGT6在FreeRTOS下串口中断接收异常情况及解决方法
单片机·mcu·freertos·信息与通信
光子物联单片机8 天前
STM32单片机开发入门(十一)STM32CubeIDE下载安装及开发调试说明
c语言·stm32·单片机·嵌入式硬件·mcu