杰发科技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.检验是否生效

编译结果搜索数组名

相关推荐
cchjyq9 小时前
嵌入式按键调参:简洁接口轻松调参(ADC FLASH 按键 屏幕参数显示)
c语言·c++·单片机·mcu·开源·开源软件
星空真迷人9 小时前
低功耗赋能:智能设备为何持久 “存活”?
stm32·单片机·mcu·物联网·iot
wotaifuzao1 天前
SPI通信:从原理到工程实践
stm32·单片机·mcu·物联网·iot·spi
Sumerking2 天前
DMM 高精度采样部分
单片机·mcu
Archie_IT2 天前
基于STM32F103C8T6标准库的OLED显示屏中文汉字显示实现_资料编号39
stm32·单片机·嵌入式硬件·mcu·硬件工程·信息与通信·信号处理
secondyoung4 天前
TLE9180短路检测功能总结
经验分享·嵌入式硬件·mcu·汽车·流程图·infineon·tle9180
Y unes4 天前
《uboot基础命令记录①》
linux·驱动开发·嵌入式硬件·mcu·ubuntu·uboot
PI_sunyang4 天前
Aurix TC4X Routing CRE
mcu
SmartRadio5 天前
CH584M vs nRF52840 vs 主流BLE SoC全面对比
单片机·嵌入式硬件·mcu·物联网·开源·硬件工程
意法半导体STM325 天前
【官方原创】在H563上使用RTX5 RTOS LAT1584
stm32·单片机·嵌入式硬件·mcu