興味深い質問があります。私は列に基づいてバイトを返す関数を作成する必要がありバイト配列、それを90度回転させる必要があります。
{B10000000,
B00000000,
B10000000,
B00000000,
B10000000,
B00000000,
B10000000,
B00000000}
: 私はこのようになりますuint8_t
配列を持っています。
row(0) = B10101010
row(1) = B00000000
etc
上記の配列については、例えば は、私がこれまで
static uint8_t column = B00000001;
static uint8_t k = 0;
static uint8_t factor[7];
static uint8_t rows[7];
rows[k] = 0;
for(int i=0;i<8;i++){
factor[i] = led[i] & column;
factor[i] >>= k;
factor[i] <<= i;
rows[k] += factor[i];
}
if (k < 7) {
column = column << 1;
k = k + 1;
}
else {
column = B00000001;
k = 0;
}
}
それを行っている。しかし、それは私のためにうまく機能していない方法です。何か案は?
編集:私の悪い。ちょうどこれを編集:
static uint8_t factor[8];
static uint8_t rows[8];
私はちょうどそれをミラーリングする方法を理解する必要があり、私は完了です。
私は私たちに*ソースコードを表示...ここには '10101010'を見ていない。* –
私は、「C++のビットマップローテーションビット」をインターネットで検索をお勧めします。 –
...列が表示されません。 – PcAF