4852|4

3

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

【BUG?】使用CCS6.0/Proteus7.8对MSP430进行软件仿真出现问题 [复制链接]

基本流程就是通过CCS6.0生成HEX文件载入Proteus进行仿真
首先,这是仿真图,用P2口控制8个LED灯的熄灭



核心代码如下:
  1. #pragma vector = TIMERA0_VECTOR
  2. __interrupt void timer_A(void) {
  3.         P2OUT = (0x01u << 0);
  4. }
复制代码
P2输出造成第0盏灯亮

上面是仿真结果,这没什么问题,然后将代码修改如下:
  1. #pragma vector = TIMERA0_VECTOR
  2. __interrupt void timer_A(void) {
  3.         unsigned int order = 0;
  4.         P2OUT = (0x01u << order);
  5. }
复制代码

理论上,仿真结果应该没有任何变化才对,但是实际结果是这个:

如图,D2亮,想了好久实在想不通为什么,最有可能的就是CCS6.0编译成HEX文件的时候出现了问题,真的是这样吗?

真心求教~~

最新回复

直接用ccs仿真,看下寄存器和order的值,看对不对,或者你把仿真文件发上来  详情 回复 发表于 2014-6-22 07:58
 
点赞 关注

回复
举报

2781

帖子

417

TA的资源

五彩晶圆(中级)

沙发
 
order变为全局变量试试。这种问题问问@平湖秋月
 
个人签名
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
我试过全局变量了 是一样的问题
如果order=1就是D3亮
如果order=2就是D4亮
如果order=3就是D5亮...总是莫名其妙偏了一个位置
如果左移运算符的第二分量是常数就没有这些问题
@平湖秋月 ..
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

4
 
正在下IAR打算用IAR试一下,我估计IAR生成的HEX文件没有这个问题,因为试过网上的一些例子
 
 
 

回复

2549

帖子

0

TA的资源

五彩晶圆(初级)

5
 
直接用ccs仿真,看下寄存器和order的值,看对不对,或者你把仿真文件发上来
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表