臥槽,沒仔細看,C51的我改過了,用了一個臨時變量,傳遞指針變量,所以C51的測試可以,打擾了。。。
void HC595_COM1_WR_NByte(uint8_t Len, uint8_t *GPIOValue)
{
uint8_t i=0,Byte=0;
while(Len--)
{
Byte=*GPIOValue;
HC595_COM1_STCP_RESET();
for(i=0;i<8;i++)
{
HC595_COM1_SHCP_RESET();
if(Byte & 0x80)
{
HC595_COM1_DS_SET();
}
else
{
HC595_COM1_DS_RESET();
}
HC595_COM1_SHCP_SET();
Byte <<= 1;
}
HC595_COM1_STCP_SET();
GPIOValue++;
}
} |