アプリ版:「スタンプのみでお礼する」機能のリリースについて

C言語でマイコンを使ってLEDを点灯させるプログラムを作っているのですが分からないことが出てきたので教えてください。
LEDは全部で3つあって、それぞれRB0,1,2です。
以下のようにプログラムを作ったのですが何故かLED3がLED1と同じ出力になってしまい、原因が全く分からない状態です。
各LEDを出力として
PORTBbits.RB0 = 1; //LED1
PORTBbits.RB1 = 0; //LED2
PORTBbits.RB2 = 0; //LED3
これだとLED1が点灯し、他が消灯すると考えていたのですが
LED1とLED3が点灯、もしくは、LED1とLED3が消灯してしまいます。
尚、以下の表記した時は、ちゃんと動きました。
PORTB = 0x0007;
意味的には同じ筈なのに不思議です。

A 回答 (1件)

その質問では、エスパーしか答えられないでしょう。



マイコンの種類、回路、Cのソースがないとわからないように思います。

「意味的には同じ筈」と思い込んでるだけで、
実際には違うのでしょう。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
確かに質問の仕方が悪かったです。
改めて、質問し直そうと思います。

お礼日時:2007/11/22 11:08

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!