void shiftOut (uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, byte val)

位移输出函数

输入value数据后Arduino会自动把数据移动分配到8个并行输出端. 其中dataPin为连接DS的引脚号, clockPin为连接SH_CP的引脚号, bitOrder为设置数据位移顺序, 分别为高位先入MSBFIRST或者低位先入LSBFIRST.

参数:

  • dataPin 数据引脚

  • clockPin 时钟引脚

  • bitOrder 移位顺序 ( MSBFIRST 或 LSBFIRST)

  • val 数据

    // Do this for MSBFIRST serial
    int data = 500;
    // shift out highbyte
    shiftOut(dataPin, clock, MSBFIRST, (data >> 8));
    // shift out lowbyte
    shiftOut(dataPin, clock, MSBFIRST, data);

    // Or do this for LSBFIRST serial
    data = 500;
    // shift out lowbyte
    shiftOut(dataPin, clock, LSBFIRST, data);
    // shift out highbyte
    shiftOut(dataPin, clock, LSBFIRST, (data >> 8));