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

2019-03-24 11:25发布

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


核心代码如下:
  1. #pragma vector = TIMERA0_VECTOR
  2. __interrupt void timer_A(void) {
  3.         P2OUT = (0x01u << 0);
  4. }
复制代码P2输出造成第0盏灯亮
p2.png
上面是仿真结果,这没什么问题,然后将代码修改如下:
  1. #pragma vector = TIMERA0_VECTOR
  2. __interrupt void timer_A(void) {
  3.         unsigned int order = 0;
  4.         P2OUT = (0x01u << order);
  5. }
复制代码
理论上,仿真结果应该没有任何变化才对,但是实际结果是这个:
p3.png
如图,D2亮,想了好久实在想不通为什么,最有可能的就是CCS6.0编译成HEX文件的时候出现了问题,真的是这样吗?

真心求教~~
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
数码小叶
2019-03-25 09:12
直接用ccs仿真,看下寄存器和order的值,看对不对,或者你把仿真文件发上来

一周热门 更多>

相关问题

    相关文章