D/A prevodnik

Zdravim;
Potreboval by som z digitalneho signalu spravit analogovy. Nema niekto nejaku schemu? Pomohla by mi i schema nejakeho regulovatelneho zdroja riadena mikroprocesorom. dik

Ahoj
Se stavbou D/A převodníku z diskrétních součástek bys sis dal hodně práce a výsledek by nebyl moc uspokojivý. Vždyť dnes se stačí podívat do katalogu součástek a najdeš tam stovky D/A převodníků integrovaných v čipu. Jestli chceš, tak mi napiš co od D/A převodníků požaduješ a já se ti podívám. Nejčastější parametry jsou asi tyto:

  • Cena
  • Spotřeba
  • Rychlost
  • Počet bitů
  • Výstupní proud
  • Architektura (je jich přibližně 5, nebudu rozepisovat)

Co myslíš tím zdrojem řízeným mikroprocesorem? Pokud to chápu správně, tak chceš nějaký digitálně řízený zdroj?
Na co tento zdroj potřebuješ?

Mam spraveny regulovany zdroj s potenciometrami. Miesto nich by som chcel regulovat prud a napätie cez tlacitka a pridat display.

Tak to nechceš digitální zdroj, ale zdroj s digitálním ovládáním / zobrazením. Digitální zdroj znamená, že výstup proudu / napětí je řízeno digitálně. Kvalitní digitální zdroj neseženeš pod 10 000 Kč.

Já osobně mám raději pro ovládání jednoduššího zdroje 10-ti otáčkové potenciometry než tlačítka. Tlačítka preferuji až u impulzních generátorů. Ale to je samozřejmě jen můj názor.

Pochybuji, že ti tu někdo vloží návod na stavbu celkem složitého zdroje. Spíše bych ti doporučil si návod najít někde v amatérských rádiích. Vyhledat článek v AMARU můžeš i na webu - aradio.cz/obsah05.html.

Miesto D/A prevodnika by som tam mohol dat nejaky elektronicky potenciometer. Ja by som chcel vlastne miesto toho stareho mechanickeho pouzit digitalny, alebo nieco co by mi regulovalo napätie na baze vystupnych tranzistorov zdroja. Ten display by mi ukazoval len nastavenu hodnotu tlacitkami a nie skutocnu hodnotu na vystupe.

To jsi měl říci rovnou, že ten DA převodník chceš z důvodu stavby toho zdroje.

Myslím, že bude opravdu jednodušší, než něco vymýšlet, to najít již vymyšlené. Vždy už to někdo vymyslel před tebou :wink:.

Nemohli by ste mi poradit nejaky d/a. Na nete som videl len same a/d, a ked som uz nasiel tak to bol nejaky drahsi na nastavenie hlasitosti. Mne by stacilo len nieco jednoduche. Napätie by som chcel regulovat po 0,5V ale moze byt aj 1,5V. Zdroj je od 1,5V az do 16V.

Omlouvám se, že odpovídám až dnes.

Nejsem si jistý, jak ho chceš zapojit, ale pokud chceš levný D/A:

DAC0832 (přesný 8-bit do 100 Kč)
TC1320 (8-bit do 50 Kč)
TLC7524 (8-bit do 50 Kč)

Celkom sa mi pozdava ten TC1320, ale neviem ci by som s nim vedel komunikovat. Pouziva zbernicu I2C a stou nemam žiadne skusenosti.
Ospravedlnovat sa nemusis, ved boli sviatky (vsetko najlepsie v novom roku) a k tomu je to len na tvojej dobrej vôli že mi tu odpovedáš. :laughing:

Děkuji za přání nového roku. Taktéž přeji zdraví, pohodu a mnoho úspěchů v tomto roce.

Pamatuji si, že jsi v nějakém jiném topicu psal, že si kupuješ knížky k Microchipu. Tam není nic o I2C?

V tej knižke niečo je. Veľmi som sa tomu nevenoval, lebo väčšinou tam su popísané registri a ich funkcie. Je to kniha pre 16f87x. Ja mam 16f628A a ta I2C vo funkciách nemá.

Tak to ti asi nezbude nic jiného, než vyměnit mikropočítač (například za PIC16F876A) nebo zamýšlený D/A převodník.

Dal by som do pozornosti, ze I2C sa da jednoducho naprogramovat. Prezrite si priebeh signalov na I2C, su velmi podrobne popisane skoro v kazdom popise I2C. SW emulacia I2C bude asi sice o nieco pomalsia ako HW rozhranie, ale na dany ucel to vidim rychlost ako nie uplne podstatnu vlastnost I2C procesora - kontrolera.

