[リストへもどる]
一括表示
タイトルPCM1716 controlerのプログラムに関して
記事No952
投稿日: 2011/01/07(Fri) 16:48:29
投稿者ひろゆき
始めまして上野さん。
AVRを使ったDACのソフトウェア制御を勉強しており、上野さんの作ったプログラムを参考に使わせて貰っています。
幾つか分らない点があり、もしよろしければご教授お願いします。

main_loopはアッテネータの設定で使ってるで正しいでしょうか?その場合はアッテネータを使わない場合はmain_loopの記述は不要でしょうか?

次にsbrc dac_md_h,7の記述ですが、dac_md_hのbit7が0なら次の命令をスキップするだと思うのですが、実際、これが何を行ってるか分りません、この命令は何をしてるのでしょうか?

タイトルRe: PCM1716 controlerのプログラムに関して
記事No953
投稿日: 2011/01/08(Sat) 20:06:03
投稿者うえの
AVRに対して、設定が終了した後悪さをせずじっとしているよう指示が必要となりますので、無限ループをさせる必要があります。そうでないと暴走してプログラムが最初から実行されたりします。

sbrcのコードは、クロックに同期させてデータを0や1に設定するものです。データが0ならばスキップするのでPORTBのBIT3は0に設定した後cbiで1にセットされず0のまま、データが1の場合はcbiで0に設定した後スキップしないのでsbiで1にセットされます。

タイトルRe^2: PCM1716 controlerのプログラムに関して
記事No954
投稿日: 2011/01/09(Sun) 20:37:14
投稿者ひろゆき
早速のご返信ありがとうございます。
sbrc命令の方は理解できました、ありがとうございます。

無限ループの方ですが、デジタルアッテネータの設定を
省く場合は以下のようなループのみでもOKでしょうか?

main_loop
rjmpmain_loop

以上、宜しくお願いします。