PSoC5 CY8C5888LTI-LP097 VGA_inv を使う(オペアンプ・ゲイン可変)
PSoCのOPamp絡みのモジュール PGA_inv です
これは可変ゲインを持って居るのですが逆位相で出力します
x1 / x3 / x7 / x15 / x22 / x24 / x31 / x47 / x49 がプログラムで
選べますがなんとも中途半端な倍率ですこと、例えば何で x10 / x20
が無いんでしょうねぇ。
取り敢えず回路図を提示します
WaveDAC8_2 が正弦波発振モジュール
VDAC8_1 と VDAC8_2 が DCバイアス、Vref です
PGA_Inv_1 が反転増幅器
PGA_1 が正転増幅器
↓
WaveDAC8_2 正弦波発振モジュールのパラメーター
↓VDAC8_1 、Vref のパラメーター
↓VDAC8_2 DCバイアス、Vref のパラメーター
↓
PGA_1 正転増幅器のパラメーター
↓
PGA_Inv_1 反転増幅器のパラメーター
Pin 配列
↓
main.c
それぞれのモジュールを起動し
倍率を変化させ、1秒キープ
四種類の増幅率をそれぞれ1秒キープ
Loopで繰り返しという単純な動作です
こんな使い方は無いでしょう、単なる実験です
で、思ったんですが、と言うか、ダメだこりゃって思った事です
VDAC8 からDCが出て来ます、これ、あちこちに繋ぐとレベル変動が
激しくて使い物に成りません、信号でフラれまくりです
なんて言うか・・・テーブルタップに色んな機器を配線して電源
とったらどんどん電圧が落ちて使えなく成る感じです
なので一つのOPampに一つのVDAC8が必要です、要は根性無しです
それと電源5Vですからレール・トゥ・レールって謳ってますが
たった5Vですよ?然かもマイナスには絶対振れません、絶対に
もっと言うと基準が0Vでしょ?だから増幅するとDC成分も重畳して仕舞い
必要な交流成分がサチッて仕舞うんです、なのでCカットとか外部で
やってチマチマと狭いスパンで基準を気にしながら回路を組む
組まざるを得ない、こんなのやってられない、ってのが正直な
感想です、だからこのOPampモジュールは使途は本当に限定的だな
って感じます。
ソースファイル
/* ======================================== * * Copyright YOUR COMPANY, THE YEAR * All Rights Reserved * UNPUBLISHED, LICENSED SOFTWARE. * * CONFIDENTIAL AND PROPRIETARY INFORMATION * WHICH IS THE PROPERTY OF your company. * * ======================================== */ #include "project.h" int main(void) { CyGlobalIntEnable; /* Enable global interrupts. */ WaveDAC8_2_Start(); VDAC8_1_Start(); VDAC8_2_Start(); PGA_1_Start(); PGA_Inv_1_Start(); /* Place your initialization/startup code here (e.g. MyInst_Start()) */ for(;;) { /* Place your application code here. */ PGA_1_SetGain(PGA_1_GAIN_01); PGA_Inv_1_SetGain(PGA_Inv_1_GAIN_01); CyDelay(1000); PGA_1_SetGain(PGA_1_GAIN_02); PGA_Inv_1_SetGain(PGA_Inv_1_GAIN_03); CyDelay(1000); PGA_1_SetGain(PGA_1_GAIN_04); PGA_Inv_1_SetGain(PGA_Inv_1_GAIN_07); CyDelay(1000); PGA_1_SetGain(PGA_1_GAIN_08); PGA_Inv_1_SetGain(PGA_Inv_1_GAIN_15); CyDelay(1000); } } /* [] END OF FILE */
動画です
黄色が発振回路の源波形
青がAGP正転増幅器
紫がAGP_Inv反転増幅器
2019-02-19 23:40
nice!(0)
コメント(0)
コメント 0