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

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扩展软件包
关注我们
st-img 微信公众号
st-img 手机版