Oranginoを組み立ててみました

お久しぶりです。最近多忙にて更新が滞ってしまい申し訳ありません。

今日は、Oranginoというマイコンボードの紹介をしたいと思います。BASICでプログラミングのできるマイコンボードといえばIchigoJamが定番中の定番ではありますが、ピコソフトという会社からもORANGE picoというPIC32MX搭載のボードが発売されています。ORANGE picoにはいくつかの種類があるのですが、今回はArduinoと同じフォームファクタを採用したOranginoを購入してみました。今回入手したのは組み立てキットで、共立電子産業で購入しました。
キット内容(1)

キット外観(2)

キットの中身。
キット内容(1)

キット内容(2)

PIC32MXとEEPROM。標準で64KBのEEPROMを搭載しており、多くのプログラムを保存可能です。
マイコンとEEPROM

組み立て中。このボードはArduino用シールドの一部を利用することができ、シールド接続用のピンソケットがついています。ピンソケット取り付けにあたって、適切な位置に取り付けられるように他のシールドを接続した状態ではんだ付けを行いました。
組み立て中

完成したところ。
Orangino(1)

別売のAVケーブルを接続することで、TV(コンポジット入力)に接続するようになっています。
AVケーブル

AVケーブルは、この画像では右側のUSBコネクタ(形状はUSBですが、信号としてはアナログオーディオとコンポジットビデオ信号)に接続します。左側にはPS/2対応USBキーボードを接続します(IchigoJam Tなどと同様、こちらも信号としてはPS/2です)。
Orangino(2)

起動したところ。
起動画面

ORANGE Picoは、IchigoJamと比べて、フリーエリアが大きい(約8KB)、標準でグラフィック機能に対応している、漢字表示が可能(美咲フォント内蔵)、実数演算が可能など、優位な点がいくつかあります。また、専用のUSBホストシールドも発売されています。さらにはマイコンチップを交換してファームウェアを書き換えることでchipKIT互換機にすることもでき、Arduino IDEで開発を行うことも可能となります。これからいろいろ遊んでみたいと思います。

スポンサーサイト

テーマ : ハードウェア
ジャンル : コンピュータ

tag : ピコソフト Orange pico Orangino マイコン Arduino

安価なユニバーサルプログラマMiniPro TL866CS

前回AVRプログラマを紹介したついでに、本日もプログラマ(ライタ)の話題です。最近はマイコンやPLDの書き込みもISPやJTAGなど、基板上に実装された端子から書き込む方法が主流となり、以前UV-EPROMが主流の時代に使用されていたようにICを専用書き込み機のソケットに差して書き込むこともほとんどなくなってしまいました。しかし、私はいまだにUV-EPROMやOTP-EPROM、GALなどを所有しており、これを書き込む手段が欲しかったこと、また、マイコンもヒューズ設定によってはISP書き込みができなくなりいわゆる「パラレルプログラミング」が必要になる場合もあることも考えて、aitendoで売られている安価なユニバーサルプログラマMiniPro TL866CSを購入してみました。このプログラマは、ROM、 各種マイコン(AVR, PIC, MCS51など)、GALなど幅広いデバイスに対応しているのが特徴です。
MiniProパッケージ

付属品はCD-ROMのみ。CD-ROMの内容はaitendoの製品ページからもダウンロードできます。
パッケージの中身

まずは手持ちの骨董品27128をセットしてみました。ICソケットは40ピンDIPタイプのZIFなので、SOPやPLCCなどのICは別途変換アダプタを用意する必要があります。
27128をセット

書き込みソフトを起動して、ICの品種名を選択します。
EPROM選択画面

内容を確認することができました。書き込みもしてみましたが、問題なく可能でした。ただ、ICの種類によっては書き込み電圧(VPP)の設定が正しくないことがあったので(バージョンアップで改善されているかもしれませんが)、大切なICに書き込む場合にはデータシートで確認したほうが良いかもしれません。
EPROM書き込み画面

次に、ヒューズビットの設定を誤ってクロックが供給できなくなってしまい、ISPで書き込みができなくなってしまったATmega168Aを救済してみることにしました。
ATmega168Aをセット

AVRマイコンもこの通り、主要なものは網羅されています。
AVR選択画面

マイコンはプログラムフラッシュメモリ、データEEPROM、ヒューズビットのそれぞれの参照、書き込みが可能です。”Config”ボタンを押すとこのようにヒューズビットの設定画面が表示されます。CKSELビットを正しい値に設定しなおし、無事に復活させることができました。
AVRヒューズビット設定画面

