AVRマイコン総合スレ Part17

このエントリーをはてなブックマークに追加
1774ワット発電中さん
           _____
         /       /|
       /   ( ゚∀゚) /.∠フ   個人でも手軽に使える
     /       /.∠フ || . Atmelの8-bit RISCマイクロプロセッサを
   /  __    o/.∠フ ||    中心に語るスレッドです。
 ∠| ̄ ̄凵 ̄ ̄|∠フ ||     *AAは「AVR H8 etc. マイコン総合スレ Part3」からいただきました。
 .|| |_____|/||

Atmel AVR 8-Bit RISC     http://www.atmel.com/products/avr/
2774ワット発電中さん:2009/12/17(木) 21:14:44 ID:9virrlcL
3774ワット発電中さん:2009/12/17(木) 21:18:21 ID:9virrlcL
<参考になるページ>
・AVR-wiki  http://avrwiki.jpn.ph/wiki.cgi (廃業?)
       もう一つのリンク先
       ttp://himitsu.jpn.ph/avrwiki/wiki.cgi

・AVR情報多い-chanさんのpage  http://elm-chan.org/

・avrfreaks.net avrgccその他AVR関連の総本山(英語)
  http://www.avrfreaks.net/

・レディオテクニカ有志による 翻訳版 AVRデータシート・AVRツールの解説書
  http://homepage1.nifty.com/radio_tech/

・TAP-Config http://ww2.tiki.ne.jp/~maro/

・自分で作ってしまえ!電子工作スレッドテンプレート集
  http://jbbs.shitaraba.com/bbs/read.cgi/study/3329/1067910158/

・HERO'S Download(暫定) 有志による日本語のAVR資料他
  http://moon.gmobb.jp/hero/
4774ワット発電中さん:2009/12/17(木) 21:24:12 ID:HNKeoAOg
AVR-wiki復活してずいぶんたつし、(廃業)は取ってもいいのでは?
5774ワット発電中さん:2009/12/17(木) 22:52:18 ID:rnfZkCXe
前スレ994
手持ちのAVRでの話になりますが、
25MHz辺りまでは特に工夫しなくても問題なく動くと思います。
AVRのオーバークロックは30MHzを超えた辺りからが本番です。
6774ワット発電中さん:2009/12/17(木) 23:54:57 ID:ANwAoHfm
>>1
7774ワット発電中さん:2009/12/18(金) 00:21:44 ID:y7wXgKev
HIDaspxって16MHzや20MHzでも動くじゃん。
12MHzなのは3.3V対応のためだったのか。
8774ワット発電中さん:2009/12/18(金) 00:26:30 ID:CM1Ozu3y
>>7
USB部分はV-USBだからそうでしょうね。
9774ワット発電中さん:2009/12/18(金) 01:12:01 ID:y7wXgKev
クロック速くした結果。
USB-HUB経由(hidmonでのbench)
12MHz
 hid ping 1000 times ... 37.109 kB/ 2.634 = 14.089 kB/s
20MHz
 hid ping 1000 times ... 37.109 kB/ 2.313 = 16.044 kB/s
USB-HUBなしではほとんど変わらなかった。
一応効果はあった。
当然かもだけどusbdrv/usbdrvasmXX.incは20MHzまでしかなかった。
あっちの人もマイコンのオーバークロックってやらないのかな。
10774ワット発電中さん:2009/12/18(金) 08:20:27 ID:CM1Ozu3y
オーバクロックを試したとしてもそれを公開はできないでしょう。
11774ワット発電中さん:2009/12/18(金) 14:45:53 ID:ipMorPvy
AVRって炙りの略?
12774ワット発電中さん:2009/12/18(金) 15:22:23 ID:X7J8yYxv
13774ワット発電中さん:2009/12/18(金) 21:10:11 ID:Kx8un5rd
国内ではPIC、H8におされてるよね・・・
高専じゃH8一択だし


海外だとどうなのかな
14774ワット発電中さん:2009/12/18(金) 21:14:58 ID:9ziqy+Zw
自分の高専ではPICですね。自分は猛烈にAVRをお勧めしてますが。
アドレスがリニアじゃないせいでそこで詰んでいるのでシュールです。
15774ワット発電中さん:2009/12/18(金) 21:16:06 ID:OCQkEa4g
H8かぁ、昔しか知らないけど規模大きい気がしなくもないな。
AVRなりの工作くらいならH8じゃちょっと役不足(本来の意味で)。

XMEGAとか使うようなところならH8か比較できそうだけれど。


今後はARMとかになっていくのかのぉ(遠い目
16774ワット発電中さん:2009/12/18(金) 21:39:37 ID:XCc3JE+o
長い間業界の動きを見ていても8bit→32bitといった移行が目立ちます。
8bitのアップサイジングと32bitのダウンサイジングで、16bitの居場所は
既に無いような気がします。

ちなみに、趣味ではまずAVR、それで足りなければARM。
17774ワット発電中さん:2009/12/18(金) 22:39:20 ID:CM1Ozu3y
Cortex-M3とかM0のマイコンでDIP-28とかでもでればうれしいんですけどね・・・。
けどほんと価格的にはだいぶ下がってますね>ARMマイコン
LPC1113 LQFP-48でDigiKeyで281円くらい
18774ワット発電中さん:2009/12/18(金) 22:50:04 ID:8slTmY03
>17
LPC1113 (Cortex M0) て、コンパイラあるの?
それはともかく Cortexファミリを32bitというのはなんか間違ってるとおも。
命令語長、ROMの読みだし幅いずれも16bitで、すっかり16bitに染まってしまって。
かつて16bit関連命令だけ命令ビットパターンが虐待されていたARMとも思えんひより具合。

19774ワット発電中さん:2009/12/18(金) 23:01:06 ID:CM1Ozu3y
>>18
Cortex系はまだ試してないので自身はありませんが
codesourceryのLite版が使えなかったかな。
20774ワット発電中さん:2009/12/18(金) 23:02:07 ID:CM1Ozu3y
×自身
○自信
typoった・・・orz
21774ワット発電中さん:2009/12/18(金) 23:55:56 ID:73FvfSze
PICなんかちょっとしたテーブルを配列で持とうと思った時点でアウト
22774ワット発電中さん:2009/12/19(土) 00:20:19 ID:ix/VrEO1
Cでプログラムする場合PIC16F876 PIC16F886等の
ROM8kword RAM368byte 物のPIC16Fでは
配列とか文字列定数使わなくてもROM4kword分のプログラムで
RAM368byteをほぼ使い切ってしまっていた
もう少し機能を追加したいのにという段階でいつも限界に達してしまっていた
だから俺はatmega328Pに乗り換えることにしたんだ
23774ワット発電中さん:2009/12/19(土) 01:12:25 ID:IQmZshuA
わっふるわっふる
24774ワット発電中さん:2009/12/19(土) 01:25:25 ID:0k0kmMk0
>>22
mega128もオススメ
25774ワット発電中さん:2009/12/19(土) 05:56:44 ID:q8RTKI75
>Cortex-M3とかM0のマイコンでDIP-28とかでもでればうれしいんですけどね・・・
SOPなら・・
http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=726-1000-ND
26774ワット発電中さん:2009/12/19(土) 09:04:04 ID:wVGi3REx
>>25
それで変換基板にでものせれば。とは思うんだけど
それだとQFPで変換基板でも同じかな。とも思うんですよ(汗
27774ワット発電中さん:2009/12/19(土) 09:17:32 ID:q8RTKI75
>>26
QFP変換だとブレッドボードが使えないけどね.
SOPならハーフピッチのユニバーサルに乗せられるんじゃね?
28774ワット発電中さん:2009/12/19(土) 09:32:10 ID:wVGi3REx
>>27
なるほどSOPの方がちょっとは楽になりそうですね。
Arduino IDEのCortex-M3用パッチ(従来のAVRと共存可能)ってのも
あるようですし、今後はARM系も流行るかもしれませんね。
(ボードもいくつか開発されているみたい)

とスレ違いスマソ
29774ワット発電中さん:2009/12/19(土) 11:17:41 ID:wrRp6QiZ
前スレの764です。

328pと32.768kHzの水晶で時計を作ったときに誤差が大きい問題について原因がわかりました。
168pと328pで試したところPORTDのPD5(PCINT21/OC0B/T1)から出力すると時計が進んで
入力すると遅れるみたいです。LCDのEをPD5につないでいたため表示させると
時計が進んでいたようです。

データシートを見ても見つけられなかったのですがPD5を使うときの特別な手順とか
あるんですかね?
30774ワット発電中さん:2009/12/19(土) 11:47:00 ID:jIqnoqQb
配線が悪いんじゃね?
信号のエッジで発生するノイズで誤動作してると見た。
31774ワット発電中さん:2009/12/19(土) 12:16:16 ID:wrRp6QiZ
>>30
厄介な問題みたいですね。またどつぼにはまりそうなのでPD5を
使わない方向でやるほうがよさそうですね。
ちなみにブレッドボードやパスコンについて指摘されたのでパスコンを近づけたり
ユニバーサル基板で組んだりしたのですがだめでした。
32774ワット発電中さん:2009/12/19(土) 12:33:32 ID:/mE+H3PX
>>25
今Digikey見たら、検索結果の一覧に画像のカラムが追加されてる。けど、
なぜか検索した一覧で表示される単価と詳細ページで表示される単価が違う。

詳細ページの値段が1.5倍くらい高い。 アバクロかっ! 正月価格かっ!

試しに1個カゴに入れてみたら、詳細ページの単価だった。
33774ワット発電中さん:2009/12/19(土) 16:28:20 ID:zLLFJky7
>>13
自動車みたいな日本設計のものには当然使われているけれども、
海外で設計された基板で日本のCPUが載ってるものは一回も見たことがありません。
それに日本のCPUについてくる純正Cコンパイラは糞過ぎて全く使えない。
34774ワット発電中さん:2009/12/19(土) 17:30:15 ID:/mE+H3PX
ルネサスがいい例だが、もともと大企業の日立や三菱という財閥系グループ
企業という思い上がりからか、国内サポートさえ満足にできないのに、
そもそも、英語圏や他言語向けに開発環境のサポートとか充実していない
ような気がする。

競合製品の整理統合も進んでいないし、元々のマイコン製品のラインナップ
や周辺回路も、なんら設計思想というものがが感じられない。
35774ワット発電中さん:2009/12/19(土) 17:48:53 ID:ek6wsrJx
>>33
レゴマインドストームのRCXにH8が使われていたのはみたことあります。
けど最新のNXTにはATMEL ARMとAVR…
36774ワット発電中さん:2009/12/19(土) 17:55:03 ID:zLLFJky7
>や周辺回路も、なんら設計思想というものがが感じられない。

全く同意ですね、回路として接続されているだけで、ポートマップがデタラメだったり、
割り込みハンドラで処理できないクリティカルが発生するなゴミ仕様だったり、
純粋にハード屋がデタラメにでっちあげただけで、ソフト側への配慮に欠けていますね。
今では海外製品の方が圧倒的に優れているというシャレにならんレベル。
37774ワット発電中さん:2009/12/19(土) 18:24:17 ID:8McbXip0
H8は車とかエアコンなど用途が決まっていて、ついでに販売している感じ。
だから目的外では使いにくい。
38774ワット発電中さん:2009/12/19(土) 19:17:07 ID:MA2jWDwh
H8はファンが多いので、結構いろんなとこに使われてるよ
なんていうかPICを憎んでいる率はAVRよりも高い
39774ワット発電中さん:2009/12/19(土) 21:42:34 ID:Fe4NDAfY
>>33
海外製の洗濯機で見たぞ。
40774ワット発電中さん:2009/12/19(土) 22:31:06 ID:zLLFJky7
>>39
基板の管理番号とか見ました?
ソフトごと丸パクリされただけかも試練。
41774ワット発電中さん:2009/12/19(土) 22:50:20 ID:Fe4NDAfY
それはない。
あとはAVR使っているのもあったし、NECの78Kのも有ったな。
42774ワット発電中さん:2009/12/19(土) 23:09:27 ID:r3+9X36s


洗濯屋のけんちゃんてのがあったな
43774ワット発電中さん:2009/12/19(土) 23:23:23 ID:Y44tABR5
アナログコンパレータで簡易AD変換をやってるんですが、
2次多項式近似で線形近似よりもより正確な電圧を取得したいと思います。
サンプリングしたデータからexcelで2次多項式近似を出力したら、
以下の式になりました。
y = -0.0193x^2 + 15.582x + 11.191

xはTCNT0、yはmVです。これを元に、tiny2313でmV値を求めたいのですが、
普通はどうするべきでしょうか?
y = - (x * x * 19 / 1000) + 156 * x / 10 + 11;
だと、どうしてもx * x * 19の時に16bitを超えてしまいます。
44774ワット発電中さん:2009/12/19(土) 23:35:14 ID:oxxY1blw
>>43
> 普通はどうするべきでしょうか?
普通はADCをもってるチップを選ぶ。

まあ、テーブル引きとかでいいんじゃないの?
45774ワット発電中さん:2009/12/19(土) 23:40:30 ID:Y44tABR5
y = - (x * x / 50) + 156 * x / 10 + 11;
でいいことに気付きました。
テーブル化は考えましたがサイズが・・・
46774ワット発電中さん:2009/12/19(土) 23:43:30 ID:+HmaIfzL
>43
一般に、多項式ってのは
y = ((-0.0193/15.582 * x) + x) * 15.582 + 11.191
という風に計算するもんだ。
0.0193 も 19/1000 じゃなくて、5 / 256 とかにしような。

あとは有効桁をながめながらシフトの位置を勘案してがんばる。
47774ワット発電中さん:2009/12/19(土) 23:49:54 ID:+HmaIfzL
眠い頭で書くんじゃなかかったがな。定数と変数の組は
(a + x ) * x + b ) * x ...
の順な。
48774ワット発電中さん:2009/12/20(日) 00:07:11 ID:hLbectf4
ありがとうございます。
つまりy = (-0.0193 * x) + 15.582) * x + 11.191が元なわけですね。
256のくだりもわかりました。
49774ワット発電中さん:2009/12/20(日) 00:13:19 ID:z64zfa37
正確さを追及してるんだから浮動小数点にするかビット数を増やす
50774ワット発電中さん:2009/12/20(日) 01:28:26 ID:3HIxzPmj
何を目指しているのか判らないけど、どのみちコンパレータじゃA/D速度は
期待できないし、AVRはそこそこ速いから、とりあえず考えるより浮動小数点
演算なり、DWORDで固定小数点なりを使ってみればいいんじゃなかろうか?

丸め誤差が気になる場合、固定小数点でDWORD値の下位ワードに小数点以下
が入るようにシフトして計算して、最後に0x00007FFFを足して上位ワードを
使うとか(少数点以下の四捨五入)するといいと思う。
51774ワット発電中さん:2009/12/20(日) 02:15:43 ID:NXEC3a2C
小数に1バイト使うと、最小分解能は0.0039だから
小数第2位までは保証される
52774ワット発電中さん:2009/12/20(日) 13:28:38 ID:1Av4cLWA
マイコンで実数計算のうまいやり方は、floatをなるべく使わないことだ。
ただ、固定小数点は誤差の累積が読めないのがアレだけど。

//WinAVRのdoubleってfloatと同じ精度なのな。
53774ワット発電中さん:2009/12/20(日) 15:03:15 ID:hLbectf4
>>46-47を踏まえて、各所で16bitを超えないよう注意して以下の式にしました。
((- (x * 5 * 16 / 256 ) + (uint8_t)(15.586*16)) * x + (11 * 16) + 8) / 16
四捨五入もしたいので、最後に+8して全体を16で割りました。
割り算はシフトへ、掛け算はxの2箇所まで縮みました。
54774ワット発電中さん:2009/12/20(日) 15:19:29 ID:3HIxzPmj
>>53
> 四捨五入もしたいので、最後に+8して全体を16で割りました。

コンパイラのコード最適化を過信しないで、

(x * 16) は (x<<4) と
(x / 16) は (x>>4) と

やらないか?(AA略) いや、書いたほうがよくないか?
55774ワット発電中さん:2009/12/20(日) 18:18:22 ID:uApGmAz2
C言語の算術シフトと論理シフトは実装依存だった気が

大抵は実害無いと思うけどさw
56774ワット発電中さん:2009/12/20(日) 20:05:24 ID:hLbectf4
>>54
xはunsignedなので、最適化で論理シフトが期待できます。

実際のコード
uint16_t x = TCNT0;
x = ((- (x * 5 / 16) + (uint8_t)(15.586*16)) * x + (uint8_t)(11.191 * 16) + 8) / 16;

gccの出力
in   r18, TCNT0
mov   r24, r18
ldi   r25, 0x00
ldi   r22, 0x05
ldi   r23, 0x00
rcall  __mulhi3
ldi   r19, 0x04 ; / 16
1: lsr r25
ror   r24
dec   r19
brne  1b
ldi   r20, 0xF9 ; 249 ((uint8_t)(15.586*16))
ldi   r21, 0x00
sub   r20, r24
sbc   r21, r25
movw  r24, r20
mov   r22, r18
ldi   r23, 0x00
rcall  __mulhi3
subi  r24, 0x45
sbci  r25, 0xFF ; - 187 ((uint8_t)(11.191 * 16) + 8)
ldi   r18, 0x04 ; / 16
2: lsr r25
ror   r24
dec   r18
brne  2b

26ワード+__mulhi3の18ワード = 88バイト
5754:2009/12/20(日) 22:13:40 ID:3HIxzPmj
>>54 書いた時に思ったんだけど ...

>>53
> (uint8_t)(15.586*16)) * x

という部分の「(uint8_t)(15.586*16))」は、実際には >>56
> ldi   r20, 0xF9 ; 249 ((uint8_t)(15.586*16))

にあるとおり、「249.376」の小数点以下が切り捨てられ、結果的にxあたり
-0.15%の演算誤差(xが255の時に四捨五入で最大誤差-6)が出る。

多少の速度を犠牲にしてもそれなりの演算精度を期待するのなら、ここは
「156*16*x/10」とした方が、よくはないか?

誤差は残るが、誤差の絶対値はほぼ半分(+0.089%/x,xが255の時に最大
誤差+4)になる。

割り算かましてWORDの上限超えるならと、「1559*16*x/100」にすると、
誤差はさらに減ってxが255の時に最大誤差+1。
58774ワット発電中さん:2009/12/20(日) 23:12:31 ID:l6HVmzsO
RSでATmega16とATmega162、どちらを買おうか迷っているのですが、
どちらがおすすめですか?
また、表面実装パッケージで底面をグランドにハンダ付けしろと書かれているチップは、
どのように対処していますか?
59774ワット発電中さん:2009/12/20(日) 23:13:04 ID:RJpR1da7
>57
数値計算の教科書どこかで読んできたほうがいい。そのセンスは問題ありすぎる。

それを除くとしても、tiny2313で割算させる気か?
-0.15% を問題にするなら /10 でむりやり整合させず
せめて 9/65536 (= 0.00015) だけ引くようにすべき。
60774ワット発電中さん:2009/12/21(月) 00:09:14 ID:oEyXBByW
数値計算の教科書で問題にする誤差と
今回のAVRで問題にしてる誤差のレベルが違いすぎて涙出るからやめとけ
二次式の数値積分ってのならともかく一回計算するだけなのに・・・
61774ワット発電中さん:2009/12/21(月) 00:38:55 ID:N2+cxE+L
>>57
156 * 16 * xの時点で16bitを超えてしまいます。(x=255で636480)
32bitを許すなら 15.586 * 16 * 8 で1995.01ですね。
この場合足し算の相方も8倍する。
また、その相方のx*5の部分も
256 * 0.0193 = 4.9408 ≒ 5 (差 -0.059)
よりは、
4096* 0.0193 = 79.0528 ≒ 79 (差 +0.0528)
の方が誤差が少ない気がするので79に修正して、式を改めると、
x = ( (uint16_t)((uint32_t)(- (x * 79 / 32) + (uint16_t)(15.586*16 * 8)) * x) / 8 + (uint8_t)(11.191 * 16) + 8) /16;
ややこしいので式を分けると、
uint16_t x = TCNT0;
uint16_t x2 = (- (x * 79 / 32) + (uint16_t)(15.586*16 * 8));
x = (uint32_t)x2 * x / 8;
x = ( x + (uint8_t)(11.191 * 16) + 8) /16;

ですかね。__mulsi3が追加されて+80バイトです。
62774ワット発電中さん:2009/12/21(月) 02:35:26 ID:m94X2sro
>>13
高専じゃH8ってどこで聞いた情報だよそれ。
by高専卒

とりあえずPIC+アセンブラってのがどっちも時代にそぐわない。
片面板PCBってのも全く実践的じゃない。
なんかオナニーを感じる
63774ワット発電中さん:2009/12/21(月) 03:53:27 ID:GSQdeG9o
>>59
PIC16とか90S1200とかならともかく、tiny2313での割算と、例えば
mega8で割算させるのって具体的に何が違うの? どこに問題が?

ROMは1Kだけど、整数の除算で増えるコード量なんてたかが知れて
いるよね?

遅くてレジスタ数が少なく汎用もない、4MHzのZ80で割算させるより
簡単で早いと思うけど? 除算は引き算のループで代用できるので、
10000未満になるまで10000が引ける回数をカウント、10000未満に
なったら引けた回数をx10、序数を1/10の1000にして同じことを行い、
次に100で...と繰り返せば、除算命令がなくてもそこそこな速度は
出せる。(というか、Z80とかの時代は実際にそうやってた)

> -0.15% を問題にするなら

問題にするかはともかく、-0.15%/divだね。xが最大値の255で四捨
五入含めた換算後のx値で、.376が切り捨てられなかった場合との
差が「6」になる。

> せめて 9/65536 (= 0.00015) だけ引くようにすべき。

割り算を使って? というか、除算をシフト演算やレジスタのスワ
ップを使うにしても、xが取りうる値の範囲が0〜255なのだから、
(x*9/65535)の結果は常に0にしかならんのだが?換算後のxの値を
使ってx=x-(x*9/65535)するつもりなら、算数からやりなおすべき。
64774ワット発電中さん:2009/12/21(月) 04:15:54 ID:SeBtmFof
Z80より古い時代でもシフト使った割り算くらいあったよ(´・ω・`)

賢いコンパイラは定数割り算を組み込み命令があれば掛け算で
やってくれたりもする(´・ω・`)
65774ワット発電中さん:2009/12/21(月) 07:23:17 ID:lAp1DxZZ
>>62
そういう書き込みをするときはな、実際には何が使われてるのかを書くもんだ
でないと単なる煽りになってしまうぞ
66774ワット発電中さん:2009/12/21(月) 08:06:12 ID:UV+3Vrz1
>>65
PICだよ。PIC。言いたくなかったんだよ。
67774ワット発電中さん:2009/12/21(月) 20:01:57 ID:m94X2sro
>>66
その通りです

RISC時代だったのにアセンブラってのは。読めることは重要だけど、
まず真っ先にってのはなんか違うと思う
68774ワット発電中さん:2009/12/21(月) 23:36:29 ID:oEyXBByW
マイコン+アセンブラって教材としては問題無いと思うけどな
学校は実用よりも主に基礎や理論を習うところだし、
オームの法則から始まって、半導体の原理からトランジスタの動きを理解して
それを組み合わせて論理回路が出来ることを知り、
これら論理回路の組み合わせで実現した機能がまさにアセンブラの命令と対応している

