問題タブ [digital-analog-converter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
2361 参照

c - STM32F103 DAC と ADC は同時に実行されません

ADC1 と ADC3 の間で 18 個の ADC を常に読み取り、それらを配列に入れるようにスレッドを設定しています。

また、usart から目的の設定を受信すると、2 つの出力 DAC チャネルのいずれかを設定する機能もあります。

スレッドを有効にするまで、dac 関数は完全に機能しますTSK_AdcSensor
DAC 出力は意味のない値を示します。

消去法により、次のコメントを見つけました。

DAC が通常どおり動作するようにします。しかし、私はなぜ見ることができませんか?

DAC チャンネルを設定したprintf後、正しい値が表示されますが、出力での電圧読み取り値が一致しません。

誰にもアイデアはありますか?

DAC 構成

0 投票する
1 に答える
82 参照

audio - DC バイアス オーディオ信号を駆動する際のスピーカー ポップの回避

16 ビット .wav ファイルから読み取っている 12 ビット DAC でオーディオ信号を生成しています。私のプロセッサは 3.3V なので、すべてを 32768 にシフトして、値が 1.65V を中心に 0 ~ 3.3V の間で変動し、右に 4 ビットシフトして 12 ビットの値にします。

私が抱えている問題は、DAC をオンにすると、アンプがそのステップ関数を認識したときに大きなポップ音がすることです。コーナー周波数が 4KHz の RC ローパス フィルターを使用していますが、あまり効果がありません。

できればハードウェアでこれを修正したいのですが、それを行う最善の方法が思いつきません。これらはモノラル スピーカーで再生される音声コマンドにすぎないため、忠実度などは必要ありません。

私が考えたもう 1 つの解決策は、DAC を増減することでしたが、余分な時間がかかるのは避けたいと思います。

助言がありますか?

0 投票する
0 に答える
213 参照

java - Java の DAC からの複数のオーディオ ライン

私は、同時に複数のマイクからのオーディオ入力を必要とする Java (技術的には処理していますが、Eclipse を使用しています) でライブ音楽の視覚化プロジェクトに取り組んでいます。JACK には優れたシステムがありました (この質問への回答によると) が、私は JACK から独立したいと考えています。

ただし、Java 内で DAC から複数の行にアクセスできませんでした。それに対応する Mixer を取得し、TargetDataLine を開き、AudioInputStream からデータを取得してバッファに入れることができますが、これはすべて最初のマイクにのみ対応します。Java のままで別の行を取得できる方法はありますか、または C/PortAudio または同等のものを JNI と組み合わせて実行する必要がありますか?

0 投票する
1 に答える
830 参照

python - TI DAC8568 のラズベリー pi 上の SPIDEV が期待どおりに動作しない

BOOST ブレークアウト ボード パッケージに Texas Instruments DAC8568 があります。DAC8568 は、SPI インターフェイスを備えた 8 チャネル、16 ビット DAC です。BOOST パッケージには、ラズベリー パイに接続するためのヘッダーがあり、出力電圧に接続された LED があるため、コードが思ったとおりに動作しているかどうかを簡単に確認できます。DAC8568 の BOOST パッケージとデータシートへのリンクは、以下の Python コードにあります。

I have the package wired to the raspberry Pi with the 3.3V supply, the 5V supply (needed for LEDs), and ground. The DACs SCLK goes to Pi SCLK, DAC /SYNC (which is really chip select) goes to Pi CE1, DAC /LDAC goes to Pi Gnd, and DAC MOSI goes to Pi MOSI. I do not wire the DACs /CLR, but I can physically hook it to ground to reset the chip if I need to.

I believe my wiring is good, because I can light the LEDs with either a python script or from the terminal using: sudo echo -ne "\xXX\xXX\xXX\xXX" > /dev/spidev0.1

I learned the terminal trick from this video: https://www.youtube.com/watch?v=iwzXh2V1SP4

私の問題は、データシートによると、LEDが期待どおりに点灯していないことです. A を照らすべきなのに、B を照らす。B を照らすべきなのに、代わりに D を照らす。などなどデータシートに従って動作することを本当に期待しています。

以下は私のpythonスクリプトです。コメントで、送信するビットを探しているデータシートの場所について言及しました。私はアナログ コンポーネントの操作に非常に慣れておらず、EE ではないため、タイミングを正しく行っていないか、その他のばかげたエラーを犯している可能性があります。おそらく、誰かが実際にチップを手にしなくても、データシートを見て私のエラーを見ることができます。助けてくれてありがとう!


将来の読者のために、電源を入れるには内部リファレンスの電源を入れる必要があることに注意してください。