找回密码
 立即注册

QQ登录

只需一步,快速开始

开启左侧

请教M467的CANFD例程中的专用RAM区。

[复制链接]
匿名  发表于 2024-6-7 15:35:30 |阅读模式
例程《en-us--EC_M460_CANFD_Tx_Simply_V1.00》;
以下描述:

一条报文启动发送后,可能因总线忙而处于等待状态。M467 每个CANFD接口最多可配置32条等待发送报文存放在“专用RAM区”。这个专用RAM区有6144Bytes,用于存放等待发送的报文、接收到的报文、及其它报文配置信息。

CANFD_BUF_T __attribute__((section(".ARM.__at_0x40020200"))) CANFD_TxBuff[8]; // size=8*(8+64)=0x240Bytes

请问一下,上面的地址:0x40020200 是随意定义的吗?具体的资料需要参考哪里?谢谢指点迷津!

回复

使用道具

chrishu 发表于 2024-6-11 11:21:32 | 显示全部楼层
不是随意定义的 微信截图_20240611112104.png
回复 支持 反对

使用道具 举报

匿名  发表于 2024-6-11 11:50:25
请问一下,如果在 *.h和*.c 变量的声明和定义中,该如何定义这样的

CANFD_BUF_T __attribute__((section(".ARM.__at_0x40020200"))) CANFD_TxBuff[8];
变量?如何定义和声明呢?我测试了一下,并没有成功。

是否可以讲解一下?谢谢!
回复 支持 反对

使用道具

Angus 发表于 昨天 14:55 | 显示全部楼层
游客 121.29.98.x 发表于 2024-6-11 11:50
请问一下,如果在 *.h和*.c 变量的声明和定义中,该如何定义这样的

CANFD_BUF_T __attribute__((section(" ...

CANFD_BUF_T __attribute__((section(".ARM.__at_0x40020200"))) CANFD_TxBuff[8];

这是数组定义 CANFD_TxBuff[8] ;  
8个结构体数组,结构体名称 CANFD_BUF_T
中间一串字符 __attri。。。。。200))) 意思是把数组放到这个地址。这是 AC6 编译器的格式,与 AC5 格式不一样。声明不成功,常见的问题是地址冲突了,重新选个地址。
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

新唐MCU