普中开源电子分享网

 找回密码
 立即注册
搜索
查看: 2697|回复: 3

来回流水灯问题,麻烦给看看问题出在那儿了,谢谢。

[复制链接]

1

主题

2

帖子

15

积分

新手上路

Rank: 1

积分
15
发表于 2020-8-2 10:15:22 | 显示全部楼层 |阅读模式
#include<reg52.h>

void main()
{
        unsigned int i = 0;                        //定义循环变量i,用于软件延时
        unsigned char dir = 0;      //定义移位方向变量dir,用于控制移位方向
        unsigned char shift = 0x01; //定义循环移位变量shift,并赋初值0x01

        while(1)
        {
                 P2 = ~shift;
                 for(i = 0; i < 2000; i++);
                 if(dir == 0)
                 {
                         shift = shift << 1;
                        if(shift == 0x80)
                        {
                           dir = 1;
                        }
                 }
                 else
                 {
                         shift = shift >> 1;
                        if(shift == 0x01)
                        {
                                dir = 0;
                        }
                 }
        }

}

回复

使用道具 举报

0

主题

5

帖子

28

积分

新手上路

Rank: 1

积分
28
发表于 2020-8-3 17:46:42 | 显示全部楼层
什么问题,你最好说下
回复 支持 反对

使用道具 举报

0

主题

15

帖子

251

积分

中级会员

Rank: 3Rank: 3

积分
251
发表于 2020-8-3 21:05:20 | 显示全部楼层
移动太快了?加大延时i < 2000到20000以上
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|普中开源电子分享网 粤ICP备16123577号-2

GMT+8, 2024-4-19 14:00 , Processed in 0.085513 second(s), 33 queries .

Powered by 论坛搭建 X3.4

Copyright © 2001-2021, Tencent Cloud.

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