XMEGAを使ってみる

シリアルの動かしかたを数か月間分からなかったのを気に病むことはない!!ねむいさん
だっていないさんのブラのホックを外すことができるまでに9か月かかったのだから(キリッ

といいたいところですが何かしらの問題にぶつかった時にネットで検索してすぐ見つかる
レベルの他人のソースにあたる癖は止めてデータシートとエラッタシート等の基本的
情報は事前にしっかり読んで把握しておきましょうね。あと第三者が作った機械翻訳
バリバリ手抜きの日本語訳なんて当らずに原文を素で読める英文読解力付けましょうよ。
そういう指導ばっかしてたら一般には絶対降りてこない未知のエラッタがたくさん潜む
renesasとかのマイナーな品種のマイコンとかを実務で宛がわれた時に何も対処
できなくなっちゃって電子工作感覚でネット上のフォーラムで聞いて他人に笑われる
子を世に出しちゃいますよ!(ブーメランをかわしつつ)

電子工作の"遊び方"を教えるんじゃなくて電子回路設計する際の"考え方"を指導しましょう。



はぁはぁ…まぁいいやねむいさんの学習目的だし…
とは言いつつも私が公開してるプログラムが"コアダンプ吐いてビルド止まった!"り
"パスが通ってるのにエラーになったりしてビルドができない!"ていうコメントされて
るのを他の方のtwitterやブログ等で目の当たりにするとさすがに気が咎めてき(ても
私自身打つ手がなにもなかっ)たのですが、数多に存在するうまくいかない原因のうちの
一つをめっけました。makefile中のワイルドカードの指定がマズかったようです…。

いままで公開してきたものほぼすべてに波及してたので何とか時間見つけて修正して
きました…。LatticeのAVRコアだけはツールのライセンス期限切れで動作確認が出来
てませんがこちらも追々と…WinAVR更新してなかったら気づきもしなかったのか私…



長い前振りになってしまいましたがWinAVRを20100110に更新したついでに今まで死蔵
してたXMEGAを使ってみました。なんと今回がねむいさんのぶろぐ初のAVRカテゴリ!
使用にあたってすz氏O-Famiry氏、そしてSTM32のdfu作成プログラムでお世話に
なっているシバ某氏との使用記を参考にさせてもらっています。
最初に言っておくとすでにARM使いな人はXMEGA使う意味まったく無いのとAVRから
ステップアップして規模のおっきいマイコン使うこと考えてる人はプログラムの組みや
すさ考えると"やっぱARMっしょ"になってしまいますがそれは端に置いておきます!

日本で比較的容易に手に入るのはATXMEGA128A1ですね、今回私もこれを使いました。
取り合えずいつものSPIのTFT液晶でMCUの情報を読み出し表示させるところまで…。

今回購入したXMEGAのチップリビジョンは"H"でした。リビジョンHでも
errataがまだわんさかあります。
このXMEGAが世代交代するころにはきっとerrataも無くなるでしょう(ヲイ

ホントはでかいフラッシュ領域を頼りに絵とか日本語フォントとかもフラッシュに
焼きこんで表示したかったのですが、フラッシュ領域がRAM&I/O空間と分離されて
いるのとWinAVR固有の配列確保の時のサイズの制約のおかげでトリッキーにする
必要があり、うまく表示できるまでかなり時間喰われそうなので今回はパス。
せっかく買ったのがもったいないのですけど他の方が優れた作例を出されるまで
再び塩漬にしておきます…。



あと忘れるとこだったけど、冒頭のビルドエラー修正の"ついで"でSTM32F107VCT6用
液晶表示プログラム
前回使用した2.4"と3.2"用ドライバ(16bitアクセス)を
追加しているので現物を所持していて興味がある人は試してみてくださいね。

Go to top of page