このATmega168A、実は液晶表示時計を開発中だったのですが、内蔵オシレータである程度開発のめどが立ったため、水晶発振子に切り替えるためにヒューズをいじっていて書き込み不能となってしまいました。なぜかAVRWRT3でクロックを供給してもうまくいかず、こちらの出番となったわけです。製作中の時計はこちら…。


この時計は現在電池駆動にして、電池の持ちや精度などについて長期間のテストに入っています。実用性がありそうと判断したらまた製作記事を書きたいと思います。

今回使用したようなユニバーサルプログラマ、ちゃんとしたメーカー製品なら共立エレショップなどでも販売中ですが、価格が一桁違います。もちろん仕事で使うなどであれば信頼性を考えてこういうものにすべきでしょうが、私のような趣味の工作にこんな高価なものは必要ないと思ってこちらのMiniProを買いました。安価ですしいざという時には役に立つこともあるかと思いますので、マイコン工作を趣味にされている方は検討してみてはいかがでしょうか。

こちらでも購入可能です。

テーマ : 電子工作
ジャンル : 趣味・実用

tag : ユニバーサル プログラマ MiniPro TL866CS マイコン AVR EPROM aitendo

AVRプログラマあれこれ

AtmelのワンチップマイコンAVR用のプログラマとしては、純正のAVRISPが有名ですが、どうやらこちらはディスコンとなっており、ARMベースのマイコンにも対応したAtmel-ICEが後継品となっているようです。ちなみに私は現在2種類のプログラマを所有していますが、いずれも上記の純正品ではなくサードパーティー製の製品で、純正品に比べると制限事項などもあったりしますが、安価であるうえに純正品にはない機能を備えていたりもします。今日はそんなサードパーティー製のプログラマを紹介したいと思います。

私がAVRマイコンを始めるにあたって最初に購入したのがこちら、共立電子産業(デジット)のAVRWRT3というモデルです。これを選んだのは安価だったというのが一番の理由ですが、純正品にはない外部クロック供給機能を備えているのが特徴です。外部クロックは、ヒューズビットを書き換えてシステムクロックを外部クロックに切り替えてしまったマイコンを、外部クロックの供給されていない状態でプログラム(ヒューズビットの書き換えも含めて)するのに必要な機能で、いざというときには役に立つと思います。また、ジャンパピンを差し替えることで、ISPコネクタから5Vの電源を供給することもできるようになっています。USBシリアル変換チップには定番のFT232RL、コントローラとしてはATtiny2313が載っています。
AVRWRT3

欠点は、AtmelStudioから直接書き込むことができず、専用のツールを使用する必要があるところと、ドライバのインストールの際に、ドライバ署名の強制を切る必要があるところでしょうか(マニュアルにWin 8でのインストール方法が記載されていますが、Win 10でも同じ方法でインストールできました)。専用のツールについては特に使いにくいというわけではなく、起動しっぱなしにしておくとコンパイル済みのバイナリをワンクリックで書き込めるので場合によってはむしろ便利かもしれません(画像が書き込みツールの操作画面)。
書き込みツール

ただ、ほかのFT232RLのドライバを別途インストールしていると、デバイスの認識がうまくいかず、書き込めなくなることがあります。
デバイス認識エラー

その場合には、ほかのFT232RL搭載デバイスを先に接続して認識させておくとうまく行きました。
正常な認識状態

私の場合、このドライバ認識の問題がすこし面倒くさく感じるようになってきたのでAVRISPへの買い替えを考えたのですが、上記のごとくディスコンとなっており、Atmel-ICEも比較的高価(秋月で7000円)なのでほかのプログラマを探していたところ、Pololuというメーカーのプログラマを見つけたので買ってみました。私が買ったのはPololu USB AVR Programmerというもので、こちらはAtmel Studioから直接書き込みが可能、ユーザーが自由に使えるUSBシリアル変換機能、電源供給機能、20kHzまで対応の簡易PCオシロスコープ機能を搭載しているのが特徴です。コントローラチップにはPICが搭載されており、画像の上側にある1列のピンソケット(これは別売りなので、自分で用意してはんだ付けします)に、電源供給端子、シリアル通信端子、オシロでも使用するI/Oポートが出ています。私はスイッチサイエンスで2600円程度で購入しましたが、現在では品切れとなっており、ロボショップなどで購入できるようです。
Pololu USB AVR Programmer

