www.pudn.com > 6B595.rar > 6b595.h, change:2012-03-24,size:791b


 
int i,j,i_c; 
 
#define SIX_0 PORTA&=~0x01//(控制x轴的74hc595芯片)的SI,写入数据0 
#define SIX_1 PORTA|=0X01//(控制x轴的74hc595芯片)的SI,写入数据1 
 
void delay(unsigned int k)//延时函数 
{ 
  for(i=0;i<k;i++) 
    for(j=0;j<10;j++); 
} 
void upr_x()//的RCK上升沿,数据输出 
{  
  delay(1); 
  PORTA|=0X02; 
  delay(1); 
  PORTA&=~0X02; 
} 
void ups_x()//的SCK上升沿,数据移位 
{ 
  delay(1);  
  PORTA|=0X04; 
  delay(1); 
  PORTA&=~0X04; 
} 
void reset_x()//复位,即全部输出低电位 
{  
  SIX_0; 
  for(i_c=0;i_c<8;i_c++) 
    ups_x(); 
  upr_x();  
} 
 
 
void write_data(unsigned char data)//写入x轴即每列的16个数据,comd1高8位,comd2低8位 
{ 
  for(i_c=0;i_c<8;i_c++) 
  { 
    if(data & 0x80)  
      SIX_1;  
    else   
      SIX_0; 
    ups_x(); 
    data<<=1; 
  } 
  upr_x(); 
}