目次

VUメータ(デジタル処理+アナログ表示)

概要

VUメーター(VU Meter)は、元々、音響機器に於いて音量感(volume unit)を指示するための測定器だそうです。
【開発当時の規定】
インピーダンス600Ωの回路において1khzの正弦派を加えて1mWの電力を消費したときに0VUとする。
VUメーターの指示範囲は-20から+3で単位はdBである。信号が発生してから針が既定値に達するまでの時間は300msecである。
今回は、信号をPICでデジタル処理し、針式メータで表示させてみました。

動作原理

出来るだけハードウエアは単純にし、ソフトウエアで処理をしました。

回路図

ソースコード

VUmeter.c
//********************************************************************** 
 
void	main()
{
	static	unsigned	int		ad, cnt;
	static	unsigned	long	adLong;
	//
	CMCON = 0b00000111;
	ANSEL = 0b00000100;
	TRISA = 0b00111100;
	TRISB = 0b00000000;
	OSCCON = 0b01110000;
	while (1) {
		PORTA.F1 = ~PORTA.F1;
		adLong = 0;
		for (cnt = 0; cnt < 300; cnt++) {
			ad = Adc_Read(2);
			adLong += ad;
			Delay_us(1000);
		}
		ad = adLong / 300;
		PORTB = ad;
		PORTA.F6 = (ad & 0b0100000000) == 1 ? 1 : 0;
		PORTA.F7 = (ad & 0b1000000000) == 1 ? 1 : 0;
	}
}
 
//********************************************************************** 

動作確認

入力にはCDプレイヤーを接続しました。

どこかのメーカのパワーアンプから外したメータを接続してみました。

トランジスタのアンプ部と倍電圧整流部です。

PICとD/A変換の接続部分です。

ブレッドボードで使えるようにD/A変換部をユニット化しました。

著作権表示 copyright notice

このページは稲崎様の閉鎖したHPのコピーで、著作権は稲崎様にあります。詳細
This page is a copy of Mr. Inasaki's closed website, and the copyright is held by him.Details