AVRマイコン総合スレ Part8

このエントリーをはてなブックマークに追加
938774ワット発電中さん:2007/10/07(日) 08:03:47 ID:sSSEOlB2
>>936
どれくらいグラフィック関連関数を用意するかだろうね。
ビットマップ表示とプロットだけならそれほどのことはないが、
直線だの円弧だの任意の範囲のビットマップだの論理演算表示だの入れると
メモリ制約が大変そうだ。
939774ワット発電中さん:2007/10/08(月) 17:23:58 ID:xV3gD7t3
IPIでAVRを買おうと思ったんだけど、どこに取扱商品があるのか、どこに値段が書いて
あるのか、全く分からない。いったいどうなってんねん。

http://www.ipishop.com/avrmain.html
940774ワット発電中さん:2007/10/08(月) 18:29:54 ID:MjMkwQrn
買ってほしくないんじゃね?
941774ワット発電中さん:2007/10/08(月) 18:35:55 ID:AkPagOdZ
>>939
http://www.compass-lab.com/index.htm
の方がマシっぽいな。
942774ワット発電中さん:2007/10/08(月) 18:43:45 ID:ddPvCqk/
もしかして 扱ってない
943774ワット発電中さん:2007/10/10(水) 19:02:13 ID:NS+fTcCW
IPIから以前に通販でATtinyを買ったことがあるんだが
あれは幻だったのだろうか。
株式会社アイ・ピイ・アイと印刷された小さな黒い紙箱で届いた記憶が。
944774ワット発電中さん:2007/10/10(水) 22:15:39 ID:vw1IeOWR
まさにワンチップコンピュータ。なんか懐かしい。(babelfish経由)
ttp://babelfish.altavista.com/babelfish/trurl_pagecontent?lp=de_en&url=http://www.jcwolfram.de/projekte/avr/chipbasic.main.php
945774ワット発電中さん:2007/10/11(木) 00:04:41 ID:qBRCbKe7
946774ワット発電中さん:2007/10/11(木) 16:53:13 ID:Y8V1/ps6
すまん、ちょっとききたいんだが。

AVRのプログラムで(C言語)割り込みをフラグでやるってどうやるんだ?
947774ワット発電中さん:2007/10/11(木) 17:01:51 ID:Bj3Ikiyc
割り込みを制御するレジスタの対象ビットに1を書き込むか0を書き込むか
って事?
948946:2007/10/11(木) 17:06:11 ID:Y8V1/ps6
説明が少なくてすみません。

Aという情報を送信しているときにフラグを使って割り込みをして
Bという情報を送信してまたAを送るを繰り返すプログラムです。
949774ワット発電中さん:2007/10/11(木) 18:15:13 ID:Bj3Ikiyc
フラグを使わんでも、送信ルーチンが「自分が何回呼ばれたか」を覚えていて、
再突入だった場合は、今送信中の内容&何バイトまで送信したか、をスタックに積んで新規の内容を送信開始。
送信が終了したらスタック降ろして、降ろした内容を送信再開。
スタックが空になるまで以下ループ。

て考えたところで気がついた…SRAMがパンクしちゃうか orz
950774ワット発電中さん:2007/10/11(木) 19:03:37 ID:Eboz0ZHj
ひじょーにわかり辛いんだが、「INTの割り込み」じゃなくて「Aを処理中にBという処理を差し込みたい(割り込ませたい)」という意味か?
んで、おそらくUARTとかの割り込みルーチンにフラグを渡す方法がわからない、ってこと?
それなら、
volatile uint8_t flag;
ってな感じでグローバル変数を定義してやればおk
volatileはCコンパイラの最適化を抑制する命令
951774ワット発電中さん:2007/10/11(木) 19:39:28 ID:8LTVBBZj
>>946
そのフラグを使う目的が何か(Bという情報はいつ何を送るのか)がわからないと
誰もいい助言は出せないぞ。
具体的に何がしたいの?

952774ワット発電中さん:2007/10/12(金) 20:33:45 ID:bhYz2oQ5
スレ950を超えるとDAT落ちしやすいんだっけ?

