CCS在软件延时上的探讨

[复制链接]
4497|5
 楼主| someonewho 发表于 2013-5-29 23:25 | 显示全部楼层 |阅读模式
在使用CCS的过程中,我发现在有关于有软件延时的程序中会出现问题,感觉延时没起到作用,比如一个简单的例子,让灯闪烁,使用delay函数(函数体内用两个for循环嵌套那种),这种延时就不会有效果,而用i=50000;   while(i--);这种才有效果.而且即使这样你用do  while语句都不行.
在调试1602时其中也有软件delay延时,用CCS编译出来以后完全没有显示,而以此相同的程序复制到IAR上编译,结果完全正确!
所以在这个问题上我很是困惑啊,以至于我现在大都用IAR,只有用timer的时候才用CCS,不知论坛里面的兄弟姐妹也是否遇到过这种问题呢?
ayb_ice 发表于 2013-6-4 15:38 | 显示全部楼层
可能数据类型不对
可能被优化了
建议加volatile修饰
gaochy1126 发表于 2013-6-5 10:24 | 显示全部楼层
可能是数据类型的原因的,记得在avrstudio 也不行的。
gaochy1126 发表于 2013-6-5 10:24 | 显示全部楼层
可以在里面加nop__试试
edwardalick 发表于 2013-9-25 16:51 | 显示全部楼层
我也遇到这个问题,更奇葩,所以延时都不起作用,包括系统自带的
i1mcu 发表于 2013-9-25 22:58 | 显示全部楼层
加上空操作试试。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

97

主题

1150

帖子

1

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