打印

大家帮忙看看这个驱动595程序

[复制链接]
1897|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dongjia|  楼主 | 2007-3-21 14:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void OUT595(unsigned int Outdata[],unsigned char num)
{
    unsigned code char i,j;
    SRCLR=0;
    SRCLR=1;
    for(i=0;i<num;i++)
    for(j=0;j<8;j++)
    {
     if (LedData[2-i]&0x80)     
       SER595 = 1;    //判断数据      
     else                            
       SER595 = 0;    //判断数据      
       SRCLK595 = 0;   //时钟上半周期     
       SRCLK595 = 1;   //时钟下半周期
       Led_Buffer[2-i] <<= 1;        //移位
    }
     RCLK595=0;
    RCLK595=1;

}
大家帮我看看这个程序,有懂的就忙烦你告诉我一下。
LedData[2-i]里面的2-i是什么意思?
LedData[2-i]为什么要和0x80与?
我在线等,谢谢大家了。 

相关帖子

沙发
ayb_ice| | 2007-3-21 14:43 | 只看该作者

随便说说

2-i是先发后面的数据,
与0X80相与是发送最高位BIT7.

使用特权

评论回复
板凳
dongjia|  楼主 | 2007-3-21 14:55 | 只看该作者

先发后面的?

能不能举个例子?

使用特权

评论回复
地板
ayb_ice| | 2007-3-21 15:01 | 只看该作者

上传一个

这是我以前用的,传给你参考一下

//------------------------------------------------------
// spi_led_send
//------------------------------------------------------
//
// 向74HC595发送一个字节
// 注: 74HC595速度很快,MCU应用一般不需要做任何延时,移位时
// 钟与输出锁存时钟均为上升沿触发(高,低电平或下降沿均无效)
//
void spi_led_send(U8 byte)
{
    U8 i;

//-------------------------------------
// 负逻辑
#if _74HC595_NEGATIVE_LOGIC_OUT_EN
    byte = ~byte;
#endif


#if _74HC595_CLK_IDLE == 0
    SPI_CLK  = 0;       // 准备上升沿
    SPI_LATCH = 0;      // 准备上升沿

    for(i=8; i; i--){
        byte <<= 1;
        SPI_MOSI = CY;
        SPI_CLK  = 1;   // 上升沿发送数据(置于此处更合理)
        SPI_CLK  = 0;   // 准备上升沿
    }

//-------------------------------------
// 使能输出
    SPI_LATCH = 1;      // 上升沿将数据送到输出锁存器
    SPI_MOSI  = 1;      // 复位SPI_MOSI(省电)
    SPI_LATCH = 0;      // 准备上升沿

#else   // _74HC595_CLK_IDLE == 1(推荐使用这种方案)

    for(i=8; i; i--){
        SPI_CLK  = 0;   // 准备上升沿
        byte <<= 1;
        SPI_MOSI = CY;  // 准备数据
        SPI_CLK  = 1;   // 上升沿发送数据(置于此处更合理)
    }

//-------------------------------------
// 使能输出
    SPI_LATCH = 0;      // 准备上升沿
    SPI_MOSI  = 1;      // 复位SPI_MOSI(省电)
    SPI_LATCH = 1;      // 上升沿将数据送到输出锁存器
#endif
}

使用特权

评论回复
5
dongjia|  楼主 | 2007-3-21 15:03 | 只看该作者

谢谢~

使用特权

评论回复
6
dongjia|  楼主 | 2007-3-21 15:08 | 只看该作者

先看看,

能不能留下你的邮箱?
我想有问题的时候咨询咨询你。

使用特权

评论回复
7
ayb_ice| | 2007-3-21 15:09 | 只看该作者

随便说说

ayb_ice@yahoo.com.cn

使用特权

评论回复
8
dongjia|  楼主 | 2007-3-21 15:11 | 只看该作者

感谢感谢!

好人!

使用特权

评论回复
9
甄蔡组合| | 2007-3-28 20:17 | 只看该作者

想和你交个朋友 ayb_ice 好人呀

ayb_ice

使用特权

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

本版积分规则

13

主题

38

帖子

0

粉丝