トラ技P.105のFMトランスミッタにTiny26が載っている。でも発売は10月下旬予定。
953774ワット発電中さん:2007/10/12(金) 23:51:18 ID:PJw9DRiM
>>952
979 まで平気♪
954774ワット発電中さん:2007/10/13(土) 23:45:44 ID:ofz3MnTY
AVRって16ビット以上の精度のA/Dが入ったタイプはないんだよね?
そういう用途は眼中にないのかなあ。
955774ワット発電中さん:2007/10/14(日) 00:04:45 ID:UysoSJqv
16ビットだと5V÷65536=0.076mVの精度。
10ビットでも不要なクロック止めるとか配線の注意とか必要なので
16A/Dはデジタル回路満載のマイコンでは無理です。
956774ワット発電中さん:2007/10/14(日) 00:25:17 ID:SIEIphCs
いや、今時AVR以外のマイコンでは16ビット以上の精度のADを内蔵なんて
珍しくもないんですがね。。
957774ワット発電中さん:2007/10/14(日) 01:02:53 ID:4J6THGZA
でもAVRはポートから10mAとか平気で吐いちゃう粗雑なマイコンなんですぜ
958774ワット発電中さん:2007/10/14(日) 07:17:46 ID:14PIblvV
16bit ADC載ったマイコンって何?
いいとこ12bitくらいのものしか見つからんのだが。
959774ワット発電中さん:2007/10/14(日) 07:24:31 ID:14PIblvV
コレくらいしか発見できず…。
http://www.tij.co.jp/jsc/docs/mcu/product/index.htm
960774ワット発電中さん:2007/10/14(日) 09:47:35 ID:Ej/sgHhQ
ADよりDAをのっけてほしい
961774ワット発電中さん:2007/10/14(日) 10:04:45 ID:DAu/RU+U
2R-Rラダーか
PWMでいいんじゃね?
962774ワット発電中さん:2007/10/14(日) 10:28:14 ID:bhpm5afc
自分もD/Aほしい。一部のMSP430やH8にはあるし。

MSP430は元が電力計特化なので16bit A/Dがあるんじゃないだろうか。
963774ワット発電中さん:2007/10/14(日) 10:30:17 ID:Szkl0I+u
>958
つかったことはねーが C8051 に 16bit ADC 積んでるのがあるし、
ADuC847 や MSC1210 みたいに 24bit ADC 持ってるのもある。
超低速とはいえほんとに24bit精度でるのかよとは思うが。

>961
ADサイドと同等の速度が出ないと意味ねーのでPWMじゃちょっと。
R-2Rもピン数を食うし、ちゃんとのっけて欲しいと俺も思う。
964774ワット発電中さん:2007/10/14(日) 10:33:15 ID:EkfOme3n
>>960
今入手できる外付けDAって、手ごろなのは、全部シリアルなのな。
いまいちタイミング的には使いにくい。
965774ワット発電中さん:2007/10/14(日) 13:47:37 ID:Ej/sgHhQ
シリアルじゃないとピンが足りなくなる
966774ワット発電中さん:2007/10/14(日) 19:00:40 ID:14PIblvV
>>963
dクス
それなりにあるのね。
967774ワット発電中さん:2007/10/14(日) 22:02:46 ID:Z2el487T
AT90S8515のソフトってAT90S8535で使えますか?
ハード的な互換(ピン配列とか)がないのは別として。
968774ワット発電中さん:2007/10/14(日) 22:06:42 ID:8ReUwTAA
>>967
8535は8515の上位コンパチという位置づけではないので、使ってる内蔵
I/Oによる。ポートに繋いだLEDのチカチカくらいなら可では?
969774ワット発電中さん:2007/10/14(日) 22:13:30 ID:bhpm5afc
8515と8535はA/Dの有る無しやタイマの数が違うけど
違う部分を使ってなければ大丈夫。
970967:2007/10/14(日) 22:23:56 ID:Z2el487T
さっそくありがとう、いい人よ。
具体的にはこれ→ttp://www2p.biglobe.ne.jp/~t_ueno/DAC/atapi_ctl/を作ってみたかったんですけど
8515が売ってないので途方にくれていたのです。
ICP、ALE、OC1Bを使ってないから大丈夫?
あとコンパイルしなおさないといかんですか。
971774ワット発電中さん:2007/10/14(日) 22:28:10 ID:3M70Jp6j
>>970
今時だとATmega48あたりを使った方がいいんじゃまいか。
972774ワット発電中さん:2007/10/14(日) 22:55:17 ID:bhpm5afc
>>970
汎用I/Oとソフトタイマだけなので8535def.incでアセンブルし直せば動くと思う。
I/Oを29本使っているので40ピンのAVRでないと作れないね。
973967:2007/10/14(日) 23:51:04 ID:Z2el487T
やってみます。ありがとう。
>971 いちからプログラムするような技量はないんです。せっかくだから、これから勉強します。
974774ワット発電中さん:2007/10/15(月) 11:43:34 ID:8dkt+ZIW
TWIを使って通信を行いたいのですが、3つのデータ(例えばA、B、Cのような文字データ)を
繰り返し送信し続けるプログラムを作りたいと思っています。
mainプログラムで通信処理を行い、1つのデータを送信するとフラグを立てて、送信できたかどうかを
判別します。フラグが立っていれば次のデータを書き込み、再び送信を行います。
このデータの書き込みを「割り込み」を使って処理を行えと言われました。
わかりにくい内容だとは思いますが、いいアイディアがありましたら、力を貸してください!

