Zrobiłem taką drabinkę na opornikach 2k i 1k, poustawiałem je od najmniejszych do największych kolejno dla MSB do LSB . I tak nic z tego nie wyszło. Więc jaka jest tolerancja wartości tych oporników w drabince? Bo wydaje mi się to niewykonalne. Miało być niby łatwiej niż dla drabinki 1R,2R,4R,8R itd. ale widzę że po prostu chyba to jakieś mity że to się daje zrobić. Robił ktoś taką drabinkę?
spokojnie może być 2k i 1k . 2k powoduje max obciążenie 20mA łącznie 8 pinów, co można spokojnie uzyskać nawet na jednej nóżce
dzielnik w proporcji 1:5 i idzie do wzmacniacza który działa, żeby nie było wątpliwości, sprawdzony na muzyce z chincha
dobrze, źródło Kulka
te oporniki sa 1% ale nic z tego nie wychodzi. Mogę jeszcze sprawdzić program ale jest tak prosty że najtrudniejszą częścią która działa na
1000% był odczyt z eepromu, dalej wywalenie bajtu na port po prostu musi działać. Szczególnie że program jest krótki, daje siesłyszeć część dźwięku. Chyba skombinuje ten oscyloskop
Nic nie wychodzi = nie zasilasz ukladu ?! wez w koncu powiedz (lub sie dowiedz) co ci nie dziala, to bedzie mozna myslec, a nie "nie wychodzi" i badz tu madry
Wystarczyloby pomyslec 2 minuty, i miec woltomierz, a nie wymyslac problemy. Napisz sobie soft ktory daje odpowiednie bajty na wyjscie - po kolei od
0 do 255 (co 5s increment) i podlacz woltomierz i sprawdz czy napiecia sie zgadzaja, czy ida po kolei w gore, czy przy ktoryms kroku nie ma 'dolka' - jak jest, to znaczy ze zdupiles cos innego. Do tego co robisz w 100% wystarczy dowolna karta dzwiekowa i programik, np truerta (google!), wygeneruj na wyjsciu przebieg trojkatny (liniowa inkrementacja 0 > 255 > 0 i tak w kolko) i powinien byc liniowy, z drobniutkimi schodkami (jeden schodek to 0.004 napiecia maks, wiec prawie go nie widac)
Dawno temu zrobiło się "COVOXa". Kolejne rezystory nie były nawet dokładnie równe kolejnym potęgom 2. Ale działało i brzmiało całkiem ok. (jak na 8 bitowy DAC)
To była jedna z tych rzeczy po której człowiek czuł się ekstra - niedrogie ale tak efektywne...
Robiłem taki przetwornik na AVR, dawałem 1k/1k+1k 5% i było wszystko ok. Tzn. na ucho nie dawało się usłyszeć nieliniowości przetwornika.
Właśnie to wywalenie na port bajtu "po prostu" może nie działać. Jeśli masz porobione jakieś sample z PC, to zapewne zapisane są one w formacie U2, tzn.:
0x80 - połowa zakresu (znaczy 0 - brak sygnału, składowa stała na połowie Vcc procesora),
0xFF - maksimum (+Ua),
0x00 - minimum (-Ua).
Żeby zamienić jedno na drugie, to najprościej po pobraniu z eepromu a przed wysłaniem na port zanegować najstarszy bit (w C to by było dana=dana^0x80;). Powinno być dużo lepiej :). No chyba że problem tkwi gdzie indziej, ale raczej wątpię....
No coz - zabezpiecza to przed bledami monotonicznosci, ale nieliniowosci pozostaja. Jesli juz to na MSB dajesz rezystory najdokladniesze, a w LSB sa mniej istotne ..
Bedzie troche piszczec, i powinienes dane przepuscic przez filtr antyaliasowy.
żadnych danych nie mam na ten temat z pdfa do tego pica, więc przy obciążeniu <12 razy maksymalnego nie powinno byc jakiegokolwiek spadku skoro maksymalny prąd to 25mA
no nie gra nic tylko jak "krókofalówka" ze śladowymi śladami dźwięku
Nieprawda. Wyjście takiego przetwornika może być obciążone dowolną rezystancją (od 0 do oo). W idealnym przypadku rezystancja wyjściowa takiego przetwornika jest niezależna od słowa sterującego i liniowa (wynosi R), więc na wyjściu można dać zarówno wtórnik napięciowy jak i przetwornik prąd-napięcie.
Nie wiem jaka rozdzielczosc chcesz uzyskac, ale budowanie drabinek >8 bitow jest bezsensowne przyz tolerancjach rezystorow dostepnych w handlu (>0.1%)
Powinno byc napisane na rezystorze, lub podane przez producenta. Rezystory ceramiczne SMD maja zwykle tolerancje 1%, weglowe przewlekane nawet 5%, metalizowane - nawet tylko 0.1%. Sprawdz.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.