DAC Philipsa - HELP HELP HELP

Witam

mam sobie takiego DACa - TDA1543

formatting link

16bitow, format wejsciowy I2S, wyjscie pradowe, przetwornik I/U zrobilem na najprostszym oporniku 1k, wyjscie Iref tez przez 1k do masy

DACa podlaczylem do AVRka i probuje udawac I2S - czyli 16bitow, zmiana stanu na WS, kolejne 16bitow i tak w kolko na DATA caly czas zero (albo jeden...)

na wyjsciu nie zmienia sie kompletnie NIC :( caly czas dac jest ustawiony w polowie (8000h) czyli ok 3V

z tego co widze w nocie, DAC nie ma zadnych wynalazkow jak cyfrowe filtry itp. powinien dzialac praktycznie przy kazdej czestotliwosci taktowania - probowalem w zakresie 4Mhz ... 200Khz - totalnie nic :( Zachowuje sie tak jakby w ogole nie dostawal danych wejsciowych wejscia sprobowalem tez podlaczyc przez bufor - 74LS04, ale to tez nic nie dalo probowalem przesuwac faze sygnalu WS wzgledem zegara, ale tez bez roznicy

czy grupowi eksperci mogli by przejzec note tego scalaka - moze znajda cos ciekawego co mi umknelo?

mam 6 sztuk, wszystkie nowe i wszystkie zachowuja sie tak samo :( ma ktos pomysl gdzie moze byc haczyk? wiem ze pewnie nikt tego scalaka nigdy nie uzywal w ten sposob, ale kazdy pomysl jest na wage zlota... :(

pzdr i dzieki z gory! mw

Reply to
invalid unparseable
Loading thread data ...

Uwaga na wzajemne polozenie danych i sygnalu left/right. Ostatni bit jest transmitowany po zmianie tego sygnalu a nie od razu jak moznaby sądzic. Moze to jest to.

B.

Reply to
B
Reply to
invalid unparseable

trafilem na

formatting link
babel fish wyplul cos takiego (jedna z odpowiedzi) ale to taki belkot ze trudno cokolwiek zrozumiec.... moze ktos domysli sie o co chodzi? glownie na poczatku (shreds? generil? velveteen?) moze ktos przetlumaczy oryginal?
formatting link
it wore out, it was necessary to make more rapidly, also, without the jitter. Saved that I2S makes it possible to transfer excess shreds, that drop, on which it is loaded the parallel register TSAP (it renews vykhodny current) of generil with the aid of compare, and rest - with the aid of SPI. Mega8 spend on the load of one channel less than 3 s. Thus it managed without VELVETEEN, savings, pancake! Actually the question: TSAP has a conclusion Vref, to which it is necessary to connect resistor to the earth. The rating of this resistor and resistors of load must be selected so that with any code voltage on outputs would be entered in the permissible range. Otherwise output diagrams TSAP leave from the linear conditions, consumption and entire such. Although on the mind it is necessary to place the normal converter of current in the stress on OU. So that the standard diagram from Datasheet- A would work, OU must have bipolar nourishment

Reply to
invalid unparseable
Reply to
Andrzej Sarbinowski

hmm splodzilem cos takiego, na szybko w C - chyba dziala identycznie jak Twoj kod... generuje mi piekne przebiegi, dokladnie takie jak powinny byc, ale DAC nadal milczy :(((

powiedz jak od strony hardwareowej masz podlaczonego DACa - jak zrobiles przetwornik I/U, co z Iref itp.

void wait() { unsigned char i; for(i=0;i!=100;++i); }

void sendi2s(unsigned int l, unsigned int r) { unsigned char i, j;

#define DATA PB2 #define WS PB1 #define CLK PB0 #define O PORTB

DDRB = 0xFF;

cbi(O,CLK); cbi(O,DATA); cbi(O,WS);

j = l >> 8; for(i=0;i!=8;++i) { cbi(O,CLK); if(j & 0x80) sbi(O,DATA); else cbi(O,DATA); j <<= 1; wait(); sbi(O,CLK); wait(); }

j = (unsigned char)l; for(i=0;i!=7;++i) { cbi(O,CLK); if(j & 0x80) sbi(O,DATA); else cbi(O,DATA); j <<= 1; wait(); sbi(O,CLK); wait(); } cbi(O,CLK); sbi(O,WS); if(l & 0x80) sbi(O,DATA); else cbi(O,DATA); j <<= 1; wait(); sbi(O,CLK); wait();

j = r >> 8; for(i=0;i!=8;++i) { cbi(O,CLK); if(j & 0x80) sbi(O,DATA); else cbi(O,DATA); j <<= 1; wait(); sbi(O,CLK); wait(); }

j = (unsigned char)r; for(i=0;i!=7;++i) { cbi(O,CLK); if(j & 0x80) sbi(O,DATA); else cbi(O,DATA); j <<= 1; wait(); sbi(O,CLK); wait(); } cbi(O,CLK); cbi(O,WS); if(l & 0x80) sbi(O,DATA); else cbi(O,DATA); j <<= 1; wait(); sbi(O,CLK); wait(); cbi(O,CLK);

}
Reply to
invalid unparseable

dzieki wszystkim za odpowiedzi

juz sobie poradzilem :) ale problem byl ........ dziwny na zasilaniu byl zwykly kondensator 100nF TDA podlaczylem na plytce experymentalnej z PLD, AVRkiem i innymi szpejami

no i jak sie okazalo szum na zasilaniu skutecznie ukatrupial DACa, tak ze nie reagowal na zadne dane wejsciowe :(

dopiero dolozenie 100uF (!!!) bezposrednio na zasilanie TDA sprawilo ze zaczal dzialc perfekcyjnie :)

pzdr dla wszystkich mw

Reply to
invalid unparseable

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.