Stereo VU metr s pamětí špiček

vloženo:11.03.2009    aktualizováno:16.02.2012

 Měření úrovně zvukového signálu, indikátor vybuzení, PPM - špičkový indikátor, nebo také VU metr. Konstruktéři těchto zařízení určitě znají obvody LM3914, LM3915, UAA180, A277D. To jsou asi nejoblíbenější ovladače LED stupnice (bargraph). Mezi vlastnostmi těchto obvodů mi ale chyběla paměť špiček, proto jsem navrhnul novou konstrukci VU metru s mikroprocesorem PIC16F88.

 


 Stereosignál se zobrazuje na stupnici 2x 16 LED v nastavitelných režimech:
- zobrazení pruh/bod
- stupnice logaritmická/lineární
- paměť špiček ZAP/VYP
- typ paměti vodopád/bod

 

 Funkce se dají libovolně kombinovat a přepínat i za provozu, a to pomocí jumperů JP1 až JP4. Samozřejmě můžete odpory R11 až R14 ukostřit přímo, nebo vůbec neosazovat.

Jumper rozpojeno zkratováno
JP1 zobrazení pruh zobrazení bod
JP2 log. stupnice lin. stupnice
JP3 pam. ZAP pam. VYP
JP4 pam. vodopád pam. bod

 Vodopád znamená, že LEDka svítí 500ms a potom "sjede" dolu.
Pokud se zvolí paměť-bod, bude to bez toho sjetí.

 


Program. PIC16F88
VUM505.HEX (3,1 kB)

Hlavička zdrojového kódu.
VUM505.asm.txt (1,7 kB)

Programovací pojistky.
CP:OFF, CCPMux:RB0, Debugger:OFF, WRT:Writable, CPD:OFF, LVP:OFF, BOREN:ON, MCLRE:I/O, PWRTE:Disabled, WDTE:ON, OSC:INTRC-I/O, IESO:OFF, FCMEN:OFF


Program. PIC16F1827 (47)
VUM2x16_02.HEX (3,1 kB)

Hlavička zdrojového kódu.
VUM2x16.asm.txt (1,7 kB)

Programovací pojistky.
FOSC:INTOSC, WDTE:ON, PWRTE:OFF, MCLRE:OFF, CP:OFF, CPD:OFF, BOREN:ON, CLKOUTEN:OFF, IESO:OFF, FCMEN:OFF, WRT:OFF, PLLEN:OFF, STVREN:OFF, BORV:HI, LVP:ON


 

 Hodnoty logaritmického průběhu jsou uloženy v EEPROM. Pro první LED je na adrese 00h, poslední na 0Fh. Komu nebude logaritmický průběh vyhovovat, můžete si vytvořit vlastní. Lineární hodnoty jsou součástí programu.

 Napětí audiosignálu měří A/D převodník a podle (lin/log) tabulky se rozsvítí příslušná LED nebo sloupec. Klesající napětí ale nezpůsobí zhasínání, to je řízené časovačem. LEDky zhasínají postupně, jedna po druhé s nastavitelnou délkou svitu.

Nastavení časování. Uloženo v EEPROM, adresa:data (HEX)
10:03 Rychlost zhasínání, sloupec/bod. Přednastaveno 12ms pro každou LED.
11:08 Doba svitu poslední LED, sloupec/bod. Přednastaveno 33ms.
12:08 Rychlost zhasínání, pam.špiček (vodopád). Přednastaveno 33ms.
13:7A Doba svitu vrcholové LED, pam.špiček. Přednastaveno 500ms.
(1 = 4,096ms)

KJS korekce jasu segmentu. Uloženo v EEPROM, adresa:data (HEX)
14:64 Pro LED/2mA přednastaveno 64, pro LED/15mA nastavit C8, (hodnota 00 vypne KJS).

 

Schéma: VUM26.sch (236,6 kB)

 Potenciometrem P1 nastavíme citlivost analogových vstupů. Čím menší napětí na VREF+, tím je citlivost větší. Doporučuji VREF+ minimálně 200mV pro největší citlivost. Pokud bude audiosignál slabší, je nutné ho zesílit. Naopak, hodně silný signál (svítí všechny LED i když je VREF+ = 5V), je nutné ztlumit, např. trimrem. V žádněm případě nesmí být na vstupu větší napětí než 5V.

 

Plošný spoj: VUM26.brd (24,8 kB)