実際にシリアルポートを接続して実験しているところ。これまでは別途USBシリアルアダプタ(以前ポケコン用に製作したもの)を使用していたので、接続ケーブルが減ってすっきりしました。ちなみにこのシリアルポートですが、パリティなどの設定を変更しても反映されず、常にパリティなし、ストップビット1ビットの設定での通信となるようなので注意が必要です。
実験中

ちなみにこちらの商品も今後はPololu USB AVR Programmer v2に切り替わっていくのかもしれません。v2のほうは簡易オシロの機能が省略されている代わりに、3.3V動作の回路に直接接続することができるようです。3.3V動作をとるか、簡易オシロをとるか、どちらを必要としているかによって選べばよいと思います。

PCに接続すると、このようにプログラミング用のシリアルポートと、ユーザー用のシリアルポートの2つが認識されます。
デバイス認識状態

AtmelStudioからこのプログラマを使用するには、「ツール」メニューの ”Add Target” から、”STK500” を選んで接続ポートを選択すればOKです。
プログラマの設定

簡易オシロ機能を試してみたところ。LCDの駆動波形を見ています。
簡易オシロスコープ

このようなツールを使用してAVRマイコンでいろいろ実験中です。今は表示デバイスの駆動がマイブームとなっており、7セグメントLEDや、コントローラなしの7セグメントLCDを駆動するプログラムを作って遊んでいます。もうちょっと完成度が上がれば当ブログで公開したいと思っていますので、もうしばらくお待ちくださいませ。

左側が後継機のv2です。右側のは安すぎですね…。

テーマ : 電子工作
ジャンル : 趣味・実用

tag : 電子工作 マイコン Atmel AVR Pololu AVRWRT3

400円のArduino互換機を買ってみました

手軽に遊べるワンボードマイコンとしてArduinoが広く利用されていますが、Arduinoは基本的な仕様が公開されているため、互換機が様々なメーカーから発売されています。今回、AmazonマーケットプレイスのEasyWordMallという業者から408円しかも送料無料という、あまりにも安い価格で発売されているものを購入してみました。中国からの発送のようで、配送にはそれなりに時間がかかりました。届いたものがこちら…今回は2個買ってみました。USBケーブルも付属しています。右側のUSB接続LEDライトはオマケとのこと。
届いたもの

Arduino Uno互換機とのことで、基板サイズは標準的なArduinoのサイズとなっており、マイコン(CPU)としてATmega328Pの表面実装品が使用されています。
基板表側

基板の裏側。フラックス汚れが少し気になりますが、概ね品質的には問題はないかと思います。
基板裏側

Arduinoおよびその互換機では、USBシリアル変換チップは様々なものが使われています。要はちゃんとシリアルポートとして通信さえできれば、ソフトウェア的には互換性に問題ないということなのでしょう。今回のものは比較的安価と思われるCH340が搭載されていました。
USBシリアル変換チップ

PC(Windows 10)のUSBポートに接続すると、CH340のUSBシリアルドライバは自動的にインストールされます。サンプルのBlinkを周期を少し変えて書き込んでみました。動作も問題ないようです。


まだ少ししか触っていませんが、大きな問題はなさそうな印象です。Arduinoを使用して試作・開発し、最終的な工作物には単体のAVRを使用するという方法もよく用いられていると思いますが、ここまで安いと(ATmega 328PのDIP品の価格が200~300円程度であることも考慮すれば)、最終的な工作物にこれをそのまま組み込むのもありな気がしますね。シールドもいくつか買ってあるので、また組み合わせていろいろ遊んでみたいと思います。

テーマ : 電子工作
ジャンル : 趣味・実用

tag : EasyWordMall Arduino Uno ATmega328P CH340 Amazon AVR

AVRマイコンデビュー

近頃の電子工作といえばマイコンを用いたものが人気ですね。特にWiFiやBluetoothなどの無線デバイスを用いてスマホやwebと連携するようなものを製作されている方も多くおられ、自分もいつかはそんなことをしてみたいなあとあこがれてしまいます。マイコンと聞くとハードルが高いような気がして二の足を踏んでいましたが、数か月前から遅ればせながらAVRマイコンを使っていろいろ実験をはじめているところです。これまで試したのは、7セグメントLEDのダイナミック点灯、ADコンバータの実験、シリアルポートの実験などでしたが、まだそれで実用的なものを作れるようになるのにはもう少し時間がかかりそうです。まずは簡単なものから、IoTへの道も一歩から、というわけで、今回は季節柄クリスマス向けのLEDイルミネーションを作ってみることにしました。

