2018年6月17日日曜日

ATmegaだけでデジタル水準器

Arduinoを使わずにATmega328Pに直接スケッチを書き込んで動かしてみました。書き込み器はアマゾンで295円(送料込み)で売っていたUSBASPというプログラマです。

安さに釣られて何も分からず買ったのですが、ネット情報でドライバや書き込みソフトをインストールしてなんとかなりました。スケッチをコンパイルしたブートローダ無しのHEXファイル書き込んでみました。書き込みプログラムは、AVRDUDEというものを利用しています。

ATmega単体だと秋月で230円、Arduino nano互換機は以前書いたようにアマゾンで396円なので、2倍は違わないのですがサイズを小さくできるメリットがあります。現時点ではDIPタイプを使っているので大きいですが、QFPを使えばかなり小さくできます。

写真では無事に動作したように見えますが、実は動作が遅いです。

ATmegaのFuse設定を読み出したら、内蔵4MHzで、かつシステムクロックの1/8分周で動くようになっている模様です。16MHzのクリスタルをつないだので外部発振にして分周しないようにFuseを書き換えたところ、なんと動かなくなりプログラマからの読み書きまでできなくなってしまいました。

設定の仕方が悪かったのか、クリスタルが認識されていないのかこれから調べてみます。設定の仕方が悪かったら、まずはチップを復活させる方法も調べないと手も足も出ません。

PICだとコンフィグを間違えてもプログラマからアクセスできなくなることはないけど、ATmegaは怖いですね。経験者からみると何やってんだか、だと思いますが失敗も経験値を上げることだと、前向きに行きましょう。

0 件のコメント:

コメントを投稿