トップページ > 電気・電子 > 2012年06月24日 > VrOWffyL

書き込み順位&時間帯一覧

15 位/130 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000000000134



使用した名前一覧書き込んだスレッド一覧
でっきるっかなでっきるっかな NOPさん
774ワット発電中さん
電子工作入門者・初心者の集うスレ 42

書き込みレス一覧

電子工作入門者・初心者の集うスレ 42
758 :でっきるっかなでっきるっかな NOPさん[]:2012/06/24(日) 22:57:53.54 ID:VrOWffyL


組み込み豆知識

何もしないで待つ、いわゆるウェイトを
NOP連呼やforでやるやつはとんでもない奴である。

なぜなら、「それをやるにもCPUが最低でも1クロック食ってフル回転」だからだ。

つまり、「それをやっている間は何もできなくなる」のである!!!


こういうときはCPU以外のタイマーを用いる。
x86系統ならACPI
SH系統やPowerPC系統なら内蔵タイマー(SHは3つもあって豪華豪華)

PICでもタイマー内蔵のSKUがあるので、そうすべきだ。
電子工作入門者・初心者の集うスレ 42
759 :でっきるっかなでっきるっかな NOPさん[]:2012/06/24(日) 23:00:35.86 ID:VrOWffyL


また、forループのウェイトは完了まで一定しない。

当たり前だがクロックが違うとループ速度も変わってくるからである。

PC98の頃はメモリ載り待ちにこれをやってるものがあり、(当時でもとんでもないことであったが)
もちろんそういうのは機種が変わると正常に動かなくなったものである。


電子工作入門者・初心者の集うスレ 42
765 :774ワット発電中さん[]:2012/06/24(日) 23:49:52.87 ID:VrOWffyL
なんでもできる
タイマーが送ってよこすのは割り込みなので、その割り込みが来るまでは何でも可能
電子工作入門者・初心者の集うスレ 42
766 :774ワット発電中さん[]:2012/06/24(日) 23:52:29.87 ID:VrOWffyL
「CPUに何もさせないこと」は、消費電力から見ても重要。

forループだと、人間からすると何も起こってないように見えるだけで
CPUは一生懸命ループして数えているから、フル回転しているわけだ
つまり電気を食って働いている。

タイマーが、完了したさいのアンダーフロー割り込みを送るまで、本当に何もしないならアイドル状態の電力しか食わない。
これは電池駆動の際に特に問題になる。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。