TOP | blog

2023-04

AVR64DD28

AVR64DD28はPDIP版も用意されていて魅力的に見えます。

使い勝手の観点からは、USBが搭載されたメニューが出てくると良いなあ、と考えています。 AVR64DD28の出番としては5V/3.3V混在のメリットを見出すかですね。

LEDに関する贅沢な悩み

LEDを安易に点灯すると眩しいのです。 大昔にはLEDは暗くてしょうがなく、明るいLEDを探し求めたりしたものでした。 今ではちょっと電流を流そうものなら眩しくてたまりません。 本当に贅沢な悩みです。

LEDを調光するための、適切な制限抵抗を設定するための装置が必要です。 そういえばトラ技に記事がありましたね。

USBasp (3)

ISP端子を仮配線してファームウェアを書き込みました。 通常は鶏と卵の問題を心配するところですが、 たまたま私はAVR-ISP-mkIIを既に持っているので、 これを使ってATmega8に書き込みました。

回路図をどう読み間違えたのかUSB信号端子のプルアップで LOW-SPEEDでなくFULL-SPEEDに設定される事故がありましたが、 これはプルアップ抵抗を取り替えて解決しました。 このあたりは、Linuxを使っていることもあり、 すぐに気がつくことができました。 Windowsを使っている場合だったりUSBに関する事前の知識がない場合は混乱するでしょうね。 Windows利用者には完成品の利用を強くお勧めしたいところです。 抵抗を1本無駄にしてしまいました。ちょっと惜しいことをしました。 ブレッドボードでの仮組みを経験しておくべきだったのかも知れません。 曖昧な知識がすっきりした点は良かったので、結果オーライということにしましょう。

USBaspの回路図ではPC0にRed LEDを繋ぐことになっていますが、 ファームウェアを調べてみるとPC0はGreen LEDということになっています。 PC0に繋ぐLEDは常時点灯であり、特に制御はされていないようです。 PC1に繋ぐLEDは点滅制御がされています。 完成品ではファームウェアの互換性を重視しているはずなので、 これは回路図側におけるLEDの指示が赤と緑で逆と解釈するのが正しいでしょう。 どうでもいいことかもしれませんが、運用するに当たって気になるポイントでもあります。 後で配線を修正しましょうかね。

LOW-SPEEDデバイスとして仮組みのUSBaspがホストから認識されるところまで確認できました。 USBaspのコアであるATmega8は概ね正常に稼働しているものと考えられます。 別途ターゲットマイコンを配線してみて、実際に読み書きができれば、 USBaspの追試としてはひとまず成功でしょう。

ここまで実装してみて、 完成品のUSBaspモジュールを買ってきた方が良かったかなと思った次第です。 邪道ではありますがUSB延長ケーブルなるものがあれば ドングルを引き寄せられない問題は解決できます。 後付けのモジュールで信号線の電圧レベル変換をしたほうが手っ取り早かったかも知れません。

LEDの輝度

簡素な設計で済ませようと考えているのですが、LEDの輝度だけはままなりません。 最近のLEDは技術の進歩により、青と緑の系統は著しく改善されました。 しかし赤の系統は相変わらずといった感じで、ぱっとしません。 なので複数の色を混ぜて使う場合は、色ごとに電流を調整しなければなりません。 品種を変える度に電流を調整しないといけないなんて、なんと面倒なことなのでしょうか。

USBasp (2)

水晶振動子には定例どおり12MHzを選び、実装しました。 22pFのMLCCは採用した部品が5mmでフォーミングされており2.5mmに直すのが面倒でした。 配線材としてUSBまわりと電源にはウレタン被覆線を使ったのですが、 基板に固定するのが面倒くさいですね。 次回また同じモノを実装するならプリント基板に逃げてしまいたい感じがあります。

あとはLED、スイッチ、レベルコンバータ、外部端子でしょうか。 どんな配置をするかまだ決めていません。

USBasp (1)

ファームウェアはビルドしたのでだいたいOK、目処が立ちました。

ということでハードウェアの組み立てです。 今回はUSBまわりの結線があり不規則なので普通のユニバーサル基板を採用。 28pinのPDIPはそれなりに巨大なので秋月C型基板に収まるかどうかギリギリ。

ZDは3.3Vを採用しようと計画していましたが直前になって3.6Vを実装しました。 終端抵抗は以前計算したとおり68Ωをそのまま実装。 プルアップ抵抗は2.2kΩで5Vに吊りますがZDの効果でサチるはずです。 秋月のマイクロB-USB端子DIP化基板には 100mAを上限とするポリスイッチが搭載されております。 このポリスイッチが若干邪魔な気がしますが、 バス電源を100mAも引っ張る予定はないので良しとします。

本日の実装はUSB端子まわりまで。 電圧レベルコンバータとICソケットは後日やっつけます。 ファームウェアの書き込みは物理層をひととおり実装した後に行います。 AVR-ISP mkIIでやっつける計画です。 ISP端子はセルフ書き込み用のIC直結分を給電型として装備します。 ターゲット書き込み用としてレベルコンバータ後段の2本を受電型として装備します。 給電型の端子はZIFソケットを利用した子亀をぶら下げるのに便利でしょう。 受電型の端子はもちろん応用基板に繋いで使うためのものです。

PIC vs. AVR

PICとAVRでどちらを使いたいかと言えば個人的には圧倒的にAVR

鶏と卵

AVRはシリアルポートさえあれば、正確にはGPIOとして使えるシリアルポートさえあれば、 書き込むことができるマイコンです。 ただしavrdudeを設定する手間は最低限かかります。 そこさえクリアしてもらえれば、 AVRを採用することで初心者であってもマイコンの書き込みをブートストラップすることができます。 もちろん、組み立てるぐらいなら既製品を買ってもらうことが一番手っ取り早いのですが、 その観点においてもAVRは飛び抜けて普及しているように思います。 一般向け通販サイトであるアマゾンで書き込み道具が売られているぐらいですからね。 アマチュアがマイコンの書き込みに手を出すならAVRの採用が最善策と言ってよいでしょう。

他社にもシリアル通信で書き込めるマイコンは存在しますが、 販売価格やPDIP製品があるか無いかなどを考慮すると、 今のところAVRのほかに安心して勧められる製品はありません。 いまどきコンパイラが有料なんて比較になりませんし、 高額な書き込み装置を買わないといけないというのも厳しいでしょう。 量産品の設計を手がける会社の業務として採用するなら道具が高額でも良いのかも知れませんが、 趣味の範囲であるならば大きな費用は掛けられませんよね。

ARM製品は出尽くした感がありまして今のところSMD品しかないようであり、アマチュアの出る幕はありません。 MIPS製品としてはPIC32MXがありましたが、将来的にARM製品にシフトしていきそうな雰囲気があります。 RISC-V製品はまだまだこれからであり、AVRに対抗するという意味では完成の域にはありません。 32bit CPUを採用したマイコン製品に関しては、 残念ですがあまり大きな期待ができる状況にはありません。


This is copyrighted material. copyright © 2023 clare. all rights reserved.