[MCU] 如何访问VC5510的外部存储空间呢

[复制链接]
156|18
 楼主 | 2019-9-22 09:55 | 显示全部楼层 ||阅读模式
在VC5510访问外部存储空间时遇到这样一个问题:
定义一个变量用作外部地址空间的指针,
int * temp;
给上述变量赋值,
temp = (int *)0x800004;
这时,编译就出错了——coverse integer to smaller pointer。
运行后,在观察窗口看到temp的值是0004,16进制。这样的话是无法对外部存储空间读写的。

有哪位高手知道这是怎么回事儿?如何访问VC5510的外部存储空间呢?

使用特权

评论回复
| 2019-9-22 09:59 | 显示全部楼层


TI的C55系列DSP,如果想访问全部23位地址线的话,就要选择大存储器模式

使用特权

评论回复
 楼主 | 2019-9-22 10:02 | 显示全部楼层

啥意思

使用特权

评论回复
| 2019-9-22 10:37 | 显示全部楼层
large memory model

使用特权

评论回复
| 2019-9-22 10:40 | 显示全部楼层

正解

使用特权

评论回复
 楼主 | 2019-9-22 10:43 | 显示全部楼层


那,怎么解决啊

使用特权

评论回复
| 2019-9-22 10:47 | 显示全部楼层
建立工程之后进行编译选项选择。在CCS中,Project->Build Options->Compiler->Advanced->Memory Model,选择Large(-ml)。

使用特权

评论回复
| 2019-9-22 10:49 | 显示全部楼层
这样,编译工程时,不再报warning:coversion integer to smaller pointer。

使用特权

评论回复
| 2019-9-22 10:53 | 显示全部楼层
嗯,同时外部地址可以访问。

使用特权

评论回复
| 2019-9-22 10:57 | 显示全部楼层
是不是要访问内部寄存器的时候,还要选择另一个模式吗。

使用特权

评论回复
| 2019-9-22 10:59 | 显示全部楼层


当然不用。

使用特权

评论回复
| 2019-9-22 11:04 | 显示全部楼层

DARA M 空间?

使用特权

评论回复
| 2019-9-22 11:08 | 显示全部楼层
DSP是由MP/MC引脚来决定是访问内部程序存储器还是外部程序存储器

使用特权

评论回复
| 2019-9-22 11:13 | 显示全部楼层
必须通过外部存储器接口

使用特权

评论回复
| 2019-9-22 11:16 | 显示全部楼层

由外部存储器接口控制寄存器决定

使用特权

评论回复
| 2019-9-22 11:19 | 显示全部楼层
这个存储器是什么芯片?

使用特权

评论回复
| 2019-9-22 11:23 | 显示全部楼层
是外扩的SDRAM?

使用特权

评论回复
| 2019-9-22 11:26 | 显示全部楼层
数据错误吗?

使用特权

评论回复
 楼主 | 2019-9-22 11:33 | 显示全部楼层

其实还是不大明白,我再琢磨琢磨吧,多谢了哈,结贴了先

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表