你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

HC595

[复制链接]
lugf 提问时间:2019-8-7 15:51 /
如何用一个HC595做流水灯,我是初学者,请各位大神指点一下。最好有代码来看一下,多谢了。
收藏 评论23 发布时间:2019-8-7 15:51

举报

23个回答
zcl201207 回答时间:2019-8-7 21:58:52
这个网上很多的呀,建议先看595数据手册。。。
maxtch 回答时间:2019-8-8 01:45:53
你的 595 是怎么接的?595 可以作为 SPI 从设备用,也可以直接操纵 GPIO。如果接成 SPI 从设备的话,直接向 SPI 写字节就可以了。GPIO 的话那照着数据手册里面的时序操纵 I/O。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

lugf 回答时间:2019-8-8 10:55:20
BTAR KEY LED.pdf (131.01 KB, 下载次数: 8)
lugf 回答时间:2019-8-8 10:58:11

                void LED_HC595(void)
{

//volatile unsigned char LED_data=0x0f;
volatile unsigned char LED_data[8]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};

                //数据传输//
               
                unsigned char c,b,num;
                num= LED_data[8];
                for(b=0;b<8;b++)
                delay_ms(100);       
                {
                        CLR_HC595_RCK;
                        delay_us(500);
       
       
                                for(c=0;c<8;c++)
                                {
                                        CLR_HC595_SCK;
                                       
                                         delay_us(500);
                                        if((num&0x80)==0x80)
                                        SET_HC595_DS;
               
                                        else
                                        CLR_HC595_DS;
                                        delay_us(500);
                                        num<<=1;
       
       
       
                                        SET_HC595_SCK;
                                        delay_us(500);       
                               
                                }
                               
                                        SET_HC595_RCK;
                                        delay_us(500);

                }
       
}
lugf 回答时间:2019-8-8 10:58:35
void main()
{

                unsigned char a;
               
                disableInterrupts();
                CLK_Configuration();
                GPIO_Configuration();
                TIME2_Init();       
                enableInterrupts();
                               
        while(1)

                {
                        //KEY_Demo();
                        //KEY_Demo2();
                        //KEY_Demo1();
       
                        for(a=0;a<8;a++)

                        {

                                LED_HC595( );
                               
                        }

                        delay_ms(100);       
                }
}
lugf 回答时间:2019-8-8 11:00:36
各位大神帮忙看一下,这个程序做流水灯有什么问题
lugf 回答时间:2019-8-8 11:03:18
maxtch 发表于 2019-8-8 01:45
你的 595 是怎么接的?595 可以作为 SPI 从设备用,也可以直接操纵 GPIO。如果接成 SPI 从设备的话,直接向 ...

我发了一个程序上来,麻烦大哥有时间帮忙看一下哪里出问题
lugf 回答时间:2019-8-8 11:04:28
zcl201207 发表于 2019-8-7 21:58
这个网上很多的呀,建议先看595数据手册。。。

我发了一个程序上来,麻烦大哥有时间帮忙看一下哪里出问题
TLLED 回答时间:2019-8-8 11:44:41
给你一个参考程序


#define nop _nop_

sbit RCLK1=P1^2;  //控制位信号
sbit DAT=P1^5;          //数据输出
sbit SRCLK=P1^4;  //左移时钟
sbit ENC=P1^3;          //芯片使能


//发送字节
void SendByte(uchar num)
{   
        uchar  i;
        for(i=0;i<8;i++)
        {
                SRCLK=0;
                DAT=num&0x80;
                num=num<<1;         
                SRCLK=1;                 
        }         
}
//输出控制信号
void OutCtrl595(void)
{
        RCLK1=0;
        nop();
        RCLK1=1;
}

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

123下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版