PIC32MXで7segLEDを駆動してみた

続いて、PIC32MXで7segLEDを点灯してみました。

使用したのは4桁のカソードコモンの7セグメントLEDです。

回路は各桁のSEGMENTのA~G、DPをポートBのbit4~10、bit11に100Ωの抵抗を介して接続、各桁をデジタルトランジスタDTC123ESAを介してポートBのbit2,bit3、ポートAのbit2,bit3で駆動しています。

ダイナミック点灯の処理は割込みを1ms周期でかけて、1msごとに点灯する桁を変更しています。

表示している内容は0.1秒単位のストップウォッチ風の何かです。(単にカウントアップしているだけ)

さすがに28pinのDIPマイコンだとこれだけでポートを12本も使ってしまいます。PIC32MX120F032B(PIC32MX120F016BやPIC32MX220F032Bも同じ)は電源・GND関係だけで6本、さらにデバッガで3本の端子を使ってしまいますので、ちょっと苦しいかもしれません。

なお、デフォルトではJTAGやセカンダリオシレータがイネーブルになっているようで、使えない端子があります。それを解決するために、15行目に

#pragma config JTAGEN = OFF, FSOSCEN = OFF

という記述を入れて、JTAGやセカンダリオシレータを禁止しています。

なお、例によって役に立たないソースを置いておきます。→7seg駆動のソース

あ~、コメントは直し忘れていますので、無視してください。^^;

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)