Jednoduchy popis - treba zabezpecit casove oneskorenie medzi jednotlivymi bodmi podla predpisu tej ktorej suciastky, standart pre I2C je 100kHz, t.j. daj medzi jednotlive kroky casovu pauzu podla katalogoveho listu tej ktorej suciastky, napr. 10us:

  1. SDA = H, SCL = H

  2. SDA = L, SCL = H // start sekvencia

  3. SDA = L, SCL = L

  4. SDA = 7.b, SCL = L

  5. SDA = 7.b, SCL = H // zapis MSB bitu adresy

  6. SDA = 7.b, SCL = L

  7. SDA = 6.b, SCL = L

  8. SDA = 6.b, SCL = H

  9. SDA = 6.b, SCL = L

  10. SDA = 5.b, SCL = L

  11. SDA = 5.b, SCL = H

  12. SDA = 5.b, SCL = L

  13. SDA = 4.b, SCL = L

  14. SDA = 4.b, SCL = H

  15. SDA = 4.b, SCL = L

  16. SDA = 3.b, SCL = L

  17. SDA = 3.b, SCL = H

  18. SDA = 3.b, SCL = L

  19. SDA = 2.b, SCL = L

  20. SDA = 2.b, SCL = H

  21. SDA = 2.b, SCL = L

  22. SDA = 1.b, SCL = L

  23. SDA = 1.b, SCL = H

  24. SDA = 1.b, SCL = L

  25. SDA = 0.b, SCL = L // pri prvom bajte do I2C suciastky tu bude hodnota RD/WR podla potreby

  26. SDA = 0.b, SCL = H

  27. SDA = 0.b, SCL = L

  28. SDA = H, SCL = L

  29. SDA = H, SCL = H // po nastaveni nacitaj hodnotu ACK

  30. SDA = H, SCL = L

potom opakuj bod 4 az 28 podla toho, kolko bajtov potrebujes poslat do suciastky. Ak potrebujes zo suciastky nacitat hodnotu bitu, nastava SDA ako Bin a po nahodeni SCL do H, po chvili nacitaj hodnotu pinu SDA (alebo napriklad pred zhodenim SCL do L)

Velmi jednoduche a plne funkcne. Nie je nevyhnutne vzdy pouzit procesor s HW I2C rozhranim. Pozor na to, ze ACK generuje zariadenie, ktore prijima data, takze pri nacitani je to procesor, aj ked prave on generuje SCL.

Na zaver komunikacie (po poslednom ACK) nezabudni generovat sekvenciu

SDA = L, SCL = L
SDA = L, SCL = H
SDA = H, SCL = H // stop sekvencia

To co som vyssie uviedol sa da samozrejme optimalizovat, napriklad vynechanim kroku 4., 7. atd, ale rozpisal som to tu z didaktickych dovodov, aby bol a jasna suvoslost medzi SDA a SCL.

Martin

:arrow_right: administrator: předchozí příspěvek byl upraven
Upravil jsem příspěvek, ať se v něm nezobrazují smajlící tam, kde nemají.

Opravdu pěkný návod :slight_smile:.

Dakujem adminovi za upravu, inak naozaj pekny pstros. Kto si ho pletie s mysou, mal by asi viac sledovat kanal discovery, pripadne navstivit miestnu ZOO. :smiley:
A velmi sa mi paci, ze tento pstros nepcha hlavu do piesku, ale sa snazi svojou pracou pomoct komunite procesorov a inej elektronike chtivych.

Do popisu sa mi vludila mensia nepresnost, tak sa to tu snazim napravit:

ak ocakavam ACK (body 28,29 a 30), SDA musi byt nastavene ako Bin, pri velkej casti MCU nebude stacit nastavit ho do H. To plati asi len pre staru dobru x51. Ako som u uviedol, nastavenie SDA ako Bin sa tyka i pri nacitani bitov zo zariadenia.

Martin

Děkuji.
Komunitě chtivých procesorů a elektroniky ale nejvíce pomáhají lidé jako jsi ty - ti co jsou ochotni poradit a napsat do fóra.

Chyběl tu někdo se specializací na ATmega. Většina z nás jsou nadšenci do Microchipu. Nechceš se zaregistrovat? Dal bych ti nějaký rank jako “ATmega specialist”. Navíc bys mohl upravovat své předchozí příspěvky a samozřejmě by ses nemusel přihlašovat - cookies v prohlížeči to za tebe vyřeší.

Dakujem za ponuku, prave som sa zaregistroval a cakam na email.

Urcite sa ani nahodou nepokladam za specialitu na Atmega, ale ked budem nieco vediet, velmi rad sa podelim s mojimi skusenostami. Rovnako sa rad dozviem zaujimavosti a novinky zo sveta inych procesorovych komunit, lebo ako sa hovori " jedno akej farby pleti je tvoj procesor, z kremiku je a na kremik sa obrati" :slight_smile: