鱼C论坛

 找回密码
 立即注册
查看: 2574|回复: 7

新手求指点~~~

[复制链接]
发表于 2014-2-1 21:41:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x

#include <reg51.h>
#include <intrins.h>
#define ui unsigned int
#define uc unsigned char
void delay(ui);
uc aa;
void main()
{
        aa=0xfe;
     while(1);
    {
            P1=aa;
                 delay(500);
                aa=_crol_(aa, 1);
         }

}
void delay(ui xks)
{

ui i,j;
for(i=xks;i>0;i--)
        for(j=110;j>0;j--);
上面的程序会变得时候只有一个警告,没理会,下载到单片机后发现没有工作,进入软件一步步运行发现,走到while的地方卡住了 它不往下走,难道是我的逻辑错误了吗?

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-2-1 21:57:57 | 显示全部楼层
while(1);//死循环
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-2-1 22:04:36 From FishC Mobile | 显示全部楼层
牡丹花下死做鬼 发表于 2014-2-1 21:57

不是复制的,自己敲得
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-2-1 23:17:17 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-2-1 23:39:50 | 显示全部楼层
while没有退出条件,所以死循环
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-2-2 07:10:27 From FishC Mobile | 显示全部楼层
本帖最后由 危险的炸弹 于 2014-2-2 07:19 编辑

谢谢你的热心解答,之前我是手机端看的,没看到你写的指令。
   但我就是要它进入循环程序不跳出来的,让它一直位移进行工作,求教,还有哪个语句能做到?
我之前用
i=1
while(i<=7)
........
.......
.......
i++
也进入不了循环体
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-2-2 11:59:59 | 显示全部楼层
单片机不懂,但是应该可以进入循环体 死循环啊。do while  for都不行么?
都不行就用goto无条件跳转呗 这个肯定行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-2-2 19:15:47 | 显示全部楼层
 while(1);
     {
             P1=aa;
                  delay(500);
                 aa=_crol_(aa, 1);
          }
 
改为:
 while(1)
     {
             P1=aa;
                  delay(500);
                 aa=_crol_(aa, 1);
          }
 
也就是把while后面的饿分号去掉
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-24 01:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表