74HC595实验
实验现象
利用74HC595芯片实现LED流水灯的效果
理论学习
实现穿行数据转换为并行数据的控制模式
原理图
代码编写
#define latchpin 8
#define clockpin 12
#define datapin 11
//定义三个引脚
unsigned char table[8] = {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
void setup() {pinMode(latchpin, OUTPUT);pinMode(clockpin, OUTPUT);pinMode(datapin, OUTPUT);//将引脚设置为输出状态
}
/*
shiftOut()函数
移位输出扩展函数,通过一个pin脚作为时钟信号控制另一个pin脚的数据为输出,实现类似SPI的传输功能
ShiftOut(datapin,clockpin,bitorder,value);
datapin:准备数据输出脚int
clockpin:数据准备好后翻转int
bitorder:数据移位方向MSBFIRST或者LSBFIRST
value:移位数据值byte
*/
void loop() {for (int i = 0; i < 8;i++) {digitalWrite(latchpin, LOW);//将ST_CP口上面加低电平让芯片准备好接受到数据shiftOut(datapin, clockpin, MSBFIRST, table[i]);digitalWrite(latchpin, HIGH);//将ST_CP这个引脚恢复到高电平delay(500);}
}