ラベル ATmega328P の投稿を表示しています。 すべての投稿を表示
ラベル ATmega328P の投稿を表示しています。 すべての投稿を表示

2013年3月31日

ミニブレッドボードで遊ぶ (温湿度計)

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク

秋月電子にて1個150円(2個以上買うと1個あたり150円)で売ってあるミニブレッドボードBB-601
これにどれだけ詰め込めるかという遊びを思いついたので、早速何か簡単なものを作ってみました。

ATmega328P-PU、温度センサ(LM61CIZ)、湿度センサ(HIH4030)、極小キャラクタ液晶、セラロック(16MHz)、抵抗(10kΩ)、コンデンサ(0.1µF)という構成。
#流石に電源まで詰めるのは無理


この状態でUSARTとSPIは空いているので、更に拡張や連携も可能だったり。
温度・湿度センサもデジタル(I2CやSPI)接続の物を利用すれば、もう少し他の物を接続できる。


LCD裏はこんな感じ。
買ってきてすぐは1mmピッチのFFCが付いていますが、何だかんだで扱いにくいので、細めで少し硬いビニル絶縁電線に付け替えました。(自立可能)

このサイズで何か面白いものが出来れば掲載しようと思っているものの、如何せんネタが無いのである(~_~;)

追記:サイズ比較にiPhone4Sの上に載せて1枚。


2012年8月13日

AE-UM232RでATmega328PにOptibootを書き込む

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク

基本的なことは「(番外) FTDI BitBang AVR-Writer」の内容と同じですが、参照したページのavrdude-GUIを使った手順が若干理解しづらい&ATmega328Pの場合が記載されていないので、以下まとめ。

配線やPCとAE-UM232Rの接続、ドライバの導入までは前述のページ「3.ソフトウェアの準備」までと同じ。
補足としては .NET Frameworkをインストールしていない場合、最新版の4.0に2.0は含まれていないので、3.5をインストールする必要がある。

次にヒューズビットの設定(外部クロック使用)とOptibootの書き込み。

1.avrdude-GUI.exeを起動する
2.avrdude.exe Fileにavrdude-serjtag\binaryフォルダ配下のavrdude.exeを指定する
3.Programmerに FT232R Synchronous BitBang (diecimila) を選択する
4.Deviceに ATmega328P(m328p) を選択する
5.Command Line Optionに -P ft0 -B 4800 を入力する
6.FuseをReadすると hFuse:D9、lFuse:62、eFuse07 が読み出される (新品未使用の場合)
7.Fuseを hFuse:DA、lFuse:FF、eFuse:05 と入力し、Writeする
8.Command Line Optionから-B 4800を消す (-P ft0のみ入力された状態) ← 超重要
9.Flashでoptiboot_atmega328.hexを選択し、Erase-Write-Verifyする

手順7で外部クロックを使用する設定にしたので、手順8で -B 4800 (ビットクロック指定)を外す必要がある。
※外さない場合、書き込み中にavrdude-GUIがフリーズする。

大量に書き込む時などは、以下のような感じで手順でOK

1.ATmega328Pをセット

2.コマンドラインオプション -P ft0 -B 4800 でFuseをRead

3.hFuse DA、lFuse FF、eFuse:05でFuseをWrite

4.コマンドラインオプションを -P ft0 にしてhexをFlash

5.書き込み済みATmega328Pを取り外す

繰り返し(1へ)

ちなみに、今回のヒューズビット設定は外部クロック使用時なので、内部クロック8MHzで動作させる時は hFuse:DA、lFuse:E2、eFuse:05 など適宜設定する。