ハードとソフトがつながった瞬間でオレは感動したけどね
69774ワット発電中さん:2009/12/22(火) 00:05:40 ID:+Imnb3EQ
>>68
ソフトばっかやってきたからそういうの感動したい
良いサイトないっすか?本でもいいよ。
70774ワット発電中さん:2009/12/22(火) 00:21:29 ID:SDEoqVs3
>>69
CPUの創り方、あるいはパタヘネ
71774ワット発電中さん:2009/12/22(火) 00:52:41 ID:jFllqG5+
トランジスタってもうスイッチとしてしか使われてない
増幅するならOPアンプだし
72774ワット発電中さん:2009/12/22(火) 02:40:43 ID:vpPNf8Rz
>>58
用途による。
M162はS8515やM8515の上位バージョンで
DIP40p品だとほぼi8051ピン互換、外部バスが使える。
まぁSMD品で構わないならTQFP68だけどM162よりも
秋月で128買った方が安くてメモリ多くて高機能。
73774ワット発電中さん:2009/12/22(火) 08:12:32 ID:dpWZNjIl
大学の電子工学科行けば一通り勉強できる
74774ワット発電中さん:2009/12/22(火) 09:01:11 ID:QTYhgEAq
オペアンプも単一素子じゃなくてトランジスタの組み合わせなんだけどな
fetは原理が違うけど動作は似てるし
75774ワット発電中さん:2009/12/22(火) 09:38:46 ID:A79rnWgr
>>71
んなぁこたぁ無い。
真顔でそんなことをハード現場で言ったら、お花畑認定w
76774ワット発電中さん:2009/12/22(火) 12:33:10 ID:+Imnb3EQ
>>70
CPUの創り方は読みましたけどさっぱりわかりませんでした。
77774ワット発電中さん:2009/12/22(火) 14:48:44 ID:ikOWsbVP
AVRWRTってmega328pに対応していないのね(´・ω:;.:...
78774ワット発電中さん:2009/12/22(火) 19:46:13 ID:FttYopCO
>>71
増幅=オペアンプはオーディオ領域までだろ。
そもそもオーディオでも限界を感じるのに。

>>68,70
あの本は感動する。CPUが凄い身近に感じる。ハードとソフトが一致する瞬間

でも高専は即戦力重視で育て上げるっていう観点からすれば、
多層板も扱えないしCでマイコンもかけないってのはちょっと違うと思うってだけ。
そりゃ原理が重要ってのは理解した上での発言
79774ワット発電中さん:2009/12/22(火) 21:38:52 ID:d+gtpsDG
usbRS232って、USB2.0ハブ経由じゃ使えないけど、
もしやと思い、USB1.1ハブ経由にしたら使えました。
これってご本人には既知の話かな。
1.1ハブ捨てなくて良かった。
80774ワット発電中さん:2009/12/23(水) 00:27:33 ID:aSJQLP60
オレらは世間からみたら同じ異端者なんだから仲良くしようぜ
その中でもPICでもH8でもなくAVRを選んだ仲間なんだしな
81774ワット発電中さん:2009/12/23(水) 00:58:40 ID:Kv/2KB7+
>>79
LowSpeed CDCに未来はない。
HIDspxのように、PCとはHIDのまま繋げて、
専用のソフトウェア仮想シリアルドライバをそのHIDデバイスに
接続するようなトリックを使えば、バルク転送による
高速通信ができるかもしれない。
高速といっても12MHzの場合はUSARTの誤差の関係で
57600bps程度が限界だし、LowSpeedではUSB-HUBの
有無も影響する。そこまでするならUSB付きマイコンか
専用USBシリアルICを使った方が、ということに。
82774ワット発電中さん:2009/12/23(水) 01:21:25 ID:Wvw/zgjY
>>78
Cであっても自力でスタートアップ書くためには結局アセンブラの世話になる訳で
どちらにせよアセンプラいるし環境依存だし。
そこまでの時間が無い、というだけでは無いかと。
Win-AVRだとスタートアップを意識する事は少ないけど。
ってかAVR-Studioだと返って判りにくくなってるようなww

まぁ細かい事やるよりは
C++等で、より上位設計…UMLやパターンになれておく事の方が重要というのなら、同意。
83774ワット発電中さん:2009/12/23(水) 04:56:20 ID:Dw8R36Ya
>増幅=オペアンプはオーディオ領域までだろ。
ビデオオペアンプとかな

まぁ・・マイコン(ワンチップマイコンではなく)ボード作って,
命令表のビットパターン見ながらハンドアセンブルして,
スイッチパチパチしてRAMにプログラム書き込んで動かしていたりな

>Cであっても自力でスタートアップ書くためには
今はデバイスのコンフィグレーションをGUI上で行って,自動生成された
スタートアップを使うっていう方向だけどね
84774ワット発電中さん:2009/12/23(水) 09:55:48 ID:5I7duz0F
>>81
なんか誤解があるね。CDC はバルク転送だよ。
だから USB 2.0 ハブが使えない問題がある。
HID は、コントロール転送。

ちなみに、ボーレートも USB の転送自体には関係しない。
85774ワット発電中さん:2009/12/23(水) 10:03:57 ID:Lrnfh60G
>>84
HIDはコントロール転送もしくはインタラプト転送だと思いました。
86774ワット発電中さん:2009/12/23(水) 11:20:51 ID:5I7duz0F
>>85
すまん、そのとおり。

ついでだが、元の
> USB付きマイコンか専用USBシリアルICを使った方が
というのは俺も同意なんだな。
87774ワット発電中さん:2009/12/23(水) 13:30:08 ID:Kv/2KB7+
すまんかった。自分も実装できる程詳しいわけではないので。
話を整理すると、
HIDaspxで2.0USB-HUBかますと速くなるのは、
2.0のマイクロパケット転送(1ms→0.125us化)のおかげ。
CDCはバルク転送を使うが、USBのLowSpeedでの
バルク転送はUSB規格外動作。
1.1HUBだと制限が緩いためかたまたま使えるが、
2.0HUBではしっかり弾かれるってことかな?な?
88774ワット発電中さん:2009/12/23(水) 13:34:32 ID:Kv/2KB7+
×マイクロパケット転送
○マイクロフレーム転送
×0.125us
○125us
89774ワット発電中さん:2009/12/23(水) 13:42:57 ID:Kv/2KB7+
それで、>>81を補足すると仮想PCやソフトMIDI、ソフトEther辺りのトリックで
良く使われるソフトウェア仮想配線技術でCDC仮想ブリッジドライバを作って、
AVR→(マイクロフレーム)→HID→(仮想バルク転送)→仮想CDC
にすれば速いよね、ってこと。
作る側からすれば無駄に複雑だけど、使う側からすると2313+αで済むと。
90774ワット発電中さん:2009/12/23(水) 14:09:42 ID:r7+07YGt
USBが内臓されているAVRはどれですか?
91774ワット発電中さん:2009/12/23(水) 14:15:29 ID:QVsA7QXV
>>90
AT90USBなにがしとかMEGAシリーズでもいくつか
92774ワット発電中さん:2009/12/23(水) 14:30:51 ID:qstTlk2g
>>89
いくら仮想化ドライバを使ったところで、VUSBじゃ2.0の速度には対応
できないと思うが、「使う側からすると2313+αで済む」とは如何に?

まともに2.0の速度が出せる実装にはUSB(2.0)対応の内蔵周辺を持っている
MCUか、FT232みたなUSBシリアル変換を使う必要があるが、であればわざ
わざドライバ周辺で面倒なことを抱え込んで複雑化すべき理由がない。

そもそも、FT232を使ったところでシリアルにFIFOを持たないAVRじゃ、仮に
AVRのUARTのボーレートをFT232RLの上限(3Mbps)まで上げても、隙間無く
連続で全二重の送受信が発生した場合に追従できないのでは?(送信はデータ
の間にアイドルができで実効速度が出ないだけだが、半二重で受信に専念し
ても、20MHz動作でさえ66.6CLK毎に受信割込が発生するので、オーバー
フローする可能性がある)

2313が(秋月@100)に、FT232RL(秋月@450)相当を外付けしていらぬ苦労を
するくらいなら、USBターゲット内蔵のmegaなりARM系デバイス探す方が
賢明でわ? ROMやRAMの容量も倍増するし。
93774ワット発電中さん:2009/12/23(水) 14:36:36 ID:qstTlk2g
>>90
ATMELのサイトでセレクションガイド見るか、Digikeyでキーワードに「AVR」
とか「ATmega」と入れて検索して、「マイクロコントローラ」のカテゴリを
選んで、「内蔵周辺」で「USB」を含む項目をSHIFT押しながらクリックして
全部選択して絞り込む。

候補が多い場合、「在庫あり」「パッケージ」「梱包」などで絞り込めば、
手に入る候補がかなり絞り込める。
94774ワット発電中さん:2009/12/23(水) 14:52:29 ID:Kv/2KB7+
>>92
Mbpsなんて期待してるわけでもないし、出るわけもない。
元のハードウェアはただのHIDデバイスなんだから。
後はPC側でごにょごにょすればって事。
今のAVR-CDC実装とは違って、
USB規格内でUSBシリアルが実現できるよねって話。
95774ワット発電中さん:2009/12/23(水) 14:58:43 ID:Kv/2KB7+
メリットは
・規格内動作だから今の2.0HUBが使える+高速化できる。
・HIDaspxの回路が(恐らく)そのまま使える。
デメリットは
・HID-シリアル仮想ブリッジドライバを入れる(実装者は作る)必要がある。

CDCでも最低限.infは入れるわけだから、手間はあまり変わらない。
96774ワット発電中さん:2009/12/23(水) 15:16:35 ID:Kv/2KB7+
Linuxなんかは元々LowSpeedのバルク転送はできないんだし、
ハードウェアの規格に添う事で状況は良くなるはず。ドライバさえ作れれば。
そういう意味でCDCよりは将来性がある。
97774ワット発電中さん:2009/12/23(水) 16:52:23 ID:qstTlk2g
>>94-96
> HID-シリアル仮想ブリッジドライバを入れる(実装者は作る)
> 必要がある。

低学歴なせいか、歳のせいか、何が言いたいのか、どんなメリット
が得られるというのかさっぱり判らん。

LowSpeedである限り、コントロール転送やインタラプト転送しか
使えない点においては変わらない。

(Windows標準の)仮想シリアルドライバは上りと下りそれぞれ1本の
エンドポイントとバルク転送を使う仕様だったはずで、これをコント
ロール転送やインタラプト転送に手直ししたドライバを苦労して開発
しても、特に使用上の改善はなく、一方でHID標準のメリットが失わ
れる。

CDCはLowSpeedでもバルク転送を許可するようにパッチを当てた
ドライバを配布して差し替えているはず。 本来の標準のクラス
ドライバであれば、ドライバ自体は(Windowsに標準で入っている
ので)配布しなくていい。

まさか、USBの下位層まで手を入れるつもり?
98774ワット発電中さん:2009/12/23(水) 17:20:05 ID:5I7duz0F
>>96
ドライバ作る前提なら、単に バルク転送の代わりにインタラプト転送が使えるやつがあれば良いんじゃないかな。
HID にこだわる必要もない。
99774ワット発電中さん:2009/12/23(水) 18:06:31 ID:Kv/2KB7+
>>97
パッチってlowcdc.sysのことですよね。
うちの環境ではxpvista7/lowcdc.sys入れた瞬間にBSOD(0x0000007E)
が出るのでraw/の方しか試せてません。
XPSP1からのアップグレードなのでちょっと原因は判りません。
もしそのパッチで2.0USB-HUB経由でも使えてるならこの件は忘れてください。
100774ワット発電中さん:2009/12/23(水) 18:09:53 ID:Kv/2KB7+
>>98
そうですね。
USB規格内でCOMポートとして認識できれば何でもいいと思います。
101774ワット発電中さん:2009/12/24(木) 01:39:56 ID:1edbXz/j
digikeyみたらAT90USB162が過去の品種になりかけてた
今はflash 32KBが主流なのね
102774ワット発電中さん:2009/12/24(木) 02:13:29 ID:Fgvwqohh
103774ワット発電中さん:2009/12/24(木) 12:05:52 ID:6Dc/WSAe
>77
mega328pはデジットでも売ってるし、avrwrtは現行商品なので
対応してくれるとうれしいんですけどねえ。
104774ワット発電中さん:2009/12/24(木) 12:36:53 ID:Q5LX/ov0
>>103
serjtag-0.3(avrdude)とAE-UM232Rだとconfにエントリ追加するだけだから
そういう心配がなくていいよ。書き込みも結構速い。
serjtag-0.3
ttp://suz-avr.sblo.jp/article/30760403.html
mega328pとか追加済のconfの在り処
ttp://www.geocities.jp/arduino_diecimila/bootloader/index.html

avrwrtは知らないけど、hidspxみたいにデバイスシグネチャのリストが
アプリ埋め込みになってたら、対応を待つか、バイナリエディタで不要な
エントリ潰して追加するしかない。
105774ワット発電中さん:2009/12/24(木) 22:10:45 ID:HJJ5kSTY
お前らイブの夜にマイコンが恋人とか超ウケルwww
106774ワット発電中さん:2009/12/25(金) 00:04:44 ID:x3fS3cRH
超ナケルwww
107774ワット発電中さん:2009/12/25(金) 01:05:29 ID:DzhTDf+v
この道はメイドロボに繋がっている
108774ワット発電中さん:2009/12/25(金) 23:50:44 ID:CxGpfq9p
PIC16F877用のあるCで書いたプログラムをatmega644P用にwinavrで移植したら
PIC16F877用が1305word(14bit/word) RAM144byte使用だったのが
atmega644P用では570word(16bit/word) RAM16byte使用だった
RAM16byteは表示用の16バイトの配列分だし

父ちゃん嬉しくて涙でてくるよ
109774ワット発電中さん:2009/12/26(土) 00:51:54 ID:2wtotmly
gccの力だな
110774ワット発電中さん:2009/12/26(土) 01:38:26 ID:8fAoMdHe
ついにTQFPのmega64に手をだした。
マイクロファンのmega162が送料含めると+変換基板よりも
高かったのが理由だけど。外部バス機能を使ってみたかった。
ダイセンの0.8mm変換基板は2.54側のランドの穴が小さくて
普通のピンヘッダは刺さらないらしい、ということで他を探したら
同価格のaitendo変換基板はOKだった。サンハヤトは、スルー。
111774ワット発電中さん:2009/12/26(土) 02:16:50 ID:RL7DMQLr
変換基板側をピンソケットにすればいいのに。
ピンヘッダだと金属むき出しで単体で保存するとき静電気が怖くない?
112774ワット発電中さん:2009/12/26(土) 02:39:07 ID:b12lae0C
ピンなら伝導スポンジに挿せるか
113774ワット発電中さん:2009/12/26(土) 04:24:18 ID:8fAoMdHe
>>111
もしかしてソケット側のピンだとダイセンの穴にも入る?
長いのから切っていけるヘッダしか考えてなかった。
だったら2x8が4つで済むダイセンの方がいいじゃん。
失敗した?
114774ワット発電中さん:2009/12/26(土) 05:47:10 ID:JAWrKpd5
アイテムラボの変換基板が穴が大きくて安くてオススメ。
基板より送料の方が高かったりすることがあるのでまとめ買い必須だけど。
115774ワット発電中さん:2009/12/26(土) 05:54:18 ID:JAWrKpd5
>>108
少し前のおれがいる!
さあ浮動小数点演算でタンジェントを計算したり液晶に浮動小数点の結果を表示するんだ!
116774ワット発電中さん:2009/12/26(土) 09:59:18 ID:BnMZb5Mu
>>115
黒バラ?
117774ワット発電中さん:2009/12/26(土) 12:46:37 ID:nTiKc2Th
除算命令があるAVRはありますか
118774ワット発電中さん:2009/12/26(土) 16:12:56 ID:g/gdsgyf
ありますん
119774ワット発電中さん:2009/12/26(土) 20:19:06 ID:RL7DMQLr
>113
 うん、入るよ。 自分は秋月の長いピンソケットを切って使ってる。
必要分の数のその次の金属端子をペンチで引き抜いて、そこにカッターで切れ目を
両側に入れてからペンチふたつでへし折れば、変な割れ方になって必要な端子まで
外れておじゃん といった失敗はまず起きない。

 秋月ピンソケットの値段 > 秋月ピンヘッダの値段

だから、ベースボードを複数作って、マイコン(LSI)on変換基板を使いまわす
予定なら ベースボード側をピンヘッダにした方が安くなるというセコい理由もある。

だから、自分はアイテムラボの変換基板を使う時もピンソケットにしてる。
120774ワット発電中さん:2009/12/26(土) 23:13:35 ID:8fAoMdHe
>>119
なるほど。
ソケットも割って使えるんだ。参考にしますね。
いっそのこと連結フレームで上下差せるようにしようかな。
倍の値段だけど。

121774ワット発電中さん:2009/12/26(土) 23:40:43 ID:YrS6xqtJ
そこはすずめっき線でw
122774ワット発電中さん:2009/12/27(日) 07:12:36 ID:r3Zu5GuT
>>119
自分はピンを抜くまでは同じ(2列だと2本)で、ベース部分のプラスチックは
ピラニアソーという刃が薄い小型のノコギリで切ってから、断面は平ヤスリ
で仕上げています。 ぱっと見はモールド断面と変わらない。

基本、買ってストックしておくのは(ピンあたり単価が安い)一番ピン数が
多いやつ。
123774ワット発電中さん:2009/12/27(日) 07:18:51 ID:WazGxiqT
除算命令があるAVRはどれですか
124774ワット発電中さん:2009/12/27(日) 07:20:31 ID:vT+Dr1Qp
皆さん、リセット用のICには、どんなものを使ってますか?   DIPのAVRの場合限定で。
DIPのAVRでは、PST600みたいなタイプが使いやすいけど製造中止品だから?値段が高い。
秋月のは安いけど、パッケージが・・・ 
125774ワット発電中さん:2009/12/27(日) 08:05:24 ID:RFVhQhRT
ソケットだったら札幌貿易に全部あるぞ。
2x3〜2x40までw
126774ワット発電中さん:2009/12/27(日) 08:59:28 ID:r3Zu5GuT
>>124
市販のマイコン応用製品では、ミツミや三菱、セイコーあたりのリセット
ICを使っているのをよく見かけるけど、AVRに限らず最近のデバイスは
リセット回路が入っているから、わざわざ外付けする必要はないんじゃ
ないのかな? 10kΩのプルアップだけで済ませるとか、0.1〜数uF前後の
コンデンサを付けてパワーON時だけ長くリセットが掛かるようにする
くらい。

ピラニアソーは、ガラエポの基板や、アルミ板も切れて、刃が薄いので、
切り代も少なく、切断面もヤスリがけがいらないくらい綺麗に仕上がる
からお勧め。

ソケットは、ピン数のバリエーションより、ロープロ対応の製品が欲しい。
秋月とかで扱っている汎用タイプを組み合わせて基板をスタックすると、
基板同士の内面間が12mmも開いてしまう。 これはこれで便利な場合も
あるが、もっと薄く仕上げたい場合に選択肢がない。
127124:2009/12/27(日) 11:55:49 ID:vT+Dr1Qp
>>126
レス、ありがとうございます。
なるほど、確かに。商品だと確実に動作するのは大前提ですが
趣味の設計なら、そうこだわる必要もないですね。
128774ワット発電中さん:2009/12/27(日) 12:30:04 ID:8peSR/I8
>>124
WDTで電源投入時に一回リセットする方法。
WDTは電源不安定時でも動作してる可能性が高いので、
これで問題が起きたことはない。
RCリセットよりも確実。(つーかAVRではRCのやり方で安定した試しがない)

#include <avr/wdt.h>
// mcusr_mirrorはリセット要因を後でユーザープログラム側から調べるための変数
uint8_t mcusr_mirror __attribute__ ((section (".noinit")));
void get_mcusr(void) __attribute__((naked)) __attribute__((section(".init3")));
void get_mcusr(void) {
mcusr_mirror = MCUSR;
if (!(mcusr_mirror & (1<<WDRF))) { // WDリセットしてなければリセット
wdt_enable(WDTO_15MS);
for (;;) ; // リセットを待つ
}
MCUSR = 0; // リセット祭り防止
wdt_disable();
}
129774ワット発電中さん:2009/12/27(日) 12:43:23 ID:Th4Hbnx7
自分はちゃんとリセットかかるけど、周辺をリセットする為にやっぱりリセットICが要る
130774ワット発電中さん:2009/12/27(日) 12:51:16 ID:cLBqkwIY
周辺のリセットはマイコンがやればおk
リセット解除が遅すぎて問題になるようなのってあったっけ?
131774ワット発電中さん:2009/12/27(日) 13:12:21 ID:r3Zu5GuT
外部RCリセットで安定しないって状況がよくわからん。

内部リセットを持っているデバイスなら、基本的に外部のリセット解除が
短くても、内部リセットが働くし。外部のリセットが長すぎると、リセット
解除とプログラム開始が遅れるだけ。

可能性があるのは、リセット端子がIC内部でプルアップされていなくて、
外部プルアップ抵抗の値が大き過ぎて、ノイズ拾ったり、指でピン触ると
静電気でリセットが掛かるとかか?

あと、空中配線やブレッドボードで組んでいるとか、イモ半田とか、もっと
別なところに原因があるんでないの?
132774ワット発電中さん:2009/12/27(日) 13:39:12 ID:8peSR/I8
>>131
原因といえばUSBのバスパワー給電でよくコケる。
133774ワット発電中さん:2009/12/27(日) 14:41:24 ID:QxI+Oi78
ピンソケットの切断にタミヤのハンディクラフトソー使ってる
ttp://www.tamiya.com/japan/products/list/craft_tool/kit74002.htm
ITEM 74018(現在生産終了)

OLFAのOEMなんで、代わりに買うならこの辺か
ttp://www.olfa.co.jp/ja/body/detail/73.html
ttp://www.olfa.co.jp/ja/body/detail/107.html
134774ワット発電中さん:2009/12/27(日) 15:30:57 ID:tKZ6ymUP
RCリセットはパワーONリセットのとき有効だけど
瞬停や電圧低下にはブラウンOUTリセットが有効じゃないかな。
135774ワット発電中さん:2009/12/27(日) 22:41:33 ID:aG2fu/Ja
動作電源電圧範囲の狭いタイプのAVRだと、電源電圧が
5Vに達するまでの時間が(相対的に)長いから、もしCR時定数が小さいと
CR時定数の立場からはもうリセット解除したつもりだけど、
AVRとしては、まだ正常動作に必要な電源電圧に達してない
なんてことにならない?  CRかつPowerOnリセット限定だけど
そうしたことは踏まえた上での話なのかな?
>>128さんとか >>129さんの場合。
136774ワット発電中さん:2009/12/27(日) 23:28:40 ID:8peSR/I8
>>135
失敗するときは数秒ぐらい遅延してもだめなんで、
正直よくわからない。(初期化に失敗して変なループを
形成してしまうらしい。LED点滅で確認)
ただ、上のWDTリセット後なら起きないのでそのまま。
137774ワット発電中さん:2009/12/27(日) 23:32:31 ID:yzgkCL5W
3.3V動作させてるtiny2313に5Vでフラッシュメモリ書き込むとまずいよね?
レベル変換どうしよう
138774ワット発電中さん:2009/12/27(日) 23:37:04 ID:dIvOG4S5
>>137
ISP用の信号のレベルが5Vって意味ですか?
139774ワット発電中さん:2009/12/27(日) 23:42:21 ID:WilNhqU1
想像だけど、RCだと長時間、中途半端な電圧が印加されてしまうのが良くないのでは
シュミットトリガのバッファでも入れてみたら・・・って、そんなことするならリセットIC用意した方が早いか

>>137
面実装なら5VトレラントのロジックICがたくさんあるけど・・・
一番手抜きなら、抵抗分圧?
140774ワット発電中さん:2009/12/28(月) 00:02:47 ID:qXFnV0Z6
>>135
もし外部リセットの時定数が短くても、内蔵リセットがあるのであれば、
問題ない。 でも余程小さなコンデンサや抵抗を使わない限り、十分
なリセットは出ると思うけどな。

負荷容量が合っていなくて、電源投入から水晶の発振が安定するまでに
かんり時間が掛かるとか、内部が完全にリセットされるまで時間が掛か
る、32kHzとかの低速なクロックで動かしているとか、そんな可能性は
ないのかな?

内部リセットの回路構成を詳しく見たことはないけど、大抵はCPUに供給
される動作クロックのパルスを数えていて、低いクロックでも内部の初期
化に必要なリセット時間は確保されるはずだけど、クロックに関係なく
固定の内部時定数でリセット時間が決まるタイプだと、まずいかも。

ただ、その場合、Vcc電圧のレベルを見ているだけなので、(同じリセット
パルス幅であれば)外付けリセットICを使っても、結果は同じはずなん
だよね。

あるいは、リセットはまったく関係なくて、例えばシリアル(UART)を
割り込みで使っていて、割込処理ルーチンのコードや、割り込み許可
するタイミングに問題があって、電源投入時に不完全なゴミデータを
受信すると、無限に割込が発生するループに陥っているとか。
141774ワット発電中さん:2009/12/28(月) 00:06:11 ID:cOyUkdUu
>>137
RESETは保護ダイオードが無いので2.2kと3.3kぐらいで抵抗分圧して
 --2.2k--
|
3.3k
|
SCK,MOSIは2.2kぐらいをかませば書けそう。
142774ワット発電中さん:2009/12/28(月) 00:08:58 ID:qXFnV0Z6
スレの流れと関係ないけど、AVR Studioのフォルダ内にあるシミュレータ
用に作成されたデバイス定義が入ったXMLファイルを、MSXML使った自作の
ソフトで読み込んでいるんだけど、幾つかバグってる(定義が矛盾)ファ
イルがあるな。

これはやっぱりATMELにメールしとくべきなのか?
143774ワット発電中さん:2009/12/28(月) 00:49:02 ID:diXMVFNP
バグがあるなら報告するべき。
フォーラムに書き込んでも見てくれてるみたい
してくれたら、みんながハッピーになれる
144774ワット発電中さん:2009/12/28(月) 01:11:30 ID:qXFnV0Z6
コピペで作成しているのか、とりあえず、内容に矛盾があるデバイスが
10個以上あるので、整理したらまとめて送っておくよ。

とりあえず、バグを見つけたのは、XMLを実際に読み込んでみたヒューズ
関係ね。
145774ワット発電中さん:2009/12/28(月) 02:59:10 ID:N6lww4L5
>>126
初歩的な質問だと思うのですが、リセットピンを直結せずにプルアップするのは何故ですか?
例えば信号線はピン同士を直結したりしますよね?
プルアップするしないの使い分けはどういうふうにすればいいのでしょうか?
146774ワット発電中さん:2009/12/28(月) 03:01:14 ID:5QHXOgdS
>>138
>>139
>>141
ISPが5V動作。
壊しても高いモノじゃないので抵抗かますのから試してみます
147774ワット発電中さん:2009/12/28(月) 05:33:52 ID:3zUWr5AA
>145
それはそもそもプルアップ(抵抗)の意味が分かってないってことじゃないかな。
プルアップ抵抗とは何か、何のために付けるのか、ってことを調べればよし。
それが>145の答えでもある。
148774ワット発電中さん:2009/12/28(月) 07:59:27 ID:ZarXc7pf
天井に釘打ちするのが電源直結。間違えると天井か吊った物を壊す。
バネでびょーんと吊るのがプルアップ。体重かけても安心。

それぞれ用途が違う、適材適所
149774ワット発電中さん:2009/12/28(月) 08:38:32 ID:N6lww4L5
入力ピンは入力インピーダンスが高いので、本来ならばプルアップ抵抗を入れなくても問題ないはずだが、
実際はノイズがあり、入力ピンに高電圧がかかる可能性があるのでプルアップ抵抗をいれる。
また、信号線も理想的な状態ならば、入力ピンと出力ピンを直結するだけでよいが、
こちらも実際にはノイズがあるのでその影響をなくすためにプルアップ抵抗を入れる。

という認識で合っていますか?
150774ワット発電中さん:2009/12/28(月) 08:57:38 ID:2YQY23+P
モード切替のスイッチを付けるとして、
3端子のトグルスイッチを使って、抵抗なしで電源とグランドを切り替えるのと、
トグルスイッチを2端子として使って、off時にはプルアップ(orダウン)しといて
on側でグランド(or電源)に繋ぐ回路と、
どっちがいいと思う?
151774ワット発電中さん:2009/12/28(月) 09:01:11 ID:ZarXc7pf
入力ピンを抵抗介して電源に吊るのは、外部から信号を与える可能性を想定した場合が主。リセットは書き込み時に使うしね。
入力ピンに出力機能が内蔵されている場合は、その出力機能を壊さないために抵抗で優しく吊る。

AVRには内蔵プルアップがあるから、実験回路で処置が面倒なときはそれで済ませてるよ。出力データレジスタに1書いておけばいいし。
152774ワット発電中さん:2009/12/28(月) 09:16:36 ID:A3fC+DCi
>>149
プルアップで抵抗かまさないと外部からもローにできないよ
入力インピーダンスが高いからこそノイズの影響がでる

>>150
普通は二端子
必ずハイかローで浮くことがないから
ワイヤードオアとかなら三端子
153774ワット発電中さん:2009/12/28(月) 09:20:10 ID:A3fC+DCi
ついでにリセットは内部プルアップをプログラミングする以前の話だから外でつる
154774ワット発電中さん:2009/12/28(月) 09:45:05 ID:ythZZtqC
>>148

ばねで吊っても釘で直付けしても体重かけたら天井にかかる荷重は同じじゃ?
155774ワット発電中さん:2009/12/28(月) 10:00:07 ID:qiRQl3pM
AVRライタを以下のサイトで作成しました。
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2FHIDaspx#t057d3ea
卵-鶏問題を解決するシリアルライタも作成し、
hidspxを書き込んだつもりですが、私の作った回路が
間違っているらしく動きません...orz

そこで、確認だけさせていただきたいのですが、
上記のUSBライタは、何も書き込んでいないATTinyがついた状態で、
USB接続すると、パワーのLEDは点灯するのでしょうか?
それとも、きちんと書き込まれていないとパワーのLED
も点灯しないのでしょうか?
156774ワット発電中さん:2009/12/28(月) 10:07:25 ID:8IfeXKcp
>>155
LEDは点灯しないと思います。
157774ワット発電中さん:2009/12/28(月) 11:46:02 ID:qiRQl3pM
>>156さん
ありがとうございます。
シリアルライタとUSBライタを接続し、
hidspx -pb1 -rにて確認してみたところ、
COM1との接続ができていない結果になりましたので、
シリアルライタ側を精査してみようと思います。
ありがとうございました。
158774ワット発電中さん:2009/12/28(月) 12:09:55 ID:EGpzIIh6
>>150
断線したりより線からヒゲ出たりしたら電源ショートするから
操作スイッチに電源直結するのはお勧めしない
プルアップ/ダウンは入力ピンそば、と考えると、プルアップしといてGNDに落とすのが妥当
もちろん、設計の都合とかでそれ以外も使うけど、ちゃんとメリット/デメリットを考えた方がいい
159774ワット発電中さん:2009/12/28(月) 15:45:25 ID:FJid2vMJ
なんだかやたらと丁寧なスレに戻ったね
160774ワット発電中さん:2009/12/28(月) 16:32:57 ID:qiRQl3pM
155です。
今日一日悩んでいます。
まずわからないのが、シリアル接続したときに
hidspxで確認はできるのでしょうか?
買ってきたばかりのATtiny2313を
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2FHIDaspx#k6538ba1
上記のライタ回路を接続して、接続確認
hidspx.exe -pb4 -rで確認しても、まったく認識されません。
通常シリアルライタでは接続確認ができるのでしょうか?
161774ワット発電中さん:2009/12/28(月) 17:01:09 ID:O4RN3OLk
>>160
その鶏卵は回路図を見ての通り、一方的に送りつけるだけだから認識はできない
最悪ヒューズを半端に書いてターゲットを破壊する可能性もある
仕組みを理解せず確実にやりたいなら純正を買ってくるか
AE-UM232Rでこのスレを検索
162774ワット発電中さん:2009/12/28(月) 17:16:25 ID:qXFnV0Z6
>>160
省略しないで、何をどうやって、結果どうなったか、ちゃんと書かないと、
誰も答えられないし、正直言って相手にしたくないと思う。

HIDspx(ソフト)自体は、シリアル接続のライタにも対応しているけど、
HIDspx(ライタ)は、USB接続のHIDデバイスでしょ。

回路どおりに組んでも、買ってきたままの何もソフトを書き込んでない
2313をICソケットに挿しただけじゃ、動かなくてあたりまえ。

そもそも、書き込みソフト以前に、USB接続ライタの場合、PCにちゃんと
USBデバイスとして認識されてなきゃ動かない。

「-pb4」はシリアル(COM4)ポート経由のSPIブリッジ仕様のISPライタを
使う指定だから、それと違う種類のライタを繋いでいたら当然ながら
認識はされない。
163774ワット発電中さん:2009/12/28(月) 17:17:13 ID:qiRQl3pM
>>161さん

ありがとうございます。
シリアルポートを追って考えていたときに、
あ、RxDを受け取ってないので、認識は無理かなと
思っていましたが、予想通りでよかったです。

シリアルのライタは、データを送りつけているところまでは
オシロを当てて確認できたので、
恐らく動いているものと思っています。
USBの回路を間違えて作ってしまっている点ですね。
ちなみに、このリセット解除を押すタイミングは、
egg_chikne.batをエンターする前に押して、離していなければならないのでしょうか?
USBの回路ももっと見直してみます。
ありがとうございました。
164774ワット発電中さん:2009/12/28(月) 17:25:36 ID:qiRQl3pM
>>162さん
情報が少なすぎて、まことに申し訳ありません。
今日一日やったことは、
1.USBライタを作りたいので、下記の回路を作成しました。
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2FHIDaspx#t057d3ea
2.この回路を動かすために、ATtiny2313にファームを焼くために、下記のライタを作成しました。
http://www-ice.yamagata-cit.ac.jp/ken/senshu/sitedev/index.php?AVR%2FHIDaspx#k6538ba1
3.シリアルのライタを使ってファームを焼きこんだつもりでしたが、USBライタが認識されず、
うまく焼けていないorUSBライタの回路を間違えて作ってしまっていると考えました。
4.シリアルライタをターゲットにしてデータが焼きこまれているかを確認したかったのですが、
そもそもシリアルライタが認識できるかどうかが知りたかったのです。
5.>>161さんのご助言により、RxDがないため認識ができないと理解。
6.オシロからICの足へはデータが飛んでいるので、恐らく焼くことができているのではないか?
7.それでも動かないので、USBの回路を精査しようというところです。
回路は導通チェックを何回もしているのですが、パワーランプも点かないので、
回路が間違っているのではないかと思っています。
165774ワット発電中さん:2009/12/28(月) 18:10:14 ID:qXFnV0Z6
>>164
ヒューズの書き込みに失敗しているんじゃないのかな? そうでなければ、
USBの信号線(D+/D-)と、XTAL発振、リセット、電源、GNDまわりかな。
特にUSBの配線は短く(数cm以内)したほうがいい。

あと、個人的には2313だと、マイコン自体は5V(USB電源)で動作させた方が
いいと思う。

USBに関しては、D+/D-に直列に入れる抵抗や3.3Vツェナーは、「おまじ
ない」くらいで、経験上あんま関係ない。

実はD-ラインが1.5kΩで3.3Vへプルアップされていれば、AVRをソケットに
挿していない「能なし」状態でも、USBコネクタを挿すだけで、ホスト(PC)
側がデバイスが接続されたと思って初期化しようとしてくる。(実際はデバ
イスが応答しないので、初期化&ドライバ組み込みに失敗)

ライタとして動くかどうか以前に、USBデバイスとして機能している状態
であれば、デバイスマネージャでの確認もできるかと。 ここまでは、
ターゲット(書き込み対象)を繋いでいなくても、確認できる。

リンク先回路図の「パワーLED」は、別の回路図ではReadとなっている
ので、デバイスの読み出し中にのみ点灯する仕様ではないかと思う。

単に、電源が入ってるかどうかの確認用のパイロットランプが欲しければ、
LED(A:+/K:-)に1kΩを直列に繋いで電源(VUSB)-GND間に繋げばよい。
166774ワット発電中さん:2009/12/29(火) 11:16:46 ID:vkBbu+qL
上でも書かれてるけど初心者ほど素直に純正品の
AVRISPmk2買って使用した方が良いかと。
今となってはそれほど高い買い物でもないんだから

>HIDspx(ソフト)自体は、シリアル接続のライタにも対応しているけど、
>HIDspx(ライタ)は、USB接続のHIDデバイスでしょ。
大文字と小文字で分けてるらしいから同じに書くと製作者様が怒るぞ(笑
167165:2009/12/29(火) 12:17:54 ID:a0Z44Oeu
>> HIDspx(ソフト)自体は、シリアル接続のライタにも対応しているけど、
>> HIDspx(ライタ)は、USB接続のHIDデバイスでしょ。
> 大文字と小文字で分けてるらしいから同じに書くと製作者様が怒るぞ(笑

そうなん? というか、avrsp/avrppから派生したライタの相関図ってどこ
かにないの? avrspx(x付き)みたいに1文字違いで別物だったりなんだか
よく判らんな。初心者は余計に混乱するんじゃなかろうか?

そもそも、usbspx, HIDspxの他にもメジャーな派生品ってあるんだっけ?
168774ワット発電中さん:2009/12/29(火) 20:31:08 ID:V8IbFEG9
AVRISPmk2買おうと思ったら秋月品切れだた
169774ワット発電中さん:2009/12/29(火) 23:17:00 ID:Mq+3Blx+
AE-UM232R + ブレッドボードが入門ライタとしては最安かつお手軽だと思う今日この頃
170774ワット発電中さん:2009/12/29(火) 23:44:23 ID:AnvL9LoZ
HIDaspx(文字の並びと大文字小文字に注意)はファームウエアを間違いなく
書き込まれたATtiny2313が必要です。
これを手に入れられない、または、確実に書き込めない人は製作が極めて困難
です。
手に入れる方法をまず考えてください。
171774ワット発電中さん:2009/12/30(水) 01:26:05 ID:3CxAmy6A
>>169
何よりまともな高速シリアルポートとして使えるからなあ。
serjtag使えばHIDaspxより速いし、
AVRに関してはわざわざライタ作る意味がない。
と言いつつHIDaspxは2つ作った。

どのライタにもいえることだけど、
RESET=HIでハイインピーダンスになるバッファをかますと便利
172774ワット発電中さん:2009/12/30(水) 01:31:58 ID:R1wuZquI
>>171
そうそう、USBでデバッグもどきが出来るからHIDaspxを作った後でも
有効活用が出来る。
デバッグするのにUART実装しないといけないのが玉に傷だけれど。
そんなわけで最近はICEが欲しい今日この頃。

しかし体感ではプログラム書き込み速度はAE-UM232R<HIDaspxなんだが
何か違うことを言っているのか?
173774ワット発電中さん:2009/12/30(水) 01:42:05 ID:3CxAmy6A
>>172
こっちもちゃんと計ってるわけじゃないから体感でしかない。
素のavrdudeだと遅いんじゃなかったかな。
HIDaspxはハブかますと速くなるし。
174774ワット発電中さん:2009/12/30(水) 13:12:42 ID:PijPAoyG
AVR ONE!ってつおい?
175774ワット発電中さん:2009/12/30(水) 14:13:57 ID:/sLSdyeP
Chanさんのサンプルを参考にコーディングしてたらほぼパクりになった・・・orz
176774ワット発電中さん:2009/12/30(水) 14:23:48 ID:33DpmYfb
>>167
基板にもファームにもソフトにも似たような名前付いててややこしいからな。
これらを組み合わせるとまた名前が変わったりするし
177774ワット発電中さん:2009/12/30(水) 16:07:13 ID:OfrdppVK
実のところ、ずっとパラレルポート接続の(STK-200互換)ライタを使っていて、
特に不自由していなかったんだが、HIDaspx(tiny2313,12MHz)を作ってみた。

USB 2.0ハブ経由(hidmonのbenchで、16.845 kB/s出ている状態)で、20MHz動作
のmega328Pからのフラッシュメモリ(32KB)読み出し「hidspx -ph -rp」の処理
が、16.44s (1.95kB/s)ってのは、正常?

以外にも、ライタ以外全く同じ条件で、パラレルポート接続のライタを使って
読み出した「hidspx -pl1 -rp」場合、12.59s (2.54kB/s)よりもわずかに遅かっ
たんで、こんなもんなのかなと思って。

ちなみに動作環境は、Windows XP(32bit) SP3, Athlon X2 5200+でつ。
178774ワット発電中さん:2009/12/30(水) 18:16:04 ID:QMV4SVyi
ライタの話ばかりじゃなく、
何かAVRで作った作品の話をしようぜ
179774ワット発電中さん:2009/12/30(水) 18:20:13 ID:yMLtBccE
6pinのATtiny4,5,9,10って使ったことある人いる?
180774ワット発電中さん:2009/12/30(水) 18:31:10 ID:d5A2u5hM
いるよ
181774ワット発電中さん:2009/12/30(水) 18:46:24 ID:ZSISZZHA
6ピンを何に使えと。
182MONOYA:2009/12/30(水) 19:12:28 ID:VeI+Qov4
皆様のご要望におこたえして
赤字覚悟の20%OFFセール開催中!!!
シルバーアクセサリーからクロムハーツ登場!!!
当店専属工房で忠実に再現されました。

時計も新商品が続々とご紹介!
┏━━┓‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥
┃\/┃ ♪♪♪♪♪全商品20%OFF♪♪♪♪♪
┗━━┛‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥

※特別企画は対象外になります。
♪セール期間中も新商品、続々UP♪

↓↓↓今すぐクリック↓↓↓
URL://monoya.main.jp/index.html
お問い合わせ等、お気軽にお問い合わせください。

サイト上にてご紹介していない商品もお気軽にお問合せください。

┏┓┏━┓  ★★★
┏┻┻┛□┃┏★★★★┓┏━━━━┓┏━━━━┓┏━━━━┓
┃     ┃┃★★★★┃┃★ご注文確定後、1週間ほどでお手元に★
┗◎━━◎┻┻◎━━◎┻┻◎━━◎┻┻◎━━◎┻┻◎━━◎┛

皆様のご来店、ご注文心よりお待ちしております。

ご質問、お問い合わせのメールはこちらまで
[email protected]
183774ワット発電中さん:2009/12/30(水) 19:18:52 ID:7MiLdqhW
>>177
速度が適正かどうか知らないけど、ソフトUSBだし動いてるなら正常と判断できる
184774ワット発電中さん:2009/12/30(水) 23:13:07 ID:2SMzqUcV
秋月の2313って何で100円なの?
185774ワット発電中さん:2009/12/30(水) 23:58:20 ID:QMV4SVyi
セカンドソース品だから。
ATMEL純正が欲しけりゃ他でかいな。
186jh7ayn:2009/12/31(木) 00:25:34 ID:JoPzqeQd
>177
>mega328Pからのフラッシュメモリ(32KB)読み出し「hidspx -ph -rp」の
>処理が、16.44s (1.95kB/s)ってのは、正常?

ターゲットのクロックにあわせて、-d1のようにしていすれば、速度が
向上すると思います。私の環境では、4〜5kB/s程度の速度です。

187774ワット発電中さん:2009/12/31(木) 00:32:33 ID:M68z1Ono
>>185
でもATMELって書いてあるけど?
188774ワット発電中さん:2009/12/31(木) 01:36:27 ID:KdoDqaea
よく読むとAMETLだったりATEMLだったりする
189774ワット発電中さん:2009/12/31(木) 02:19:45 ID:9L8Negwq
釣られて手元のブレッドボードに刺さっている2313を見てしまったぞ
190774ワット発電中さん:2009/12/31(木) 09:45:35 ID:6DegMfA+
8pinのAVRとか印字が細かくて見えなかった。MよりTの方が先に書いてあるようには見える
191774ワット発電中さん:2009/12/31(木) 09:55:00 ID:M68z1Ono
秋月どんだけ技術力あるんだよ
192177:2009/12/31(木) 10:31:16 ID:LpUlAxRl
>>186
>>処理が、16.44s (1.95kB/s)ってのは、正常?
>
>ターゲットのクロックにあわせて、-d1のようにしていすれば、速度が
>向上すると思います。私の環境では、4〜5kB/s程度の速度です。

試しに「-d1」を追加してみたところ、 >>177 と同じ条件下で4.59s
(6.97kB/s)出ました。 確かにこれだけ速いといいですね。
193774ワット発電中さん:2009/12/31(木) 15:16:22 ID:E/H6HPpr
ライタ作って終わりかよ
194774ワット発電中さん:2009/12/31(木) 15:41:15 ID:LpUlAxRl
口だけ番長か?(w
195fhaircut:2009/12/31(木) 15:41:57 ID:MT9Kml+d
はじめまして,いろいろなモデリング,モデルタイプとユニ-クなヘマスタイルがあリます,
元日と成人の日を祝い ,贈り物を贈りますよ!
かわいい人がたくさん,方法がかんだんですよ~!
ようこそwww.fhaircut.com へ
どうぞよろしくお願いします.
196774ワット発電中さん:2009/12/31(木) 17:03:24 ID:tK6CyhNt
>>193
よその分野にしゃしゃり出てきて自分の立場利用して他人に
ソース公開を迫ったり自分のプログラムのマニュアルを作らせたり
かったるい検証作業をさせられても困るんでむしろずっとライタで
とどまってて欲しい
197774ワット発電中さん:2009/12/31(木) 20:11:58 ID:KdoDqaea
正月暇だから、すぐ作れておもしろそうなの紹介してくれ
198774ワット発電中さん:2009/12/31(木) 21:00:59 ID:arrZpNba
じゃあ御神籤なんてDo-Dai
199 【大凶】 【1547円】 :2010/01/01(金) 00:18:53 ID:sJKdDE+f
あけおめ。
いきなりオーバークロックネタだが、秋月のattiny2313が40MHzで動いた。
クロック源は水晶振動子。
とりあえずUSART、AC、タイマー0、1で動作確認。
ダブルスコアはすごいな。
200774ワット発電中さん:2010/01/01(金) 00:40:47 ID:e/VHv98P
コンデンサ何pF入れた?
201 【大吉】 【1638円】 :2010/01/01(金) 01:02:13 ID:sJKdDE+f
>>200
8pFがちょうど良いらしい。
しかし4個中1個は文字化けが出た。
多分その固体も発振器ならOKだと思う。
202 【ぴょん吉】 【1087円】 :2010/01/01(金) 01:58:00 ID:sJKdDE+f
結局8個試して、USARTで文字化けが確認できたのは1個だった。
ともかく40MHz水晶振動子で起動できるのがすごい。
atmega328pだと水晶振動子では32MHzが限界だった。
PやPAが付いてない無印の方がOC耐性があるのか、
それともSRAMとかが小さいためか、時期によるものか。
203774ワット発電中さん:2010/01/01(金) 14:29:29 ID:W7nCvGKQ
吾輩が644Pで試したときも32MHz程度が限界だった
クロックのduty比が50%に近い方が高い周波数まで耐える印象
28MHz程度までなら特に気にすることなくクロックアップ可能というのが個人的印象
そうする必要性が今後でてくるのかはともかく
204774ワット発電中さん:2010/01/01(金) 17:05:03 ID:e/VHv98P
たしかに、AVRをオーバークロックするぐらいなら、
最初からもっと速いマイコンを使えばいい
205774ワット発電中さん:2010/01/01(金) 17:25:22 ID:mty29eTs
XMEGAシリーズが高機能で内蔵メモリも多いにも関わらず、何気に同等の
megaシリーズより安くて...。ただ、使い道が思いつかない。

ところで、2線式の新しいISPのPDIだっけに対応した、90USB162だったかで
作るオープンソースのライタがあるらしいけど誰か知ってる?

206774ワット発電中さん:2010/01/01(金) 21:53:56 ID:e/VHv98P
DIPでないと基盤起こしたり半田付けが面倒だからねえ
207774ワット発電中さん:2010/01/02(土) 02:20:07 ID:shJI+LC/
基板起こすのはDIPの方が面倒だと思うけど。
208774ワット発電中さん:2010/01/02(土) 11:25:59 ID:+2S7IEbD
半田も表面実装のほうが楽じゃん
209774ワット発電中さん:2010/01/02(土) 12:19:15 ID:19299yaQ
老眼にはきついよ
210774ワット発電中さん:2010/01/02(土) 14:48:00 ID:shJI+LC/
ホビーだったらSMDの半田付けよりランドの穴開けの方がよっぽど難しいと思う。
211774ワット発電中さん:2010/01/02(土) 15:09:48 ID:JCe0NGBs
確かに久しぶりだなw顎ネタ
212774ワット発電中さん:2010/01/02(土) 15:10:44 ID:JCe0NGBs
誤爆スマソ
213774ワット発電中さん:2010/01/02(土) 17:13:41 ID:jaGUipar
ごだびん乙
214774ワット発電中さん:2010/01/02(土) 23:36:08 ID:fdfUFwOP
155です。
昨年は大変お世話になりました。
件のライタですが、無事作成することが出来、
やっとスタートラインに立てた感じです。
結局、LEDが点滅するサンプルをシリアルで焼いて、
その動作を確認してから、ファームを焼きつけ、
Hidspxの回路に2313を搭載して動かしたところ
無事動きました。皆様には大変お世話になり、ありがとうございました。

本年も皆様にとって良い年でありますように。
215774ワット発電中さん:2010/01/04(月) 22:05:12 ID:vjSatTpq
>>205 xmegaおいくらですか?本当に安いならmega88のリプレースでまとまった数使いたいんだけど。
216774ワット発電中さん:2010/01/04(月) 23:27:31 ID:g7+INKiv
>>205
ttp://xmega.mattair.net/
これのことみたいだね。コードが公開されると嬉しいかも。

ところで純正にも ATAVRXPLAIN というのがあるね。
ttp://www.atmel.com/dyn/products/tools_card.asp?tool_id=4506
似たようなライタ機能もてそうだけど。今は使えないみたいだね。

217205:2010/01/05(火) 02:12:03 ID:UfWF6Y/n
>>215
どの程度の値段を期待か判らないけど、mega88の置き換えならmega328P(250円
@秋月)あたりでいいのでは?低消費電力(Pico Power)だし。 そもそもxmegaは
上位版という位置づけなんで、そのクラスの置き換え製品自体がない。

安いと言ったのは、同じDigikeyで同等内蔵メモリ容量のmega64/128(最大16MHz)
などと比較しての話。まぁmega64/128は秋月価格が異様に安いので、それと比べ
たら、同ピン数のATXMEGA128A3で@570.28円/25個〜と大差ない価格だけど、最大
32MHz動作だし、UARTやSPIと切り替え可能なポートブロックが4セット入って
いる。(∴ピン割り当てが楽)

>>216
いろいろググってみたら、どうやらこれがそうらしい。
ttp://www.fourwalledcubicle.com/AVRISP.php

> Features:
> Supports both ISP (AVR8) and PDI (XMEGA) Programming Protocols
> Download:
> The current firmware is located in the latest LUFA Download
> Package, under the Projects/AVRISP folder.

ただし、何も変更しないかソース公開すれば済みそうな気もするけど、LUFA
(USBスタック)の商用利用は、US$1500払えと書いてある。xmegaの仕様書を
読む限り、PDI自体の送/受信はSPIと大差ないし、Atmel純正のUSBスタック
を使えば同等のことはできそう。

AVRISP mkII Cloneでぐぐったら、秋月でも扱ってる汎用USBコントローラの
USBN9604とmega32を組み合わせたAVRISP mkII Cloneライタを見つけた。

ttp://www.embedded-projects.net/index.php?page_id=169
218205:2010/01/05(火) 03:25:46 ID:UfWF6Y/n
>>216
書き忘れたが、自分もavrfreaks.netでそれ見て知った。

で、その後ちょいと調べたが、リンク先から「LUFA xxxxxx.zip」をダウンロード
して、解凍したフォルダの「./Projects/AVRISP」内にあるmakeファイルのコメ
ントを読むと、デフォルトのmake設定で秋月でも扱っている「AT90USBKEY」用の
バイナリができるっぽい。実際「make clean」後「make all」で「AVRISP.hex」
と「AVRISP.eep」ができたけど、AT90USBKEYの現物がないので未確認。

ISP/PDI接続に使うピンの説明が見当たらないけど、おそらくAT90USBKEYの
JTAGコネクタを(本来と逆にターゲット接続向きに)使うようだ。

makeファイル内の
「MCU = at90usb1287」
「BOARD = USBKEY」
「F_CPU = 8000000」

あたりを書き換えると、他の評価ボードやターゲットにもそのまま対応できそう。
標準で対応している評価ボードは「./LUFA/Drivers/Board」内にヘッダがある。
219774ワット発電中さん:2010/01/05(火) 23:52:27 ID:cRdU+8uM
俺みたいな電子工作初めてなんてヤツでも、どうにか動くものが作れるって素晴らしいなぁ。
信号を拾ってモーターを回せたりするだけでニヤニヤできる。
220774ワット発電中さん:2010/01/06(水) 08:11:28 ID:YbxL6hzk
次のステップはPWMで回転数調整だな
221774ワット発電中さん:2010/01/06(水) 21:15:36 ID:tNQoXxzT
いや、PWMとLCフィルタでDAC
222774ワット発電中さん:2010/01/06(水) 21:20:58 ID:m1zLHABG
そして「できた!E231系墜落インバーターの音を再現したぞ!」
という本末転倒で数日を費やすw
223774ワット発電中さん:2010/01/06(水) 23:17:53 ID:VTCcZSQS
なんであえてIGBTの周波数なんだ
224774ワット発電中さん:2010/01/06(水) 23:29:29 ID:YbxL6hzk
オフ会したいなあ
225774ワット発電中さん:2010/01/06(水) 23:40:10 ID:hArKmb1T
オフ?AVRで作った作品を皆で持ち寄るとか?

オフ板で募集してみたらどうでしょう?
秋葉原とかそういうスレで募集すれば人が集まるかもね。
226774ワット発電中さん:2010/01/07(木) 00:01:56 ID:GvWaxGpW
!
227774ワット発電中さん:2010/01/07(木) 00:02:17 ID:qatbnNSU
!
228774ワット発電中さん:2010/01/07(木) 00:50:46 ID:AM1WQGfw
最初の一個のAVRを焼けない人のためのオフとかはいいかもね
229774ワット発電中さん:2010/01/07(木) 01:35:58 ID:6hUuXc+c
tiny2313のUSIの3線動作って、
MOSIとMISOを見るんじゃなくてDOとDIの方か。
まるっきり逆じゃないか。
megaと同じだと思ってはまったorz
230774ワット発電中さん:2010/01/07(木) 01:52:44 ID:gt1oodR/
>>229
やはり何は無くともデータシートですね

そんなオレはwinavrの最適化にやられてこんな時間に・・・
かといって最適化無しだとコード膨れすぎだし、どうすりゃいいのかな
明日会社いけるかな・・・
231774ワット発電中さん:2010/01/07(木) 02:21:17 ID:nKjOqTCg
USIコーディングめんどくさすぎだからUARTで代用したよ……
232774ワット発電中さん:2010/01/07(木) 09:35:41 ID:WW8mRKd9
とっかかりはMODチップだろ
233774ワット発電中さん:2010/01/07(木) 10:15:57 ID:Wgn4bBJP
>>228
秋月とかで最初の1個のAVRを買ってもらい
ファミレスとかで焼き焼き?
面白そうだね。
234774ワット発電中さん:2010/01/07(木) 10:32:22 ID:AM1WQGfw
それが目的だけになってもいいけど、掲示板以外で相談できるコネ(相談される
側はちょっとアレだがw)が直にある安心感も得られるんじゃないかな。
とはいえ、敷居下げればそれだけアレな事になるのも見えるけど。


面白ければOKという意味では(すべてに無責任であって)試みとしてはよさげ。
実際最初の1個の出費(ライタを買うか否か)よりかは、安心感があっていいかと。
235774ワット発電中さん:2010/01/07(木) 10:32:38 ID:3BRBhV0d
通販で書き込みサービスでもあればいいねー
236774ワット発電中さん:2010/01/07(木) 10:36:04 ID:Wgn4bBJP
>掲示板以外で相談できるコネ
ここまで期待されると困るかも
237774ワット発電中さん:2010/01/07(木) 10:48:34 ID:/CTDDzBc
>>235
千秋ゼミで実費のみでやってませんでしたっけ??
でもあんまり要望無いのだとか、今のところ1件しか要請が無かったと
書いてあったように覚えています。違うサイトだったらすいません。
238774ワット発電中さん:2010/01/07(木) 11:12:13 ID:AM1WQGfw
自分で言い出して置いてアレだけど、自分で予防線のつもりで書いたw>頼られる


ずいぶん昔PIC始めた頃は掲示板もNetの情報もロクなものが全くなく、
秋月のサードパーティ品ライタ(秋月じゃないもの)と変なアセンブラ(非純正)に
慣らされて標準的なニモニックを知らずにコーディングしてたよw
というかそれはそれで使いやすかったんだが、後で困ることになったりした。
一匹狼で頑張るのに疲れたのもこの頃だったな(遠い目

今は逆にAVRの先達によってめちゃくちゃ楽させてもらってる、ある意味感謝。
239774ワット発電中さん:2010/01/08(金) 00:09:17 ID:toimF58d
USARTのマスタ側から0x00を送信する為に
UDRレジスタに0x00を書くんだけど送信してくれない・・・
0x00以外の値は正常に送信できるんだけど
こんな症状で思い当たる人いませんか?
240774ワット発電中さん:2010/01/08(金) 02:24:10 ID:oorztKEo
>>239
送信ルーチンがヌル止めを意識してるってオチは?
241774ワット発電中さん:2010/01/08(金) 02:43:32 ID:UGv7YiD4
送信されないということをどうやって確認したのか興味がある
242774ワット発電中さん:2010/01/08(金) 02:50:56 ID:LEql/8+E
「送信してくれない」とは、出力をロジアナとかで見て、
信号がずっとHIレベルなのを確認したって事じゃないかね。

送信してるかどうか、ぐらいはロジアナが無くても出力を
空きポートに繋げて、ピン変化とタイマー割り込みで追えば
自身で確認できる。まあロジック側のバグだろうけどさw
243774ワット発電中さん:2010/01/08(金) 04:41:02 ID:UrMzHsCv
>>242
ロジアナ若しくはそれに類する物を持ってる奴は
会社で使ってる人除けば少ないだろw

きっと、連続してUDRにx0とxffとかを交互に出力しつづけるコードを書いて
fカウンタ付きのテスタかオシロで見てみるとかじゃね?
244774ワット発電中さん:2010/01/08(金) 07:36:54 ID:tJfFJ6OJ
まぁ100%ソフト側の問題だろうけど、UARTによる通信なら、必ずスタート
ビットとストップビットがあるから、連続で0x00を送信しても、出力には
パルスが出る。 110bpsとか極端にボーレートを下げてやれば、通信する
ビットパターンによっては、LEDの明滅でもある程度判るのでは?

おおかた、

UART0_putstring("\0");

などと、文字列送信する関数(NUL文字(0x00)が文字列の終端を示すが、NUL
文字自体は送信の対象外)を呼んでいるんだろう。
245774ワット発電中さん:2010/01/08(金) 19:28:50 ID:ZOEii5uh
246774ワット発電中さん:2010/01/08(金) 19:49:52 ID:PjEhCQ3s
>>241
自分自身を誇るのではなく、組織や共同体に誇りを持てる人間かどうか
求められる人材は昔も今も同じです。難しい事は要求しません
学生なんだから、使えなくて当然なんです
だから資格や経験などは全く気にしなくて結構
経験なんか無くて当たり前なんですから
社会人として、そして何より国民として一流の人間でいられる考え方を持っているかどうか
見ているのはそこだけです
学校の勉強だけ一流の人は要りません
247774ワット発電中さん:2010/01/08(金) 20:03:15 ID:YUFxFnns
そのコピペ流行ってんの?
248774ワット発電中さん:2010/01/08(金) 21:40:10 ID:WF7GUJcy
AVR最近始めました
HIDaspxというライターは12Mhzの水晶でないと作れないのですか
10Mhzの手持ちがあるのでできればそちらで作りたいのですが。
249774ワット発電中さん:2010/01/08(金) 22:01:57 ID:aq8K1W/3
USBのクロックとの関係で12MHz以外は無理、ソフトが頑張れば不可能じゃないかも
しれないが…それは248が頑張ってくれるはずだよね
250774ワット発電中さん:2010/01/08(金) 22:55:31 ID:VD2jMdxs
セラミック発振子じゃ駄目なの
251774ワット発電中さん:2010/01/08(金) 22:57:12 ID:ryLHtE1J
>>250
HIDaspxの回路図にはセラロック不可と書いてある
不安定でよければ利用できるかもしれないが、自分でやってみたら?
252239:2010/01/08(金) 23:16:31 ID:toimF58d
皆さんアドバイスありがとう御座います
送信の有無については当然ロジアナなんて無いので
PC側のターミナルとTxにアクティブローのLEDをつけて確認しました
0xFFを送った場合はLEDは全く点灯しないかと思いましたが薄暗く付くのを確認してます
0x01の場合は明るく付きました
もちろんターミナル側でも確認できました
ところが0x00についてはLEDも付かず、ターミナルも反応無しでしたので・・・
皆さんのアドバイスを参考に連休頑張ってみます
253774ワット発電中さん:2010/01/08(金) 23:20:00 ID:0LJAeztM
pickit 2だったら 簡易ロジアナついてたんだけどね・・・
254774ワット発電中さん:2010/01/09(土) 00:47:46 ID:2MHpCFZI
>>250
レスありがとうございます
12Mhz買ってきます
255774ワット発電中さん:2010/01/09(土) 00:51:56 ID:+OAgmICz
>>252
attiny2313でハードウェアのUSARTで送信して、
ソフトウェアUARTで受信するループバックを試したけど、
0x00はきちんと送れるし受けられるよ。(この逆はPC側モニタ)
送る側の問題だと思うよ。
ところでAVRの型番はナニ?
256774ワット発電中さん:2010/01/09(土) 00:55:46 ID:+OAgmICz
>>254
hex作り直す気があるなら16MHzや20MHzでも動くよ。
詳しくはusbdrvフォルダ下参照。
12MHzって使い道が少ないので一応。
257774ワット発電中さん:2010/01/10(日) 20:13:29 ID:QpOoBKSC
ATtiny2313で7セグLEDをダイナミックドライブで3桁点灯する回路をくんだけど
最後の桁だけ薄暗い、具体的にはDポートでTrに繋いだコモンアノードをドライブ
Bポートで抵抗に繋いだカソードをON・OFFさせる回路
Trが悪いのか、LEDが悪いのか、AVRが悪いのかソフトが悪いのか散々悩んだ挙句
結局はDポートを一つ出力設定できてなかった、しかし入力モードでもPORTDに1をセットすると
内部プルアップがONになって、微弱電流でTrがONになってたとさチャンチャン
なんという巧妙な罠orz
258774ワット発電中さん:2010/01/10(日) 20:54:54 ID:7UKDeYtI
USBキーボードを作ってみようと思って、事始めにAT90USBKEYを買ってみたが便利だな。
マイコンボードとUSBケーブル1本で繋ぐだけでプログラムできてライターいらず。
電源もUSBから供給してもらえるので、用意する必要が無くてらくちん。

唯一不満なのは、90USB1287は石単品での入手が困難な事だな。
秋月あたりで気軽に購入できるとありがたいのだが。
259774ワット発電中さん:2010/01/10(日) 21:54:18 ID:JQmfGOUt
結局この辺のマイコンて入手性と安さだよね
秋月に2313辺りがなかったらきっとAVRやらなかったし
ライタも自作しなくても950円のやつでいいしPICより入りやすい
tinyでUSBなやつ欲しいね
型番がAT90止まりってことは多分Atmelやる気ないんだろうけど
260774ワット発電中さん:2010/01/10(日) 21:57:18 ID:g/X16ImH
PS2キーボードの規格が簡単でいいぞ
261774ワット発電中さん:2010/01/10(日) 21:57:31 ID:50yGd3bb
>>257
それ、めちゃくちゃ典型的な例だから。
LEDが1つだけほのかに光ってる→入力モード、プルアップ電流がシンク/ソース
っていうパターン。まぁ誰もが一度は通る道さ・・・多分。
262774ワット発電中さん:2010/01/10(日) 22:08:37 ID:fY5IhmA9
>>259
megaのはあるでそ。AT90で止まってないよ。
263774ワット発電中さん:2010/01/10(日) 22:42:05 ID:7UKDeYtI
>>260
USBでも1日ぐらいで完成しちゃったよ。
サンプルコードも分かりやすくて良かった。

>>262
秋月あたりで売ってるようなATMEGAでUSB内蔵しているのってあるの?
チップ外部にUSBとRS-232Cを変換するチップを付けるのは面倒だから嫌なのだ。
264774ワット発電中さん:2010/01/10(日) 22:49:35 ID:7oJHOw0e
USB内蔵のはマイクロファンで売ってるのしか知らないなぁ
265774ワット発電中さん:2010/01/10(日) 22:51:49 ID:fY5IhmA9
>>263
>秋月あたりで売ってるようなATMEGA
これがどういう意味なのかわかりませんが
>>262は型番がAT90では止まってないよって意味です。
266774ワット発電中さん:2010/01/10(日) 23:04:13 ID:PD6VJlkm
特別な書き込みソフトがいらない
ライターでも作ってください



267774ワット発電中さん:2010/01/10(日) 23:19:35 ID:7UKDeYtI
>>264
おお、AT90USB162-16-TQFP32が577円で売ってた。
情報ありがとう!

>>265
あ、なるほど。じゃあ、ちょっと勘違いして読んでました。
268774ワット発電中さん:2010/01/10(日) 23:38:46 ID:4PrhXMSK
>>267
これ面白そうだな。
RAMがちょっと小さいのが気になるけど。
269774ワット発電中さん:2010/01/10(日) 23:53:29 ID:JQmfGOUt
>>262
ATmega32U4てのが存在するのね
通販はdigikeyにも在庫なかった
SRAM2KでPLLの64MHzがタイマと繋がってるから
遊ぶにはちょうど良さそうなんだけど
270774ワット発電中さん:2010/01/11(月) 08:36:01 ID:Cq90RnT1
>>269
ATmega32U4(44-QFP)の在庫は無いけど、ATmega32U2(32-QFP)なら在庫ある。

ttp://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=ATMEGA32U2-AU-ND

但し、ピン数の関係で内蔵ADCがない。orz
271774ワット発電中さん:2010/01/11(月) 18:57:17 ID:jTHmEhIa
AVRISPが緑ランプ状態なのに(何もしていなくても)ときどきオレンジ色に5回点滅するんだけど・・・。
HEX自体は普通に書き込めるんだけど,壊れてるのでしょうか?
272774ワット発電中さん:2010/01/11(月) 19:24:19 ID:jTHmEhIa
パスコン手抜きせずに付けたら・・・.
基本は大事ですね・・・.
273774ワット発電中さん:2010/01/11(月) 20:11:22 ID:UPjw5LYA
完全同期設計だから電源にはスパイクノイズが出るよね。
(オシロで見たことないけど)
274774ワット発電中さん:2010/01/12(火) 13:52:21 ID:lABZV5KE
>>273
電源のスパイクノイズは素人には分かりにくいよね、
俺んちの安い10MHzのオシロじゃ観測できなかったよ。
275774ワット発電中さん:2010/01/12(火) 16:13:44 ID:B2IDxRP3
コモンモードトランス
276774ワット発電中さん:2010/01/12(火) 19:27:24 ID:6ojd9Wx6
チョークコイルの入れ方は意外と面倒だから
素直にパスコン貼れ。

ブレッドボードだと無理だけど、アレはもともとが低速実験の為の物なんだから無理すんな。
277774ワット発電中さん:2010/01/12(火) 22:46:14 ID:H53YeX6X
コモンモードチョークとか、FBとか3端子コンデンサとか、トラ技で話題になるけど
イマイチ使い方が分からない部品の一つ。

産機の制御機器にはノイズフィルタ(コモンモードトランス?)を付けなけりゃいけないみたいだけど。
(内製なんで付けてないです。外販なら付けるかなぁ。)
メーカーの営業マンに聞いたら、「おまじないです」って言ってた。
278774ワット発電中さん:2010/01/12(火) 23:09:01 ID:B/BTyLNm
>>277
おまじない
279774ワット発電中さん:2010/01/12(火) 23:27:03 ID:2sIywc6M
EMI環境に置いてみるとその差歴然
280774ワット発電中さん:2010/01/12(火) 23:38:11 ID:H53YeX6X
>EMI
 産機のセンシング・制御機器、駆動機器って、個々がノイズ対策されてるので大丈夫なんだと思ってました。
ウチは殆どがエア・油圧系なので、ノイズ源と言ったら200V系の電動機の電源ラインぐらいかな・・・
281774ワット発電中さん:2010/01/12(火) 23:40:27 ID:snK1xkFT
パスコンもおまじないです
282774ワット発電中さん:2010/01/12(火) 23:47:49 ID:cS1DfMCi
おまじないかあ。

メーカーの営業マンがそんな事を言ってちゃいかんと思うが、売り込み相手に使いこなすノウハウが無いと判断したら、迎合してそんな言い方をするのかもね。

ノイズ対策部品の使い方を一から説明できる程の知識も暇も無いだろうし。
283774ワット発電中さん:2010/01/12(火) 23:50:35 ID:lABZV5KE
個人の趣味で作ってるのでEMIなんてそっちのけっしょ普通は、
コモンモードチョークは機器のノイズを外部に放出しない意味の方が大きい訳だし。
284774ワット発電中さん:2010/01/12(火) 23:53:04 ID:zRlkvVdr
俺の感覚
パスコン : 無いとAVRでも誤動作したりする。マジ効く。
FB : アナログ混在の時は目に見えて効く。デジタル一本ならいらんだろ
その他のノイズ対策用スペシャル部品 : おまじない。入れたことに意味がある
285774ワット発電中さん:2010/01/13(水) 00:00:17 ID:54V+Kkqs
>>277
FCC Class Bを通らないとかでEMI測定室に缶詰めになってあらゆる手持ちのノイズ対策部品を試してみるとかの経験が無いと分からないだろう。

理屈ではなくてむしろ泥臭いノウハウの塊なので。
286774ワット発電中さん:2010/01/13(水) 00:03:56 ID:C+KipAzt
>>285
セットばらした時、ケース内のあっちこっちにアルミテープが貼ってあったりすると
「あぁ、苦労したんだろうなぁ・・・」って思う
287774ワット発電中さん:2010/01/13(水) 01:10:23 ID:A5vNKqOD
そもそもそんなノイズを見れる計器持ってないし
オレの机の上の動作確認で通ればOK
再現性の無い現象は困るけどしゃーない
288774ワット発電中さん:2010/01/13(水) 03:12:39 ID:SMm4cvcs
回路設計やってる東大生がパスコンを知らなくて困ったことなら昔あった
289774ワット発電中さん:2010/01/13(水) 03:25:25 ID:aUlBF6wx
そのうち某マジコン仕分け人みたいに必要論言いそうだ>パスコン
290774ワット発電中さん:2010/01/13(水) 04:02:29 ID:cLfuRlUw
EMI対策部品か・・・最初からちゃんと考えて入れたら効く
後から泥縄式に付けてもほとんど効かない
291774ワット発電中さん:2010/01/13(水) 04:49:23 ID:WEUcjPmE
研究室入ったらパスコン程度の知識すら積みあがってなくてワロタ。
292774ワット発電中さん:2010/01/13(水) 09:27:34 ID:C+KipAzt
>>290
しかし、最後にしがみつくワラ
293774ワット発電中さん:2010/01/13(水) 10:51:54 ID:E/+f/KcI
>>287
機器が放射するノイズなら、機器を短波ラジオやFMラジオに近づければある
程度は判る。

ホンダ系列の電装品メーカーで『車載のラジオの受信にECUからのノイズが
乗るってことで、マイコン(SH7055)の動作クロックをちょっとだけずらして
対策しました』なんてことがあった。

確かマイコンの動作クロックが40MHzで、高調波ノイズが80.0MHzの東京FMに
バッチリかぶるので、ちょっと低い発振周波数の水晶に交換して「対策」(w

ウソのような本当にあった話です。

家電やコンピュータに比べたら、車載の電装品は野放しの無法地帯みたいな
もの。 レクサスが暴走(マットが原因とされているが)するとか、プリウス
のブレーキが抜けるとか、あってもなんら不思議ではない。
294774ワット発電中さん:2010/01/13(水) 11:03:28 ID:7VMZQOtU
>>293
>ウソのような本当に・・・
周波数にわざとジッタを発生させてピーク値を誤魔化すのはトレンドなんですぜ。
295293:2010/01/13(水) 13:47:31 ID:E/+f/KcI
>>294
> 周波数にわざとジッタを発生させてピーク値を誤魔化すのはトレンドなんですぜ。

それは特定の周波数にエネルギーが集中するのを分散させる目的だよね。

>>293 はそういう対策じゃなくて、単に40.000MHzの水晶を、例えば39.995MHz
とかに交換しただけって話。 FM東京の80.0MHzに高調波は出なくなるけど、
周波数をずらしただけで、電磁波放射の対策にはなっていない。目くらまし。

当然、FCCやVCCIは周波数帯毎で電界強度が規制しているから基準をクリア
できないけど、車載の電装品FCCの規制対象外で野放し状態ってこと。
296774ワット発電中さん:2010/01/13(水) 14:42:39 ID:7VMZQOtU
実際、ラジオへの影響なんて距離を10cm離せば済んだ問題でもあるだろから
そんな神経質になる程でもなかろー
297774ワット発電中さん:2010/01/13(水) 15:01:31 ID:fkjJzFX+
Arduino の MsTimer2 と同等のモノを ATTINY2313 で作れないかしら

http://www.arduino.cc/playground/Main/MsTimer2

なんか C++ ぽくて、C 始めたばかりのウチの知識じゃ移植できない;;
298774ワット発電中さん:2010/01/13(水) 15:10:37 ID:7VMZQOtU
>>297
ん? ほとんどなにもしてないじゃん。

プリスケーラーの設定と
オーバー割り込みで+1してタイマーをセットし直してるだけだし。
299774ワット発電中さん:2010/01/13(水) 15:16:41 ID:fkjJzFX+
メインループとは関係なく、正確に指定時間後に指定関数を実行できればいいんだけど、
まさにその機能のライブラリがあるのに ATTINY2313 で使えなかったと言う
今後も使えるし、汎用ライブラリとして持っておきたいけど、それだけの知識がなくて四苦八苦です
300774ワット発電中さん:2010/01/13(水) 15:20:56 ID:tuYnj4OT
タイマー割り込みで調べれば良いと思うよ。
301774ワット発電中さん:2010/01/13(水) 15:27:45 ID:7VMZQOtU
>>299
初期設定なんかで浮動小数点演算かましてるから2313ではROMを無駄に消費するので
そのままの移植ではなく、一旦固定小数の演算に置き換える必要はありそうだね。
302301:2010/01/13(水) 15:29:20 ID:7VMZQOtU
あ、ごめん関係ないや。
303774ワット発電中さん:2010/01/13(水) 15:45:30 ID:fkjJzFX+
TCNT2 = MsTimer2::tcnt2;

この部分と、この「::」ってたぶん C++ 特有の表現が分からないです
NAMESPEACE とかと関係あるのかしら
304774ワット発電中さん:2010/01/13(水) 15:47:17 ID:7VMZQOtU
>>299
128バイトのRAMでFuncを実行するのはちょっと危険な気がするな。
コンパイラ通すだけなら協力してもいいけど。
305774ワット発電中さん:2010/01/13(水) 15:50:57 ID:7VMZQOtU
>>303
Cにするのは左側のクラス名(MsTimer2::)を外しちゃいます。
306774ワット発電中さん:2010/01/13(水) 15:54:52 ID:fkjJzFX+
void MsTimer1::set(unsigned long ms, void (*f)()) {
 float prescaler = 0.0;
 OCR1AH = 0b00000000;
 OCR1AL = 0b11111111;
 cbi(TIMSK,TOIE1);
 cbi(TCCR1B,WGM13);
 sbi(TCCR1B,WGM12);
 cbi(TCCR1A,WGM11);
 cbi(TCCR1A,WGM10);
 cbi(TIMSK,OCIE1A);
 if ((F_CPU >= 1000000UL) && (F_CPU <= 16000000UL)) {
  cbi(TCCR1B,CS12);
  sbi(TCCR1B,CS11);
  sbi(TCCR1B,CS10);
  prescaler = 64.0;
 }
 else if (F_CPU < 1000000UL) {
  cbi(TCCR1B,CS12);
  sbi(TCCR1B,CS11);
  cbi(TCCR1B,CS10);
  prescaler = 8.0;
 }
 else {
  sbi(TCCR1B,CS12);
  cbi(TCCR1B,CS11);
  cbi(TCCR1B,CS10);
  prescaler = 256.0;
 }
 tcnt1 = 256 - (int)((float)F_CPU * 0.001 / prescaler);
 if (ms == 0)
  msecs = 1;
 else
  msecs = ms;
 func = f;
}
void MsTimer1::start() {
 count = 0;
 overflowing = 0;
 TCNT1L = tcnt1;
 sbi(TIMSK,TOIE1);
}
void MsTimer1::stop() {
 cbi(TIMSK,TOIE1);
}
void MsTimer1::_overflow() {
 count += 1; 
 if (count >= msecs && !overflowing) {
  overflowing = 1;
  count = 0;
  (*func)();
  overflowing = 0;
 }
}
ISR(TIMER1_OVF_vect) {
 TCNT1L = MsTimer1::tcnt1;
 MsTimer1::_overflow();
}

こんな感じに変換
正しい方向に進んでるかもよく分からないし、ネームスペースの変換が不明です
307774ワット発電中さん:2010/01/13(水) 15:56:26 ID:fkjJzFX+
>>305
外した場合、MsTimer2.h が意味をなさなくなるのですか?
うーん、マイコンに C++ つかうとか意味不明だ
308774ワット発電中さん:2010/01/13(水) 16:59:33 ID:7VMZQOtU
>>307
そうですね、hに入ってるのはプロトタイプ宣言ですから意味無くなりますね。

>マイコンに C++
LANなどのプロトコルスタックとか実装する際にはクラス分けされていた方が便利ですけどね。
309774ワット発電中さん:2010/01/13(水) 17:47:02 ID:7VMZQOtU
>>307
コンパイル通してみたけど要る?
うpロダ教えてくれれば放り込むけど。
310774ワット発電中さん:2010/01/13(水) 21:43:37 ID:8PGN3Bx5
ネームスペース使うのはライブラリで関数名などが
被らないようにするだけなのかな…。

これくらいのものならベタに書き直してもいいような気も。
311774ワット発電中さん:2010/01/13(水) 22:02:32 ID:YuZgL66I
こんなん
>AVRマイコン電子工作製作会開催のお知らせ
http://digit.kyohritsu.com/EVENT/100130.html
312774ワット発電中さん:2010/01/13(水) 22:33:16 ID:e2Vq8Fi9
AVRWRT売りつけるつもりなら328P対応しとけよ
313774ワット発電中さん:2010/01/13(水) 22:36:06 ID:wL2moEjJ
わざわざ共立のライタなんか買わなくてもAVRISPは3000円も出せば買えるだろ
そんなとこでケチってどうするんだよと
314774ワット発電中さん:2010/01/13(水) 22:49:03 ID:LeMlIVvG
偶数倍の高調波って、あんまり出ないんだけどなー
315774ワット発電中さん:2010/01/13(水) 22:58:15 ID:A5vNKqOD
12mmのスペーサ扱ってる秋葉の店か通販ショップ教えてくれ
10mmとか15mmとかいらねーんじゃあ
316774ワット発電中さん:2010/01/13(水) 23:07:44 ID:C+KipAzt
>>315
西川にない?
317774ワット発電中さん:2010/01/13(水) 23:12:25 ID:P44Rzh8P
>315
通販でいいなら廣杉が最強。おおむね西川の半額。
http://www.hirosugi.co.jp/
318774ワット発電中さん:2010/01/14(木) 00:03:47 ID:JFDoopnl
3年ぶりぐらいにAVRでマイコンの練習を再開してみようと思うんです
中古でそれ用にWindowsのノートパソコンも買ってきました
シリアルもパラレルも付いてないけども
それでdigi-keyでAVRISPを買おうと思うんですけど
そこで買い物するならついでにこれも買っとけってものあります?
上の方で話題に出てたUSB-keyとかおすすめですか
319774ワット発電中さん:2010/01/14(木) 00:08:48 ID:gH2IdIji
>>318
秋月のAE-UM232Rがおすすめ。

>>306
arduinoのライブラリのコードは汎用化し過ぎて、
大雑把でいい加減だから、参考程度に留める事。
特に(*func)()の箇所、
TINY2313は無駄にスタックを食い潰す様な真似はできない。
割り込み中のコールバックは避けてフラグに逃がす事。
OVF割り込み中にソフトでTCNT値を更新する方法は、
正確とはとても言えないので、比較一致割り込みに変更。
OCRn値は1msecが欲しいなら20MHz時8分周で2499。
式は0.001秒/(8分周/20MHz)-1=2499。
最後の-1は0オリジンのため。
8ビットタイマ0で249で100usecの周期を作り、
割り込み中に10回カウントしても良い。
周期はハードウェア生成なので正確さは供給クロック次第。
320774ワット発電中さん:2010/01/14(木) 06:17:17 ID:CtlsYKG0
>>307
ほい ttp://www7.big.or.jp/~kerokero/test/tny2313_test.zip
動作確認もしておいた
321774ワット発電中さん:2010/01/14(木) 07:55:48 ID:CtlsYKG0
>>314
ですよねー、矩形波は奇数倍で構成されていますからね。
322774ワット発電中さん:2010/01/14(木) 08:29:51 ID:ZIGzIakr
>>320
おおお、ありがと!
早速試してみます
323774ワット発電中さん:2010/01/14(木) 09:59:29 ID:CtlsYKG0
>>322
>>319の言うとおり、タイマーの精度はいい加減だし、スタック消費には要注意な。
動作がおかしくなったら、2313以外のRAMの多いのに切り替えた方が吉。
あくまでお試し的なプログラムなので気を付けれ。
324774ワット発電中さん:2010/01/14(木) 10:06:11 ID:Gbuym4fq
タイマーごときライブラリにするほどのものでもない
325774ワット発電中さん:2010/01/14(木) 10:08:24 ID:CtlsYKG0
>>324
泳げないやつに泳ぎを教えるより、浮き輪を貸した方が早いのでな。
326774ワット発電中さん:2010/01/14(木) 16:21:34 ID:ZIGzIakr
ID:CtlsYKG0
ありがとうございました
難なく目的のものが作れました

これは便利なライブラリだ
327774ワット発電中さん:2010/01/14(木) 17:32:32 ID:5iCYYXwC
>>325
うまいこと言うなぁ。
AVRでもリアルタイムOSってあるのかな?
328774ワット発電中さん:2010/01/14(木) 19:01:01 ID:fwyHPyO1
>>327
ちっと古い情報だけど・・・
ttp://akiba.geocities.jp/atmel_avr_atros/20070726.html
329774ワット発電中さん:2010/01/14(木) 21:12:25 ID:L6FpYm3E
う〜む。組込系MCUのベテランが居わしますなぁ。

ところで、このスレってAVRの神様ことchaNさんは見てるのだろうか。
ちょっと気になる。
330774ワット発電中さん:2010/01/14(木) 21:29:19 ID:BLDh8+Mo
>>329
神はいつでも高いところから我々を見守っていらっしゃるが
我々の前には姿を現すことは無いのだよ
331774ワット発電中さん:2010/01/14(木) 22:07:51 ID:opuQDqwi
>>327
AVR freaks内にも比較的しきいの低そうなRTOSが公開してあったと思う
332774ワット発電中さん:2010/01/15(金) 00:16:58 ID:M5pQUeZV
そういや無理矢理2313にRTOS乗ってるのがあったな。
でも2313だったらソフトの書きやすさはそこまで恩恵うけられなさそうだけど。でも俺もやってみたい
333774ワット発電中さん:2010/01/15(金) 00:58:31 ID:EAyISgDE
どこかにプレステコントローラ を PS/2マウスのコネクタに変換するAVRはありませんか
ゲームでパッドが対応してないものがあって、キー割り当てソフトもきかず、
マウスの代わりに使いたいのです
334774ワット発電中さん:2010/01/15(金) 01:00:02 ID:vL/tPV+8
2313だと非プリエンティブなら現実的かな
各タスクはステートマシン化してnクロック以内にかならず制御を返す感じで
335774ワット発電中さん:2010/01/15(金) 01:40:08 ID:vL/tPV+8
>>333
やりたい事がよく判らんけど、PCのPS/2マウス端子に
プレステコントローラーを繋いで使いたいって事?
そのままの物はないと思うよ
AVRからプレステコントローラーを使う方法と
AVRからPS/2を使う方法はググれば見つかると思う
336774ワット発電中さん:2010/01/15(金) 02:02:23 ID:M5pQUeZV
>>334
2313にのせたってやつも、手動で返してたな。
337774ワット発電中さん:2010/01/15(金) 21:57:46 ID:/rFzCFJM
>>335
逆じゃねPS2のゲームでPS/2マウスを使いたいんでしょ。

>>333
需要があるなら作ってもいいけど。

けどワンチップで対応できるかはやってみないと分からないな。
338337:2010/01/15(金) 22:10:41 ID:/rFzCFJM
あ、PCゲームでPSコントローラーを使いたいのか俺が読み違えしてた。
PS/2のホスト側は書いた事あるけど、デバイス側はやったことないや。
339774ワット発電中さん:2010/01/15(金) 23:22:47 ID:KPaGC9bj
>>328,331
ありがとうございます。書きこんでからググれかすといわれるのを覚悟していました。
結構種類があってびっくり
340774ワット発電中さん:2010/01/16(土) 00:33:33 ID:wj3OeCjV
90USBKEYのハーフピッチの拡張コネクタ、誰か実際にハンダ付けした人いる?

千石で買ってきた80ピン(40P×2列)のコネクタを、刃の薄いレザーソーで
10ピン毎に切り出したまでは上々の首尾だったのだが、ハンダ吸い取り器で
埋まったハンダを取り除いてスルーホールを貫通させた状態で、ピンヘッダを
押し込んだものの、スルーホールの穴径がギリギリらしく、奥まで入らず。orz

コテ先を横にして全ピンのハンダを溶かしながら、机に押し当ててかなり強引
に押し込んで、なんとか2個はハンダ付けした。 残り4個どうしたものか。
341774ワット発電中さん:2010/01/16(土) 01:10:13 ID:VaAMKL+g
千石の1.27mmソケットの方は基板の穴にすんなり入りました(同じく80Pinなんで5列ずつ切って小分けにした)
長い間コヤシにしてましたがaitendoのSPI接続の液晶と合わせてブログのネタには出来そうです。>AT90USBKEY
342774ワット発電中さん:2010/01/16(土) 21:04:03 ID:ChVwwUU8
ttp://www.rbbtoday.com/news/20060823/33271.html
似た様なのを作ろうと思ったけど結局買ってしまった。
でもノートPCの消費電力もアホ臭いのでそのうち作ろーと思う。
343774ワット発電中さん:2010/01/17(日) 13:03:45 ID:v/nFuPIR
>>342
前に、V-USBつかって、USB-赤外線つくったよ。
東芝のレコーダ制御用なのでNECフォーマットしか対応してないけど。

要望あるなら公開するけど、需要ある?
344774ワット発電中さん:2010/01/17(日) 16:36:56 ID:WHI6c0z3
>>343
直接的に使うわけじゃないけど、USBの部分も赤外線の部分も興味ある
是非お願いします
345774ワット発電中さん:2010/01/17(日) 18:16:39 ID:e98mrmDr
>>343
集中制御をやりたいのでNTPと融合させたいのです。

AVR-NTP
ttp://www.avrfreaks.net/index.php?name=News&file=article&sid=626

あと学習は一杯RAMを使うので、
今の学習リモコンでPCにセーブされた波形をROMに焼き付ければ動きますかね?
346774ワット発電中さん:2010/01/17(日) 19:04:11 ID:mPnICDux
適当にストレージ持たすのはどうかな、FileSystemがちと面倒かもだが
SDあたり使えばPCでファイルを用意して与えられるし。
347342:2010/01/17(日) 20:45:33 ID:v/nFuPIR
おk、うんじゃまとめてうpするわ。
ちょっとまってな。

>>345
自分が作ったのは、NECフォーマットのプロトコルをやりとりするソフト。
http://www.necel.com/faq/ja/mi_com/f_com_remo.html
その辺の製品は全ての製品に対応するために全部のデータを保持してる。
NECフォーマットに対応するだけなら、機種ID 16ビット、ボタンID 8ビットの
計3バイトだけあれば送れる。
自分はUSBでこれを送って、送信させてる。
348774ワット発電中さん:2010/01/17(日) 21:04:09 ID:WHI6c0z3
>>347
たった3バイトか
何か楽しくなってきた
349774ワット発電中さん:2010/01/17(日) 21:30:28 ID:eclgbf7O
こんなんまで市販されてるのかー
工作者の楽しみを奪うなよ
350774ワット発電中さん:2010/01/17(日) 21:36:00 ID:W7Sx1bJK
デバイス側にリモコンコードのテーブル持たせて、PC側からはテーブル
のインデックスを指定する形式なら、1バイトで任意の256通りのコマンド
を送ることもできるよね。 実装次第でどうにでもなる。

chan氏のサイトにも、赤外線リモコンのサンプルソースがある。

トラ技の2009年10月号,201p〜に、赤外線リモコンのコードに関する解説が
ある。たぶんCQのサイトに登録すればソースはダウンロードできる。

自分は、とりあえず3種類(NEC,AEHA,SONY)のコードに対応した受信側の
デコード処理だけ作ったけど、手元のにあるリコモンを片っ端から試した
ものの、全てNEC仕様の製品ばかりで他のリモコンコードは検証できず
仕舞いのまま。
351774ワット発電中さん:2010/01/17(日) 21:58:39 ID:zsCcIkT7
>>350
俺もWinAVRでNECコード用だけ作った。
受信部の材料は秋葉液晶工房で売ってた\300円の受信素子+送信機のセット。

受信したコードを液晶に表示する奴を作って
家にあるリモコンを色々試したのだ。

で、NECコードでは無い奴は、ソニー製品除けばWindows-MCE用のマウス機能付きリモコンとか。
352774ワット発電中さん:2010/01/17(日) 22:26:54 ID:W7Sx1bJK
>351
基本的に、SONY製品は却下なので、もともと糞ニー製品など手元にはない
のだが、ずいぶん昔、たまたま確か100円くらいで売ってたサードパーティ
製のプレステ用赤外線リモコン(受光部はゲームパッド用コネクタに挿す)が
あったので試してみたけど、やっぱりNECフォーマットだった。

あとレアなやつで、あきばおーで売ってた中華製小型液晶テレビや、MOVIE
COWBOY(HDDメディアプレーヤ)とかのリモコンもNECだった。

そういえば、糞ニーは無条件に却下なので、当然プレステ本体もないのだが、
PS2用ゲームパッドの受信処理はAVR用に書いたのがある。

昨日液晶工房で買ってきた7セグのLED、カソードコモンのが欲しかったのに、
家に帰って点灯させてみたら、アノードコモンだったよ。orz
353774ワット発電中さん:2010/01/17(日) 22:39:41 ID:vFHrLO4m
国内ではNEC 以外のフォームに「家電協会規格」があるようです。
354774ワット発電中さん:2010/01/17(日) 22:46:32 ID:W7Sx1bJK
>>353
それがAEHA

> とりあえず3種類(NEC,AEHA,SONY)のコード
355774ワット発電中さん:2010/01/17(日) 23:07:37 ID:8jvVQ+Pv
最近のPanaってどこ?
なんか糞長かった気がするけど>Viera
356774ワット発電中さん:2010/01/18(月) 01:29:33 ID:0EOTTPJj
でも国内は9割がたNECであるのも事実かな。
パイオニアとかYAMAHAが若干違った記憶もある。
357774ワット発電中さん:2010/01/18(月) 06:36:22 ID:BbAiCYAh
どうでもいい知識かもしれんけど、30年くらい前にNECのリモコンチップが
シェア高かったせいでTVのリモコンでエアコンONとか色々あったため
共通フォーマットが開発された経緯がある。

今では逆に中華製造のせいで誤動作とかありそうだが。
358774ワット発電中さん:2010/01/18(月) 07:21:57 ID:WlQl5fng
ありそうというか,現実に起きて問題になったでしょ?
シナ/チョン製品なんて買うものじゃないという理由のひとつになってる
359774ワット発電中さん:2010/01/18(月) 21:28:52 ID:Ty6l6PZn
リモコン受信のコードだけど書き方はどんなやり方が楽に書けるのか…
本来なら、それこそRTMかマルチタスクモニタ使って別タスク化、
受信監視はI/O状態変化割り込み、だろうけど。

リモコン受信は結構な時間がかかるので
ベタ書きするとCPU時間の無駄だよね。
自分が書いた時はタイマーは適当に廻しといて
ソフトでの監視にしちゃったから
受信時間だけ待たされる…orz
360774ワット発電中さん:2010/01/18(月) 21:57:39 ID:og5oJQfm
調べたうちではパナとSHARPはAEHA、ONKYOとPIONEERはNECだったな。
SONYは当然SONY。
361774ワット発電中さん:2010/01/18(月) 21:59:08 ID:0EOTTPJj
自作のリモコンは送信側をRS232にしちゃったので、
受信側はセンサーをRS端子に入れただけのお手軽仕様。

普通のリモコン信号を拾うのは面倒だよね。
362774ワット発電中さん:2010/01/18(月) 22:11:25 ID:qDiQPLP6
ぶったぎり悪いんだけどADC前段にかましたOPアンプの電源はAVCCのが良い?
AVCCは一応DVCCからローパスかましてある
AGNDはユニバーサル基板でベタは無理?っぽいのでDGNDと直結
363774ワット発電中さん:2010/01/18(月) 22:30:48 ID:W6mrqFaP
セオリー通りだとGNDを1点アースだっけか。
オシロあるなら動かして各点で計測した方が早い気がする。
364774ワット発電中さん:2010/01/18(月) 22:58:57 ID:7B3yjVDZ
AGNDとDGNDに関しては下みたいな話もある。
http://www.analog.com/jp/analog-to-digital-converters/products/rarely-asked-questions/RAQ_groundingADCs/fca.html

ADコンバータのDGNDピンをシステムのAGNDにつないだ方が良いなら、
マイコンのAGNDとDGNDはどうなんだ?って迷ってしまう。
365774ワット発電中さん:2010/01/18(月) 23:45:01 ID:qDiQPLP6
>>364
データシート無視してくれとか言われたらもうw
366774ワット発電中さん:2010/01/18(月) 23:58:19 ID:0EOTTPJj
セパレート仕様でもGNDを共有するのは自由だからいいんじゃね?
367774ワット発電中さん:2010/01/19(火) 00:49:23 ID:6LNxVcJ5
データシートどころか製品自体にミスがあったりするから困る
368774ワット発電中さん:2010/01/19(火) 06:42:35 ID:lJcvVE+W
製品を製造している会社に、大した測定器もデーターシートを作れる人材も無いという不思議
369774ワット発電中さん:2010/01/19(火) 07:43:52 ID:BUGiAvAw
>ADコンバータのDGNDピンをシステムのAGNDにつないだ方が良いなら、
>マイコンのAGNDとDGNDはどうなんだ?って迷ってしまう。
それが理解できるようになったら,アナデバのおっさんの話も理解できるよ
頑張って考えるべし
370774ワット発電中さん:2010/01/20(水) 12:36:20 ID:G02iYGn4
まだAVRスレあったんだw
371774ワット発電中さん:2010/01/20(水) 13:26:54 ID:fvfSqegm
>>370
おまいの巣スゲー過疎ってるじゃんwww
372774ワット発電中さん:2010/01/20(水) 17:25:09 ID:RaKVeVuV
AVR ってメモリーを使えば使うほど不安定になるのかしら
373774ワット発電中さん:2010/01/20(水) 18:46:21 ID:clkuIDIh
>372
スタックを食いすぎてヒープ領域を潰しているだけでは?
374774ワット発電中さん:2010/01/20(水) 21:33:02 ID:csLP87Uu
自分の糞ソフトの問題をCPUのせいにする奴って多いよねw
375774ワット発電中さん:2010/01/20(水) 23:02:47 ID:FVcnaXF7
simavrってwinavrで使える?
ソースを取ってくるところからよくわからんw
376774ワット発電中さん:2010/01/20(水) 23:24:29 ID:lptZ1EWH
>>374
不良品とかコンパイラが悪いとか疑ってこのかた、400戦0勝
377774ワット発電中さん:2010/01/21(木) 00:38:39 ID:qbeJEwwW
>>376
お前はよく戦ったよ(´;ω;`)ブワッ
378774ワット発電中さん:2010/01/21(木) 02:30:32 ID:Z10pr7cr
>>376
無茶しやがって………
379774ワット発電中さん:2010/01/21(木) 04:36:59 ID:4kvdAMHu
ATmega8のADCで、データ読み込みを10bit精度で行おうと思っているのですが、
A/Dデータレジスタを見ると、ADCH、ADCLといった8bitデータが格納されているのと、
ADCDという記述が有りました。
このADCDというものは詳しく書かれているところがなく、推測ではADCHとADCLを既にあわせている16bitデータだと
思うのですが、いかがでしょうか。
380774ワット発電中さん:2010/01/21(木) 05:38:56 ID:x16GmAFE
データシートにはそう書いてあるし、アドレスも隣り合ってるな

まぁCだとどうコンパイルされるかわからんから、
8ビットずつADCLから先に読んでおいたほうが無難だとは思うが
381774ワット発電中さん:2010/01/21(木) 08:45:14 ID:rAtK0Q1T
二桁の数字から一桁目だけを取り出す一番効率的な方法って何かないかな

int a
int b
int c

a = 56
b = a / 10
c = a - b * 10

これって非効率的だよね
382774ワット発電中さん:2010/01/21(木) 08:50:21 ID:cEcP0M1b
>>381
16進⇒10進は過去スレ参照のこと
383774ワット発電中さん:2010/01/21(木) 09:13:35 ID:sDrfV44Y
>>381
%演算子使わない理由は?
384774ワット発電中さん:2010/01/21(木) 09:42:45 ID:cEcP0M1b
>>383
効率の話してるのでは? %使ってもコンパイル結果は一緒でしょ。
385774ワット発電中さん:2010/01/21(木) 10:15:48 ID:tR1xX9Ty
>>381
10進数としてだけ扱い、バイトで2桁以内、ワードで4桁以内と決まっている
なら、値をPacked BCDで入れておけ。
386774ワット発電中さん:2010/01/21(木) 11:06:37 ID:9Fkx/AH+
>>379>>380
AVRWikiのGetting Started→ADCにその辺書いてあった
>avrgccではADCWというペアレジスタとして16bit値を取得できる。
>データシートにはペアレジスタとしての名称をADCDとも書いてある。

avrgccでADCWから取得すると、ちゃんとADCL→ADCHの順に読んでくれるはず
他の読み書き順のあるレジスタ(16ビットタイマのTCNT1やOCR1Aとか)も
ちゃんと処理してくれる、っていうかその辺気にせずに使ってる人も多そう
387774ワット発電中さん:2010/01/21(木) 11:12:45 ID:Cou8UM6u
気にする人の方が変かも
388774ワット発電中さん:2010/01/21(木) 11:21:09 ID:K8ORzc8E
>>381

int a, c ;

a = 56 ;

for ( c = 0 ; a <= 10 ; c++)

c = 0 ;
while( a > 0 ){
a -= 10 ;
c ++
}



石投げないでw
389774ワット発電中さん:2010/01/21(木) 11:24:47 ID:K8ORzc8E
>>388
あ、ごめん書いてる途中で送信しちゃった・・・二重に石投げないでwww

int a , c ;

a = 56 ;

for ( c = 0 ; a >= 10 ; c++ ) a -= 10 ;
390774ワット発電中さん:2010/01/21(木) 11:45:25 ID:QCYIfuRd
>386
そういうところでの「はず」は期待しない。
見通しの悪いところでは信号が青でも速度は落とすもんだ。
実際 TYNY2313向けの初期実装はバグってたわけだしな。

>389
ループ変数いらんだろ。

for ( ; a>=10 ; ) a -= 10;
c = a;

でいい。
391774ワット発電中さん:2010/01/21(木) 11:48:16 ID:rAtK0Q1T
>>389

int a;
int b;

a = 56;
c = a % 10;

これより速そうです?
なんか、こういう計算を最速でできるアルゴリズムというかテクニックと言うか、そんなのが知りたいです
392774ワット発電中さん:2010/01/21(木) 11:49:25 ID:rAtK0Q1T
>>391
b を c で置き換えてください (;´Д`)
393774ワット発電中さん:2010/01/21(木) 12:25:07 ID:1+nC/5jk
コンパイラが最適化して b=6 になるよ

ってか、% ってあったっけ?
394774ワット発電中さん:2010/01/21(木) 14:17:59 ID:tR1xX9Ty
>>393
> ってか、% ってあったっけ?

おいおい! そんなんでコンパイラの最適化がどうとかうんちく語るなよ?
395774ワット発電中さん:2010/01/21(木) 16:16:59 ID:3Vts7SN1
>>393
え? %演算子の使えないAVR用コンパイラがあるのか?
396774ワット発電中さん:2010/01/21(木) 16:45:33 ID:9Fkx/AH+
2桁ならcharにして、ループ前に軽く処理加えたらよいかも

char a,c; (もしくは演算前にキャスト)
a = 56;
if (a >= 50) a -= 50;
for ( ; a>=10 ; ) a -= 10;
c = a;

50引かないと、、平均4.5回ループ
引くと平均2回ループ+引く分の1回で3回
演算時間の差も小さくなるからタイミング取りやすくなるかも
397774ワット発電中さん:2010/01/21(木) 18:04:11 ID:tR1xX9Ty
る・る・る〜、charがsignedでハマる予感...。
398774ワット発電中さん:2010/01/21(木) 20:28:38 ID:Y36U4Q/a
おとこオオカミ宣言
399774ワット発電中さん:2010/01/21(木) 22:13:00 ID:8i+kuQCl
あれgccってcharはsignedだっけ? Windowsはsignedだけど
400774ワット発電中さん:2010/01/21(木) 23:27:45 ID:9Fkx/AH+
10進2桁限定だったからsignedで良いかと思ったけど、unsignedのほうが良かった?
401774ワット発電中さん:2010/01/21(木) 23:38:50 ID:K8ORzc8E
>>390
やっと気づいた orz
欲しかったのは一桁目だったんだ・・・てっきり二桁目(10の位)が欲しいんだと思ってたよ。
吊ってくる
402774ワット発電中さん:2010/01/22(金) 05:18:24 ID:h+kWquCX
% が「使えねー」という感じがしないのだけど、誰か % を使った場合と使わない場合で
生成コードを比較してもらえまいか。
片方だけでもいいけど。
403774ワット発電中さん:2010/01/22(金) 05:47:31 ID:B001kqXq
>二桁の数字から一桁目だけを取り出す
const char dat[100] = {0,1,2,3・・・(中略)・・7,8,9};
a=56;
c=dat[a];
404774ワット発電中さん:2010/01/22(金) 06:56:44 ID:V1mg2VR8
>>386
ところで16bitの一時レジスタって、タイマーとADCは共有なのかね?
データシートのADCのページには、特に一時レジスタについては
書かれてないようなんだけど、もし共有なら、
割り込みで両方使う場合は要注意じゃね?
mainでADCW見ながら割り込みでTCNT1を更新したりする場合、
割り込み禁止しないと一時レジスタの取り合いが発生する?
405774ワット発電中さん:2010/01/22(金) 07:00:38 ID:V1mg2VR8
あ、取り合いというか、割り込み側が一方的に書き換えて
ADCW読むときに禁止しとかないと値がまともに読めないという
状況を想像したんだけど。
406774ワット発電中さん:2010/01/22(金) 07:22:52 ID:Di6IS2RW
>>402
% だとライブラリ呼ばれて終わりみたいだよ。

>>404
読み込み専用だしタイマ値書くときに使う一時レジスタとか関係なくね?

あと、
ADCLが読まれると、A/Dデータ レジスタはADCHが読まれるまで更新されません。
ってデータシートに書いてあるから、L→Hで読めばいいだけかと。
407774ワット発電中さん:2010/01/22(金) 08:20:10 ID:V1mg2VR8
あーそっか。
書き込みに対してだけ使われるのか。
408774ワット発電中さん:2010/01/22(金) 09:19:37 ID:h+kWquCX
>>406
そーゆーことか。ありがと、納得っす。
409774ワット発電中さん:2010/01/22(金) 11:57:50 ID:vUWICdvc
一時レジスタが機能ブロックで共有とかありえませんw
ファミコン時代ならありえますが、今の設計ルールでそれやったらキチガイです。
410774ワット発電中さん:2010/01/22(金) 11:59:40 ID:vUWICdvc
機能ブロックで共有 ×
機能ブロックを超えて共有 ○
411774ワット発電中さん:2010/01/22(金) 13:12:50 ID:UsIFa90q
ソフトで言えば、関数内で使うループ回数とかを、スタティック変数に割り
当てて、複数の関数で共有するみたいなもんだな。

シリコン上の配置設計に与える制約や配線長とそれに伴う遅延を考えれば、
何のメリットもないような。
412774ワット発電中さん:2010/01/22(金) 22:05:47 ID:MU7kQhVn
ってか、ソフトだろ。だれも配置配線なんてしないよ。
413774ワット発電中さん:2010/01/22(金) 22:29:26 ID:vUWICdvc
>>412
ASICレベルならやらんでも済む場合があるけど、
100万個以上の量産品は歩留まりや生産性の観点から人手が必ず入る。
414774ワット発電中さん:2010/01/23(土) 03:27:30 ID:IV6HDD7e
>>412
え、ICはプリント基板と同じようなノリで作られてるのに
配置によって設計にも制約うけちゃうのは普通だと思うけど
415774ワット発電中さん:2010/01/23(土) 09:38:24 ID:fepBwjpY
おおかた、HDL言語の切り貼り作業だけの、論理設計レベルしかやらない
(できない)自称「IC設計者」でしょ。

いや、自称だと「ウィザード」とか「アーキテクト」かもしれんケド。(w
416774ワット発電中さん:2010/01/23(土) 10:42:30 ID:bgi2huAq
アナログICはオール手作りだ
417774ワット発電中さん:2010/01/23(土) 10:45:20 ID:fdrxHgz5
>>412
ならICチップの落とし込みに数億円掛かる根拠をkwsk
418774ワット発電中さん:2010/01/23(土) 11:55:48 ID:KL/FIbOF
大量生産するときはマスクで作るんじゃないの
419774ワット発電中さん:2010/01/23(土) 12:06:14 ID:fdrxHgz5
>>418
くわしく訊いてるんだがなw
420774ワット発電中さん:2010/01/23(土) 12:07:45 ID:fepBwjpY
じゃあ、少量生産の時はちっちゃなジム・キャリーが作るのか?
緑色のマスクはソルダレジストだったりしてな。
421774ワット発電中さん:2010/01/23(土) 12:11:56 ID:fdrxHgz5
配置、配線、マスク生成が完全無人化なら数百万で済むだろJK
422774ワット発電中さん:2010/01/23(土) 12:43:30 ID:dc6hprGv
アクセスタイムが55nsと70nsのSRAMが手持ちにあるのですが、
これらをmega128とかの外部バス付きのAVRに繋げた場合、
16MHz(1t=62.5ns)では、どちらも1waitが必要で、
この場合外部SRAMに対してのldやst命令などは4クロック掛かる
という解釈でよいでしょうか?

またデータシートの外部メモリタイミング特性によると、
tRLDVが1.0tCLCL-50ということなので、16MHz時は
62.5-50=12.5ns以下のSRAMでないとwaitなしにはできない?
423774ワット発電中さん:2010/01/23(土) 12:53:21 ID:68Xd8ew4
>>422
1waitなら4クッロクになると言う解釈でおk

16MHz時は…
SRAMのアクセスタイム若しくはサイクルタイムの規定は
CS(CE)基準の場合が意外とあって、RD/WR信号だけなら、もっと速くアクセス出来るSRAMもある…とか色々。
データシートを良く見て、工夫と健闘を祈る。
424774ワット発電中さん:2010/01/23(土) 13:23:51 ID:dc6hprGv
ありがとうございました。
とりあえず動くようにがんばります。
425774ワット発電中さん:2010/01/23(土) 14:50:20 ID:n0qO9ffw
ニコニコで申し訳ないが、
http://www.nicovideo.jp/watch/sm7678256
こういうデジタル水準器を作ろうと思うってるんだけど、I/Oポート3つで5つのLEDを制御ってどうやるの?

http://ysdu16.com/blog/?p=1900
ここに回路図とPIC用のソースコードがあるんだけど、これを見てもわからないんだよねorz
426774ワット発電中さん:2010/01/23(土) 15:01:39 ID:fWrKR4d/
>>425
ヒントとしては、TRISIOを操作してること。(AVRの場合DDRx)
プルアップ無しの入力は外から見たらHi-Zってことだな。
427774ワット発電中さん:2010/01/23(土) 15:06:23 ID:1Iqhuwyh
>>425
Charlieplexing
428774ワット発電中さん:2010/01/23(土) 16:04:36 ID:eN4SeJmo
http://ednjapan.rbi-j.com/issue/2009/02/23/2523
http://ednjapan.rbi-j.com/issue/2009/3/22/2983

このへんはアクロバティックな方法。
まあ、回路図を見てわからなければまずは1ポート1LEDで作れば?
429774ワット発電中さん:2010/01/23(土) 16:17:26 ID:fepBwjpY
>>425
写真の奥からLED1 ... LED5 として
+----------------------------------------------+
| GPIO0 | GPIO1 | GPIO2 | 点灯 | PORTx | DDRx |
|-------+-------+-------+------+-------+-------|
| Hi  | Lo  | Hi-Z | LED1 | 001b | 011b |
|-------+-------+-------+------+-------+-------|
| Lo  | Hi  | Hi-Z | LED2 | 010b | 011b |
|-------+-------+-------+------+-------+-------|
| Hi  | Hi-Z | Lo  | LED3 | 001b | 101b |
|-------+-------+-------+------+-------+-------|
| Hi-Z | Lo  | Hi  | LED4 | 100b | 110b |
|-------+-------+-------+------+-------+-------|
| Hi-Z | Hi  | Lo  | LED5 | 010b | 110b |
+----------------------------------------------+

かな? しかし、電流制限抵抗が入ってないな。

PICのGPIOって定電流出力にするモードなんてあったっけ?
日本製のエレキ商品がダイソーに並ぶ日も近そう。
430774ワット発電中さん:2010/01/23(土) 16:23:45 ID:dc6hprGv
3ピンなら本当は6つまで可ですね。
IOピンとLEDの本数の関係は (IO-1)*IO = LED数
>>429
動画見ると3つ抵抗入ってるからそれじゃないかと。
431425:2010/01/23(土) 16:48:43 ID:n0qO9ffw
>>426-430
アドバイスありがとう!!
Hi−Zを使うこととかCharlieplexingも調べてはあったあんだけど、できないんですよね
でもそのへんのやり方を使うことは間違いなさそうなんで、もう一度考えてみます。

ちなみに1ポート1LEDでの試作は実施済みで、そっちは問題なく出来ました。

あと、ぜんぜん関係ないのかもしれないけど、たとえば>>429の表の一番上の状態にしたとき、
LED1が光るのは問題ないとして、LED3とLED4を通る回路も成立しているように思うんだけど、そこが光らないのはなぜなんだろう?
432774ワット発電中さん:2010/01/23(土) 16:50:14 ID:bSjXa7BQ
LEDって逆電圧かけると劣化しなかったっけ
433774ワット発電中さん:2010/01/23(土) 17:19:56 ID:IV6HDD7e
>>432
V_R=5Vくらいまでなら、ホビーなら無視できるって考え方なんじゃない?
434774ワット発電中さん:2010/01/23(土) 17:46:00 ID:fepBwjpY
>>431
> LED1が光るのは問題ないとして、LED3とLED4を通る回路も成立しているように思うんだけど、そこが光らないのはなぜなんだろう?

LEDの順方向降下電圧が2V以上(特性がほぼ揃っている直列だとその2倍)
あって、電源電圧が3Vと低いから。

電源電圧が4V以上あって、電流制限抵抗の値が小さく、使用するLEDが少ない
電流でもよく光る赤色の高輝度タイプの場合、薄っすら光るかもしれない。


>>428
> このへんはアクロバティックな方法。

拡散剤入りの半透明樹脂ではなく、クリア樹脂に封入されたタイプは、
ちょっと光った状態も判りやすい。
435774ワット発電中さん:2010/01/23(土) 22:06:10 ID:U9PMUQ1D
USART(RS232C)通信にてAVRとPCとで通信させているのですが、250kbpsなどボーレート
を高くするとたまに値が変になってしまうことがあるのですが何故でしょうか?
20MHzで250kbpsだと誤差は0のはずなのですが、19200bpsなどの誤差があっても
低いボーレートの方が値が変にならないです。
436774ワット発電中さん:2010/01/23(土) 22:23:53 ID:AUKmc4oW
ドライバICに何使ってる?
データシートでスピード足りてるか調べてみるんだ
437774ワット発電中さん:2010/01/23(土) 22:57:46 ID:q0iAEaPT
230.4kbps?
438774ワット発電中さん:2010/01/23(土) 23:20:52 ID:y2AO17i1
受信した後の処理が25文字/1mSに耐えられないとか
439774ワット発電中さん:2010/01/23(土) 23:25:35 ID:U9PMUQ1D
ありがとうドライバICのせいっていうのが一番有力な気がしてきた
今度調べてみます
440774ワット発電中さん:2010/01/23(土) 23:54:23 ID:fepBwjpY
それくらいの速度になると、PC側のトランシーバICが対応しているかと
いう問題もあるし、ケーブル長さや芯線の太さ、シールドの有無によっても
違ってくるからなぁ。

秋月で売ってるインターシルのMAX232互換は、安くて低消費電力だけど、
速度上限がアナデバのヤツより低い。

そもそも当初の232Cの規格上で25mまで通信可能なのは、20kbps以下で使用
するって前提だし。

>>438
PC内蔵のシリアルポートやUSBシリアルは、送/受信ともFIFOを持ってるから
問題ないけど、AVR側はバッファは1個しかないからね。 ただ、取りこぼし
なら、受信ステータスレジスタのオーバーランエラーが立つ筈だし、化ける
というよりデータが消える。
441774ワット発電中さん:2010/01/23(土) 23:56:23 ID:bgi2huAq
PCが115kまでしか設定できん
442774ワット発電中さん:2010/01/24(日) 01:39:01 ID:YZ9RQIRs
HiSerial.sysで230k以上も使えるようになるよ。
パソコンのチップセットによっては使えない時があるので
その時はUSB/シリアル変換器を追加するとOK。

5Vで230kできても3VだとダメなドライバICもあるよ。

後、パソコン側はFIFOがあるけど何重ものファンクションコールで
毎秒25,000バイトの表示処理などが追い付かないソフトがあるかも。
443774ワット発電中さん:2010/01/24(日) 11:22:34 ID:hTT9pBgm
windowsの表示は重いからな
受信だけなら、Gbpsとかあるけど
444774ワット発電中さん:2010/01/25(月) 14:00:41 ID:xR7HIpEy
DDRで出力に設定してるときにPINレジスタを読むと、
何が返ってくるんでしょうか?
445774ワット発電中さん:2010/01/25(月) 17:33:04 ID:WKM1bRbG
出力した時に設定した値
446774ワット発電中さん:2010/01/25(月) 18:26:24 ID:ewZUdwSf
>>444
厳密にはI/Oピンの現在の状態。 汎用IOピンとして使っている時、出力に
設定されていれば、通常はPORTxを読み出した値とPINxを読み出した値は
同じ。

ただ、PORTxのビットに1を書いて'H'を出力していても、外部ピンが(GNDに
短絡またはそれに近い状態で)'L'レベルになっていれば、PINxの値は0が
読み出される。

また、UARTやタイマ等の周辺機能と兼用のI/Oピンで、周辺機能を有効にする
とPORTxに書いた値と、PINxを読み出した値は一致しなくなる。例えばTxDと
兼用のピンは、、UARTの送信機能を有効にすれば、PINxを読み出した値はシリ
アル出力されている送信データの内容によって逐次変わる。
447774ワット発電中さん:2010/01/25(月) 19:20:36 ID:xR7HIpEy
よくわかりました
やりたいことは8ピンの2つのAVRを繋いで、
1つのピンで信号をやりとりする事でした
出力同士がかち合うとまずいので、
オープンドレインとして考えてDDRを出力にしたローレベルと、
DDRを入力にして内部プルアップでハイレベル
とすればよいと思ったのですが、
LO→HIとHI→LOにするときのレジスタの設定の
順番はどっちにすればいいんでしょう

DDR=1 PORT=0 出力→LO
DDR=0 PORT=1 入力内部プルアップ→HI
のとき、

LO→HI、HI→LOに切り替えるには
DDR=0 PORT=0を経由するか
DDR=1 PORT=1を経由するか

前者は一瞬信号レベルが不定になる
後者はHIレベルで相手の状態により一瞬大電流が流れる
どっちもまずいような
448774ワット発電中さん:2010/01/25(月) 20:20:09 ID:mcvJZmEm
抵抗一本くらい付ければいいじゃないか
449774ワット発電中さん:2010/01/25(月) 20:29:31 ID:wtXNavEe
>>447
1-wireプロトコルをそのままパクればよろしいかと・・・
450774ワット発電中さん:2010/01/25(月) 20:32:11 ID:ec7/DzuI
>>447
後者で短絡は論外、素直にプルアップ外付けするのが良いんじゃね
内蔵プルアップだけでは不定状態通過せざるを得ないし。
ソフト的に何とかするのもありだけど(複数回読んで多数決とか、切り替えコマンド送信してウエイトするとか)
451774ワット発電中さん:2010/01/25(月) 20:33:00 ID:kEbFnCh7
>>449
確かに。
452774ワット発電中さん:2010/01/25(月) 21:24:50 ID:xR7HIpEy
短絡はまずいですよね
外付け抵抗付けることにします
よく考えると前者でも片方が受けに回ってればプルアップは
されてるのでいいかなとも思うので影響が出るか試してみます
ありがとうございました
453774ワット発電中さん:2010/01/25(月) 23:44:06 ID:ewZUdwSf
値の範囲はデータシートに記載があると思うけど、内部プルアップは抵抗の
値が大きく、誤差も大きいので、あまり過信しないほうがいいよ。

例えばベース入力に直列とB-E間にそれぞれ4.7kΩ〜10kΩの抵抗が入ったごく
一般的なNPNのデジトラを繋ぐと、内部プルアップ抵抗よりも、デジトラ内部の
2つの抵抗を経由してGNDに繋がっている方が抵抗値が小さいので、分圧された
I/Oピンの電圧レベルは'L'になる。

あと、プルアップ抵抗値が大きいので、容量を持つ負荷がぶら下がっている
場合はCR時定数で立ち上がりが遅れる。 MOSFETのゲートをドライブする等
なら、内部プルアップは使わないほうがいい。
454774ワット発電中さん:2010/01/25(月) 23:49:45 ID:5yZahS51
丸ピンのピンソケットが上手く折れない・・・orz
高確率で樹脂の端が欠けて金属が露出する
ニッパーで切ったりラジオペンチで折ったりしてるんだけどダメ?
455774ワット発電中さん:2010/01/25(月) 23:52:13 ID:wtXNavEe
>>453
内部プルアップは20〜50kΩとなってるから、それほど大きいとは思わんが・・・

にしてもAVRって昔からI/Oピンのプルアップに比べてResetのプルアップ抵抗が大きいのは何故?
確かAT90S1200の時代なんか500kΩぐらいあった気がする
456774ワット発電中さん:2010/01/25(月) 23:54:59 ID:wtXNavEe
>>454
俺は一ピン分無駄にしている。切りたい所の一個隣のピンを被覆している樹脂を割ってから
金属ピンを抜き取って、ヤスリで仕上げてる。

ただ面倒な時(わりとどうでも良い物を作っている時は)ピン-ピン間のくぼんでいるところを
ニッパで切り離すこともある。(結構失敗確率高いw)
457774ワット発電中さん:2010/01/25(月) 23:55:58 ID:Sa2waeHo
>>454
ピン数が減るのを覚悟で切断面の部分のピンを抜く(半田ごてあてて熱で溶かしつつ)
そして切る。

カッターの刃をコテであたためて(コテにネジ固定でもいいが)切るという手があるけれど、
それは匠の技がいるw
458774ワット発電中さん:2010/01/25(月) 23:57:21 ID:Sa2waeHo
ほぼ同じ事を言われてたorz
まぁそんな感じで。
459774ワット発電中さん:2010/01/25(月) 23:59:18 ID:ZblN8JMa
460774ワット発電中さん:2010/01/26(火) 00:11:06 ID:fhTHt99A
>>456-457
早速ありがとう
一ピン捨てるのうが良さそうだね
損して得とれみたいな
461774ワット発電中さん:2010/01/26(火) 00:12:18 ID:lA7aABob
半分だけニッパーで切って折ると大抵うまく行くけど
462774ワット発電中さん:2010/01/26(火) 00:39:36 ID:nDahrPFV
刃の断面の角度が大きいニッパーだとうまくいかない
463774ワット発電中さん:2010/01/26(火) 01:09:38 ID:QAajR237
カッターで一周跡深めに付けて折れば平気だよ
464774ワット発電中さん:2010/01/26(火) 01:59:04 ID:X9kOFm4t
>>454
こういう薄刃で目の細かいノコで凹みの部分を切る。アルミ板やガラエポ
の基板もサックリと切れる。切り屑も少なめで切り口もきれい。

ttp://www.crane.gr.jp/Tools/Saw/pirania.html
465774ワット発電中さん:2010/01/26(火) 02:40:45 ID:0MAnihI8
よし、次はAVRのパッケージを削ってどこまで小型化できるか……さすがに無理か。
466774ワット発電中さん:2010/01/26(火) 02:42:06 ID:QAajR237
昔レベル変換ICの両端切断してシリアルのコネクタに内蔵させてるのあったなw
467774ワット発電中さん:2010/01/26(火) 03:02:38 ID:laAevJ83
DIPのPICをICソケットに実装しようと思ったら、他の部品と干渉したから
1mmぐらいやすりで削り落としたことならある。
468774ワット発電中さん:2010/01/26(火) 10:55:18 ID:PAvxfqjN
超軽量飛行機だっけ、あの手の自作erはパッケージ削るのはデフォらしいよ
1g減るなら何でもやるっぽい(もっと小さい単位かもしれんが)
469774ワット発電中さん:2010/01/26(火) 15:36:23 ID:w+QJgcV3
1gって1円の重さだよな。。。
470774ワット発電中さん:2010/01/26(火) 16:08:56 ID:gGN4nmVY
小売価格が300円程度のCPUなんてどーせ4^2mmも無いんじゃないかな
471774ワット発電中さん:2010/01/26(火) 17:26:32 ID:7tReSU7g
ATMELはチップ単体でも供給できるよって言ってるんだから
チップだけ売ってもらって自分でボンディングすれば…
472774ワット発電中さん:2010/01/26(火) 18:20:35 ID:gGN4nmVY
ベアチップを買って個人でボンディングしてたら凄いなw
473774ワット発電中さん:2010/01/26(火) 19:16:51 ID:cIecGr49
>>472
8ピンぐらいならあるいは・・・
474774ワット発電中さん:2010/01/26(火) 19:26:15 ID:2sBeHEYr
>>468
外部からのエネルギーが・・・
475774ワット発電中さん:2010/01/26(火) 21:30:24 ID:7tReSU7g
トランジスタガールの再来である
476774ワット発電中さん:2010/01/26(火) 22:15:18 ID:ciuhxbgS
規制で遅レスになったけど、
>>425以降のLED表示の件で4年程前に作ったものがあったんで
久々に引っ張り出して動かしてみた。(PICだけど気にしない)

IOを8個使って、7x8のLEDを駆動。
http://mcnc.hp.infoseek.co.jp/cgi-bin/img-box/img20100126220545.jpg
477774ワット発電中さん:2010/01/26(火) 22:32:28 ID:/hGZWVo6
>>454
>>464
おれも彫金用糸のこで切ってる。糸のこってなんでも切れて超イイよ。
478774ワット発電中さん:2010/01/26(火) 22:50:19 ID:vojIBfM5
>>476
すげえな
おれこんな根性ないやw
479774ワット発電中さん:2010/01/26(火) 23:04:18 ID:gGN4nmVY
今時LED並べるとか珍しいな・・・
LEDはリードが長いのでユニバーサル基板2枚使って縦横で配線すると楽にはなるけどさ
480774ワット発電中さん:2010/01/26(火) 23:14:07 ID:7tReSU7g
http://dic.nicovideo.jp/v/sm8927954
こっちの方が根性あると思おう
481774ワット発電中さん:2010/01/26(火) 23:36:27 ID:X9kOFm4t
>>476-479
もう30年近く前になるか、高校生の頃に当時のラ製の記事を参考に10素子
のレベルメータICとLS-TTLのカウンタとデコーダIC等を組み合わせて、100個
(10×10)並べた赤色LEDをダイナミック点灯させて、オシロ組んだのを思い
出す。

当時、地元(といっても電車で1時間くらい離れている)唯一の部品屋というか
アマ無線屋で2SC1815が@100/個だった気がする。 もっぱら、信越・千石・
藤商の通販を利用していた。

それより前、当時NHKの教育TVで木曜に放送されていた「みんなの科学」の、
8個並べたフォトインタラプタで、紙テープに書いたASCIIコードを読み取って
>>476 のようにドットフォントのキャラクタを表示するボードなんてのも
組んだ。(S52年度、IC電光表示器)

ttp://www.geocities.co.jp/Technopolis/4764/alltitle.htm

当時はインターネットはもちろんビデオとか便利なモノもなく、放送中に
テレビ画面にアップで映される回路図を、必死で広告のチラ裏に書き写す
も、すべてを書き写すことができず、ずいぶん悔しい思いをした。

ブラウン管表面にサランラップを貼ってなぞってみたりしたが、この頃には
ロジック動作を理解できるようになり、ブロック図やIC型番だけ拾って、
あとは自分でアレンジしたり、再構成できるようになった。
482774ワット発電中さん:2010/01/26(火) 23:40:17 ID:Xj9S/kZF
>>481

ああ 俺もメモった

なんの回路か忘れたけど 7432使った回路だったのは記憶してる
483476:2010/01/27(水) 00:09:15 ID:ISQKXM/e
俺は根性無いからしんどい配線なんかやらんよ。
というか、なんか趣旨が変わってるし。
『Charlieplexing』とやらの検証用に作ったに作った奴なのだが。

とりあえず、裏面の写真も貼っておく。(配線ミスの跡は気にしない)
http://mcnc.hp.infoseek.co.jp/cgi-bin/img-box/img20100126234511.jpg

部品面側も写真横方向にLEDの足に直に半田付けした8本の空中配線があり、
『縦・横』のマトリックスじゃなくて、『斜め・横』のマトリックスになってる。
基板から出た配線(8本)は直接マイコンのIOピンに入る。

484774ワット発電中さん:2010/01/27(水) 03:11:55 ID:MdH05eH2
>>476
抵抗が8本あるってことは無茶しないで一個ずつ光らせてるのか
485774ワット発電中さん:2010/01/27(水) 06:46:16 ID:4TWw/HwU
話断ち切り申し訳ありません。

最大で5分程度の分秒タイマーを作りたいのですが、仕組みは以下のようであっていますか?
チップはmega8(無印)、クロックは1MHz、タイマ部は8bitタイマ0です。

1.タイマ起動 1024分周
2.カウントが溢れたら(MAXになったら)TOV0を使い、割り込みをかける
 この時点で 割り込み回数(1/(1M/1024)*255) であるはずなので、0.26112秒ごとの割り込みになっている
4.8bitで制御されているため、int型に入れこのまま単純にプラスしていったら約66秒でカウントできなくなるので、
 230カウントで(60.0576秒)別のint型に1を足し、元のはクリアする

うまく伝えられず申し訳ありませんが、ご回答、お願いいたします。
486774ワット発電中さん:2010/01/27(水) 07:09:17 ID:GUHIq1cJ
>>485
そうか、AVRのスレだったのかw
487774ワット発電中さん:2010/01/27(水) 07:45:39 ID:r14YEiC0
>4.8bitで制御されているため、int型に入れこのまま単純にプラスしていったら約66秒でカウントできなくなるので、
AVRGCCのintは16ビットじゃなかったか
488774ワット発電中さん:2010/01/27(水) 07:48:34 ID:o4cj3aRL
>>483
配線は非常に楽で頭いいと思うけど・・・、そんな回路のソフトなんかヤだなぁw
489774ワット発電中さん:2010/01/27(水) 11:02:40 ID:KJya5gdE
>>485
クロックを32.768KHz にすると、消費電力は下がるわ、
バイト先のJKにチョコレートもわうわ、
宝くじ当たるわ、もう大変なことになる。
490774ワット発電中さん:2010/01/27(水) 11:07:09 ID:4dJi6ODL
>>489
ちょっとクロック 32.768KHz にしてくる
491774ワット発電中さん:2010/01/27(水) 11:19:19 ID:8dTLXrYu
大筋ではあっているのでは
ただ割り込み回数(1/(1M/1024)*256)でしょう

1MHz = 2^6 * 5^6
2^6=64分周で消化
timer1を使用すればコンペアマッチ割り込みで5^6=15325を一気に消化
これでちょうど1秒ごとの割り込みに

ただクロック1MHzに精度がないとこだわっても意味ないけど
492774ワット発電中さん:2010/01/27(水) 12:35:06 ID:qhARHgdi
>>489
クロックを32.768kHzにしたら、消費電力が下がるとか一秒のカウントがすごく楽とか
そんなことはどうでもいいけど、そのJKとFFできるのか?
493774ワット発電中さん:2010/01/27(水) 14:06:38 ID:du77O2Hs
AVRStudio4.18SP1試した人います?
494774ワット発電中さん:2010/01/27(水) 16:14:36 ID:Ie/nn9VK
まずお前が試せ
495774ワット発電中さん:2010/01/27(水) 16:40:20 ID:o4cj3aRL
>>493
入れたけど、何を試せばいい?
496485:2010/01/27(水) 18:48:04 ID:4TWw/HwU
みなさんありがとうございます。
今回は余裕もあるので>>491氏のようにさせていただきます。
親切に回答していただき、ありがとうございました。


最後になりますが、クロックは内蔵1MHzです。
3%ということなので、5分でも最大9秒のずれなので、そこは目を瞑ることにしました。
497774ワット発電中さん:2010/01/27(水) 20:10:21 ID:8dTLXrYu
約1MHzのシステムクロックを64分周した信号が出力ポートから出力されるようにして
その信号の周波数を測定して例えば16345Hzだとしたら
timer1を使用したコンペアマッチ割り込みで設定値として16345(OCR1AorICR1=16344)
を設定すればかなり正確な1秒間隔の割り込みを発生させられる
16345Hzの信号を16345回数えたらちょうど1秒ということ
これは俺が好きな約1秒の作り方
tiemr1の16bitの範囲内に収まるように分周すればどんな周波数のシステムクロック
でも適用できる

2^6=64分周された信号のポート出力は 例えば 2^3=8分周で残り2^3で
2^1は timer1 CTCmodeの出力トグルで消化して残り2^2は設定値4(OCR1AorICR1=3)
で消化とか
498774ワット発電中さん:2010/01/27(水) 20:56:19 ID:CMF5ewu7
カウント値を現物合わせで微調
内蔵クロックなのでクロック補正値を変更する
499774ワット発電中さん:2010/01/27(水) 22:46:59 ID:gHYRCdCU
ATTiny2313のデータシートの
図132. 校正付き8MHz内蔵RC発振器周波数 対 発振校正(OSCCAL)値
のグラフはどう見たらいいんでしょうか?
ATTiny2313 5V 内蔵8MHzでOSCCAL=0x55(85)と出ました。
USARTで38400bpsで通信できることから8MHz付近のはずで、
グラフと大幅にズレてるのが気になります。
500774ワット発電中さん:2010/01/27(水) 23:07:17 ID:o4cj3aRL
>>499
正直あのグラフがなんの為に存在するのか分からん、
ほんの一例が記載されてるだけじゃないのか。
RC発振ので個体差が無ければ公正レジスタなんて設ける必要がない訳で。
501774ワット発電中さん:2010/01/27(水) 23:13:31 ID:8dTLXrYu
俺がatmega328pを12個まとめ買いしたときにチェックしたOSCCAL値は
8E AE 98 AD 9D B3 A8 AE A1 90 9A 9B
だった
2313はOSCCALが7bitだから単純比較はできないけど
502774ワット発電中さん:2010/01/28(木) 00:07:32 ID:hizOHoB5
内蔵クロックに精度とかもとめちゃいかん
とりあえずタイミング関係なくて、自分自身だけ動けばいい時しか使い物にならんよ
校正したって温度でズレるし、手間かけるならXTALつけたほうが早い
それで足が足りないなら多い石を使う

・・・といいつつ、制約の中でどこまでできるか知恵絞るのが楽しいんだけどね
503774ワット発電中さん:2010/01/28(木) 00:25:20 ID:kXhC9RTq
アライグマOSCCAL
504774ワット発電中さん:2010/01/28(木) 02:25:18 ID:9tpVOQHM
8×8の2色ドットマトリクス12個使って24×32の時計使ったけど
595を11個つかっても意外とチラツキ無く作れるもんだね

部屋が真っ暗の時は省電力化も考えて少し暗くするようにした
505774ワット発電中さん:2010/01/28(木) 02:29:54 ID:uwWcnxZF
アンドレ
506774ワット発電中さん:2010/01/28(木) 05:15:42 ID:KnxFuJel
32kHzで低消費電力(バッテリ駆動可能)で精度2.5ppm(選別で±0.5ppm)
という発振器持ってるけど,もうずいぶん昔に製造中止なんだな.
(もちろん,中の水晶は音叉型じゃないよ)
507774ワット発電中さん:2010/01/28(木) 09:20:19 ID:umy4Ut/F
折角選別されても、もう経年劣化で精度落ちてるんじゃね?
508774ワット発電中さん:2010/01/28(木) 09:22:41 ID:WfbXSVOl
音叉型じゃない32kHzの水晶ってどのくらいの大きさ??
509774ワット発電中さん:2010/01/28(木) 10:09:46 ID:umy4Ut/F
厚さ5cmだと・・・ ゴクリ
510774ワット発電中さん:2010/01/28(木) 10:16:04 ID:H6c/foAy
ちゃんとオーブンに入れておけよ
511774ワット発電中さん:2010/01/28(木) 10:21:46 ID:b3rafV+a
2.5ppm程度でどうせ温度補償するなら音叉型でもなんでもいい。
http://japan.maxim-ic.com/quick_view2.cfm/qv_pk/2940
とか、普通に現役。
512774ワット発電中さん:2010/01/28(木) 12:25:33 ID:V8Z6Pyq1
ttp://sourceforge.jp/magazine/10/01/27/0427222

> オープンソースのリアルタイムOS「Atomethreads」が登場
>
> 対応CPUアーキテクチャはATmega/AVRのみ。

これどうですかね?
513774ワット発電中さん:2010/01/28(木) 12:32:57 ID:zccfmKQM
あとめすれっず?
514774ワット発電中さん:2010/01/28(木) 12:59:03 ID:RHM9PDUN
>>512
シンプルやね。
でもその構成で十分な環境もわりとあるんじゃ無かろうか。
515774ワット発電中さん:2010/01/28(木) 13:47:22 ID:umy4Ut/F
>>512
コンテキストスイッチにクリティカルで発生するバグがあるなw
スタックスイッチ(2バイト書き込み)時には少なくとも割り込みがマスクされていないとダメだな。
516515:2010/01/28(木) 13:55:40 ID:umy4Ut/F
あーごめん、スレッド切り替えの全域で割り込みマスクが掛かっているのか、マスク期間長すぎるだろこれ・・・
517774ワット発電中さん:2010/01/28(木) 14:48:07 ID:HHaLpZim
スレッド切り替え中に割り込み入ったらまずいだろ。
518774ワット発電中さん:2010/01/28(木) 17:20:53 ID:9tpVOQHM
面白そうなネタでたね
レポート期待
519774ワット発電中さん:2010/01/28(木) 18:24:25 ID:v+DcBNhY
タイマーによるコンテキスト切り替えだと、AVRの能力では
自分でタイミングを取る用途がほぼ使えなくなるんだよ。
例えばリモコン受信やPS/2キーボード入力のような外部の
信号と同期した処理は、コンテキストスイッチ期間が長すぎると
困難になる。必然的に、できる事は用意されたペリフェラルの
範囲になってしまう。専門処理をサブMCUでやらせるとかなら
使い道はなくもないけど、それなら他のマイコンでもいいし、
AVR的にはあまりおいしくない。
520774ワット発電中さん:2010/01/28(木) 18:30:58 ID:RHM9PDUN
そういうクリティカルなタイミングが必要なところに使うものじゃないやろう

キースキャンやA/Dを行いながら受信バッファを監視しつつ、
LCDをリフレッシュとか、タスクシステムが意味ある用途に使わないと
521774ワット発電中さん:2010/01/28(木) 18:46:32 ID:v+DcBNhY
>>520
逆に、その程度の内容ならプリエンティブである必要はないよね?
わざわざタイマー1つ潰してまで使う意味もないし
むしろ割り込みを妨害しないイベントループの方が使いやすい。
TCP/IPスタックぐらいの複雑性なら裏で動いて欲しいけど。
522774ワット発電中さん:2010/01/28(木) 19:17:55 ID:7vAsbJeP
裏で動かすくらいなら、AVRをもう一個使え
523774ワット発電中さん:2010/01/28(木) 19:46:26 ID:jDCjRsnQ
それをいいだしたらアセンブラでOK
524774ワット発電中さん:2010/01/29(金) 00:17:39 ID:lkyx3neM
新しくハード作って、張り切ってAVR乗せたらhidaspxから認識しない
何度も回路チェックしても間違いない
石が悪いかと思って、手持ちと交換したら動くのと動かないのがある
ライタが不調?とか思って他のライタに変えてみたりと、あーだこーだやった結果、
ライタソフトの-dオプションの数値を変えて戻してなかったとさ、ちゃんちゃん

認識にしなかったら自動で段階的に遅くしていくとかしてくれてもいいのに・・・まぁオレが悪いんだが
525774ワット発電中さん:2010/01/29(金) 00:47:05 ID:i7Q06Qpe
>>524
> 認識にしなかったら自動で段階的に遅くしていくとかしてくれてもいいのに・・・

そのアイデアいいね。 本家じゃないけど頂いていい?
526774ワット発電中さん:2010/01/29(金) 01:01:35 ID:OZ532vyx
オート フォ−ルバック
527774ワット発電中さん:2010/01/29(金) 02:08:40 ID:EQ/6ChF7
>524
認識しなかったらハードがおかしい可能性があるからな…
リトライして傷を深くするよりはさっさと諦めてくれたほうが吉という説も。
528774ワット発電中さん:2010/01/29(金) 09:27:12 ID:ZKq4sVdW
>>524
俺もよくやる -d オプション
529774ワット発電中さん:2010/01/29(金) 09:45:20 ID:cLwdcnkU
>>517
もう少し工夫できる筈だけどね、リソースやらスタック深度からかかなり妥協してる内容で残念だった。
530774ワット発電中さん:2010/01/29(金) 10:16:27 ID:ShRFwKOM
書き込みクロックが速すぎるとデバイスIDとかfuse値が全ビット1で読み出されるから
意味ある値が読み出されるまでクロック落としていく処理はやろうと思えば簡単にできる
でもクロック落としたまま書き込み開始するとすごい時間がかかったりするから
自動フォールバックしたらその旨の警告表示とFUSE値の表示で止めるとか
現在の書き込みクロックの設定で書き込み可能なシステムクロックの最大値の目安を表示するとか
色々考えられる
531774ワット発電中さん:2010/01/29(金) 10:41:22 ID:FK/lUVwh
そういうのは簡単なシェルスクリプト書くか、個人の改造だな。
hidaspxは、今のシンプルさがいい。
532774ワット発電中さん:2010/01/29(金) 10:42:22 ID:vVhAGS5i
俺はあえて遅くして使ってる。
128KB書き込む場合は別として、クロックが1MHzの時でも書き込めるくらいにしてる。

早すぎるとなんか書き込んだ気がしないんだよなぁ。
533774ワット発電中さん:2010/01/29(金) 11:31:15 ID:czgMzWG0
>>446 それって上手く使えば、自分の制御が正しく出力されてるかの正当値チェックにつかえないかね
534774ワット発電中さん:2010/01/29(金) 11:39:18 ID:czgMzWG0
AVRの内臓RCってそんなに信用できないものなの?

AVR053だったかのアプリケーションノートには1%に保障するとか書いてあったけど
535774ワット発電中さん:2010/01/29(金) 11:42:51 ID:cLwdcnkU
>>534
アプリケーションノートw
536774ワット発電中さん:2010/01/29(金) 12:07:09 ID:cLwdcnkU
電子オルゴールを幾つか作れば体感できるよ
537774ワット発電中さん:2010/01/29(金) 12:18:11 ID:ShRFwKOM
温度安定性に関してはPICなんかと比較して遜色無いと思う
ドライヤーで極限まで炙っても1%も変動しないし
ただPICの場合狭い補正範囲を12bitだかのより高いビット数で補正するのに対して
AVRはより広い補正範囲を7bitとか8bitで補正するので
出荷時補正のばらつきが多いというのはあると思う
実測で3%とかずれてるのがざらにある(PICの場合実測0.5%以内の補正精度)
538774ワット発電中さん:2010/01/29(金) 13:06:22 ID:v9YYsmdF
つ クリスタル
539774ワット発電中さん:2010/01/29(金) 13:28:58 ID:8QO9c+ei
>>529
いくら工夫したところで、タイマー割り込みから切り替え完了の間に割り込みが入るような実装はリアルタイムとは言えない。
540774ワット発電中さん:2010/01/29(金) 13:35:55 ID:9D6M2Mdm
時計を作ったとき、RCだと1日で20分遅れたりした。(ATtiny2313/1MHz)
誤差1%なら14.4分以内のはずだから大体当たってるけど、時計にはならないな。

クリスタル発振子でも1日で1〜2分遅れた。早くはならないもんだな。
クリスタル発振器は正確。1カ月で1秒以内。
541774ワット発電中さん:2010/01/29(金) 13:42:03 ID:9D6M2Mdm
思い出したんで一応修正。
RCのとき、比較一致で-1するの忘れてた。
正しい記述だったら14.4分以内の誤差に収まったのかもしれない。
時計の役には立たないってことには変わりないけど。
542499:2010/01/29(金) 14:14:06 ID:svbm5FTh
>>534-
ATTiny2313でOSCCALを変えて内蔵RCの周波数を計ってみました。
内蔵USARTは±500KHz程度の誤差範囲を受け付けるようで、
この固体の0x55(8.35MHz)はたまたま動いていたようです。
ためしにOSCCALを0x56にするとデータ化けが発生します。
見ての通り大雑把にしか調整できないので時計用途には向かないと思います。
負荷によっても100KHz前後変動します。

4c 7566192 Hz (4b以下は調べてません)
4d 7664336 Hz
4e 7752160 Hz
4f 7855376 Hz
50 7853504 Hz 60 9435696 Hz 70 11777376 Hz
51 7959184 Hz 61 9573456 Hz 71 11982688 Hz
52 8050496 Hz 62 9709072 Hz 72 12195056 Hz
53 8166432 Hz 63 9855424 Hz 73 12417968 Hz
54 8244080 Hz 64 9985472 Hz 74 12621104 Hz
55 8350128 Hz 65 10152800 Hz 75 12888992 Hz
56 8463872 Hz 66 10277904 Hz 76 13135824 Hz
57 8564432 Hz 67 10433296 Hz 77 13390520 Hz
58 8592864 Hz 68 10463920 Hz 78 13432864 Hz
59 8690064 Hz 69 10635616 Hz 79 13752784 Hz
5a 8801904 Hz 6a 10813472 Hz 7a 14000208 Hz
5b 8920624 Hz 6b 11019808 Hz 7b 14287088 Hz
5c 9005056 Hz 6c 11144192 Hz 7c 14602912 Hz
5d 9130336 Hz 6d 11330480 Hz 7d 14907664 Hz
5e 9258160 Hz 6e 11547904 Hz 7e 15278240 Hz
5f 9405984 Hz 6f 11734576 Hz 7f 15601632 Hz
543499:2010/01/29(金) 14:27:25 ID:svbm5FTh
4fと50の周波数に差があまりないのは記録違いではなく、
所々こういう場所がありました。(5fと60、6fと70も同様)
この固体で8MHz相当として使う場合はOSCCALを0x51〜52に
設定し直す必要があります。
内蔵RC発振を使うなら周波数カウンタがないと厳しいです。
544774ワット発電中さん:2010/01/29(金) 14:38:26 ID:seraSv7J
内蔵CRは精度よりジッタが気になる
分周したのを無線機に突っ込んだらクリスタルだと綺麗なピーって音に聞こえるのに
内蔵CRだとびよよよよよって聞こえる
545774ワット発電中さん:2010/01/29(金) 14:41:15 ID:RqGUIwUT
内蔵RCは微調整できる段階でアレな発振だと思わないのかなw
とりあえずISPが何もなしでできるくらいしか個人的にはメリットを感じてない
546774ワット発電中さん:2010/01/29(金) 14:52:39 ID:czgMzWG0
なんで聞いたかというと、部屋で通信が動いてたものが外で動かなかったから。

25度でAVR053のRC校正バッチファイルで8MHzにあわせた時に
実際何℃でどの程度ズレるのかがデータシートを見てもわからない

25℃の部屋で、STK500でOSCCALのデフォ値を計算してEEPROMに書いてやったら
それさえ読めば-40から80℃まで2%程度のズレで動作してくれるなら、それで問題ないんだけど。
547774ワット発電中さん:2010/01/29(金) 14:54:50 ID:czgMzWG0
>>545 水晶無しで動くならそれにこしたことないだろうに。
なんでもタダじゃないんだぞ。
548774ワット発電中さん:2010/01/29(金) 15:05:48 ID:RqGUIwUT
まぁ書いたあとで思ったのは、俺はピンを限界まで使って無い
(使う可能性があるなら上位のものに変更)とかOSCは常備してるしなぁとか。
多分そういう反応もあるだろうなぁと思ったけど、外付け何もなしで頑張るテーマ
とかだと厳しいかなとは思うよ。
549774ワット発電中さん:2010/01/29(金) 16:25:10 ID:cLwdcnkU
>>539
ん? そんなこと無いだろw どうせスレッドの間という判定はできない訳だし。
タイマー割り込みの精度がゆらぐのは制御系で使い物にならん。
550774ワット発電中さん:2010/01/29(金) 16:27:55 ID:cLwdcnkU
>>544
電源にでかいコンデンサー入れるとマシになるんじゃない?
551774ワット発電中さん:2010/01/29(金) 17:02:55 ID:8QO9c+ei
>>549
ディスパッチャに割り込み入るようじゃ、切り替えまでの時間が一定でなくなるから
タイマ割り込みの周期がいくら正確でもプロセスのタイミングが揺らぐ。
>>どうせスレッドの間という判定はできない訳だし。
とか書いてる所をみると、実際に制御なんてした事ないんじゃないか?
AD、DA等の一定周期で実行される必要があるプロセスは、ディスパッチャから呼ばれたら次のタイマ割り込み迄に
時間を気にする部分の実行を終える必要がある。そうする事で、ディスパッチャの実行時間が一定なら
タイマ割り込みの周期から毎回一定の時間で処理出来る。
割り込みを許可したヘタレディスパッチャでは、実行時間が毎回揺らぐから
いくらタイマが正確でも、AD、DAの周期はバラつく。
552774ワット発電中さん:2010/01/29(金) 17:31:15 ID:A8F27Jw4
Atomethreadsは禁止してるからOKでFA?
553774ワット発電中さん:2010/01/29(金) 17:41:19 ID:8QO9c+ei
>>552
ソース見てないから判らないけど、下手に割り込みハンドラを書かなきゃ大丈夫だと思う。
モーターとかなら大抵、数ミリ秒周期で十分だし。
554774ワット発電中さん:2010/01/29(金) 17:47:11 ID:cLwdcnkU
>>551
熱弁乙! タイムスライス割り込みでTCB替える方式でも行けるだろJK
RTOSは多分君よりも実装をこなしてるw
555774ワット発電中さん:2010/01/29(金) 18:04:38 ID:cLwdcnkU
>AD、DA等の一定周期で実行される必要があるプロセスは、ディスパッチャから呼ばれたら次のタイマ割り込み迄に
>時間を気にする部分の実行を終える必要がある。

この書き方はAD/DAをスレッド内でポーリングしてるんですかね。
割り込みハンドラもTCBへ登録してコールバック風味にした書き方を俺は好んで使うけど?
556774ワット発電中さん:2010/01/29(金) 18:11:42 ID:8QO9c+ei
>>554
>RTOSは多分君よりも実装をこなしてるw

その割には訳わかめなレスですな。
TCB替える方式ってなんだ?
>>551 は、タイムスライス割り込み発生から、TCBを元にプロセスを切り替える迄の間に割り込みが入ってしまうと
タイミングが揺らぐと書いたんだが…
557774ワット発電中さん:2010/01/29(金) 18:12:53 ID:Dx6gbuOP
アトメスレッド(Atomethreads)!
558774ワット発電中さん:2010/01/29(金) 18:18:27 ID:svbm5FTh
どちらにしろ割り込みを使う以上、複数がかち合えば揺らぎます。
基本的にディスパッチの優先度は他の割り込みよりも低いので、
揺らぎを最小限にするためにレジスタの入れ替えが終わったら
即座に割り込みは許可した方が良いと思いますが。
それとAtomethreadsじゃなくてAtomthreadsですよ。(eは記者のtypoです)
559774ワット発電中さん:2010/01/29(金) 18:21:25 ID:8QO9c+ei
>>555
ポーリングなんかしたら一定周期で起動できないでしょ。
あとは>>556
560774ワット発電中さん:2010/01/29(金) 18:24:43 ID:mkAlDJup
ところで、どの辺のクラスからRTOS使うと便利なんだ?
561774ワット発電中さん:2010/01/29(金) 18:28:53 ID:2Sydef7G
>>559
タイムスライスだからスレッド内でポーリングしててもオーケじゃまいか?
562774ワット発電中さん:2010/01/29(金) 18:43:57 ID:8QO9c+ei
>>560
ボタン入力一つとっても、RTOSの方が楽だけど、元々自作のディスパッチャで
スケルトンが出来てるから、8ピンデバイスでさえRTOSっぽい使い方をする事が多い。
汎用品だと高機能過ぎる可能性もあるから、自分が何をしたいかで判断するしか無いのでは?

>>561
ポーリングするという事は、ループの何処で次の実行権を持つかわからないから、ループ実行に
掛かる時間だけジッタが生ずるし、無駄にループするより、ディスパッチャに実行を戻して他のプロセスに
実行時間を割り当てた方が良いと思う。
563774ワット発電中さん:2010/01/29(金) 19:45:41 ID:q7ZQMPj8
>>561
ジャマイカ
564774ワット発電中さん:2010/01/29(金) 22:30:22 ID:pPVbdA3H
取り合えずそんなに高度な精度を要求される用途を教えてくれ
565774ワット発電中さん:2010/01/29(金) 22:50:38 ID:qEDa0neC
ドットマトリクスを大量に動かしてたら時々暴走するから
セラロックから水晶に変えたら問題なくなかった

やっぱ水晶のが信頼性あるな・・・
566774ワット発電中さん:2010/01/29(金) 23:48:47 ID:W7bZHivv
>>565
>>セラロックから水晶に変えたら問題なくなかった

原因は別にある
567774ワット発電中さん:2010/01/29(金) 23:49:56 ID:8QO9c+ei
なんか違う気がする。
568774ワット発電中さん:2010/01/29(金) 23:59:20 ID:15g/quna
セラロックと水晶を似たもの同士と考えている時点で間違ってる。
569774ワット発電中さん:2010/01/30(土) 02:32:37 ID:MC0uuz8t
負荷容量を付けてなかったと
570774ワット発電中さん:2010/01/30(土) 07:13:51 ID:OGqolcoO
avrとセラロックには相性問題があってうまく発振しない場合には3端子の
両端の端子に1MΩ程度の抵抗を接続するといいという話しもあるね
571774ワット発電中さん:2010/01/30(土) 09:10:45 ID:+w9tkJvy
>>564
PWMでモーター制御
572774ワット発電中さん:2010/01/30(土) 09:18:14 ID:+w9tkJvy
>>551
元々、割り込みマスク期間が長すぎて弊害が多いって話だった筈なんだがな。
もう少し建設的なレスはできないのかねー。
573774ワット発電中さん:2010/01/30(土) 09:40:28 ID:+w9tkJvy
俺の作ってるのはロボットで協調性と自立がテーマなので、
AIと無線通信とモーター制御をマルチタスクでこなしています。
実際AVRではなくARMだけどね。
574774ワット発電中さん:2010/01/30(土) 09:41:40 ID:fv4ID8IH
>>551
正確性を要求するなら、RTOSなんぞ使わずに、タイマ割り込み処理内でA/Dや
D/Aを処理した方がいいと思うんだが?

タイマ割込ハンドラ内で処理しようが、(タイマで駆動されているに過ぎ
ない)RTOSのディスパッチャ経由で呼び出そうが、どこかで割込が禁止
されていれば、当然タイマ割込もRTOSのディスパッチャも影響を受ける
わけで、なんら違わないと思うが?

どのみち、処理に要するクロック数とオーバーヘッドが増えるだけなのに、
RTOSやディスパッチャが特別な魔法だとでも思っているのだろうか?
575774ワット発電中さん:2010/01/30(土) 10:47:59 ID:fv4ID8IH
>>573
どこらへんがすごいのかわからん。

AI=ユビキタスと同様、理系詐欺師がよく使う。
無線通信=CPUでベースバンド変調するならともかく、UART接続なら
普通のシリアルと何ら変わらない。
モータ制御=ふつう。

CPUで直接汎用I/Oポート叩いてPWMパルスを生成するならともかく、タイマ
等のハードウェアが持つPWM機能を使ってPWM制御しているんだろうから、
PWM制御自体にシビアなリアルタイム性なんて要求されないと思うが?

それに、毎パルス周期とか頻繁にPWMパルス幅を変えたところで、モータの
回転子や負荷の慣性があるから、それにすぐ反応するわけじゃない。

まぁ、もともと処理能力のあるARMなら下手糞なプログラム書いても、
それなりの速度で動くわな。

試しにmega328(20MHz)の内蔵タイマを1本だけ使って、約80us周期でタイマ
割込を発生させて、フルカラーLEDのRGB各端子を1/256分解能の可変幅パルス
で駆動させて輝度と色調を変えるプログラムを書いてみたけど、あっさりと
動いて拍子抜けしたよ。
576774ワット発電中さん:2010/01/30(土) 11:02:10 ID:i82RUpwA
家電でAI内蔵とか宣伝してる製品もかなりあったね、AIってつくのっていろいろと酷かった記憶しかない。
577774ワット発電中さん:2010/01/30(土) 11:06:38 ID:lPf7R5sU
家電はファジー理論(笑だろ。
578774ワット発電中さん:2010/01/30(土) 11:16:37 ID:gffrFF9F
ここはくだらない自慢スレでつか?
579774ワット発電中さん:2010/01/30(土) 12:52:39 ID:0No6o4sy
はい。土曜限定自慢スレです。
誇らしげに蘊蓄たれていってください。
580774ワット発電中さん:2010/01/30(土) 12:53:49 ID:KwzdJGJP
口だけならいくらでも言える
581774ワット発電中さん:2010/01/30(土) 12:54:30 ID:j6O39m0U
>>572
マスク期間は何μ秒位かかって、それは割り込み周期の何パーセントに相当するんだい?
せめてそこまで考慮するか、使ってみて不具合があるならレスすればいい。

しったかして、バグがあるだの工夫が足りないなどと>515から
非建設的な事言ってるから突っ込まれてるだけだと思うぞw
いくら工夫しようと、現状のCPUでディスパッチャ実行中に割り込みが入ってしまえば
プロセスの起動にジッタが生ずるのは事実だしな。
582774ワット発電中さん:2010/01/30(土) 12:57:39 ID:Ymyh6z9Z
WinAVR20090313とAVRStudio4.16を使っています。
皆様は最適化オプションを使っておられますか?

自分はvolatile修飾をしても、思ったような動きをせず、
気持ち悪かったので、ずっと-O0オプションです。
ちなみにWinARMを触っていたときも-O0でやってました。
583774ワット発電中さん:2010/01/30(土) 12:59:15 ID:j6O39m0U
>>574
適材適所。必要なら使えばいいし、使いこなせなかったり目的に適わなきゃ使わなきゃいい。
俺は別にRTOSを特別薦めてる訳じゃ無いよ。もしかして日本語駄目な人?
584774ワット発電中さん:2010/01/30(土) 13:02:54 ID:j6O39m0U
>>575
8ピンPIC、内蔵4MHzのクロックで5個のLEDを256段階で変調した事がある。たいして難しくは無かったよ。
585774ワット発電中さん:2010/01/30(土) 13:05:19 ID:qdFoeugE
>>582
最新バージョン使ってみれば?
586774ワット発電中さん:2010/01/30(土) 13:30:48 ID:j6O39m0U
>>575
>どこらへんがすごいのかわからん。

仕方が無いよ。モーター制御=PWMとか言っちゃうレベルだと
制御を語るには100年早い。
587774ワット発電中さん:2010/01/30(土) 13:55:30 ID:fv4ID8IH
>>584
それはアセンブラで? まぁ8ピンPICじゃアセンブラ使わざるを得ない
だろうけど。

>>575 は、Cのみで特別に最適化を意識せず書いて、ソフトによるPWM処理
も、タイマ割込内から登録されたユーザ関数を呼び出すというかなり冗長
なやり方でもできたので、あらためてAVRの性能に関心した。

>>583
割込禁止期間の長さが問題になるかどうかは、個別の割込毎の割込周期や
処理時間に対する%比より、複数の実際に処理する割込要因の、それぞれの
割込処理時間の最大値の合計を超えないかどうかだと思う。

これを超える割込禁止期間があれば、発生頻度の差はあれ、割込の発生条件
が重なると、確実に処理落ちする。

RTOSを使いこなせないというより、そもそも使うメリットが見当たらない。
ROM/RAMの制約が厳しい上にメモリ保護機構もないのに、ファイルシステムの
サポートさえないようなRTOSが必要ないしメリットを見い出せる用途って、
RTOSを使うという手段が目的の教育用となどを除いて、例えば具体的にどんな
ケースが?
588774ワット発電中さん:2010/01/30(土) 15:10:11 ID:U5x7JE2u
ここはRTOS不要論者が暴れるスレか?
>>583 が言っているのが結論だろうに
>使いこなせなかったり目的に適わなきゃ使わなきゃいい。

用途が思い浮かばない(=不要)なら、使わなきゃいいだけのこと
589774ワット発電中さん:2010/01/30(土) 15:17:32 ID:Qn2P9Zta
知ったかを語りたいだけでしょ?
590774ワット発電中さん:2010/01/30(土) 15:27:34 ID:lIDKZKjK
だからおまえらの気にする重箱の隅が影響する
具体的な用途をあげてくれよ
俺のレベルだとイメージがわかない
目指す先に何があるかしりたい
591774ワット発電中さん:2010/01/30(土) 15:59:28 ID:a75/vhdn
好きなように使えばいいんじゃないの?
目的の動作がちゃんとできて不具合なければ問題ないんだし。
592774ワット発電中さん:2010/01/30(土) 16:06:12 ID:MXE371X+
>>575
近代制御理論勉強してみたら?
実装するのは楽しいよ。
593774ワット発電中さん:2010/01/30(土) 16:07:39 ID:MXE371X+
↑現代
恥ずかしい・・・
594774ワット発電中さん:2010/01/30(土) 16:26:34 ID:LuZeDJ5P
以前作ったものだと,たとえばUSBからの割り込みを受けると何の
割込みだったのかを判定して,デバイスリクエストならデバイス
リクエスト処理タスクを,他のエンドポイント入出力ならそれぞれ
データ入出力を行うタスクを起動して・・という具合にやったな。

主だった処理をタスク分けしてそれぞれを独立したプログラムとして
動かすことで全体の見通しが良くなるのと,各処理の独立性が高まるので
ある処理に手を入れたときに他の処理の動作に影響を与えにくくなる
というのは利点かな?

ごく単純な例で言えば,25msのタイマ割り込みを使って3つのLED
をそれぞれ200ms,300ms,500msの周期で点滅させたいとして,
もちろん,それぞれのLED用にカウンタを用意しておいて,タイマ
割り込みの中でそれぞれのLEDの点滅のためのカウントと点滅処理
をするという考え方もあるけど,マルチタスクOSを積んでおいて
それぞれをタスク化して,
while(1) {
LED_ON();
Sleep(200);
LED_OFF();
Sleep(200);
}
みたいなのを3つ用意してタイムスライスで走らせておくと,
ひとつのLEDの処理を考えている時に他のLEDの事を意識しなくて良いし,
ループの中にやたらと時間を食う処理が入ってきても他のサービスが
停止してしまうようなことはないから気が楽。
LEDのほかにも何かを追加したいなと思ったときにも,
それを処理するタスクを一本作って追加すれば良いだけで,
LEDの点滅処理をやっているところには一切手を加えなくて良い
(そういう処理があること自体考えなくて良い)

まあ,要するにこういうのは「楽をしたいから使う」ものであって,
使った方が面倒臭くなるようなら使う必要は無いんだよ。
595774ワット発電中さん:2010/01/30(土) 17:54:36 ID:pEiuYfs4
俺もアトメルスレッド使ってみようかな
596774ワット発電中さん:2010/01/30(土) 19:17:24 ID:pJI+k2B+
>>592
古典制御以外の制御はみんな現代制御だってサークルの勉強会で習った
597774ワット発電中さん:2010/01/30(土) 19:23:56 ID:ewfxatJE
<丶`∀´> 現代制御はウリナラ起源ニダ!
598774ワット発電中さん:2010/01/30(土) 19:32:48 ID:5Od12bto
>>597
確かにそうだな!
しかし、いちいちトヨタ制御とか三菱制御とか呼ぶのは面倒だと思うぞ
599774ワット発電中さん:2010/01/30(土) 20:01:50 ID:qUHRVC2J
>>594 が言っているように、モジュール化による保守性の向上も利点の一つだな
ちなみにTCP/IP Stackを動かすのにRTOSを利用させて貰っている
「楽をしたいから使う」の通り
600774ワット発電中さん:2010/01/30(土) 22:36:01 ID:fv4ID8IH
なんだか、重箱の隅つつくようなクリティカルな処理や、タイマ割込の
ジッダなんかを問題にしておいて

>> 594
> それぞれをタスク化して,
> while(1) {
> LED_ON();
> Sleep(200);
> LED_OFF();
> Sleep(200);
> }
> みたいなのを3つ用意してタイムスライスで走らせておくと,
> ひとつのLEDの処理を考えている時に他のLEDの事を意識しなくて良いし,

と言える理由がわからん。 LED_ON()や、LED_OFF()内部の処理時間によ
る処理の遅れやばらつきは「0」ではないけど、気にしないの?

> ループの中にやたらと時間を食う処理が入ってきても他のサービスが
> 停止してしまうようなことはないから気が楽。

創価? ループ内にやたら時間を食う処理が入れば、この例で言えばLEDの
点滅周期は目に見えて遅れるのは変わらないと思うけど? ループに時間が
掛かる処理を追加してもLEDは200(ms?)のON/OFF周期で点滅すると?
こんなプログラムで時計とか組んでいたら致命的。 そりゃ、プリウスも
暴走するわな。

> LEDのほかにも何かを追加したいなと思ったときにも,
> それを処理するタスクを一本作って追加すれば良いだけで,

プログラムの組み方次第では? とぐろ巻いた一本糞みたいなプログラム
しか書けなくてRTOSに頼らざるを得ないのなら判る。 仕事で何年もプロ
グラム書いていて、Cもできると言いながら、引数でパラメータを渡したり、
戻り値を返すソフトが書けず、グローバル渡しやってバグ出しているのは
よく見る。 やっつけでそこそこ動くまでが早いので、素人目には優秀と
映ったりして始末が悪い。

MMUを持たない組込系CPUに関しては、タスクもスレッドもサブルーチンも
概念的な違いだけで、実質的な違いはないに等しいと思うで。
601774ワット発電中さん:2010/01/30(土) 23:20:30 ID:EjxtIrHC
そりゃ気にしないんじゃないの?
LEDが点滅するタイミングがms単位でぶれても気にならないよ。

急ぐけども遅延がOSのコンテキストスイッチに任せてて許せる物は優先度高くしてOSに、
許容できないものはISRで自分でハンドルし、可能な限り一瞬で処理を終える。
んで、大まかな時間があってれば良いものは適当に低い優先度で。

自分がAVRでRTOS使うときはこんな感じで行う。

HWレベルで優先度のついた割り込みがあるわけじゃないから、
この実装での遅延が許容できないならプロセッサ変えるとか、
外部のHWに応答させるとかなんか根本的に変えるしか無いんじゃないん?

切り詰めればRTOS有りより早く応答出来るだろうけど、
それが必要な場面ってのはあんまり想像できないね。
602774ワット発電中さん:2010/01/30(土) 23:25:38 ID:7ejbRuKR
論r(ry
603774ワット発電中さん:2010/01/31(日) 00:29:15 ID:dZw6L4qD
>>601
> LEDが点滅するタイミングがms単位でぶれても気にならないよ。

7セグLEDの8桁ダイナミック点灯だって、桁あたり2ms以下、1周で
16ms以下で廻さないとちらつくんだけど? ms単位でぶれるよう
なら、とても使い物にならない。

> HWレベルで優先度のついた割り込みがあるわけじゃないから、

プライオリティが固定なだけで周辺I/Oの割込優先度はあると思うが?
それとも68Kみたいなレベル指定の割込マスクの話? 8259みたいに
ラウンドロビン等で割込入力の優先順を切り替えが必要ってこと?
(AT互換機は使ってないけど)

> 切り詰めればRTOS有りより早く応答出来るだろうけど、

タイマ割り込みを使わずに、タスクの切り替えを実装しているプリ
エンプティブなRTOSってあるの?

コンテキストスイッチが実際に何をやっているかわかってるの?
タスク切り替えのタイミング毎に、CPU内部のレジスタを入れ替え
ているんだが、そのオーバーヘッドを考えたことないの?

「OS」という「CPU派遣業」が仲介するだけでCPU能力のマージンは
確実に食われるんだよ?
604601:2010/01/31(日) 01:07:54 ID:S4MHf9d8
>「OS」という「CPU派遣業」が仲介するだけでCPU能力のマージンは
確実に食われるんだよ?

当たり前やん。


LEDの件は元になった話は400ms周期の点滅でしょ?
点滅の周期が仮に1%揺らいでもたいていの人にはわからないんじゃないかって話。

そこで、7セグのダイナミック点灯にもRTOSを使うのはわりと変わり者。
だけど7セグに標示する内容を切り替えるのはRTOS上で動くスレッドの精度でも概ね足りる。

そういう実装ならスレッド上では

set_7seg(10);
wait(500);
set_7seg(9);
~
とかを呼び出して、

実際のダイナミック点灯自体は余ったタイマーを1本使うとかしてやる。
んで、そこはOSに影響しないように気を使って短く書く。

OSからの影響も割り込み禁止でマスクしてるスイッチの時間位だと思うけど、
普通に考えてそのくらいならLEDのダイナミック点灯には問題ない。

もちろん、そのOSの制御に起因する遅延が許容できない時は当然OS使わないけど。
605774ワット発電中さん:2010/01/31(日) 02:20:57 ID:D8YdxGLe
>>587
勿論アセンブラだよ。LEDは目的では無く実験で、実際はある目的で使う為だったから
Cなんかじゃ例えクロックを20MHzにしたって無理な用途だったのもあるけど
1MIPSのpicと20MIPSのAVRでpicの方が高性能なら、安いpicで作るのは当然の事。
まあ、LED遊びで一個作るならAVRとグダグダなCで書いても良いかもしれないが。

>RTOSを使いこなせないというより、そもそも使うメリットが見当たらない。

>>586にも書いたけど、「モーター制御=PWM」、程度の知識なら
制御を理解してるとは言えないので、RTOSにメリットを見出せないのも無理は無い。


>>603
ようは「使いこなせません」って事じゃん。
606774ワット発電中さん:2010/01/31(日) 03:20:31 ID:4yAkvFz3
>>600
漏れはそんな重箱の隅のようなタイミングには興味は無いんだけどね。
>ループ内にやたら時間を食う処理が入れば、この例で言えばLEDの
>点滅周期は目に見えて遅れるのは変わらないと思うけど?
他でいろいろ書いている位の知識があるなら,当然
リアルタイムOSの場合にはスリープ(ウェイトと言ったほうが
いいかな?)といっても,コールされた時点を基点にするものだけじゃなくて
定周期起動モードもあるという程度のことは知ってるはずなのにスルー
してるのはずるいんでない?

>タスクもスレッドもサブルーチンも
>概念的な違いだけで、実質的な違いはないに等しいと思うで。
サブルーチンだと,そこを実行している間,他のサービスが出来ない
というのが大きな違いだよね。
時間のかかる処理Aが一個入っただけでその処理中に他がまったく
動けなくなるということは避けたいなと思うことはあるでしょ?

>「OS」という「CPU派遣業」が仲介するだけでCPU能力のマージンは
>確実に食われるんだよ?
というのは大前提で,その食われる能力とプログラム上で楽をするという
トレードオフだよね。

本当に厳しい部分ならCPUなんて遅くてしょうがないから,ハードウェア
で片付ける事を考えるなりするでしょ?
たとえば点滅周期のブレが問題になるようなら,それぞれに点滅用の
タイマをつけてやるなりするよね?
607774ワット発電中さん:2010/01/31(日) 04:16:01 ID:NL5XYQrx
一人だけで作ってるならなんでもアリ
608774ワット発電中さん:2010/01/31(日) 04:25:41 ID:ewhzByDs
いつまで続くんですかこれ
609774ワット発電中さん:2010/01/31(日) 04:35:41 ID:H8iWf/bt
PICのスレでC対アセンブラのごたごたがあったけど、形を変えて
こっちに来たんじゃないの。
610774ワット発電中さん:2010/01/31(日) 04:36:43 ID:crHRx2Mu
ずっとROMってたけどうんざり
611774ワット発電中さん:2010/01/31(日) 07:28:11 ID:3H0X3OtE
使った方がいいのか、使わないのがいいのか、はっきりしてくれ
612774ワット発電中さん:2010/01/31(日) 07:36:21 ID:4khPcIcM
ごねてるの見ると学生の頃の俺を思い出してウンザリする
613774ワット発電中さん:2010/01/31(日) 07:36:47 ID:yWm0lp1f
レジスタ32*2*2 + 優先度検索とかで数十サイクルで
おそらくスイッチは150〜200サイクルぐらい。
200サイクルは20MHzで10us、40MHzで5us、80MHzで2.5us。
速いにこしたことはないが、要はAVRのレジスタ数や命令セット、
動作クロックで見積もると使いどころが難しいってことだね。
ARMとかスイッチを意識したMCUならもっとサイクル数は短くなる。
どのみち禁止期間の影響が出ない範囲で使うしかない。
614774ワット発電中さん:2010/01/31(日) 08:27:29 ID:RfqQ3i4i
使いたい人は使う
使いたくない人は使わない
お互い干渉しない
それでいいじゃないか
615774ワット発電中さん:2010/01/31(日) 09:20:25 ID:llP8GmaK
ジャマイカ
616774ワット発電中さん:2010/01/31(日) 09:25:24 ID:0p7PjDRu
>>586
ココはハード設計もできないプログラマが集まるスレですかw
617774ワット発電中さん:2010/01/31(日) 09:45:25 ID:0p7PjDRu
>>600
このスレの癌はおまい一人だけだな、
能無し君
618603:2010/01/31(日) 09:59:50 ID:dZw6L4qD
>>604
> そこで、7セグのダイナミック点灯にもRTOSを使うのはわりと変わり者。
> だけど7セグに標示する内容を切り替えるのはRTOS上で動くスレッドの精度でも概ね足りる。
>
> そういう実装ならスレッド上では
>
> set_7seg(10);
> wait(500);
> set_7seg(9);
> ~
> とかを呼び出して、
>
> 実際のダイナミック点灯自体は余ったタイマーを1本使うとかしてやる。

ホントに実装したことあんのかな? タイマ表示更新と同期は取らないの?
普通は、モード毎に表示バッファ領域を設けて、表示対象のフラグを変更
するなどすると思うけど?

表示のリフレッシュ周期と同期せずに、表示内容を変更すれば、チラツキが
出るよ。 まぁ、7セグくらいならあまり目立たないけど、ドットマトリクス
表示のLEDやCRTでこれをやると、確実にチラツキが見える。

> んで、そこはOSに影響しないように気を使って短く書く。

内容が同じならコード自体は、割り込み処理内に書こうが、タスク化しよ
うが、CPUの時間占有率は変わらない。RTOSを使う方が、余計な処理が増え
る分CPU性能が食われ、より潜在的に性能が高いCPUを要求する。
619774ワット発電中さん:2010/01/31(日) 10:14:42 ID:JnVwpGYS
RTOS論議は、昔からある収束しない論争

続けたいなら別スレで!
620603:2010/01/31(日) 10:44:40 ID:dZw6L4qD
>>584 =603
> 8ピンPIC、内蔵4MHzのクロックで5個のLEDを256段階で変調した事がある。
> たいして難しくは無かったよ。
> 勿論アセンブラだよ。LEDは目的では無く実験で、実際はある目的で使う為だったから
> Cなんかじゃ例えクロックを20MHzにしたって無理な用途だったのもあるけど
> 1MIPSのpicと20MIPSのAVRでpicの方が高性能なら、安いpicで作るのは当然の事。
> まあ、LED遊びで一個作るならAVRとグダグダなCで書いても良いかもしれないが。

「変調」って表記が気になるが ...

いくらアセンブラで書いたところで、4MHz(1MIPS)のPICじゃあ、80us(msではない)
周期のタイマ割込を拾うことさえ難しいと思うけど、こちらが想定している内容
とは違うのかなぁ?

実際は輝度に対する人間の目の感度が対数的なのはおいといて、内蔵タイマの
PWM機能を使わず、I/OポートのON/OFFのみで、ちらつきが見えない最低の点灯
周期50Hz(20ms)で、出力パルスの最小可変幅をその1/256単位(256段階)で制御
する目的で、20ms÷256≒約78us(msではない)周期でタイマ割込を発生させた。

割込応答のオーバーヘッドを無視しても、たった80ステップしか走らないPIC
で、しかも5個のLEDを制御できるとは思えん。 タイマの割込回数(現在の
輝度レベル)のカウントを除いても、計算上はLED毎に設定された輝度値との
比較および、比較結果によるI/Oポートのビット操作(ON/OFF)を、1個のLEDに
つき16ステップ以内に処理しなければならない。 しかも、CPUはタイマ割込
処理でほぼ占有され、非割込状態のプログラムはほとんど走らない。

もちろん、同様の処理は内蔵タイマのPWM機能を使えば簡単なんだが、1本の
タイマで使えるPWM出力は2本(TOCxA/TOCxB)でピンも指定され、RGBの3出力
を制御するのに16bitと8bitのタイマ両方を使った上に2つのタイマを同期
させるのは面倒だったので、可能かどうか試してみた。

おまけで、簡単なモニタ機能を内蔵して、UARTに繋いだ外部コンソールから、
個別のLEDのON/OFFと輝度レベルの設定、および周期的に色と輝度が自動で
変わるモードを用意して、これらの処理も割込内に実装した。 UARTの送/
受信もリングバッファを介して割り込みで駆動。

> >>586にも書いたけど、「モーター制御=PWM」、程度の知識なら
> 制御を理解してるとは言えないので、RTOSにメリットを見出せないのも無理は無い。

いまどき「えぇ愛」なんて言ってるくらいだし、フィードバック制御やPID
制御とかのことを言いたいお年頃なのかな? いやファジー制御とか、1/f
ゆらぎとかかな?

どんな演算したところで、結果的にモータをPWM制御したりするのはハード
ウェアでソフト的にシビアな要求はないでしょと言いたかったのだが?
621774ワット発電中さん:2010/01/31(日) 10:46:10 ID:HQTp4Z2P
とりあえず透明あぼんしとくか
622774ワット発電中さん:2010/01/31(日) 10:50:19 ID:4yAkvFz3
別に論争でも何でもないんだけどね。
シングルタスク無限ループから,割込みの併用,単純時分割処理などから
はじまって,段階はいろいろあってどこで躓くかだろうね。
「理解できないものは不要に思える」というのはある程度はしょうがない
けど,得てしてそういうのに限って声だけはでかいから荒れやすい。
スパコン蓮舫ちゃんみたいなものだと思えばよろしいかと。

PICスレなんかだと「割込みなんて邪道だ」とまで言い切るのがいて
それでしばらくスレが荒れたりするね。
今回はそこまでは酷くないみたいだけど,現象としては似たようなもの。
623774ワット発電中さん:2010/01/31(日) 10:58:48 ID:Kz89IvNn
最初にAomethreadsネタを投下したヤツが (ry
624774ワット発電中さん:2010/01/31(日) 11:04:40 ID:dZw6L4qD
>>622
蓮舫はともかく、スパコン予算は事業仕分けで切るべきだった。そもそも
予定より遅れているから予算100億追加とかドンブリ勘定杉。 要求する
予算の算定根拠くらい示せと。

それと、外国人参政権も理解できません。 不要だと思いますがね?
625774ワット発電中さん:2010/01/31(日) 11:09:37 ID:4khPcIcM
レンホウのスパコンネタ書く奴は
事業仕分け見てなくて報道の煽りに乗っかってるだけなのがすぐわかるな
626774ワット発電中さん:2010/01/31(日) 11:15:20 ID:+Cgjzunm
んだ。必要でしょう?って助け舟すら出してたのに。
627774ワット発電中さん:2010/01/31(日) 12:11:36 ID:4yAkvFz3
そういう瑣末な言葉の餌に食いつくことしか
できなくなったということで,このネタも終了だな。
628774ワット発電中さん:2010/01/31(日) 12:41:27 ID:v7TYD3Q0
だからAVR使った高度な制御でドライブしたモーターでなに作るか教えてよ
モーターとLEDは手段だろ
目的は何なんだよ
629774ワット発電中さん:2010/01/31(日) 12:56:37 ID:yWm0lp1f
大人は肝心なことには答えないって利根川先生が
630774ワット発電中さん:2010/01/31(日) 14:01:09 ID:CTCfb7Ad
○○コンは大事よね


注:好きな文字を入れましょう。
631774ワット発電中さん:2010/01/31(日) 14:20:37 ID:mByL50vp
つまんね
632774ワット発電中さん:2010/01/31(日) 17:15:48 ID:6y6G9IRN
ズバコン
壊れて回転が止まらなくなった遠い日のおもいで
633774ワット発電中さん:2010/01/31(日) 17:23:37 ID:CTCfb7Ad
電子レンジのチンの高調波で回転した遠い日の夕食時
634774ワット発電中さん:2010/01/31(日) 18:47:11 ID:w4S36JVo
ロリコンだろjs
635774ワット発電中さん:2010/01/31(日) 20:56:44 ID:D8YdxGLe
>>620
割り込み周期は確か、60マイクロ秒位だったと思う。80マイクロ秒だと256ステップで50Hz以下になるから
そんなに遅くは設定して無いはず。ソースは残ってるので、必要ならちゃんと調べるけど。

用途は16ビット5チャンDAの予備実験での8ビット実装なので、最終的には
1ピンをソフトUARTの入力とし、5チャンのDAとして使った。なので、Cなんかで
のほほんとプログラムしたらまともな精度は出ないし速度は遅いし碌な事は無いので
アセンブラ一筋。Cなんてアウトオブ眼中(死語)

>どんな演算したところで、結果的にモータをPWM制御したりするのはハード
>ウェアでソフト的にシビアな要求はないでしょと言いたかったのだが?

何度も書いてるけど、君の能力じゃ無理だよ。PWMはハードで実行する事が多いけど
今回の流れでそんなレベルの話を持ち出すって事は、上位レベルのFB制御やその他について
その時点で思い浮かばなかったんだろう?言われてきが付いたのがミエミエ。
636774ワット発電中さん:2010/01/31(日) 21:00:12 ID:D8YdxGLe
>>620
>いくらアセンブラで書いたところで、4MHz(1MIPS)のPICじゃあ、80us(msではない)
>周期のタイマ割込を拾うことさえ難しいと思うけど

実力不足。
637774ワット発電中さん:2010/01/31(日) 21:23:11 ID:D8YdxGLe
>>620
> >>584 =603

603は別人。
638774ワット発電中さん:2010/01/31(日) 21:59:43 ID:7PC2bZZ0
PICの汗オヤジの悪寒
639774ワット発電中さん:2010/01/31(日) 22:09:03 ID:4b1FRRU7
>>612
ややわろた
640774ワット発電中さん:2010/01/31(日) 22:12:52 ID:crHRx2Mu
学生の頃は無駄に熱かったなぁ
641774ワット発電中さん:2010/01/31(日) 22:33:25 ID:dZw6L4qD
60us周期で割込だと、割込処理は5個のLEDで1個あたり9〜10ステップくら
いか? PICって遅いという印象なんだけど、分岐命令で食うステップを
嫌ってコード量には目をつぶってループを展開し、単に変数の比較と結果
のビットON/OFF処理だけならLEDあたり6〜7命令で実装できなくはないか。

メイン処理側で数ステップほど割込マスクしたら、確実に処理落ちする
けど。(w

8bitの68系,Z80、x86系まではアセンブラもかなり書いたけど、もう何年も
前から、C/C++言語でいいやってかんじ。 外部に出さない自前のライブラリ
のチューニングははともかく、ソース渡すようなソフトでバイト単位でコード
詰めても見合う対価が支払われないからね。

だからPICじゃなくAVRを使っている。

ところで、ステップ数が増える故に実行速度はともかく、アセンブラも
C言語も精度は変わらん(遅延によるばらつきは固定)と思うが? アセン
ブラ一筋って、ホントはPICスレのCやC++が判らない人?

>>636
実力ねぇ。(w

当然タイマ単体で割込は掛かるけど、他の割り込み処理とバッティングする
ことを考えたら、客から見たら一発で動いて当然が前提なので、安易に危険
な橋は渡りたくないなぁ。

ところで、FB制御とか古典的制御理論の範疇じゃないの? どこらへん
からが近代(ゲンダイ)?

>>637
失礼。コピペのミスですな。
642774ワット発電中さん:2010/01/31(日) 22:38:58 ID:v7TYD3Q0
ってかPWMは制御と言うかドライブ方法であって
フィードバックとかPIDとはベクトルが違う気がする
比較的するならインバーターとかだろ
643774ワット発電中さん:2010/01/31(日) 23:34:57 ID:ZWGsNEIw
>>642
インバータというかVVVFとかPAMとかだな
まぁ制御量を計算する部分と、実際に駆動する部分で同列に比較ってのは、プッって感じはする
まぁ近代制御理論では同じ土俵なのかもしれんけどw
644774ワット発電中さん:2010/02/01(月) 00:13:59 ID:3dT2LtFW
れんほうさんに叩かれたスパコンの部品を今作ってる
645774ワット発電中さん:2010/02/01(月) 00:14:40 ID:3dT2LtFW
ポシャらなくてよかったと皆で喜んでる。
646774ワット発電中さん:2010/02/01(月) 00:26:24 ID:gswI412V
スパコンの部品をAVRマイコンで?
647774ワット発電中さん:2010/02/01(月) 00:31:20 ID:p/6CU4HY
中止にならなかったのはマジコン?w
648774ワット発電中さん:2010/02/01(月) 21:10:47 ID:3dT2LtFW
今回のスパコンもFJTだよね?
649774ワット発電中さん:2010/02/01(月) 22:45:43 ID:7PwThXeE
無職の俺でもこの流ならあきれても許されると思う
650774ワット発電中さん:2010/02/02(火) 13:06:51 ID:cx1zGN1Q
simavrをUbuntuでコンパイルできたが、いまいち使い方がわからん。
コンパイルするとrun-avrという実行ファイルができて、
./run-avr *.axf(*はファイル名)とやるとなにやらダンプらしきものを
吐き出すので動いているらしい。
このaxfファイルはHEXファイルとは違うものなのか?
ほかにもアルディーノのシミュレータも入ってるみたいです。
WinAVRが入っていればmakeはとりあえず走る(ライブラリが足らないけど)ので、win上で動くか試してみます。
651774ワット発電中さん:2010/02/02(火) 18:48:12 ID:j6UEWHcc
WinAVRで自作ライブラリをリンクすると、使わない関数までリンクされるのどうにかならないかな?
オプションとかでナントカなりそうな気がするけどオレの力では無理だった・・・orz
652774ワット発電中さん:2010/02/02(火) 19:13:46 ID:cWmCyzV7
>>651
-ffunction-sections -Wl,--gc-sections あたりのオプション指定はどうでしょか?
653774ワット発電中さん:2010/02/02(火) 20:47:05 ID:zXwRjXWZ
>>651
ライブラリ(というかobj)を作成する段階で関数をソースレベルで、別の
ファイルに分割しているよね?

gccに限らず、ライブラリは単にobjを1ファイルにパックしたもので、ライ
ブラリは、obj間の未解決の外部参照を解決するだけで、objを分割する
ことができないのは普通だと思うけど?
654774ワット発電中さん:2010/02/02(火) 21:56:59 ID:j6UEWHcc
>>652-653
回答ありがとう御座います。
652さんのオプションを調べたところよさげな感じでしたが、実際試したところダメでした。
ファイル分割はしていません。
結局、関数一個にファイル一つという単位まで分割しないとダメってことでしょうか?
655774ワット発電中さん:2010/02/02(火) 22:31:27 ID:jIgnh2Hc
>>653
> gccに限らず、ライブラリは単にobjを1ファイルにパックしたもので、ライ
> ブラリは、obj間の未解決の外部参照を解決するだけで、objを分割する
> ことができないのは普通だと思うけど?

gcc は知らんけど、きちんと作成されたライブラリファイルは、ちゃんと使うものだけを
抜き出してリンクしてくれるものだと思うが。

てか PC アプリじゃないんだから、ソースレベルで切り貼りすればいいんじゃないの?
まとめたい気持ちはわかるけど、ファームウェアぐらいの規模なら、ライブラリにするのも
手間なだけじゃない?
656774ワット発電中さん:2010/02/02(火) 22:52:47 ID:Hg/mvrr2
その昔、リンクレベルで最適化かけるリンカが付属するコンパイラがあってな、
そのライブラリファイルは巨大な単一のobjファイルだった。
リンク時にリンカががしがし中身を削ってリンクしてくれることを期待するという壮絶な動作。

逆に言や、ライブラリとオブジェクトファイルが異なる形式になっているリンカは
そういうことをしていない。


>654
newlibやらなんやら、適当にライブラリソースひろってみればわかるが、
ほとんど一関数一ファイル。

657653:2010/02/03(水) 08:27:42 ID:5Wf/savl
>>655
その「きちんと作成されたライブラリファイル」は、まさに関数単位や、関数
グループ(使うヘッダファイル[=例えばstring.h]で定義された関数群)毎にソースが
分割された状態から作成されたものだと思うけど?
658653:2010/02/03(水) 08:44:03 ID:5Wf/savl
>>656
> その昔、リンクレベルで最適化かけるリンカが付属するコンパイラがあってな、

聞いたことないな。 libはobjの集合で、リンカの内部処理上、基本的に同様に扱わ
れるので、gccのリンカに限らず、たとえobj(.o)ファイルを指定してリンクしても、
関数単位で切り出してくれることはない。

> 逆に言や、ライブラリとオブジェクトファイルが異なる形式になっているリンカは
> そういうことをしていない。

まったく同一ではないが、一般的なコンパイラ環境(基本的にほぼ全ての言語環境)の
リンカ/ライブラリアンでは、.lib(.a)は、.obj(.o)をまとめたアーカイブに過ぎない
ので、LZHやZIPと同様に、libからobjを切り出したり、削除したり、objを差し替え
たりということができると思うのだが?
659774ワット発電中さん:2010/02/03(水) 19:08:09 ID:a1L3pid6
経験論や一般論で結構ですので、アドバイス頂けると助かります。

ホビーユースでPICで遊んでるんですが、PICC-Liteでコンパイルすると2KWORDオーバーでNG、最適化有効でコンパイルすると若干余裕を残して入る。
って状態で困っています。
コンパイラを別のにするか、AVRに移行するか考えているのですが、AVR+WinAVRなら余裕って可能性はあるでしょうか?
660774ワット発電中さん:2010/02/03(水) 19:21:24 ID:kGCrDSQ3
>>659
AVRだと命令数が多いからか1wordが2Byteなせいなのかは知らないけど減ったような気がする、そもそもWinAVRにword制限ないし限界感じたなら乗り換えてみるのもいいんじゃない?
個人的にはPICだけで終わらずいろんなマイコンに手を出してみてほしい。
661774ワット発電中さん:2010/02/03(水) 20:34:07 ID:cn49oPIS
>>659
元々8bitのPICはCに不向きな命令セットという制約を抱えてるので、
AVRに換えるだけでだいぶ短くはなる。
ただしavr-gccでも状況次第で冗長コードを吐く場合があるので、
サイズを気にする状況では(インライン)アセンブラを使った方が良い。
AVRはアドレッシングモードでワード数が変わる。
相対アドレッシング(ldd、std、rjmpなど)は1ワード、
絶対アドレッシング(lds sts、jmpとか)は2ワードになる。
これを意識して書くとかなりサイズに影響が出る。
662774ワット発電中さん:2010/02/03(水) 21:47:50 ID:Vceg4aDl
PIC16F84Aとattiny2313は共に1kWだけど
attiny2313+winavr(最適化付)だと3倍ぐらいの分量の
プログラム書ける感じするよ
俺が使っているPIC16用のコンパイラがクソなのもあるれど
663659:2010/02/03(水) 23:00:43 ID:40Ob1H4P
>>660-662
レス大感謝祭です。
乗り換えてみる価値が大いに有りそうなので、前向きに検討致します。と言うか乗り換えます。
PICCで三項演算子使うとバイナリが増えやがって、全部if elseに書き換えるのに嫌気が差してたので、良い機会かもしれません。

AVRのライタをどうするか…
664774ワット発電中さん:2010/02/03(水) 23:15:13 ID:zsLyU2Fi
>>663
PICで作る
665774ワット発電中さん:2010/02/03(水) 23:24:21 ID:40Ob1H4P
>>664
案外、検索の上位にヒットしないんで、地道に探そうかな…と言う所です
自分で作るのはちょっと勘弁
秋月のPICライタ使ってるので、AVR仕入れに行った時に、AVR用のアタッチメントも一緒にレジへ持って行ってそう(微妙な値段なんだよな)
バカにされそうだけど良いんです。
666774ワット発電中さん:2010/02/03(水) 23:33:53 ID:sJWK7Pxb
三項演算子の部分のPICCのコンパイル結果見てびっくりしたことがあるな
どう書いてもあんまり減らせなかったからそのままにしたけど
かなり短く書けるアセンブラの正解はあるのに、Cでどう書いたもんか
667774ワット発電中さん:2010/02/03(水) 23:36:59 ID:H3E7ZTqX
 PICを批判するわけではないがフリーで一応無制限な開発できるというだけで相当な魅力。
前8ビット系のPIC使ってたけどメモリがページとかコンパイラ泣かせだろあれ。。。
668774ワット発電中さん:2010/02/03(水) 23:42:20 ID:w6wicgp/
>AVRライタ
素直に純正品でイイじゃん
http://akizukidenshi.com/catalog/g/gM-02582/

一応、こんなのもあるけど
http://www.geocities.jp/arduino_diecimila/avr-writer/index.html
669774ワット発電中さん:2010/02/04(木) 00:08:04 ID:Y/5rZl9f
>>667
PIC のアーキテクチャーは、アセンブラで書いてこそよく分かる。
ああ、なんて味のあるプロセッサーなんだ。
泣けてくるぜ。
670774ワット発電中さん:2010/02/04(木) 00:29:14 ID:fsjW0evM
>>667
あの規模だったらアセンブラ上等!!!だから
下手にC前提のアーキテクャを持ってくる方が変わってると言われる時代だっただけの話。
量産価格が下がる方が良かったからね…。

つまりAVRは変態www
まぁAVR程度で済む程度の規模でもARM入れようとしてる時代だしね〜。
671774ワット発電中さん:2010/02/04(木) 00:48:00 ID:LgTrQX5T
>>667
ちなみに私もPICから引っ越しました、在庫の16F88がなかなか減らないです。
2kwordの制限とかATmega128の128KBのROM使うと戻れなく!
mega168で浮動小数点使ったりいろいろできますよ。
ライタは74HC126をシリアルポートにつないだだけのライタから始めましたよ。
672774ワット発電中さん:2010/02/04(木) 00:56:20 ID:LZHir/Se
attiny2313が楽しい石過ぎてあと30個は欲しい
USI機能も味わい深いし
673774ワット発電中さん:2010/02/04(木) 01:28:19 ID:uyvT6RE6
328も使ってみてね
674774ワット発電中さん:2010/02/04(木) 01:39:32 ID:LgTrQX5T
90S1200はなかったことに……
675774ワット発電中さん:2010/02/04(木) 07:23:02 ID:hgw3fKU/
>>670
> まぁAVR程度で済む程度の規模でもARM入れようとしてる時代だしね〜。

ARMだったかどうか知らないけど、以前、組込系なのに開発言語はPerlか
PHPだかという話があったな。 なんだか、付いてる無駄な贅肉の方が
多そうだった。
676774ワット発電中さん:2010/02/04(木) 11:17:47 ID:/XDma6MX
上位の PSoC はARMだよね。
ARM にもいろいろあるけど。
677774ワット発電中さん:2010/02/05(金) 16:50:34 ID:0cX05cuq
1.6mmのチップLEDをAVRのピンに直付けしようとしたけど
何度やってもだめだった
次は2mmで挑戦
678774ワット発電中さん:2010/02/05(金) 19:53:14 ID:w32BaNQw
申し訳ないが、それはヘタクソだと思う
679774ワット発電中さん:2010/02/05(金) 20:04:23 ID:EGa6Fu1J
>678
いやいや、相手のAVRは、0.5mmピッチのQFNパッケージかもしれないぞ。
680774ワット発電中さん:2010/02/05(金) 21:24:35 ID:aKdnzahE
>>679 2mmじゃQFNには直付けできないだろうから
やっぱり、ヘタクソだろ
681774ワット発電中さん:2010/02/05(金) 21:29:55 ID:aKdnzahE
>>677 LEDの極性が逆だった...
682774ワット発電中さん:2010/02/05(金) 21:33:00 ID:/0s5ZJNs
工エエェェ(´ロ`ノ)ノェェエエ工
683774ワット発電中さん:2010/02/05(金) 21:38:43 ID:jgstr/5r
1608 ルーペとピンセットつかえばなんとかできないか
そんなおれもやっとだけど
684774ワット発電中さん:2010/02/05(金) 21:50:58 ID:PrRtBqR/
チップLEDってハンダコテで半田付けできるのか
昔やったときは一瞬で溶けたからできないもんだと思ってた
685774ワット発電中さん:2010/02/05(金) 21:57:54 ID:aKdnzahE
でける、でける
(と胸を張る08のサーミスタの半田付けに
どうやっても成功しなかったワタスであった)
686774ワット発電中さん:2010/02/05(金) 21:59:46 ID:gcBcgevf
クリーム半田買え
687774ワット発電中さん:2010/02/05(金) 23:14:32 ID:nThV7rqY
なめたり手に塗ったりお尻に塗ったりする以外に使い道が・・・ない
688774ワット発電中さん:2010/02/05(金) 23:17:00 ID:x+OynBZk
接着剤併用とか。
689774ワット発電中さん:2010/02/05(金) 23:48:09 ID:EGa6Fu1J
>>680
いや、LEDを立ててハンダ付けしたり、チップの角をハンダ付けすれば、
可能では? 隣接するピンに並べることはできんけど。

1608チップは普通にハンダ付けできるけど、青色のLEDチップは、ゆっくり
ハンダ付けしているとすぐに熱で死ぬみたいね。

小さな部品同士や、小さな基板が相手だと、片方は両面テープなどで作業台に
仮固定してから作業した方がいいと思う。
690774ワット発電中さん:2010/02/06(土) 00:23:58 ID:MAxl40tx
チップのフィルムコンデンサを手半田できる人は神w
691774ワット発電中さん:2010/02/06(土) 07:02:32 ID:XKJzB0NE
実装機がやってることを真似すればいいんだよ
型紙作ってクリーム半田塗って、部品置いて熱をかける
そんだけ
692774ワット発電中さん:2010/02/06(土) 11:58:36 ID:Sil86tb5
データシートの日本語訳版の利用規定が意味不明なんだけど
http://moon.gmobb.jp/hero/
不正アクセス防止法ってどこにかかってるんだろう
693774ワット発電中さん:2010/02/06(土) 12:20:37 ID:G3D0X7CT
>>691
な〜るほど、リフロー・ソルダリングを真似するわけか。

でも、何を使って熱をかけるの?
694774ワット発電中さん:2010/02/06(土) 12:42:18 ID:TtVZrHL/
オーブントースター
695774ワット発電中さん:2010/02/06(土) 13:19:27 ID:nxqWs53E
>>690
パナのECPUとかECHUとか普通に付けてるぞ。
チップ抵抗と変わらんだろ。
696774ワット発電中さん:2010/02/06(土) 13:23:29 ID:xh6rOAgV
温度調節器付きの低出力コテで低めの温度にして
細いハンダ使え…
697774ワット発電中さん:2010/02/06(土) 15:40:50 ID:MAxl40tx
>>695
見た目は問題なくても、容量変化起こしている
発振回路で周波数ずれとか
698774ワット発電中さん:2010/02/06(土) 23:03:08 ID:MwEZZM19
低めの温度でやるより高めの温度で短い時間でやった方がいいんじゃねーの
フィルムコンデンサはたしかに熱に弱いよね
弱い弱いと言われてるから10個くらい用意してどんだけ弱いのか試してみた事あるけど
半田ごて当ててた時間に比例してどんどん容量が減ってったんだったきがする
699774ワット発電中さん:2010/02/06(土) 23:32:47 ID:zV2u/o8G
700774ワット発電中さん:2010/02/06(土) 23:37:46 ID:MwEZZM19
手でクリーム半田盛る手間を考えたら手でハンダ付けした方が早くて簡単で確実なんではなかろうか
701774ワット発電中さん:2010/02/07(日) 03:41:13 ID:09o/8W0t
1500Wヒートガン、通販で2000円くらいだしな。
俺もそれ買ってフラット剥がしまくってるけど。
702774ワット発電中さん:2010/02/07(日) 12:44:51 ID:Yp3cGg20
>>701
剥がしたフラットICは観賞用? それとも収集用?
703774ワット発電中さん:2010/02/07(日) 12:55:58 ID:19FXDDF6
ヒートガンびっくりするほど熱いのな
空気って気体だから、いくらでも温度上がる
704774ワット発電中さん:2010/02/07(日) 14:10:53 ID:09o/8W0t
>>702
収集用ですね。
マザボひっぺ返すとあの高いMAX232互換ICが絶対取れるので
ドライバーとして使わなくても、チャージポンプICとして使ったり・・・。

1500Wのやつは最大550度くらいかな。
705774ワット発電中さん:2010/02/07(日) 15:40:36 ID:19FXDDF6
マザーボードのシリアルってまじめに昇圧してたのか
あれもう全員で一斉に0V-5Vに規格変更しちゃえばいいのに
706774ワット発電中さん:2010/02/07(日) 17:34:10 ID:JNXwyHqA
今どき232Cがついてるマザーなんて少ないでしょ
707774ワット発電中さん:2010/02/07(日) 17:54:00 ID:imIjKPlY
バックパネルにはのって無くてもマザーボード上にピンが出てたりするよ
708774ワット発電中さん:2010/02/07(日) 18:17:43 ID:19FXDDF6
ノートには無いけど大抵のデスクトップには付いてるんじゃないかな
パラレルは無いのが増えてきててピンチ
709774ワット発電中さん:2010/02/07(日) 18:33:17 ID:sQVXF+XR
今製造してるのだと、パラレル搭載はATOMのっけられるマザーだけじゃないか?
710774ワット発電中さん:2010/02/07(日) 19:23:49 ID:NmRWJlCA
WS向けとかちょっと高めのM/Bならパラレルも付いてるよ。
711774ワット発電中さん:2010/02/07(日) 19:40:01 ID:19FXDDF6
安いのでも普通に載ってるよ
最近買ったのがそうだし
712774ワット発電中さん:2010/02/07(日) 21:09:26 ID:izoqypzp
今日からマイコンデビューすることになりました。
取りあえずマイコンで簡単な計算(c=a+b; 程度)をして、
windowsに戻してログとして取得ということを考えています。
都合上USBはHIDデバイス、
windows側はvc++ 2008(無料版)です。

AT90USBKEYを取りあえず買ってきました。
付属の資料は一通り目を通したのですが、
初めてで何から手をつけていいのかわかりません。

先輩諸兄、何からやればいいのかアドバイス頂けないでしょうか?
現在winAVRとFLIPをダウンロード中です。

713774ワット発電中さん:2010/02/07(日) 21:38:27 ID:JNXwyHqA
>>712
AVR道はライタ作りに始まってライタ作りに終わる
途中にLEDピコピコ
714774ワット発電中さん:2010/02/07(日) 21:56:12 ID:tkOUWYMf
>>712
AVR Studioもダウンロードした方がいいかも。

最初はLEDピコピコさせて開発環境に慣れる。

あとは
http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3879
あたりからサンプルダウンロードして、USBについて勉強する。

>>713
AT90USBKEYは、USB bootloaderをCPUに内蔵してるので、ライタ不要。
FLIPからUSB経由で書き込めちゃう。ライタを作る必要が全く無い。
715774ワット発電中さん:2010/02/07(日) 22:27:09 ID:Yp3cGg20
>>712
USBに限らないけど、

(1) とりあえず何かサンプルに目を通して、実際にビルドして動かしてみる
(2) ディスクリプタ等を返すだけで何もしないHIDデバイス(ドライバ不要な為)
(3) 出力のみに応答するHID出力デバイス(例えば、LEDをON/OFFなど)
(4) 定期的に文字を出力するHID入力デバイス(1秒毎に'A'や、'A'〜'Z'の繰り返し等)
(5) 出力した文字をエコーバックで返す標準COMクラスデバイス

みたいに段階を踏みながら、徐々に機能を拡充していった方がよいかと。
HID以外の独自デバイスのソフトを作成するなら、libusbのWin32版を手に
入れるとよい。
716712:2010/02/07(日) 22:52:54 ID:izoqypzp
>>713-715

ありがとうございます。
まずは>>714の通りにダウンロードして読み始めている所です。
その後で>>715の通りにサンプルをビルドして動かしてみようと思います。

簡単なわかりやすいサンプルが見つかるといいなあ。
717774ワット発電中さん:2010/02/07(日) 23:09:02 ID:09o/8W0t
>>716
AVRはwikiが強い。サンプルもそこのGetting Start Noteみりゃ大体つかみにはなるかと。
ポートの設定周辺を理解するためにLED→SWでスルーみたいな事やってみれば?
718774ワット発電中さん:2010/02/08(月) 12:07:46 ID:IH4wBMW0
1.とりあえず CAN 通信であそんでみる
2.車内ネットワークに介入してみる
3.車の挙動がおかしく鳴る
719774ワット発電中さん:2010/02/08(月) 13:17:51 ID:yVEwYA1J
哀れなオレに慈悲の心ので教えて欲しい

tiny2313とtiny2313Aって何が違うんだ?
(低電圧版と普通版が有るのは知ってるけど)
720774ワット発電中さん:2010/02/08(月) 13:33:57 ID:FolwhNC+
低電圧版が普通版と統合された。
721774ワット発電中さん:2010/02/08(月) 14:01:51 ID:ZnVm13QB
tiny2313 : 最高クロック 20MHz, 電源電圧範囲 2.7-5.5V
tiny2313V : 最高クロック 10MHz, 電源電圧範囲 1.8-5.5V
tiny2313A : 最高クロック 20MHz, 電源電圧範囲 1.8-5.5V

で、最近のtiny2313のデータシート眺めてたらtiny4313っていうのがあるんだな。
予想通りflasy, ram, eprom全て2倍。まだdigikeyにも出てない(ってより2313Aすら出てない)
722774ワット発電中さん:2010/02/08(月) 14:48:25 ID:mU1qDY1w
>>719
USARTがSPIマスターになる
これによってPORTBが丸々空く可能性が
どうせならUSIもPORTDに引っ越してくりゃいいのに
723774ワット発電中さん:2010/02/08(月) 16:21:19 ID:wP0GYrR+
>tiny4313
胸が熱くなるな!
724774ワット発電中さん:2010/02/08(月) 17:10:43 ID:B5K19oR2
ATiny45とか85とかはどうなん
725774ワット発電中さん:2010/02/08(月) 17:20:53 ID:yVEwYA1J
>>720-722
thx

と言う事は、無印とAでは同じバイナリじゃダメってことやね
つーか、現状でAが流通して無いと言う事で、心配する必要すらないと分かりました

726774ワット発電中さん:2010/02/08(月) 20:13:24 ID:FOpf+c0f
>724
メモリがあっても8ピンじゃ何もできやしない。
727774ワット発電中さん:2010/02/08(月) 20:41:31 ID:B5K19oR2
ああそうか、AT2323(8ピン)と勘違いしてた
728774ワット発電中さん:2010/02/08(月) 21:14:37 ID:aABVsKw6
2313もpicopower化か。

でも20pinで大容量フラッシュで先に出てるtiny861…安くならないな…
まぁこれぐらいメモリあると多少はI/Oも増えた方が良い場合が多いだろうし
Mega328Aで良いか…。
729774ワット発電中さん:2010/02/08(月) 21:25:30 ID:2fFA++Eg
pic16f886に対するpic16f887みたいなのが
atmega328Pにあったらなと思う300円位で
730774ワット発電中さん:2010/02/08(月) 21:28:07 ID:B5K19oR2
Mega644が安くなってるよん
731774ワット発電中さん:2010/02/08(月) 21:35:20 ID:FiDdZVmc
メモリが増えるのはうれしいけど、無駄に高機能になるのもなぁ
結局、10年もしたらAVRが今のペンティアムクラスの性能とかになってて
新しいショボマイコンが出てきたりして

隅々まで目が届く程度の規模がホビーユースには丁度良い
732774ワット発電中さん:2010/02/08(月) 22:03:24 ID:31wwNO7R
DIP20のペンティアム...なんか用途ある?
733774ワット発電中さん:2010/02/08(月) 22:38:47 ID:yz+u0x4S
そのころにはバスがみんなシリアルになってるとか?
734774ワット発電中さん:2010/02/08(月) 22:46:32 ID:ltwMx4Ti
あればあるだけ使い切るからな
そして100万倍になっても足りない足りないと騒ぐのが人間
735774ワット発電中さん:2010/02/08(月) 22:50:46 ID:Yu6aOEEa
>>721
素直にMEGA使ったほうが安いんじゃ?
736774ワット発電中さん:2010/02/08(月) 23:29:18 ID:DOglsjew
20ピンがいいんですぅ
って用途が俺にはあった
737774ワット発電中さん:2010/02/08(月) 23:35:51 ID:ZnVm13QB
>>735
出てみないと判らないけれど、おそらくATtiny2313AとATtiny4313 の価格差は僅差だと思うよ。
俺にとっては、flashが4kに増えることよりRAMが256byteになる方が大きい。

脆弱な根拠w
ATtiny261 20PU : 280円
ATtiny461 20PU : 295円
ATtiny861 20PU : 303円 @digikey
メモリが倍になったところでせいぜい20円アップ

物さえ出回れば秋月あたりで150円ぐらいで出てるんじゃない?
738774ワット発電中さん:2010/02/09(火) 00:10:30 ID:bsVuEJgR
>737
実はそれはちょっと前に各系統の一番下が壮絶に値上がりした結果だったりする。
tiny24やら261やら、一気に1.5倍くらいになった。

4313にあわせて2313Aが上がると思ったほうが良いぞ。
739774ワット発電中さん:2010/02/09(火) 00:42:53 ID:bIx/f7Pg
>>728
tiny26 の系統も tiny167/tiny87 なんてのがあるね。
740774ワット発電中さん:2010/02/09(火) 00:49:40 ID:Bm8LEzBO
>>736
20ピンだとフリスクのケースに
縦にピッタリ入るよね
741774ワット発電中さん:2010/02/09(火) 02:28:28 ID:DbVBPdkR
2313AってAVRStudioで2313と間違って指定してデバイスチゲーよって良く突っ込まれた記憶が
秋月でフラットパッケージのAVRを安く売ってくれないかな
マルツで2313のフラットパッケージ見かけて欲しかったけど、高くて買えなかったぞ
742774ワット発電中さん:2010/02/09(火) 03:03:53 ID:Zn0IuH9G
DIPの足を切ってフラットにするとか
743774ワット発電中さん:2010/02/09(火) 03:39:02 ID:IBmOFV2d
>>742
障害認定でその分だけ安くなるというオチか?
手首があればラーメンに入れてリサイクルできるかな?
744774ワット発電中さん:2010/02/09(火) 03:57:58 ID:Ym0JTBzu
なにこのひときもちわるい
745774ワット発電中さん:2010/02/09(火) 13:59:14 ID:HhEXSUUn
tiny2313はメモリは今のままでいいから
ADCを2chだけでも入れてくれたバージョンがあれば嬉しい
746774ワット発電中さん:2010/02/09(火) 14:29:44 ID:CRaM+mex
それならもうmeg168でいいじゃん。
747774ワット発電中さん:2010/02/09(火) 14:30:09 ID:J36Lbohf
数いらないので苺でmega8LのTQFPで我慢してる
748774ワット発電中さん:2010/02/09(火) 16:52:46 ID:urjX4sV6
tiny2313ってADC無いんかいっ!
16F88の代わりに使おうと思って20個買ってもうた
泣きそう
749774ワット発電中さん:2010/02/09(火) 16:53:30 ID:urjX4sV6
↑あくまでスペック調べてない自分の責任ですので
750774ワット発電中さん:2010/02/09(火) 17:59:17 ID:WSwGDkWJ
>>748
ADCつかいたいならtiny261/461/861っしょ

それほど精度いらない&スピードも遅くていいなら
アプリケーションノートをドゾー
ttp://www.atmel.com/dyn/resources/prod_documents/doc0942.pdf
ttp://www.atmel.com/dyn/resources/prod_documents/doc0953.pdf
751774ワット発電中さん:2010/02/09(火) 18:36:09 ID:J36Lbohf
A/Dなくても使える用途はいろいろあるから大丈夫!
752774ワット発電中さん:2010/02/09(火) 20:10:49 ID:DbVBPdkR
20個買っても2000円か
2313オソロシス
753774ワット発電中さん:2010/02/09(火) 20:19:26 ID:Zd3MEKFZ
2313はGPIOが綺麗に並んでるから、AD使わないならむしろ使いやすい
754774ワット発電中さん:2010/02/09(火) 20:21:58 ID:yykYB12e
755774ワット発電中さん:2010/02/09(火) 23:09:58 ID:o16/bXfN
簡単にUSBホストになってくれると嬉しいんたけどな
そうすれば合法的に無線lan使えるかもしれないし
756774ワット発電中さん:2010/02/09(火) 23:17:51 ID:3Xbp3aPL
2313のUSIでハマってて、自分で色々試したりネットで調べたりした結果
結局データシートの誤記っぽいとのことだった
疲れた・・・
757774ワット発電中さん:2010/02/09(火) 23:21:22 ID:/ElMBEuB
ゴキッ
758774ワット発電中さん:2010/02/10(水) 00:49:01 ID:+0Il+I20
>>756
どのあたり?
759774ワット発電中さん:2010/02/10(水) 00:52:30 ID:lxKRq3Sf
ゴキ→昆虫→虫→Bug
760774ワット発電中さん:2010/02/10(水) 00:55:41 ID:YEmxeYIk
>>759
ひとつ見つけると30個はあるんですね。
わかります。
761774ワット発電中さん:2010/02/10(水) 01:05:22 ID:Y88gCM5Y
ttp://www.wsnak.com/kit/avr_sample/t2313/index.html#anchor-t6
>>756のはこのことだと予想しておく
当たったらtiny2313を10個くれ
762774ワット発電中さん:2010/02/10(水) 02:37:44 ID:CDOOH1GV
>>761
こっちじゃないですかね?

ttp://www.youtube.com/watch?v=UXmqnAHa4Vs
763774ワット発電中さん:2010/02/10(水) 23:05:21 ID:Pty+eUDE
俺はAVRでPS/2の信号を作って
ネトゲでチートしてやる
764774ワット発電中さん:2010/02/10(水) 23:12:00 ID:wVzs6Sr4
USBのドングルを作って売りさばく
765774ワット発電中さん:2010/02/11(木) 03:02:10 ID:35HxMF0v
弐寺の自動演奏機でも作ろうか
766774ワット発電中さん:2010/02/11(木) 20:03:27 ID:RucnCjT0
質問です。
ATmega8や88の系列で、グランドが2本あるのを、どちらかを浮かすような使い方をしてもいいのでしょうか。
767774ワット発電中さん:2010/02/11(木) 20:11:12 ID:QDKgKPG0
だめ。
ちなみにVddもね。VrefはVddに接続せずキャパシタでデカップリングした方が良いと思う
768774ワット発電中さん:2010/02/11(木) 23:26:47 ID:8k9Lm1ra
そうなの?
使いやすい方に繋いでね、という意味だと思ってた
769774ワット発電中さん:2010/02/12(金) 01:51:27 ID:04M5XV6K
100円も変わらないのにtiny使って開発するのって
わざわざ使うデバイス制限して目的達成するのが趣味になってるのか?
770774ワット発電中さん:2010/02/12(金) 02:18:26 ID:h96xEBDU
>>769
月産100万個ロットの製品を脳内で量産しているのではないかにょ?
771774ワット発電中さん:2010/02/12(金) 03:11:56 ID:Kz/iW16H
>>769
megaだと28ピン以上しかないから
772774ワット発電中さん:2010/02/12(金) 04:22:27 ID:PYgcEuAX
お前らと違って俺は趣味でやってんだよ
制限のあるモノでどれだけやれるかってのが重要なんだよ
773774ワット発電中さん:2010/02/12(金) 04:26:30 ID:tEsW8Zc+
tiny2313でUSB接続できるのとかすごいよね
774774ワット発電中さん:2010/02/12(金) 09:46:56 ID:DObZQ7ke
でも、ROM/RAMの空きが少なくて、まともなプログラムが作れないと思うのは私だけ?
775774ワット発電中さん:2010/02/12(金) 09:54:47 ID:YrodWxDF
アセンブラで遊ぶ分には全然大丈夫だけど、Cだと厳しいかもね。
とはいえ、色々書いてたらすぐに埋まる感じはするが。
RAMが狭いのもちょっとね、まぁレジスタが多い分どうにかだな。

まともな、という定義がどのへんかによる>>774
776774ワット発電中さん:2010/02/12(金) 10:15:23 ID:4+7geCCR
少なくとも、「まともなプログラム」というものが容量に左右される定義でないのは確かだけどね
逆に「まともにプログラムが書けないから容量が足りない」ならわかる
777774ワット発電中さん:2010/02/12(金) 13:13:13 ID:b5JC/IHr
いや、キャラ液晶付けてUI作ると、リソースだけでもそれなりにFlash食うから、一概にテクニカルだけの話で無くなる
778774ワット発電中さん:2010/02/12(金) 14:21:11 ID:lkmffnNx
>>776
容量1byteでまともなプログラムが書けるとはさすがプロだ
779774ワット発電中さん:2010/02/12(金) 14:34:16 ID:tEsW8Zc+
どうやったら1Byteでとか極端な話になるんだ。
そもそもAVRは1word=2Byteでしょうに、1Byteでどうやって動くか詳しく。
780774ワット発電中さん:2010/02/12(金) 15:28:20 ID:2QQj72Ea
うざいからズルズル引っ張るなよ
781774ワット発電中さん:2010/02/12(金) 15:45:32 ID:PYgcEuAX
Cでもプログラムだけで1Kword埋めようとすると結構大変だと思うが
782774ワット発電中さん:2010/02/12(金) 16:47:52 ID:4+7geCCR
1byte でプログラムを書ける天才が居ると聞いて
783774ワット発電中さん:2010/02/12(金) 17:35:09 ID:Q/qIvgzw
なんだかなー(笑)
784774ワット発電中さん:2010/02/12(金) 17:51:35 ID:M90evtHr
PICスレがどうしようもないと思ってたが、こっちも大して変わらんなw
785774ワット発電中さん:2010/02/12(金) 17:59:34 ID:rtB4JtJP
所詮2ちゃんの屑w
786774ワット発電中さん:2010/02/12(金) 18:01:38 ID:PLJFp9Z6
これぞ2ch(笑)
787774ワット発電中さん:2010/02/12(金) 18:07:14 ID:Fm7YlVVB
http://eetimes.jp/content/3594

AVRが使ってある製品みっけた。
2個もってるけど、RF系の回路で何やってんだろ?
788774ワット発電中さん:2010/02/12(金) 18:09:31 ID:Fm7YlVVB
後半まで読むと何やってるか載ってたな
789774ワット発電中さん:2010/02/12(金) 19:32:02 ID:IXVvrIta
>>787
EE times って、紙版からいきなりWeb版に変更になったね。
よっぽどキビシイのかな?
なかなかいい記事書いてるのに惜しいね。
790774ワット発電中さん:2010/02/12(金) 23:21:16 ID:04M5XV6K
PSコンを無線にするやつが型番削られてるけど、どう見てもmega8でちょっと嬉しかった
791774ワット発電中さん:2010/02/13(土) 08:17:54 ID:iZz3xEmM
AT90USB1287買ってきたんだけど、
windows7 64bitだとデジタル署名うんぬんで
ドライバが入れれない。

これって公式で情報見つからないんだけど、
ツール使ってデジタル署名無視させるしかない?
792774ワット発電中さん:2010/02/13(土) 08:50:12 ID:kJ8HiANA
USBKEYじゃなくてチップで買ったってこと?

USBKEYもってるけどドライバいれた記憶ない。ubuntuだけど。
windowsはドライバって必要なん?
793774ワット発電中さん:2010/02/13(土) 13:52:37 ID:iZz3xEmM
>>792

Flipで書き直すときに必要
Flipのディレクトリにドライバが入ってるんだけど、
署名が無いから64bit版だと怒られる

テストモード用の署名作ってごまかすことで
取りあえず解決しました
794774ワット発電中さん:2010/02/13(土) 17:40:34 ID:TkPn5bj7
>>791
どこで買ったの?
795774ワット発電中さん:2010/02/14(日) 11:44:23 ID:HT/YA1Ju
wikiが昨日から見れないんだけど
頻繁に落ちてるもんなの?
796774ワット発電中さん:2010/02/14(日) 13:47:57 ID:LxjN3xhO
前にもサーバークラッシュか何かで落ちっぱなしの時があった。
797774ワット発電中さん:2010/02/14(日) 17:12:25 ID:SnqEzpIo
このスレで聞くことじゃないけど、おまいら鉛フリー半田使ってる?
798774ワット発電中さん:2010/02/14(日) 18:02:55 ID:GhAaVmrI
60%半田
799774ワット発電中さん:2010/02/14(日) 18:17:09 ID:UF56kRHE
鉛入りが基本。鉛フリーも巻きで買い置きあるけど使ってない。鉛入りの
ストックが終わりそうなんで、ネットで値段を調べたら以前の2倍くらいに
値上がりしていて驚いてる。


>>795
1週間くらい前も落ちてたよ。
800774ワット発電中さん:2010/02/14(日) 19:01:58 ID:LxjN3xhO
>>797
仕事ではPbフリーで、趣味だと鉛入り。
会社の半田ゴテ使うときはPbフリーを使う。

鉛の素晴らしさと害(鼻の粘膜がしみる)が分かる
801774ワット発電中さん:2010/02/14(日) 19:10:21 ID:SnqEzpIo
>>798-800
ありがとう
オレのヘボい道具と腕で、鉛フリーだと半田下手すぎワロタになるからどうしようかと・・・
趣味レベルだったら鉛入りで良さそうね
802774ワット発電中さん:2010/02/14(日) 19:52:58 ID:QOZQGkah
やっぱ鉛入りがいいよね、鉛フリーのツヤの無さが泣ける。
803774ワット発電中さん:2010/02/14(日) 20:20:45 ID:LxjN3xhO
本当は環境にも人にも害があるから、ISO14001取得企業社員の立場からは
鉛入りは薦めちゃいけないのだけど、フツーの半田ゴテではやり辛いし半田不良が起きやすい。
熱量があって温度が高く保てるコテや、温調のコテがあると良いね。

何となくなんだけど、趣味で使ってるコテより、会社のコテの方が酸化が酷くて
駄目になりやすい気がする。鉛入り半田だとコテ先が長持ちするのかな?
804774ワット発電中さん:2010/02/14(日) 20:31:03 ID:YgEU2rgF
>>802
確かにそうだな。温調コテなので、鉛フリーでも使い勝手は別に気にならないが
くすんだ銀が萎える。
805774ワット発電中さん:2010/02/14(日) 20:40:35 ID:wa7Iwne5
>>803
半田の鉛が体や環境に与える影響なんて無視できるレベルだよ。
あれもエコ詐欺っていうかヨーロッパによる非関税障壁の一つ。
事実、本当に鉛による汚染が深刻なら真っ先に規制されるべき車のバッテリーや
医用器具用トランスジューサは「代替技術が無い」と言う理由で規制対象外
(特に鉛バッテリーを規制すると、電池技術で遅れを取っているヨーロッパが困っ
ちゃうからねぇ・・・)
806774ワット発電中さん :2010/02/14(日) 21:04:10 ID:l/6jreCt
鉛フリー品は、振動で半田にヒビが入り、間欠的な接触不良になるね。
自動車屋の制御回路不良で事故多発の予感。64半田でも半田量や半田盛形状
によってはヤバイが・・
鉛が多いと柔らかく、加重されているとクラックがふさがる良い材料なのにな。

ところで、RS232Cからデータが来た時に、データを取り込んで割り込みさせる
プログラムは、どう書んでしょうか?
RS232C単独だと上手くいくんですが,MainのDo/Loopを動かしながら
割り込みさせる方法が判りません。BASCOM試用版です。よろしく。
'main
Do

Loop

Rs232c:
INPUT A
B=val(A)
return



807774ワット発電中さん:2010/02/14(日) 21:54:16 ID:RpUpPcKp
実際、瞬間湯沸し器の安全装置が気温変化で壊れて死者が出てるし
故障した家電品が大量に廃棄物になってるし
エコエコ詐欺もいい加減にしろ、だな
808774ワット発電中さん:2010/02/14(日) 22:24:45 ID:jZInMrmE
しかし、まぁあれが本当の外交力だよな。
日本の政治に国益って言葉はあるのかな。。。

素直にC言語でやった方が人が多いと思う。
809774ワット発電中さん:2010/02/14(日) 22:34:31 ID:LxjN3xhO
8bit程度の組込MCUをBASICでやったら、
自分なら もどかしさで発狂寸前になりそう。
810774ワット発電中さん:2010/02/14(日) 22:40:11 ID:nhDFBAZF
鉛フリーは、熱が足りてても足りなくても表面がさがさなので、
ちゃんと付いてるのかよく判らん
811774ワット発電中さん :2010/02/14(日) 23:54:23 ID:l/6jreCt
var,voidや;;+>は言語障害になりそうなんでBASICコンパイラでね。
タイマーでデータが来たかどうか頻繁に見に行くのも
何なんで、データが来た時に割り込みが掛かる様に
したくてあれこれやっているですが。
郵便配達は2度ベルを鳴らす様ににね。
そんな命令はありませんかのう。

はんだの鉛が雨水に溶けて水質汚染して害を及ぼすとしているが、
鉛はんだで作業している人は、ヒュームや蒸気を吸って鼻粘膜から
手に付いたものを口に運んで体内に吸収されて鉛中毒になりますよ。
マスク、局所排気、専用石鹸での手洗いしてね。
812774ワット発電中さん:2010/02/15(月) 00:02:42 ID:I01lxgXH
>>805
他の重金属ならまだしも、鉛に関してはそんな事は言えないと思うが・・・。
813774ワット発電中さん:2010/02/15(月) 00:16:38 ID:PjOVV4yG
>>800
鉛の毒がそんな使ってすぐ出る即効性だとは知らなかったよ
814774ワット発電中さん:2010/02/15(月) 00:50:24 ID:uphh+G3A
鼻が痛くなるのはフラックスのせいじゃないか?
815774ワット発電中さん:2010/02/15(月) 01:28:03 ID:zBggSwa+
鉛が本当に毒なら釣りの重りを規制すべきだと思うんだが。
816774ワット発電中さん:2010/02/15(月) 01:32:58 ID:hip0lmS0
毒なのは間違いないので本当に毒ならと言うのはあんまりだと思う
817774ワット発電中さん:2010/02/15(月) 01:33:13 ID:4vQF2LO1
521万件鉛の水道管使ってるんだけど被害聞かないよね
直に飲んでるよな? 文字通り浴びてるよな
818774ワット発電中さん:2010/02/15(月) 01:33:29 ID:T53eCll7
狩猟や競技で使うの散弾は規制されたんだよね。
819774ワット発電中さん:2010/02/15(月) 01:35:03 ID:+t21MeRp
>>806
http://www.ne.jp/asahi/shared/o-family/ElecRoom/AVRMCOM/BASCRefM/HardCont.html#ON%20interrupt
これじゃないか?
BASCOM使ってないから良く判らんが
'main
ON URXC Rs232c
ENABLE URXC
Do

Loop

Rs232c:
INPUT A
B=val(A)
return
こんな感じじゃね?
820774ワット発電中さん:2010/02/15(月) 07:44:44 ID:eeub8vnE
鉛が含まれた顔料で彩色された絵皿を使ってて鉛中毒になったってドゥギーハウザーでやってた
821774ワット発電中さん:2010/02/15(月) 09:13:50 ID:ZT4UkfZS
鉛中毒の話はJINの原作で読んだな、まぁ肌に塗り続けるよりは
たまに自作半田ごての蒸気を吸うのはどっちもどっちな気がしなくもないが。
822774ワット発電中さん:2010/02/15(月) 09:20:26 ID:AZeCUnXj
>>817
通常は酸化皮膜が作られるので漏出しない。
毎日内側に傷がつくような状況だとまずい。
823774ワット発電中さん:2010/02/15(月) 09:28:08 ID:vTVZVit6
釣りに使う「噛み潰し錘」なんてあったっけ.

だいたい,散弾だのに使ったり,劣化ウランなんてものまで
大量に環境にばら撒いておいて何がPbフリーだか.
武器類を使った後で全部回収しているっていうなら褒めてやるけど.
824774ワット発電中さん:2010/02/15(月) 09:30:49 ID:heYUKbrq
>>816
常識的な生活をしていて寿命の間に影響が出ないなら「ほぼ無害」といっていいのでは?
極論すれば、この世の全ての物質は(たとえ水や空気でさえも)有毒だよ。
825774ワット発電中さん:2010/02/15(月) 09:42:43 ID:QEMiqCAy
DHOの出番です
826774ワット発電中さん:2010/02/15(月) 10:19:30 ID:kdqLwLqL
レンズまでPbフリーで、こっちは良い迷惑だよ
827774ワット発電中さん :2010/02/15(月) 11:49:34 ID:4MedzgUy
>>819 ありがとう試してみます。
鉛管はもう使われていないが、鉛管の中に水が滞留しているとき
に溶け出すんでね。
まあ、ウランも鉛も他の物質も濃度が濃いと毒になる。元々
地球に存在していた濃度なら問題が無かったものだのだが・・・
中高年に多いアルツハイマーは昔アルミ弁当箱に梅干を入れていた
から溶けたアルミの影響だし、金銀でも抽出して形になると目の毒になる。
828774ワット発電中さん:2010/02/15(月) 12:19:31 ID:zBggSwa+
鉛管の家は朝水道を使うときに数分間流すと少しは違うかも。
829774ワット発電中さん :2010/02/15(月) 12:21:25 ID:4MedzgUy
>>819
割り込みOKでした。ありがとうございました。
通信もON INTERRUPTで行えるとは思っていなかったです。
830774ワット発電中さん:2010/02/15(月) 12:26:59 ID:20MUxwZu
>>824
無知、無教養な昔ながらの牧歌的な人ですね。
禁煙はゆとり世代も多いし、日本も落ちぶれた物よのう。


古代ギリシャのヒポクラテスの記述から古代ローマ時代は膨大な量の鉛が生産され、陶磁器の上薬、料理器具、配管などにも使われていました。
このためローマ人には死産、奇形、脳障害といった鉛中毒が一般的だったと考えられています。
http://news.livedoor.com/article/detail/3472162/
831774ワット発電中さん:2010/02/15(月) 13:05:05 ID:QEMiqCAy
大仏でアルガム中毒 
832774ワット発電中さん:2010/02/15(月) 13:06:35 ID:dzPwBQM0
そろそろよそでやってくれよ
833830:2010/02/15(月) 13:31:16 ID:20MUxwZu
× 禁煙
○ 近年

煙草も害を撒き散らして他人に迷惑をかける事には変わりないが一応。
834774ワット発電中さん :2010/02/15(月) 13:38:00 ID:4MedzgUy
白人は、権利だ正義だと言って都合の良い理屈をこねる早く死ね。
鉛も鯨も遣りたい放題してから、規制だ何だと言ってくる。
WTO、IWC,ISO、ICE、ITU、オリンピックだって自分達に有利になる様にしているし。
835774ワット発電中さん :2010/02/15(月) 13:40:17 ID:4MedzgUy
間違えたICEではなくIECだった。
836774ワット発電中さん:2010/02/15(月) 14:13:01 ID:20MUxwZu
>>834
先陣を切って実験台になってくれたと思えばよろしい。
他山の石として自分はそうならないようにな。それが本来の日本人。
文句ばかりで自分が被害者だ、謝罪と賠償するニダと主張するのは三国人www
837774ワット発電中さん:2010/02/15(月) 15:38:44 ID:4vQF2LO1
アルミの毒性とかまだ信じてるやついたのかよ
838774ワット発電中さん:2010/02/15(月) 16:02:25 ID:ZYxp44tD
アルミ缶の上にあるミカンとかまだ言ってるやついたのかよ。
839774ワット発電中さん:2010/02/15(月) 16:03:37 ID:oIi2G/Vd
脳障害乙
840774ワット発電中さん:2010/02/15(月) 19:03:22 ID:zBggSwa+
アルミに毒性あるならアルミ鍋やアルミホイルの販売やめないといけないね。
841774ワット発電中さん:2010/02/15(月) 19:14:08 ID:QIJXiQGr
PICスレに比べて有意義な議論が多い良スレだと思ってたのに
馬鹿のバーゲンセール状態になっちまった
842774ワット発電中さん:2010/02/15(月) 20:24:10 ID:k2kiXDZ4
セールならそのうちに終わるな。
843774ワット発電中さん:2010/02/15(月) 21:28:41 ID:USm0zPfK
>>841
春休み時期だからね。
844774ワット発電中さん:2010/02/15(月) 21:41:24 ID:obqZBhak
毎日が閉店セールです
845774ワット発電中さん:2010/02/15(月) 21:56:30 ID:q2bcLFtA
そろそろPb談議は止めよう。
自分も引っ張ったから人のことは言えないけど。

 それよりArduinoって面白いのかな。
学研からJapaninoってのが出るけど、アレはATMELの石は入ってないの?
846774ワット発電中さん:2010/02/15(月) 22:09:10 ID:k2kiXDZ4
初めて知ってググったら表紙には「互換」という文字があるな。
847774ワット発電中さん:2010/02/15(月) 22:41:58 ID:ZT4UkfZS
案外安いFPGAにフリーか何かのIP乗っけてAVRのコード互換にしてるとか?
まぁそれはそれでアリかもしれない、FPGAもいじれれば最高かもしれないw
848774ワット発電中さん:2010/02/15(月) 22:53:35 ID:q2bcLFtA
いや、学研の今までの付録の流れからすると、
中国で安く調達した”何か”かもしれない。
AVRもチップはアジアのどっかで安く作ってると思うけどさ。
849774ワット発電中さん:2010/02/15(月) 23:00:29 ID:C3B9sus5
そのうちfilipino がでてきそうだ
850774ワット発電中さん:2010/02/15(月) 23:06:15 ID:aNPYdx6t
>>846
Arduino互換て意味かと・・・
851774ワット発電中さん:2010/02/15(月) 23:40:49 ID:WCKOLs+O
AVRはじめてみようと思ってるのですが,HIGH,LOWの値の閾値ってどのくらいなんでしょうか?
ArduinoのHIGH>3Vというのが今つくってるものでは少し使いづらいんです.
852774ワット発電中さん:2010/02/16(火) 00:02:15 ID:Rl7fnfYD
どれでもいいからAVRのデータシート見れ
細かく具体的に書いてあるから
853774ワット発電中さん:2010/02/16(火) 00:37:13 ID:uvTKqV+M
>>851
電源電圧による
854774ワット発電中さん:2010/02/16(火) 07:05:45 ID:7BBQl+4A
>>851
何Vなら嬉しいの? A/D使うっていうんじゃだめなの?
855774ワット発電中さん:2010/02/16(火) 22:00:49 ID:Ld9vJq5D
>>851
データシート読んでから聞けよ。
856774ワット発電中さん:2010/02/16(火) 22:40:34 ID:WS7rEizf
コンパレータで解決
857774ワット発電中さん:2010/02/17(水) 07:55:23 ID:o7TzKGpg
どんな電圧でも駆動できて外付け抵抗1本でしきい値が決められる8素子コンパレータアレイとか無いの?
858774ワット発電中さん:2010/02/17(水) 11:15:13 ID:O7wxm71B
ATTINY26Lを使用しているボードがあるのですが、作っている業者から「ATTINY26L」が
入手困難になったので「ATTINY2313」に変更する。ついては開発費をこれだけよこせ、
と言われて困っています。
ATTINY26Lが入手困難というのは本当ですか。秋月通商では現在取り扱ってないと
言われました。ATTINY26Lとのピンコンパチのマイコンはないでしょうか
どなたか教えてください
859774ワット発電中さん:2010/02/17(水) 11:25:52 ID:GokJ+Vv4
>>858
入手難なのかは代理店かATMELに確認するのが良いと思いますが
ATMELのサイトを確認すると「ATtiny26 Not recommended for new designs: replaced by ATtiny261A」
ってなってますね。ざっとデータシートのピン配置をみた感じではピン互換があるようですが
周辺機能をどのように使っているか不明なので内部レジスタ含めご自分でデータシートで確認してください。
860774ワット発電中さん:2010/02/17(水) 11:36:07 ID:O7wxm71B
早速ありがとうございます!
861774ワット発電中さん:2010/02/17(水) 11:38:48 ID:0/WrrpgG
ATTINY26LからATTINY2313に移植できる程度のプログラムなら
261で行けると思うよ。
しかし、そんな仕事ならはじめからATTINY2313をつかえって言いたくなる・・・
ちなみに、幾ら請求されたの?       聞きたい。
862774ワット発電中さん:2010/02/17(水) 12:03:07 ID:OL4rb/T2
>>861
今は2313安いけど、秋月が扱うまでは26の方が安かったからじゃね?
今の商品展開にしたって、PicoPower化やメモリバリェーション展開も26系の方が先だし。
海外ではADC付きな26系の方が人気あるみたいな話も聞くけど。
863774ワット発電中さん:2010/02/17(水) 12:10:07 ID:L0VptM6w
ATTINY26L → ATTINY2313 の移植だけで何万も取られるならボッタクリもいいところだけどね
開発費なんてほぼ 0 円だし、それを口実にイニシャル費稼ぎたいだけかと
864774ワット発電中さん:2010/02/17(水) 12:22:23 ID:GokJ+Vv4
うちの感覚だと数万だったら格安だな。
865774ワット発電中さん:2010/02/17(水) 12:30:28 ID:0Vyg3ksQ
内容次第だろ。

26から2313に移植できる = ADCもPWMも使ってない、
ならほぼピン配置のいれかえだけだな。基板の密度が高いと
ほぼ一から書き直しではあるけど。

26のPWM使いまくり〜を2313上で超絶技功でなんとかする、だと数万だと割に合わん
つーか261行け、かもだが。
866774ワット発電中さん:2010/02/17(水) 12:33:28 ID:22IDGGnE
ATTINY26L → ATTINY2313 の移植、ADCが必要だとコンパレータで代用するのは面倒そう。
ピンアサインも違うから、基板のレイアウトもやり直しだし。
ATTiny261,461,861に行った方が、移植は楽でしょ。
867774ワット発電中さん:2010/02/17(水) 12:34:56 ID:yJIj8Pkc
>>863
物によるけど相当額取られるでしょ。ピン配置が違うから回路から起こしなおしになるし、
当然、動作検証も一からやり直し。そのパートについて、ほとんど新規開発と同じに
なると思うよ。

ただ、常識的には>859の言うように26からの移植だと261が普通なので、業者の開発
能力(情報収集能力)に問題のある可能性も捨てきれないけどね・・・
868774ワット発電中さん:2010/02/17(水) 12:40:28 ID:22IDGGnE
ちなみに個人が秋葉の店頭で入手するなら、千石の861がお得かな?
http://www.sengoku.co.jp/mod/sgk_cart/search.php?toku=&cond8=or&dai=&chu=&syo=&cond9=&k3=0&list=2&pflg=n&multi=&code=5DAN-RUDL
通販で481で足りるなら、マイクロファンがもうちょっと安いね。
http://www.microfan.jp/shop/9_15.html
http://www.microfan.jp/shop/8_16.html
869774ワット発電中さん:2010/02/17(水) 12:59:39 ID:22IDGGnE
870774ワット発電中さん:2010/02/17(水) 16:26:40 ID:jT4TyloT
こんなのでA/Dコンバータ11chってw
871774ワット発電中さん:2010/02/17(水) 16:37:38 ID:0/WrrpgG
しかも、差動+アンプ付きだぞ!
温度計も内蔵してたはず。
872774ワット発電中さん:2010/02/17(水) 22:26:37 ID:EfNbJzyl
配線ミスってAC100Vを直に掛けてふっとばした
やっぱ商用電源は迫力が違うな
一発で酔いが覚めた
873774ワット発電中さん:2010/02/17(水) 22:35:15 ID:LefmAAFq
酔っぱらって配線して通電かよ、危ねーなw
874774ワット発電中さん:2010/02/17(水) 23:04:55 ID:qE8agW2x
迫力とかそうゆう話じゃないからw
875774ワット発電中さん:2010/02/17(水) 23:27:59 ID:cNUqrQuu
ADよりDAつけてほしい
PWMは高周波出すから嫌い
876774ワット発電中さん:2010/02/18(木) 02:21:44 ID:e1w077Hp
>>858
まともなルートから調達してれば、ディスコンになるときは、必ずラストオーダーって
のがあるから、そのとき将来の必要数を見込んで発注すればOK。
何千台分も発注すると、ちょっと費用がかさむが大した数じゃないんだろ?
そんなことで、開発費を請求してくるなんてボッタクリ業者だよ。
877774ワット発電中さん:2010/02/18(木) 12:07:38 ID:KaKhVOee
下請けは大事にしてやってください
878774ワット発電中さん:2010/02/18(木) 13:51:48 ID:LxQYpF+S
>>875
チップ抵抗ででっかいラダー作るのが楽しくなってきた
879774ワット発電中さん:2010/02/18(木) 22:39:14 ID:OL71nFbH
ラダーは抵抗の誤差で歪みが出るし
ピンもいっぱい使うからなあ
880774ワット発電中さん:2010/02/18(木) 23:36:18 ID:4BdzZjSr
抵抗20本から8本選別、くらいで十分奇麗だよ
881774ワット発電中さん:2010/02/18(木) 23:46:00 ID:OL71nFbH
嘘だッ!!
882774ワット発電中さん:2010/02/18(木) 23:53:40 ID:+AVkz0D3
手持ちの抵抗はみんな同じロットだから選別で精度を高められるほど都合良くバラついてない件
883774ワット発電中さん:2010/02/19(金) 01:34:01 ID:4s+FxAg6
それなら都合よく行くように思えるけど、気のせいか?
884774ワット発電中さん:2010/02/19(金) 01:44:23 ID:QRBhv8jy
上位の2ビット分以外やる意味あるのか
885774ワット発電中さん:2010/02/19(金) 01:56:37 ID:zQ8yJFLt
>>883
あ、そっか
886774ワット発電中さん:2010/02/19(金) 08:59:06 ID:rzqfZ9RF
温特も忘れてもらっちゃこまる
887774ワット発電中さん:2010/02/19(金) 09:30:19 ID:24witHiA
部品とかにある 102 や 223 を 1000 や 22000 に変換するルーチンを作ってるんだけど、
これより高速で容量の少ないプログラムってないかな?

unsigned long N_convert(unsigned int Number)
{

 int n;
 long i;
 n = Number % 10;

 switch (n)
 {
  case 1:
   i = (Number - 1) / 10;
   break;

  case 2:
   i = Number - 2;
   break;

  case 3:
   i = (Number - 3) * 10;
   break;

  case 4:
   i = (Number - 4) * 100;
   break;

  case 5:
   i = (Number - 5) * 1000;
   break;

  default:
   i = Number / 100;

 }

 return(i);

}
888774ワット発電中さん:2010/02/19(金) 10:47:43 ID:ifIxh/hA
容量で節約したいのは、プログラムを入れるフラッシュ?変数を入れるSRAM?
SRAMは、関数終了後に開放されるから、たぶんフラッシュの方だと思うけど、
2313とかでSRAMカツカツになってると、そっちなのかも?
あと、速度と省容量のどっちが重点とか。

というか、一桁ずれてない? 今のプログラムだと102が100になるよね?
889774ワット発電中さん:2010/02/19(金) 11:25:25 ID:24witHiA
>>888
一桁違うのは、このルーチンを使う他の処理の利便上そうなってました
修正するのを忘れてた、すみません;

コンパイル結果を、より短いコードにできるかという質問でした
890774ワット発電中さん:2010/02/19(金) 11:32:32 ID:24witHiA
思い出しました

データ型(long)の範囲で、320000 まで扱うために、あえて 1/10 で出してます
int32 が使えると良いのですが...
891774ワット発電中さん:2010/02/19(金) 11:42:01 ID:/dybJocP
>>890
intのサイズは環境で変わるけど、shortが16bit整数、long型って32bit整数
じゃないの?
892774ワット発電中さん:2010/02/19(金) 12:15:21 ID:24witHiA
>> 891

int1 = short
int8 = int
int16 = long
int32 = ?
float
char

って認識だったんですけど、もしかして根本から何か間違って覚えてるのかな
893774ワット発電中さん:2010/02/19(金) 12:19:07 ID:DTyiUdub
>>892
typedef unsigned char uint8_t;
typedef unsigned int uint16_t;
typedef unsigned long int uint32_t;
894774ワット発電中さん:2010/02/19(金) 12:28:10 ID:ifIxh/hA
元のコードに

int main(){
 while(1);

}

をくっ付けてコンパイル、もろもろ込みで294バイト

unsigned long N_convert(unsigned int Number)
{

 int n;
 long i;
 int j;

 n = Number % 10;
 i = Number - n;

 for(j = 0;j<n;j++){
  i *= 10;
 }

 return(i);

}
これに直して260バイト

unsigned long N_convert(unsigned int Number)
{

 int n;
 long i;
 int j;

 n = Number % 10;
 i = Number - n;

 for(j = 0;j<n;j++){
  i = (i << 3)+(i << 1);
 }

 return(i);

}
これなら210バイトまで減ったけど、掛け算ルーチンを無くしたせいなので、
他所で掛け算使ってるなら、意味なしw

895774ワット発電中さん:2010/02/19(金) 12:35:42 ID:ifIxh/hA
894は
 コンパイラ WinAVR-20081205
 デバイス attiny2313
 最適化オプション -Os
です。
896774ワット発電中さん:2010/02/19(金) 14:58:12 ID:24witHiA
>>894
おおthx!

他で掛け算思い切りしてるので、2番目が一番最適化されたコードなのかな?
3番目のビット演算は、僕の頭ではついていけません orz
897774ワット発電中さん:2010/02/19(金) 15:07:44 ID:24witHiA
でも、よく考えたら 100 が 10 にならなくないです?
898774ワット発電中さん:2010/02/19(金) 15:31:02 ID:ifIxh/hA
すまそ、最初に10で割らんといかんね。
i=(Number - n)/10;
これで、割り算ルーチンも復活して270バイト

速度的には、必ず割り算ルーチンを通り、
何度も掛け算ルーチンを通るから不利かも。

ビット演算は、(i << 3) が8倍した奴(i << 1)が2倍した奴、それを足しただけ。
速度的には、こっちが有利かな?
と思ったら、unsignedじゃないからシフト命令使わずに、
自分自身を足し算+3回ループになってる(^^;
899774ワット発電中さん:2010/02/19(金) 15:41:43 ID:6+wJdAtN
>>887
おそらく、102 や 223 って数値は人が入力したものでしょ。
それをそのまま文字列で受け取れば割り算はいらないと思うのだが。
あとは文字列のパースと乗数の処理だけになる。
900774ワット発電中さん:2010/02/19(金) 15:49:06 ID:ifIxh/hA
というか、全体的にプログラムメモリが足りないなら、
変数のサイズを見直したほうが良さそう。
char:1byte, int:2byte, long 4byte だから。
倍のサイズを使うと足し算、引き算のプログラムサイズも、いちいち倍になる。
テストプロジェクト作ってビルドして.lssファイルのアセンブルリスト見るといいよ。

898の最後の件、たぶん自分自身の足し算とシフト命令は、同じマシンコードだっけか(^^;
901774ワット発電中さん:2010/02/19(金) 20:46:17 ID:FlZUPfeI
47pFとかあるから、最初に入力値が2桁ならそのまま返す処理がいるんじゃね
現状だと1/10で返してるから、その辺は仕様ということで対応しないってのもありかもしれないが
902774ワット発電中さん:2010/02/19(金) 22:21:34 ID:z+IZ4FEh
>>882
秋月100円でやったことあるが、そうは行かなかったなぁ・・・
903774ワット発電中さん:2010/02/19(金) 23:01:45 ID:7A7pFsxX
>>884
そう思ってMSB側に繋がってる抵抗に気を使ったけど、
あの回路はそんな単純じゃなくて、もっと魔法じみてる
いまだに原理がもやもやしてる
904774ワット発電中さん:2010/02/19(金) 23:32:29 ID:DHLTNpbk
ソフト補正とか
905774ワット発電中さん:2010/02/19(金) 23:42:45 ID:YSBnGbfm
出力バッファの内部抵抗分引いて選別するとか
906774ワット発電中さん:2010/02/21(日) 16:46:50 ID:R1OL6Emy
最初から精度高いのにすれば
907774ワット発電中さん:2010/02/22(月) 21:39:17 ID:05b/54l5
ATMEGA1284P-PUは入手できないのかな・・
買えた人います?
908774ワット発電中さん:2010/02/23(火) 20:47:53 ID:9djzGlHK
MEGAx8と比べて、ピンが増えただけで別に新しい機能があるわけじゃないし、
俺は別に必要ないけどな
909774ワット発電中さん:2010/02/23(火) 23:45:08 ID:JihBhYOS
どちらもあるに越したことはないけど、EPROMの4Kはまぁどうでもいいが、
RAMの16KBはそれなりに魅力に思える。 ただ、後発のARM系やXMEGAの周辺
機能と比べると、存在自体がやや微妙かな。
910774ワット発電中さん:2010/02/24(水) 00:49:15 ID:Fa4/viFx
RAMが大きいと表示器が豪華にできるから好き
911774ワット発電中さん:2010/02/24(水) 03:04:31 ID:i6PTTlHh
RSコンポーネンツや千石でRAM8KBなAVRは買えるから、
それで我慢するか、RAMを外付けするか
xmegaはA/D、D/A以外は5Vトレラントでもないし
DIPやUSBもあるPIC24系に比べて魅力があんまりない
912774ワット発電中さん:2010/02/24(水) 19:52:56 ID:50VzdXPJ
RSって個人で使えるんかね
913774ワット発電中さん:2010/02/24(水) 21:55:55 ID:Fa4/viFx
RSは個人で買えるよ
914774ワット発電中さん:2010/02/24(水) 22:05:25 ID:b+cBpvJK
>お客様へのお願い
>・RSは個人のお客様には原則として販売を致しません。企業名・住所でのご登録をお願い致します。
915774ワット発電中さん:2010/02/24(水) 22:08:25 ID:b+cBpvJK
企業名・住所で登録したら個人でも買えるってことだな
いいか悪いかは別として

因みにチップワンストップも似たような条件だけど
個人事業主や営利目的なら個人でもいいことにするさー
って書いてあったと思う。
916774ワット発電中さん:2010/02/24(水) 22:24:25 ID:Fa4/viFx
あり?
最近はそんな事書いてあるのか
もう何年も前から個人名で買ってるけどなー
917774ワット発電中さん:2010/02/24(水) 22:27:51 ID:Fa4/viFx
いまアカウント情報みたら企業名欄に個人[コジン]て書いてあるわ
918774ワット発電中さん:2010/02/25(木) 00:36:31 ID:ZHnYAMDs
「個人」登録ではカタログは送ることが出来ない、って電話が来たことがある。<RS
そもそも不要だったので何の問題もなかったんだけど。
919774ワット発電中さん:2010/02/25(木) 04:38:17 ID:vurEw/W1
>>912
困ったときのDigiKey
920774ワット発電中さん:2010/02/25(木) 18:59:49 ID:r+lgf20P
>>917
喧嘩売ってるに等しいなw
大丈夫なの?それ
921774ワット発電中さん:2010/02/25(木) 23:30:16 ID:Vlx5pT8F
RSの個人取引について少々古い情報だけど
ttp://micon.arrow.jp/modules/newbb/viewtopic.php?topic_id=44&forum=5&start=10
に、問い合わせの結果として書いてあったので参考まで。
922774ワット発電中さん:2010/02/26(金) 19:44:00 ID:sTEp1vbH
オレはデフォルトでデジキーだな。
ただ、7500円以上送料無料に吊られてつい余計に買ってしまう。
923774ワット発電中さん:2010/02/26(金) 20:17:01 ID:FyQ1UaX/
>>922
かつ10,000円未満を狙う。合計が9,998円になった時は「勝った!」と思った・・・
924774ワット発電中さん:2010/02/26(金) 23:15:09 ID:LKx5wctp
>>923
(゚∀゚)人(゚∀゚)ナカーマ
925774ワット発電中さん:2010/02/27(土) 05:39:19 ID:iqJNPMux
1万近くの部品って個人事業者さん?
926774ワット発電中さん:2010/02/27(土) 07:42:30 ID:RR+JxJLn
大人買い
927774ワット発電中さん:2010/02/27(土) 09:07:57 ID:o2rWVq+2
そのうちいいとものコーナーで、秋月の部品全種類買ったらいくらか当てさせる
928774ワット発電中さん:2010/02/27(土) 12:06:50 ID:nfB/VBWF
16bitタイマーで0.1秒ごとに割り込みをかけようとするとき、
クロックが1MHzなら、32分周でカウント3125とするとうまくいくとおもうのですが、どうでしょう
929774ワット発電中さん:2010/02/27(土) 12:52:14 ID:CibHwCkJ
>>928
3124じゃない?
930774ワット発電中さん:2010/02/27(土) 14:18:09 ID:7FLxLw9P
>>928
どうでしょうって言われても・・・。やってみればいいじゃん。
931774ワット発電中さん:2010/02/27(土) 18:59:06 ID:iqJNPMux
精度いらないんならウォッチドッグでいいんじゃない
932774ワット発電中さん:2010/02/27(土) 20:43:47 ID:NUk5FEEv
32分周って一部のタイマーにしかないよ(大抵は1、8、64、256、1024の5段階)
16bitタイマーで7段階の品種ってあったっけ
933774ワット発電中さん:2010/02/27(土) 20:50:46 ID:gGuomrMx
外部で10Hzのバルスを作ってINT0に・・・
934774ワット発電中さん:2010/02/28(日) 00:05:35 ID:hh3gZ0Rf
それなら10Hzのパルスも内部で作ってしまえ
935774ワット発電中さん:2010/02/28(日) 18:07:24 ID:6SwmSruN
手動でクロック作れ
936774ワット発電中さん:2010/02/28(日) 21:36:23 ID:dkJC6anR
>>935
鉄定規等のチート使わないなら16Hzが限界
が、達成できれば「名人」の称号が得られる
937774ワット発電中さん:2010/02/28(日) 23:09:30 ID:lhq1mlTF
指4本を往復させて、光センサーを遮るともっといける
938774ワット発電中さん:2010/02/28(日) 23:17:22 ID:i9N5LeOA
モータ+ギアとかでハンドルぐるぐる回すとさらに行ける!
939774ワット発電中さん:2010/02/28(日) 23:17:50 ID:eXqoMpSk
パルス出力のロータリーエンコーダの軸を手で回せばいいだろ
940最初に戻る:2010/02/28(日) 23:21:25 ID:4LBCbGMM
手回し式発電機で電気で起こして、それを適当なマイコンにつっこんでパルス出させろよ
電電板なんだからマイコンくらい使えw
941774ワット発電中さん:2010/03/01(月) 01:38:19 ID:CvPtEdyZ
>>938
それ手動じゃない
942774ワット発電中さん:2010/03/02(火) 23:29:34 ID:QgV69l3Y
復旧した?
943774ワット発電中さん:2010/03/02(火) 23:56:54 ID:Drx7EzG0
復旧〜
944774ワット発電中さん:2010/03/03(水) 20:40:21 ID:Qal2tlcx
色々やろうとmega644Pとかmega328Pとかtiny861とかtiny45Vとかtiny13Aとか各種買ってあるのに
2313以外まったく手付けられてねえ
アイデアばっかりで体が動かん
945774ワット発電中さん:2010/03/03(水) 23:20:12 ID:cqXM7scs
>>944
アイデアすらでねえ
946774ワット発電中さん:2010/03/04(木) 00:41:02 ID:R6MzN4wf
そこでライターですよ
947774ワット発電中さん:2010/03/04(木) 01:00:10 ID:U+RvTB1A
644P使いやすいよな
948774ワット発電中さん:2010/03/04(木) 01:07:18 ID:MEHys9l6
さっきフラグを直接見れて感動
if(UDRE)
ってフラグを直接読めるの知らなかったw
UCSRAと1<<UDREを比較してなんちゃらとかしてたわ

AVRstudioの話
949774ワット発電中さん:2010/03/04(木) 01:30:26 ID:MEHys9l6
俺大丈夫か

950774ワット発電中さん:2010/03/04(木) 01:34:40 ID:xVydIw6v
もうダメかもしれんね
951774ワット発電中さん:2010/03/04(木) 02:09:31 ID:5oXy354q
お疲れのようですね
952774ワット発電中さん:2010/03/04(木) 10:37:10 ID:h8uEYwBX
AKB48とのコラボ企画でAVR48を出したらどうかね

AVRの48pin品80C8534のシルク印刷だけ差し替えて
華美なパッケージに収めて売る

もちろんコチラとの握手券付き(写真右)
ttp://www.eis-japan.com/event/img/090420-2.jpg
953774ワット発電中さん:2010/03/04(木) 10:42:49 ID:MjIuQ/W9
>>952
握手じゃなくて抱きつきOKなら是非買いたい
着ぐるみに抱きつくのが好きw
954774ワット発電中さん:2010/03/04(木) 11:04:12 ID:Q4/quHyP
そんな事をするならADB48とかappleがやりそうだなw
955774ワット発電中さん:2010/03/04(木) 11:14:59 ID:MjIuQ/W9
FreeScaleのフリス犬みたいにグッツ作ってくれれば良いのにな
AVRロボ(って名前だっけ?w)
956774ワット発電中さん:2010/03/04(木) 11:20:02 ID:/m3h+/iB
ATMELグッズのダサさは異常
957774ワット発電中さん:2010/03/04(木) 16:19:05 ID:ddTBBSBV
AVRと関係ないがこの流れなら言える!

ピンソケットを切断するときにピンを抜いて、そこを切っている。
Y字というか音叉というか、そんな形のピン。

抜いたピンをなんとなく取ってあるんだが、なんか上手い使い道ない?
貧乏性ってやーねー
958774ワット発電中さん:2010/03/04(木) 16:26:58 ID:Q4/quHyP
あれは抵抗とかコンデンサ、水晶、ジャンパ線(端子に利用)を抜き差しするのに再利用してる。
というか、あまり使い道もないのも確かだけど。
959774ワット発電中さん:2010/03/04(木) 16:41:49 ID:7rN/OeZy
そんな用途向けにマックエイトだったか?端子売ってるよね。
溜まれば欲しがる人もいるかもしれないよ。
960774ワット発電中さん:2010/03/04(木) 17:01:02 ID:ddTBBSBV
>958
ん、、、イメージがわかなくてスマン。
具体的にはどこにピンを取り付けて、何と抜き差ししてるんだい?
961774ワット発電中さん:2010/03/04(木) 17:04:04 ID:2/gn8F6C
>>948
単にUDREに定義してある定数で条件分岐してないか?
<avr/io.h>で呼ばれているチップ別のヘッダの中身を確認のこと。
ためしにif(UDRE){hogehoge;}else{fugafuga}でコンパイルしたら、
最適化されて、fugafugaに飛ぶコードは吐かれなかったが。

962774ワット発電中さん:2010/03/04(木) 17:06:50 ID:2/gn8F6C
>>958
-Y--(赤黒茶 金)--Y-
こんな感じか?
963774ワット発電中さん:2010/03/04(木) 17:21:36 ID:E6eQ9dsT
ヒューズのソケットのようなイメージですか
964774ワット発電中さん:2010/03/04(木) 17:25:53 ID:ddTBBSBV
なるほど、足が短くなった部品に使うのか。
965774ワット発電中さん:2010/03/04(木) 17:47:42 ID:D/+VOef3
>>964
違うだろ
基板にYのピンを立てておいて
回路定数を変更するのに抵抗とかをとっかえひっかえするのに使うんだよ
966774ワット発電中さん:2010/03/04(木) 18:00:04 ID:ddTBBSBV
>965
そりゃ>962>963でわかるよ。
足が長かったらピンが無くてもブレッドボードでできるけど、
足が短かったらピンがより活かせる使い方だなと思ったってこと。
967774ワット発電中さん:2010/03/04(木) 19:03:47 ID:R6MzN4wf
>>959
マックエイトの穴に挿すシリーズは異常w
マジで何でもあるから困る
968774ワット発電中さん:2010/03/04(木) 21:29:47 ID:6oB8+NM6
969774ワット発電中さん:2010/03/04(木) 21:38:58 ID:fPxL7m6t
いきなり話が変わるが、debugwireって頻繁に死なないか?
ヒューズ設定する時とかドキドキするわ。

R8Cの安定性とは比べ物にならないほど不安定。
JTAGついてるマイコンは高いし、ポートも食うし。

正直、そこだけは直してほしい。
リセットピンのコンデンサはずせとか、無茶な要求。
970774ワット発電中さん:2010/03/04(木) 22:53:34 ID:a8TzYNE1
>>968
中国だから¥=元だろうな、これは。
971774ワット発電中さん:2010/03/04(木) 22:54:00 ID:qCD+s5ug
>968
すさまじくまぎらわしいが、
円マークはCHY(1CHY = 13日本円)で日本円換算約10000円、
ブツがKEEのクローン品(115 USドル)だから、ほぼ定価販売なんだね。

972774ワット発電中さん:2010/03/04(木) 23:59:56 ID:DY32shA7
元をゲンと読むから変に思うかもしれないが、
元の正しい読みはエンだ
973774ワット発電中さん:2010/03/05(金) 00:21:05 ID:FDKnkfcv
日本の「円」と言う通貨単位が元々は中国からの借り物らしいからな。

発音が同じなのも当たり前っちゃ当たり前。
974774ワット発電中さん:2010/03/05(金) 09:14:37 ID:Qx+zAEQj
エンというか、イ゛ェンというか
975774ワット発電中さん:2010/03/05(金) 10:36:06 ID:smSktfSN
へー、それは知らなかった。JPYに対してCHYなんだな
976774ワット発電中さん:2010/03/05(金) 11:00:29 ID:3ydvIGDQ
977774ワット発電中さん:2010/03/05(金) 11:51:59 ID:cwJOIRZD
ジュシーポーリーイェイ
978774ワット発電中さん:2010/03/05(金) 22:07:15 ID:TMy01v/c
chanさんのAVRSPの、USB SPIブリッジなんですけど、
これに使うクロックは何MHzなんでしょうか

http://elm-chan.org/works/avrx/report.html
http://elm-chan.org/works/avrx/usbspi.zip
979774ワット発電中さん:2010/03/05(金) 22:41:07 ID:cCpwP4bW
回路図にCSTCE10Mて書いてあるじゃん
村田製作所の10MHzのセラロックみたいだぞ
980774ワット発電中さん:2010/03/05(金) 22:55:56 ID:TMy01v/c
10MHz持ってないんですが、他のクロックでもいけますか
981774ワット発電中さん:2010/03/05(金) 23:03:06 ID:UWbh/tsJ
>>980
回路図とかソース読めないなら、判らない定数変更をしてはならない。鉄則だ。
982774ワット発電中さん:2010/03/05(金) 23:03:29 ID:TMy01v/c
USARTの速度設定を他のクロック用にすればいけそうですね
他にクロックに依存するような処理はなさそうなので
983774ワット発電中さん:2010/03/05(金) 23:04:51 ID:TMy01v/c
読めますし理解もできますが、見落としていただけです
見落とすというのは、認識としては書いてないことと同じ意味になります
したがって質問することが最善の解決策だと考えただけです
984774ワット発電中さん:2010/03/05(金) 23:06:23 ID:cCpwP4bW
でも質問する相手の機嫌を損ねるような言動は最善の解決策とは言えないんじゃね?
985774ワット発電中さん:2010/03/05(金) 23:11:21 ID:MAWcRgDd
>したがって質問することが最善の解決策だと考えただけです

じゃぁなんでELMサイトの掲示板に書かないの?
作った本人のサイトにあって今も生きてる掲示板だよ

掲示板があることを見落としてました、ってか
いい加減にしろよ
986774ワット発電中さん:2010/03/05(金) 23:12:03 ID:0O3tofxt
>見落としていただけです
書いてない筈のない「定数」だと思う
987774ワット発電中さん:2010/03/05(金) 23:36:57 ID:UWbh/tsJ
>>982
他にもUSIとかシステムクロック使ってる様だが…。
自力で書き直せるなら良いんじゃね?

クロックは、アセンブラソースの先頭付近かMakefile等に書いてある事が多い、という事を覚えておくと良い。
988774ワット発電中さん:2010/03/05(金) 23:54:21 ID:WKoxB9jt
都合の悪いものは見えないものです。
989774ワット発電中さん:2010/03/06(土) 00:25:40 ID:ekvUXXgB
掲示板で質問しても答えを教えてくれないし。
990774ワット発電中さん:2010/03/06(土) 00:44:03 ID:S9NAC0F/
答えを知ってて、書き込む暇があってちゃんと説明できる奴がいるとは限らない
運が良ければそういう奴がいるってだけ
991774ワット発電中さん:2010/03/06(土) 01:51:12 ID:XHSW2/qm
"教えて君"か
もしくは只の釣り
992774ワット発電中さん:2010/03/06(土) 18:17:35 ID:0QIHDeYd
手持ちの発振子がないからソフト修正でなんとかしようという発想がすごいよね。
おまえはどんな無人島に住んでいるんだと(ry
993774ワット発電中さん:2010/03/06(土) 18:54:11 ID:SrlV2Toc
>>992 仕事してるとそんなんばっかだぞ
回路のミスはソフトでカバー

回路見るとFT232使ってるし、セラロックを使う意味が
1.内臓オシレータが8Mまでしかないけど処理速度がほしい
2.精度がほしい

のどっちかだと思われ。ソース読んでないけど。
1ならOSCCALをいじって10Mにしたら?
994774ワット発電中さん:2010/03/06(土) 20:51:57 ID:iEiGm+6T
>>863
かつて C言語のprintf文の出力桁を一桁増やしてもらったら10万だった
995774ワット発電中さん:2010/03/06(土) 21:38:13 ID:aRS20fto
絶望した!
996774ワット発電中さん:2010/03/06(土) 21:44:05 ID:ntVhbq1C
863は労働を知らない人間の発言なので
997774ワット発電中さん:2010/03/06(土) 21:58:20 ID:tbIppCEz
まあ、出力桁をひとつ増やすのでも開発システム使って、変更して、
副作用が無いか確認して納品ってやってたら10万くらいはコストが掛かるわな。

それをもろにすべて請求するかどうかはその会社の方針だけど。
998774ワット発電中さん:2010/03/06(土) 22:06:27 ID:SrlV2Toc
リピートの数が少ない顧客ならふっかけるのは当然だろ
世の中実際そうなってる
999774ワット発電中さん:2010/03/06(土) 22:13:30 ID:tp+zZzj+
高いとかいってるやつらは社会経験ないか外注虐めだな
1000774ワット発電中さん:2010/03/06(土) 22:45:37 ID:ekvUXXgB
それくらい払ってやれよ。みんな持ちつ持たれつなんだ。
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。