找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4608|回复: 2
打印 上一主题 下一主题
收起左侧

[求助]

[复制链接]
跳转到指定楼层
楼主
ID:23062 发表于 2010-4-13 21:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

#include"AT89x52.h"
#include"intrins.h"
 
#define uint unsigned int
#define uchar unsigned char

void DelayMS(uint z)
{
 uint i=0;
 for(;z>0;z--)
 {  
  for(;i<20;i++);
  }

}
sbit WEI=P2^1;
sbit SJ=P1^4;
uchar k,j;
void main(void)
{
   uchar LED=0xfe;
   SJ=0;
   WEI=1;
   P0=0xff;
   WEI=0;
   while(1)
   {
   j=_crol_(LED,1);
   LED=j;
   P0=LED;
   DelayMS(20); 
   }
   
}
这是我写的流水灯程序,为什么结果是全部都亮呢。请指点

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:23062 发表于 2010-4-13 21:32 | 只看该作者

我知道了

 while(1)
   {
   j=_crol_(LED,1);
   LED=j;
   P0=LED;
   DelayMS(20); 
   }
这里面的改成

LED=j;

j=_crol_(LED,1);
P0=LED;

回复

使用道具 举报

板凳
ID:24360 发表于 2010-6-7 21:36 | 只看该作者

#include <reg52.h>
#include <intrins.h>
 
#define uint unsigned int
#define uchar unsigned char

void DelayMS(uint z)
{
 uint i=0;
 for(;z>0;z--)
 { 
  for(;i<20;i++);
  }

}

sbit WEI=P2^7;
sbit SJ=P1^4;

uchar k,j;
void main(void)
{
   uchar LED=0xfe;
  
   SJ=0;
   WEI=0;
  
 
   while(1)
   {
     P0=LED;
      LED=_crol_(LED,1);
       DelayMS(2000);
   }
   
}

 

这样改也可以。延迟可以改大

一些

回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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