0

私は非常に愚かな質問をしていますが、それに対する答えを見つけることができませんでした。私は AVR プログラミングを始めていますが、見つけたコード例に関して 1 つの質問があります。

int main(void)
{
    DDRA = 0xFF; // Setting all port A pins for output

for(;;)
{
    PORTA = ~0x21; // Why ~ if we want PA0 and PA5 to be High?
    _delay_ms(10000);
}

では、なぜ 0x21 を反転する必要があるのでしょうか? PA0 と PA5 を High にする必要がありますが、逆にする場合は逆 (PA0 と PA5 以外はすべて High) にするべきではありませんか?

検索してみましたが、説明が見つかりませんでした。ありがとうございました!

4

1 に答える 1

0

問題は、コードだけを調べていたことです。また、スキームを常にチェックして、UC がどのように接続されているかを確認する必要があります。

私の場合、それは「逆」の接続方法で、「0」は LED がオンになったことを意味します。

于 2014-06-06T13:19:02.340 に答える