函數名稱: HC595SendData //8位串行輸入/輸出,并行輸出
功能描述: 向SPI總線發送數據 這里只說明并行輸入的一般情況
管腳描述:請參考相關的芯片資料
void HC595SendData(unsigned int SendVal)
{
unsigned char i;
for(i=0;i<8;i++)
{
if((SendVal<<i)&0x80) MOSIO=1; // set dataline high
//若輸入最高位為1,則令串行輸入為1,反之輸入0
else MOSIO=0;
S_CLK=0; //上升沿輸入每一位
NOP(); //datasheet給出最大的上升下降沿時間為1000ns
NOP(); //這里為2us,已經足夠
S_CLK=1;
}
R_CLK=0; //set dataline low
NOP(); //上升沿輸出8位并行數據
NOP(); //延時的解釋與上同
R_CLK=1; //片選
OE=0;
}