//74HC164程序:
void led_send_data(unsigned char cdata)
{
unsigned char i="0x00";
for(i=0;i<8;i++)
{
if(cdata&0x80)
led_data=1;
else
led_data=0;
cdata<<=1; // shift one bit data
led_clk=0;
_nop_();
led_clk=1;
_nop_();
}
led_clk=0; // 74hc164 output QA0,QB0...
}
//74HC165程序
unsigned char check_send_data(void)
{
unsigned char i="0x00",temp=0x00;
check_shld=0; // recept parallel load data
delay_us(5); // delay 5us
check_shld=1;
delay_us(5);
for(i=0;i<8;i++)
{
temp<<=1; //shift one bit data
if(check_data==1)
temp=temp|0x01;
check_clk=0;
_nop_();
check_clk=1;
_nop_();
}
return temp;
}
文章评论(0条评论)
登录后参与讨论