7セグとRCポート
今回はPICをつかって7セグを普通に点灯させようという課題でした。
ちなみにダイナミック点灯ではない
使用した7セグはアノードコモンで、開発環境はMPLAB X、コンパイラーはXC8を
使っていました。PICは18F14K50です。出力ポートはRC0~7を使っていました。
まぁ、大体の仕様はこんな感じですね
トランジスタも使用してないです(点灯させるだけだからいらないかな)
それで、ちゃちゃっとブレッドボードに配線してプログラムを書いてライディング!
ここまではうまくいった
けれど、7セグの下だけが点灯しない!?
それから回路を見直して、プログラムも見直したけれど悪い部分はなさそうだった。
とりあえず、出力がうまくいってないポート(今回はRC3)がちゃんと動作しているか確認。
出力すらしていない……
デジタル設定にもなってるし出力にもなってるから裏で何かしてるな
と思ってたり思ってなかったりしながら調べてみることに
すると、PICの機能で低電圧ICSPプログラミングという機能があるらしい。
これをコンフィギュレーションでOFFにしないといけないらしい。
具体的には
#pragma config LVP = OFF
を追加してやるとRC3も使用可能になるとのこと。
結果、うまくいきました。
仕様書はすみずみまで読まないとダメだな……