找回密码
 立即注册

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 是随意定义的吗?具体的资料需要参考哪里?谢谢指点迷津!

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 顶 踩
回复

使用道具

沙发
chrishu 发表于 2024-6-11 11:21:32 | 只看该作者
不是随意定义的
回复 支持 反对

使用道具 举报

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

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

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

使用道具

地板
Angus 发表于 2024-6-20 14:55:31 | 只看该作者
游客 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