打印

编译成这样还能正常运行吗?

[复制链接]
1666|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
兰天白云|  楼主 | 2008-5-6 21:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一个延时程序,为什么会这样?

59:                ////延时10mS 与晶振有关,定义成静态函数
60:                static void delay10ms(void)   
61:                { unsigned int t1=0xffff;    
  0136    30FF     MOVLW 0xff
  0137    0183     CLRF 0x3
  0138    00E2     MOVWF 0x62
  0139    00E3     MOVWF 0x63
62:                    while(--t1);       //奇怪了
  013A    30FF     MOVLW 0xff                 //不应只一条语句呀
63:                }
沙发
hotpower| | 2008-5-6 22:41 | 只看该作者

volatile unsigned int t1=0xffff;while(--t1);

使用特权

评论回复
板凳
兰天白云|  楼主 | 2008-5-6 22:56 | 只看该作者

hotpower:能说说为什么吗?

我以前都这么写,没问题的呀

使用特权

评论回复
地板
hotpower| | 2008-5-6 23:15 | 只看该作者

优化级别高时就有问题了~~~它认为ti在"瞎忙"~~~

使用特权

评论回复
5
兰天白云|  楼主 | 2008-5-6 23:20 | 只看该作者

烧进片子试了一下,运行完全正确,更晕了

那个样子居然也可以延时,还比较准,我要跳搂了,PICC

使用特权

评论回复
6
computer00| | 2008-5-7 00:30 | 只看该作者

后面还有吧~~~往下看看。

使用特权

评论回复
7
yewuyi| | 2008-5-7 08:44 | 只看该作者

软仿真一下不就知道了吗?

使用特权

评论回复
8
兰天白云|  楼主 | 2008-5-7 17:15 | 只看该作者

回computer00

花括号也出来了,难道在花括号后面?

我试着找013B,因为013A是没有跳转,程序循序执行就必须到013B,但找不到

使用特权

评论回复
9
zhaoyu2005| | 2008-5-12 11:37 | 只看该作者

PIC的软件就是有这样问题

有些代码显示不出来,运行的话在内部,很是不爽,还有就是排列的乱七八糟

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

115

主题

2962

帖子

7

粉丝