基本流程就是通过CCS6.0生成HEX文件载入Proteus进行仿真
首先,这是仿真图,用P2口控制8个LED灯的熄灭
核心代码如下:
- #pragma vector = TIMERA0_VECTOR
- __interrupt void timer_A(void) {
- P2OUT = (0x01u << 0);
- }
复制代码P2输出造成第0盏灯亮
上面是仿真结果,这没什么问题,然后将代码修改如下:
- #pragma vector = TIMERA0_VECTOR
- __interrupt void timer_A(void) {
- unsigned int order = 0;
- P2OUT = (0x01u << order);
- }
复制代码
理论上,仿真结果应该没有任何变化才对,但是实际结果是这个:
如图,D2亮,想了好久实在想不通为什么,最有可能的就是CCS6.0编译成HEX文件的时候出现了问题,真的是这样吗?
真心求教~~
此帖出自
小平头技术问答
一周热门 更多>