1

WinAVR(AVRGCC)の使い方

無料のAVR用Cコンパイラ。C言語の方がアセンブラより馴染みやすい筈。

http://www.avrfreaks.net/AVRGCC/
Windowsの人はSourceForgeのProjectから手に入れると良し

①インストールして、Pathを通す(普通にインストールすれば通る)

Make等を使うので別にコンパイラなどを入れてる人は注意。

②コンパイルする為に、Makeファイルを作る。
MFileを起動して『MCU type』だけ設定する。

他はそのままで[File]→[Save As]で、プログラムを書くフォルダに保存する。

そこに空のテキストファイル 『main.c』 を作る。中身の書き方はまた別の機会に。

③コンパイル
コマンドプロンプトで当該ディレクトリまで移動して、『make』する

コンパイルするとファイルが色々できる

main.hexをライターソフトで書き込んでできあがり。これだけ。

↑のフォルダまるごと(zip) (今家で書いたので基盤で実験してないが、PORTBのLEDをピコピコさせるプログラム)

*DNP給湯室横の小さいWindows機に、秋月ライタソフトとWinAVRセットアップしといたので秋月のライターを接続すればすぐ使えます。

0

AVR – 秋月ライタ4433対応改造

一昨々日から一昨日までの経過

ぶらぶらしないようにグルーガンで固めて改造完了。電池が足りないのか、5割ぐらいの確立で書き込みミスするが、電池を繋いでる線をぐにぐにしたりして機嫌を取ると書き込める。
一応後でACアダプタも繋げるようにVCCとGNDの線を針金で飛び出させておいた。

でさっそくAT90S4433を使ってみる→無駄にLED20個光らせた(動画)

最初VCC→GNDだけつないでいじってて、PORTBとPORTDのLEDだけ点いてPORTCが点かなかった。
AVCC→AGNDにも電力供給したら点くようになった。

翻訳版データシートによるとPORTCをA/Dコンバータとして使う時はAVCCとAGNDをA/D変換するセンサにアレしないとならないらしい。ここらへんは今度DNP行った時にやってみる。

ADM3202使ってのシリアル接続も2313の時と同じ回路でできた。

あと、にっしーがLED光らせるのに成功してた。

0

Flash – URL引数

質問:HTML内のデータあるいは引数を参照させる方法

やってみた↓

http://shokai.org/archive/flash/20040903_URLVar.swf?str=hogehoge
flaファイル

_rootにstrという変数ができて、その中にhogehogeが格納されるらしい。
hogehogeを変えればテキストも変わる。

getURLとこれを使えばアドレスバーの無いFlashでもディープリンク可能なサイトを作れそう。mbstringみたいな機能があれば素敵。

0

AVR – シリアル通信基盤実装

昨日のを実装した。

本体は
-AVRマイコン(AT90S2313)
-RS232C制御(MAX232 or ADM3202)
-発振子(4MHz) -コンデンサ(10μF)
-電解コンデンサ(100mA25V)×2
-5Vの三端子レギュレータ(7805)

スイッチ×3は忘れた。

DSC03131.JPG DSC03131.JPG

昨日夕方からDNPで作業開始。
A/Dコンバータを試したかったので、買っておいた温度センサ(LM35DZ)で温度計でも作ろうかと思ったら秋月ライタが4433に対応してない事に気付いた。→4433対応改造方法

8535には対応してるのでそれでやろうとしたらWinAVRの使い方が解らなかった。せめて俺のX30が戻ってくれば…

んで何もしないのも何なので基盤実装してみた。

あと作ってて思い切り引っかかったのがシリアルL字型コネクタ

DSC03137.JPG DSC03138.JPG

オスメスでピンの配置が違う。 これ気付くのに3時間かかった

0

AVR – シリアル通信でFlashを操作

忘れないうちにメモしておく。

Amazonで3800円なStudio .NET Spoke ASIN:B0002ERS18:image ASIN:B0002ERS18を使う。

avrgccでコンパイルして使うC言語のソース(http://shokai.org/archive/avr/040830_SerialButton.zip)
めんどくさかったのでファイル名がgoogleのまま。

①ギリシャ人の方のRS232Cのつなぎ方(http://www.serasidis.gr/circuits/RS232interface/RS232_interface.htm)
を参考にシリアル接続する。たしかこんなかんじ(写真)

②江藤さんのチャタリング防止スイッチ(http://web.sfc.keio.ac.jp/~esoc/avr/toys_a/)を参考にスイッチをつける

③TeraTermなどでシリアル接続チェック。ボタンを押すと送られてくる数字が変わる。

④Studio.Netにはシリアル接続用のライブラリが入ってないので、裏技(http://forums.belution.com/ja/csharp/000/001/59.shtml)を使ってVB6時代のライブラリ?をインストールする。

⑤C#の中にFlashを埋め込む(http://sappari.org/hiki/hiki.cgi?C%23%A4%CE%C3%E6%A4%CBFlash%A4%F2%CB%E4%A4%E1%B9%FE%A4%E0)も参考にしながらFlash.ocxでFlashプレイヤーを作る。
FlashObject.SetVariable(“Flash側の変数名”, “値”); でFlashに値を渡せる。
GetVariable(“Flash側の変数名”); もある。

完成。