打印
[51单片机]

74HC595串转并流水灯

[复制链接]
1885|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhaodaren|  楼主 | 2018-7-20 12:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 zhaodaren 于 2018-7-20 12:48 编辑

为什么这个程序实现的不是流水灯啊,还求各位大佬解答,不胜感激
#include<reg52.h>
#include<intrins.h>
sbit CLK=P3^5;
sbit SRCLK=P3^6;
sbit SER=P3^4;
void yishu(b);
unsigned char b,i,m,c;
unsigned  int z,n,y;
void delay(z)
{
while(z--);
}
void main()

{
        c= 0x01;
   while(1)
        {
                yishu(c);
                c = _crol_(c,1);
                delay(50000);
        }               
}
void yishu(b)
{
        SRCLK = 1;
        CLK = 1;
for(i=0;i<8;i++)
{
  SER=b>>7;
   b<<=1;
   SRCLK=0;
   _nop_();
_nop_();
    SRCLK=1;
  }
CLK=0;
   _nop_();
_nop_();
    CLK=1;
}

相关帖子

沙发
zhaodaren|  楼主 | 2018-7-20 12:45 | 只看该作者
我是想用74HC595串转并的功能来实现流水灯,但不知是什么地方出错了,所以并没有实现这个功能

使用特权

评论回复
板凳
Cjy_JDxy| | 2018-7-20 18:34 | 只看该作者
你的595不移位时点灯成功了吗?

使用特权

评论回复
地板
cainiao518| | 2018-7-20 18:54 | 只看该作者
zhaodaren 发表于 2018-7-20 12:45
我是想用74HC595串转并的功能来实现流水灯,但不知是什么地方出错了,所以并没有实现这个功能 ...

实现的是怎样 的效果

使用特权

评论回复
5
zhaodaren|  楼主 | 2018-7-20 19:00 | 只看该作者
cainiao518 发表于 2018-7-20 18:54
实现的是怎样 的效果

实现的功能是第一个灯一直亮着,然后后面灯依次点亮,但点亮后不熄灭,直到第八个灯亮后才熄灭,就这样一直循环

使用特权

评论回复
6
zhaodaren|  楼主 | 2018-7-20 19:01 | 只看该作者
Cjy_JDxy 发表于 2018-7-20 18:34
你的595不移位时点灯成功了吗?

不懂

使用特权

评论回复
7
Cjy_JDxy| | 2018-7-20 20:02 | 只看该作者

你不是要实现流水灯吗?我的意思,你先不实现流水灯,先想让他哪个灯亮就让它哪个灯亮,先实现静态的效果。

使用特权

评论回复
8
lysfht123| | 2018-7-20 22:17 | 只看该作者
清零刷新试试。

使用特权

评论回复
9
xurexi| | 2018-7-23 14:46 | 只看该作者
怎么不把delay(5000)放for循环里头?流水那么快!

使用特权

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

本版积分规则

4

主题

23

帖子

1

粉丝