今回はマイコンとしては小規模なもので十分なので、ATtiny2313を選びました。1個200~300円程度のチップです。まずはブレッドボードを用いてある程度設計を固めてから製作にかかりました。左側が実験中のブレッドボード、右側がその他の材料です。回路を収める箱とトナカイ型ツリーは近所の100均で購入したものです。
開発中のブレッドボードと材料

回路図はこんなふうになりました。メロディIC UM66T-01Lを接続してクリスマスの曲も鳴るようにしてみました。このICの消費電流は少ないのでマイコンの出力ポートから電源を取って動かしています。全体の電圧は青色LEDを駆動するために4.5Vとしましたが、UM66Tの電源電圧は3.3Vまでなのでダイオードを2本はさんで降圧しています。ダイオードにもたいした電流は流れないので、通常のスイッチングダイオードで十分です。今回は手持ちの関係で1S953というものを使用しました。基板上の端子の接続ですが、SOUNDには圧電スピーカーを、LED_CONにはLEDを接続します(カソードコモンで9番ピンがカソードとなります)。LEDの電流制限抵抗ですが、最初は青色LEDには68Ωを使用していたのですが、青色のみクリアタイプしか入手できなかったのでまぶしすぎ、120Ωに統一しました。この辺りは実際に試して調整してみたほうがよさそうです。電源は単4乾電池3本(4.5V)をPWR_CONのVccとGNDに、コントロールスイッチはGNDとSWの間に接続します(普通のモーメンタリ型プッシュスイッチでOKです)。
回路図

完成した基板。
組みあがった基板

ケースを加工して組み込んでいるところ。
ケースに組み込み中

消費電流を測定してみました。LEDが消灯している状態で数百μA、LEDが点灯するとその分(10~20mA/個)増える感じですね。LEDの点滅のタイミングはタイマ割り込みを利用して決めており、割り込み待ちの間はアイドルモードにすることで消費電力の低減を図っています。

[広告 ] VPS

今回はコントロールスイッチで電源をON/OFFする仕様にしています。マイコンのパワーダウンモードを使用していますので、電源OFF時の消費電流は0.3~0.4μAとかなり少なく抑えられています。
パワーダウンモードの消費電流

いちばん苦労したのはじつはここ。LEDを配線しています。コモン(カソード)側はジュンフロン線、アノード側は0.29mmのUEWを利用し、熱収縮チューブでまとめました。
LED配線中

完成したところ。ケーブルが太くてかなりみっともない…(汗)
完成

後側下部にコントロールスイッチがついています。このスイッチをON/OFFすることで電源ON/OFFが可能です。また、電源ON中に長押し(約1秒)することでメロディのON/OFFが切り替えられるようにしました。
後側

実際に動作させたところ。

[広告 ] VPS

プログラムとヒューズデータはこちらに置いておきます(バイナリファイルが.hex、ヒューズデータは.fus、その他はCのソースです)。今回は消費電力低減のためクロックを500kHzとしていますので、必ずヒューズデータも変更(CKSEL=0010, CKDIV8=0)してください。プログラムは特に複雑なことはしていません。乱数発生には線形帰還シフトレジスタ(LFSR)法を利用しています(コードはWikipediaのものをそのまま利用させていただきました)が、LFSRの数値をそのまま出力ポートに出してしまうとLEDが流れるように点滅する(「シフトレジスタ」なので…)ので、今回は乱数の値で個々のLEDの点灯時間、消灯時間を決定(短くなりすぎないように切り上げています)するという方法をとっています。なぜrand関数をあえて利用しなかったのかというと、LFSRなら将来的もっと小さいマイコン(tiny13とか85とか)にアセンブラでプログラミングをする場合にも使えそうなので、試してみたかったというわけです。点滅のタイミングは8msごとのTIMER0割り込みで処理しています。また、コントロールスイッチはINT0割り込みで処理しています。

マイコンも難しそうだと思っていましたが、試してみると意外と簡単ですね。開発環境はAtmelからダウンロードできますし(要ユーザー登録)、書込み器も数千円で入手できます。少ない部品点数でいろんなことができそうで、なかなか楽しいです。

参考書。

テーマ : 電子工作
ジャンル : 趣味・実用

tag : AVR クリスマス マイコン 電子工作 ATtiny2313 ツリー トナカイ KiCad

アクセスカウンタ
カレンダー
10 | 2018/11 | 12
- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 -
最新記事
最新コメント
リンク
カテゴリ
Amzonお勧め商品
楽天お勧め商品
検索フォーム
FC2掲示板
ブロとも申請フォーム

この人とブロともになる

RSSリンクの表示