我正在为带有移位寄存器的 LED 矩阵项目编写 arduino,我必须旋转输出值(这是一个字节),但是当我使用“<<”运算符时,它不会正确旋转值,只是将零添加到 LSB。
byte ilk=0b01100001;
int latch=10;
int clock=8;
int data=9;
void setup(){
pinMode(latch,OUTPUT);
pinMode(data,OUTPUT);
pinMode(clock,OUTPUT);
}
void loop(){
digitalWrite(latch,LOW);
shiftOut(data,clock,MSBFIRST,ilk);
digitalWrite(latch,HIGH);
ilk=ilk<<1;
delay(200);
}
我怎样才能以正确的方式做到这一点?有没有像 ROL 这样的操作员。