趣味の電子工作などの記録。時にLinuxへ行ったり、ガジェットに浮気したりするので、なかなかまとまらない。※サイト移転しました(tomono.eleho.net ⇒ tomono.tokyo)
RSS icon
  • PIC32MXで7segLEDを駆動してみた

    投稿日 2012年 7月 7日 コメントはありません

    続いて、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行目に

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

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

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