Desku můžete objednat na www.bucek.name/dps/dpswebnode.dat.htm
pod označením VUM26.

 

 Ještě před osazením LED diod naletujte drátové propojky.
Začněte propojkou č.7 (od nejkratší po nejdelší).


 Propojky lze udělat také takto.
Tenké drátky oddělují proužky izolepy.

 

 Pro obdélníkové LED (15mA) jsou katodové odpory R1 až R8 22ohm SMD.

 

Seznam součástek:

IO PIC16F88-I/P
sokl 18 pin
LED1 až LED32 2mA / průměr 3mm
D1, D2 Schottky diody BAT85
C1, C2 100nF / (foliové)
C3, C4 100nF / keramické
R1 až R8 330 ohm
R9, R10 450K
R11 až R14 2K2
P1 trimr 10K
JP1 až JP4 jumper (lámací lišta jednořadá 8 pin, 3x zkratovací propojky)
SV1 konektor (lámací lišta jednořadá 4 pin)

 


vloženo:1.01.2014   aktualizováno:10.04.2015

VU metr - upravené schéma a plošný spoj.

 

Schéma: VUM2x16s_04.sch (703,6 kB)

Díky stabilizátoru 78L05 může být napájecí napětí 7 až 20V.
Potenciometrem P1 nastavíme citlivost analogových vstupů. Čím menší napětí na VREF+, tím je citlivost větší. Doporučuji VREF+ minimálně 200mV pro největší citlivost. Slabý audiosignál je nutné zesílit, například operačním zesilovačem. Pokud bude audiosignál do 5V, nastavte VREF+ na 5V a pomalu ubírejte. Silný audiosignál (>5V) je nutné ztlumit, například trimrem. V žádném případě nesmí být na vstupu (L/R) více než 5V.
Při osazování LED dejte pozor na polaritu, katody (-) jsou uprostřed. Omezovací rezistory R1-R8 určují jas diod. Nejlépe svítí nízkopříkonové LED na 2mA. Pokud použijete jiné diody, můžete omezovací rezistory snížit až na 22 ohm. V tom případě bude také potřeba silnější stabilizátor IC2 7805.

 

Datová paměť EEPROM obsahuje následující parametry:

EEPROM    
adresa data (hex) popis
0 08 33ms, rychlost návratu Bod/Pruh
1 1A 106ms, vrchol Bod/Pruh
2 14 82ms, rychlost sjetí PAM
3 7A 500ms, vrchol PAM
4 96 (FA) KJS konstanta pro LED 2mA (15mA)
5 05 číslo LED, od které začíná paměť špiček

Hodnoty logaritmické tabulky zůstaly stejné jako v původní verzi programu, jenom se přesunuly do programové paměti, počínaje adresou 0x300. Také lineární tabulku jsem přesunul do programové paměti, ta začíná na adrese 0x200.

Program: (PIC16F1827 nebo 47) VUM2x16_06.HEX (2,6 kB)
Hlavička zdrojového kódu: (programovací pojistky) VUM2x16_1827.asm.txt (1,7 kB)

 

Nová data logaritmické tabulky.
Pan Scott mi poslal novou logaritmickou tabulku.

LED číslo A/D převod decibely
1 14 -15
2 20 -12
3 28 -9
4 36 -7
5 45 -5
6 57 -3
7 72 -1
8 90 1
9 113 3
10 127 4
11 143 5
12 160 6
13 180 7
14 202 8
15 226 9
16 254 10

Program: VUM2x16_08_2mA.HEX (5,3 kB) pro LED 2mA
Program: VUM2x16_08_15mA.HEX (5,3 kB) pro LED 15mA
Hlavička zdrojového kódu: (programovací pojistky) VUM2x16_08.asm.txt (2,3 kB)

 

Deska: VUM2x16s_04.brd (96,7 kB)


 Desku prodává www.bucek.name/dps/dpswebnode.dat.htm
pod označením VUM 2.

 

Nastavení jumperů:

JMP rozpojený zkratovaný
B zobrazení pruh zobrazení bod
LI logaritmická stupnice lineární stupnice
VP ZAP paměť špiček VYP paměť špiček
BP vodopád, paměť špiček  bod, paměť špiček

 


Videoukázky:
VUM_08.wmv (4 MB)
VUM_07.wmv (4,8 MB)
 videoukázka na YouTube 
videoukázka na YouTube
videoukázka na YouTube

Vytvořeno službou Webnode