975774ワット発電中さん:2007/10/15(月) 12:17:50 ID:lZjK8GHf
送信中にデータの書き込みを「割り込み」処理したいってこと?
普通、送信中に送信データは書き込めんからな〜
976774ワット発電中さん:2007/10/15(月) 12:26:14 ID:sBNEoqxm
>>974
UARTの割り込み利用送信プログラムは書ける?
あれとほぼ同じ。
977974:2007/10/15(月) 14:59:51 ID:8dkt+ZIW
>>976
UASRTについてはまだ勉強中なので、はっきりとはわからないのですが、
サンプルプログラムなどがありましたら教えていただけませんか?
978774ワット発電中さん:2007/10/15(月) 15:49:06 ID:PbqhZfyS
せめて、ここぐらい目を通そうよ
ttp://www.atmel.com/dyn/products/app_notes.asp?family_id=607
979774ワット発電中さん:2007/10/15(月) 17:14:29 ID:nmTKe/F6
MEGA88の日本語データシート(有志の方の翻訳でしたっけ?)に
そのものズバリが書いていなかったっけ?
980774ワット発電中さん:2007/10/15(月) 17:27:33 ID:jFJ9Y2ZE
皆さん、ありがとうございます。
参考にさせて頂きます。いいアイディアがあれば、また教えてください。
981774ワット発電中さん:2007/10/16(火) 01:11:38 ID:LLZb98hP
tiny2313をI2Cのスレーブでコントロールしようといじっているけど
USIの動作が今ひとつ良く理解できない・・・orz
982774ワット発電中さん:2007/10/16(火) 11:17:04 ID:NkzriBaf
「TWI割り込み」について、どなたか詳しく教えていただけませんか?
参考資料が少ないため困っています。。。
983774ワット発電中さん:2007/10/16(火) 11:18:51 ID:PUqpBHqM
>>982
何がわからないとか、何が知りたいとか言わないと、
アプリケーションノート嫁で終了しちゃうぞ。
984774ワット発電中さん:2007/10/16(火) 16:27:24 ID:kFYQjGMy
っ「コピペするだけでOKなソースが欲しい」
985774ワット発電中さん:2007/10/16(火) 17:34:40 ID:NkzriBaf
マスタでTWI割り込みを行うには、ステータスレジスタの7ビット目とTWI制御レジスタの7ビット目を
1にセットしておいて、『sei();』で割り込みを有効にすればよいのでしょうか?
そして送信が完了し、TWINTビットがセットされるとTWI割り込みが発生するのですか?
986774ワット発電中さん:2007/10/16(火) 18:56:07 ID:PUqpBHqM
>>985
その他TWCRのTWEN、WIEなど初期設定レジスタの類があるね。
TWCRって初期設定レジスタなどについても毎回書き込まないとTWENなどが消えてしまう。
TWCRに書き込むデータにこれらのビットが含まれていないということはないですか?
初期設定でTWCRにTWEN、TWIEなどをセットしても、その後
TWCR=(1<<TWINT)|(1<<TWSTA); とかやったら消えちゃう(TWEN,TWIEにゼロを書き込んでいるので)
987774ワット発電中さん
1を書くと0になったり、割り込み終了でリセットされたり(そのために割り込みが無限には続かない)
します。
動作の度にセットしなければならないビットに注意すると整理しやすいかも。