标题: stm32使用三片74HC595级联程序代码 [打印本页]

作者: piaolin    时间: 2015-10-29 22:49
标题: stm32使用三片74HC595级联程序代码
  

【批量下载】hc595源程序.zip (272.01 KB, 下载次数: 559)


/************************************************************************
  Function:       Read_74HC595
  Description:    读取n片74HC595的输入数据
  Calls:          HC595_delay;GPIO_ResetBits;GPIO_SetBits;
  Data Accessed:  无
  Data Updated:   无
  Input:         
                  HC595x:用户使用的595端口,类型定义在74HC595.h中
                 ChipNum: 用户使用的595端口上连接的芯片个数
  Output:         
                 DataBuf: 输出数据存放缓冲区
  Return:         无
  Others:         此模块为Stm32单片机中使用,调试时在72M系统时钟下
*************************************************************************/
        void Write_74HC595(HC595 HC595x,unsigned char ChipNum,unsigned char *DataBuf)
{
    unsigned char i = 0;
    unsigned char DataBufTmp = 0;
   
    GPIO_ResetBits(HC595x.Lck.Port, HC595x.Lck.Pin); //设置LCK为低电平,上升沿数据锁存
   
    for(; ChipNum>0; ChipNum--)
    {
        DataBufTmp = *DataBuf;
        for(i=0; i<8; i++)
        {
            GPIO_ResetBits(HC595x.Clk.Port, HC595x.Clk.Pin); //时钟低电平
            
            if (DataBufTmp & 0x80)
            {
                GPIO_SetBits(HC595x.Data.Port, HC595x.Data.Pin);   //输出1
            }
            else
            {
                GPIO_ResetBits(HC595x.Data.Port, HC595x.Data.Pin); //输出0
            }
            
            HC595_delay(5);
            
            GPIO_SetBits(HC595x.Clk.Port, HC595x.Clk.Pin); //时钟高电平,上升沿数据移位
   
            HC595_delay(5);
            
            DataBufTmp = DataBufTmp << 1;
        }
        DataBuf++;
    }
    GPIO_SetBits(HC595x.Lck.Port, HC595x.Lck.Pin);   //设置LCK为高电平,上升沿数据锁存
    HC595_delay(10);
    GPIO_ResetBits(HC595x.Lck.Port, HC595x.Lck.Pin); //设置LCK为低电平,上升沿数据锁存
}


作者: angelzlz    时间: 2016-4-23 21:05
看起来很不错,先顶下
作者: yu082    时间: 2016-6-5 15:01
正好需要,下来看看
作者: cqgdlq    时间: 2016-7-16 12:02
看起来很不错,先顶下
作者: l289933132    时间: 2016-8-1 16:13
师傅的说法  
作者: pinyione    时间: 2016-8-3 11:39
没权限,下不了
作者: az_cc    时间: 2016-8-3 11:54
谢谢分享!
作者: senzh01    时间: 2016-8-3 13:35
看着结构明晰,规范!
作者: jacksonz    时间: 2016-8-22 09:13
谢谢分享!
作者: 远方远方远方    时间: 2016-8-30 10:54
看起来不错
作者: newy    时间: 2016-10-8 02:05
谢谢分享
作者: newy    时间: 2016-10-8 02:06
学习一下
作者: zoushi123    时间: 2016-12-11 16:57
谢谢了。 顶上
作者: uraniay    时间: 2017-1-7 09:38
谢谢分享
作者: rsmain    时间: 2017-2-12 09:46
不错,正好需要这个
作者: qiudong    时间: 2017-2-15 21:03
没有积分啊
作者: chenwqq    时间: 2017-2-22 11:25
谢谢分享!
作者: 1197162269    时间: 2017-3-4 10:54
我很需要
作者: wsxujn    时间: 2017-4-5 15:47
下来学学,不错
作者: heroshi    时间: 2017-4-18 11:16
没积分呀
作者: PeterH    时间: 2017-4-22 16:11
太好了!!!!!学习下!!!!
作者: PeterH    时间: 2017-4-22 16:13
太棒了!!!!!!!!
作者: PeterH    时间: 2017-4-22 16:34
支持!!!!!!!!!!
作者: XDDZ1013    时间: 2017-5-15 20:13
不错,学习一下
作者: 593600249    时间: 2017-6-19 10:52
good!
作者: 小胖子aaa    时间: 2017-7-21 16:24
数据损坏了。。。只有我这样吗
作者: aifuyi    时间: 2017-8-1 17:10
支持!学习一下!!!!!!!!!!!!!!!!!
作者: laroo    时间: 2017-8-7 14:18
结构看起来不错
作者: champtech    时间: 2017-9-20 17:18

 看起来很不错,先顶下
作者: 右走    时间: 2017-10-12 10:21
没积分 的 路过
作者: wmzychq    时间: 2017-11-7 10:39

看起来很不错,先顶下
作者: wmzychq    时间: 2017-11-7 10:43
看起来很不错,先顶下
作者: 663ajdk    时间: 2017-11-21 12:03
支持,来看看
作者: janson    时间: 2017-11-23 15:20
挺不错的代码。
作者: zzfd97    时间: 2018-1-4 14:32
谢谢分享
作者: Pilgrim_z    时间: 2018-1-31 16:20
新来的菜鸟,没有积分可以下啊!!!
作者: bamboo51    时间: 2018-2-1 22:19
不错,正好有项目要用到
作者: dillinllp    时间: 2018-3-22 16:50
正在学习利用当中,谢谢楼主。。。
作者: bamboo51    时间: 2018-4-17 21:05
不错,顶起来~~
作者: esmember    时间: 2018-4-24 16:33
这个好啊,正需要2片的呢,感谢,赶快来支持。
作者: yyjzd0414    时间: 2018-4-27 11:41
void Write_74HC595(HC595 HC595x,unsigned char ChipNum,unsigned char *DataBuf)如何调用HC595 HC595x呢?求大神帮忙,谢谢!
作者: li510746966    时间: 2018-5-23 16:03
两级级联的调试明白了 三级死活搞不通 借鉴借鉴
作者: yyjzd0414    时间: 2018-6-7 10:29
yyjzd0414 发表于 2018-4-27 11:41
void Write_74HC595(HC595 HC595x,unsigned char ChipNum,unsigned char *DataBuf)如何调用HC595 HC595x呢 ...

HC595结构体已经在.h里有定义了,可以取用。
作者: yyjzd0414    时间: 2018-6-7 10:46
为何调用时单片机总是卡死呢?有没有指点的大神
作者: xode    时间: 2018-6-26 09:21
谢谢分享,
作者: STSF    时间: 2018-7-9 22:26
顶,下载来看看,正好要用
作者: mrliangg    时间: 2018-7-11 15:16

不错,顶起来~~
作者: 有梦想不睡觉    时间: 2018-7-26 15:51
mark!!!!!!!!!
作者: liu86708670    时间: 2018-8-1 14:50
很好的代码哦
作者: onono    时间: 2018-8-9 10:22
正在学习多片595级联点亮LED。感觉分享!
作者: 右走    时间: 2018-8-14 07:57
正好要用   下来 看看
作者: TYHJRWX    时间: 2018-11-12 15:13
谢谢,共享
作者: d026530    时间: 2019-9-15 02:40
正好需要,下来看看
作者: prettytank    时间: 2019-9-15 14:36
好例程  收藏备用。
作者: a446332161    时间: 2019-9-27 08:43
这个厉害了
作者: hilam    时间: 2019-10-6 17:02
谢谢分享
作者: zhczlzhang    时间: 2021-1-6 20:41
不好移植。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1