599.cz - Homepage 599.cz - Homepage Memorial OK1WC Optimalizováno pro web... Myši umírají v pastích, protože nechápou, proč je ten sýr zdarma.
     Dnes: 18. 06. 2024    spaceweather.com Bouřky v Česku v novém okně Bouřky v Evropě v novém okně Ionogram Průhonice v novém okně Contest calendar WA7BNM v novém okně RSS summary of the last 7 articles    
O   Hlavní menu

 [-] Hlavní stránka

 [-] Zajímavé odkazy

 [-] Download

 [-] Zasílání novinek


O   Seznam rubrik


time.is in new window


Z důvodu zneužívání ke spamování, byla zpětná vazba zrušena

O   Počasí v Holicích
JO70XC


O   VOACAP KV Online

O   VOACAP pro CB
Šíření na CB

PHPRS fórum

<a1>technika, bastleni</a1>

Zpět Pokusy s digitálním potenciometrem

Vydáno dne 30. 08. 2023 (764 přečtení)

MCP41xxx Nějaký čas jsem v mých QRP rádiích používal jako NF zesilovač integrovaný obvod TDA7052A. Jedná se o NF zesilovač v můstkovém zapojení, jehož zesílení se nastavuje stejnosměrným napětím na řídícím vstupu. Průběh je v závislosti na napětí přibližně logaritmický. Tím pádem jsem nepotřeboval logaritmický potenciometr a hlasitost jsem mohl ovládat z jednočipu, nastavením stejnosměrného napětí pomocí PWM.

Doplněno 5.9.2023



Tenhle integrovaný obvod se však již nevyrábí a zdá se že zásoby prodejců došly. Jelikož jsem za něj nenašel náhradu, přemýšlel jsem, jak nastavovat hlasitost bez použití mechanického logaritmického potenciometru.

Jako jedna z možností se jeví použití digitálního potenciometru. Jde o integrovaný obvod, který obsahuje vícestupňový odporový dělič napětí, jehož výstup se nastavuje pomocí nějakého sériového protokolu. Obvykle I2C, nebo SPI. Ten napěťový dělič má obvykle 64, 128 nebo 256 kroků, takže při použití na nastavení hlasitosti jde prakticky o plynulou změnu. Všechny, které jsem objevil, mají "lineární" průběh, což zase pro nastavení hlasitosti není zrovna ideální.

Abych je vyzkoušel, rozhodl jsem se postavit si malý stereofonní zesilovač s obvody LM386, kde na nastavení hlasitosti použiji dvojici MCP41050 (hodnota 50 kΩ, výrobce Microchip) v smd pouzdře SOIC-8. Jako ovládací MCU jsem použil Attiny44. MCP41050 se ovládají pomocí SPI a spotřebují tedy 3 piny jednočipu (pouze do nich posílám data, nepotřebuji je číst).

     
MCP41050 schema
Návrh PCB
MCP41050 Osazený PCB
Schéma zesilovače
Ve vyšším rozlišení.
Návrh DPS Osazená destička
     

Firmware pro Attiny44 jsem napsal v mém oblíbeném Bascom-AVR (verze 2.086). Používá vnitřní RC oscilátor jednočipu 8MHz.

První verze:

V různých diskuzích a článcích na internetu jsem našel, že se lepší průběh hlasitosti s lineárním potenciometrem zajistí připojením pevného odporu velikosti přibližně 1/10 hodnoty potenciometru na výstup mezi běžec a zem.

Hodnoty jsem nastavoval po jedné, tedy 256 kroků (0-255). Zkoušel jsem na běžec potenciometru připojovat různé odpory, ale žádný zázrak to nebyl. Průběh se sice nějak nepatrně měnil, ale nijak mne to nenadchlo.
Naproti tomu nastavení balance (vyvážení stereo) fungovalo docela pěkně. Samozřejmě jen uprostřed rozsahu hlasitosti. Aby to fungovalo rozumně i na okrajích, musel bych použít druhý potenciometr. (Použití pouze jednoho potenciometru zároveň na hlasitost i vyvážení je docela problém :-)

    Využití 4 tlačítek a 3 LED:
  • Bt1: Hlasitost +
  • Bt2: Hlasitost -
  • Bt3: Balance L
  • Bt4: Balance R
  • LED1, LED2: Indikují dosažení krajních hodnot
  • LED3: Zablikáním Indikuje uložení hodnot do Eeprom

Druhá verze:

Nejdříve jsem si vytvořil tabulku (pole) šestnácti hodnot (17 včetně nuly), kdy vždy následující číslo je přibližně 1,41 násobkem předchozí hodnoty. Musel jsem je samozřejmě zaokrouhlit na celá čísla. Do MCP41050 pak posílám data z této tabulky. Takto je regulace hlasitosti mnohem přirozenější. U horního konce rozsahu se mi ale zdály příliš velké skoky v hlasitosti, a tak jsem přidal ještě 3 mezihodnoty, pro jemnější nastavení. Teď má tedy tabulka 20 hodnot včetně nuly.

    Využití tlačítek a LED:
  • Bt1: Hlasitost +
  • Bt2: Hlasitost -
  • Bt3: Mute
  • Bt4: Unmute
  • LED1, LED2: Indikují dosažení krajních hodnot
  • LED3: Zablikáním indikuje uložení hodnot do Eeprom. Trvalý svit indikuje MUTE.

Zdá se, že tento druhý způsob by mohl být ve QRP rádiích docela použitelný. Nevýhoda oproti původnímu řešení s TDA7052A je, že to spotřebuje 3 piny jednočipu, tedy o 2 více.

Doplněno 5.9.2023

Přišlo mi pár dotazů (ano, přeně 2) na program pro Attiny44 a dokumentaci pro plošný spoj, tak jsem oboje uložil jako .zip soubor do sekce DOWNLOAD. Gerber soubory v jednom .zip souboru jsou přesně tak, jak jsem je poslal čínskému výrobci (JLCPCB). Program je pro výše uvedenou druhou verzi. Ještě připomínám, že zdrojový kód je v jazyce pro BASCOM-AVR (Není to .ino pro Arduino). (Zkompilovaný binární kód zabírá v paměti jednočipu asi 37%, tedy cca 1,5kB. Data v Eeprom paměti zabírají přesně 2 bajty.)
    Konfigurační bity souhrnně:
  • Lockbits:FF
  • Fusebits:E2
  • Fusebits High:DC
  • Fusebits Extended:FF

Jarda, OK1HDU


   | Celý článek |      tisk clánku
 

Zpět (klikni)

O   Novinky
07.07.2023:
Update na webu DXFC
Dneska jsem updatoval info na webu DXFC.

05.07.2019:
Update fotoalba
Do fotoalba jsem přidal pár fotografií ze:
Slovinska (červen 2019)
Fotoalbum prozatím zrušeno.

05.12.2018:
Update fotoalba
Do fotoalba jsem přidal pár fotografií ze:
Slovinska (jaro 2018)
a ze:
Suchého Vrchu (zima 2005/2006).
Fotogalerie je prozatím zrušena.

O   kalendář
<<  Červen  >>
PoÚtStČtSoNe
     1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

O   Radary ČHMU

O   Zaparkováno na:

O   TSL certifikát:

PHP Scripting Language MariaDB Apache Web Server

Tento web site byl vytvořen prostřednictvím phpRS - redakčního systému napsaného v PHP jazyce.
Na této stránce použité názvy programových produktů, firem apod. mohou být ochrannými známkami
nebo registrovanými ochrannými známkami příslušných vlastníků.