- 杂志
 搜 索: 
 论坛 » 嵌入式系统设计 » 使用VxWorks时出现了问题,请教各位,给点儿建议!cpu是MPC862
广告招商
版主: yaopg , woodhead , 永远在路上
 发表新贴 
 发表回复 
 使用VxWorks时出现了问题,请教各位,给点儿建议!cpu是MPC862  发表于 2008-08-20 17:30:07 [您是本帖的第343位阅读者]     [1楼] 
呢称:sunwind45
加我为好友

自己编了个小程序,在Tornador里结合VxWorks一起.

程序很简单,就是读存储器!
xd0 = *(unsigned int *)(SDRAM_ADR);

xd1 = *(unsigned int *)(BOOTFLASH_ADR);

xd2 = *(unsigned short int *)(FLASH_ADR);

我的存储器有三种,一个是SDRAM,32位;一个是BootFLASH,32位;另一个也是FLASH,16位;但不做boot用.
问题出在第三个读.

前两个没问题,在读最后一个时,报错!是个异常!好象是存储器访问中断!

不知道为什么!

难道变量定义?unsigned int 是32位吗?unsigned short int 是16位吗?

或者,对于SDRAM和BOOTFLASH之外的存储器,在bsp里是不是有什么额外的设置,才能访问?

在VxWorks里应该能直接访问硬件吧.VxWorks不熟悉,没研究过,希望有高人指点!

 


 
 RE: 使用VxWorks时出现了问题,请教各位,给点儿建议!cpu是MPC862  发表于 2008-08-21 17:23:08 [2楼] 
呢称:sunwind45
加我为好友
在bsp 里的config.h里,对存储器的设置,是不是影响vxworks对存储器的操作?

如果,我有两个独立的SDRAM,一个cs1,一个cs2,那么在config.h里应该怎么设置?
是不是local_mem这里的大小是二者之和,地址要连续?

要是有两个独立的FLASH,是不是也是这样操作?只不过是在rom那个地方改?


现在的情况是,我有两个flash,在rom_size那里设成两个的和,读是没问题的.

但是,我要是有两个sdram,那是不是应该改local_mem那里?


因为系统之前做好了,没想到有这样的问题.现在要修改local_mem,挺麻烦,要改很多地方!
 
 RE: 使用VxWorks时出现了问题,请教各位,给点儿建议!cpu是MPC862  发表于 2008-08-27 10:03:48 [3楼] 
呢称:sunwind45
加我为好友
还是自己给个答案吧
最后还是修改了ROM_SIZE,使得ROM空间包含了我需要的除了bootflash之外的其他存储器.
这样,在vxworks里就可以访问了.
目前是这样解决的.

其实,我是在测试dsp hpi接口与mpc862的通信的.因为要把dsp的内存作为mpc862的外部存储器的一部分.
 
 RE: 使用VxWorks时出现了问题,请教各位,给点儿建议!cpu是MPC862  发表于 2008-09-03 10:21:38 [4楼] 
呢称:sunwind45
加我为好友
还是分开吧,修改sysLib.c里的存储器映射关系,单独列一个映射就好了.

放在bootflash里,会影响boot的.
 
共4条 1/1 1   
   快速回复主题
  用户名 : 匿名不能发帖!请先 [ 登陆 ]
  标 题:
  内 容 :
 
EEPW元器件搜索  强力提供
关于我们 | 广告服务 | 企业会员服务 | 新手上路 | 联系我们 | 友情链接
《电子产品世界》杂志社 版权所有 北京东晓国际技术信息咨询有限公司
Copyright ©2002 ELECTRONIC ENGINEERING & PRODUCT WORLD. All rights reserved.
京ICP备060382号