DAC Philipsa - HELP HELP HELP
Masz problem? Zapytaj na forum elektroda.pl
From: "Michał Wysocki" <mwsoft_at_nospam_satkabel.com.pl>
Subject: DAC Philipsa - HELP HELP HELP
Date: Fri, 30 Apr 2004 18:14:17 +0200
Witam
mam sobie takiego DACa - TDA1543
http://boss.iele.polsl.gliwice.pl/data/Philips/docs/tda1543.pdf
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
========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.task.gda.pl!not-for-mai
From: B <bz_at_nospam_onet.pl>
Subject: Re: DAC Philipsa - HELP HELP HELP
Date: Fri, 30 Apr 2004 20:50:34 +0200
"Michał Wysocki" wrote:
Witam
mam sobie takiego DACa - TDA1543
http://boss.iele.polsl.gliwice.pl/data/Philips/docs/tda1543.pdf
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.
========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!opal.futuro.pl!news.infinity.net.pl!news.npnet.org!news.vectranet.pl!news.wlb.vectranet.pl!not-for-mai
From: "Michał Wysocki" <mwsoft_at_nospam_satkabel.com.pl>
Subject: Re: DAC Philipsa - HELP HELP HELP
Date: Fri, 30 Apr 2004 21:04:13 +0200
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.
dzieki, ale wiem..... wysylam albo same 0 albo same 1 - wtedy to nie ma znaczenia, a na wyjsciu i tak nic sie nie zmienia :(
jakies inne pomysly? brak mi juz sil :(
========
Path: news-archive.icm.edu.pl!news2.icm.edu.pl!opal.futuro.pl!news.infinity.net.pl!news.npnet.org!news.vectranet.pl!news.wlb.vectranet.pl!not-for-mai
From: "Michał Wysocki" <mwsoft_at_nospam_satkabel.com.pl>
Subject: Re: DAC Philipsa - HELP HELP HELP
Date: Sat, 1 May 2004 00:08:46 +0200
jakies inne pomysly? brak mi juz sil :(
trafilem na
http://www.telesys.ru/wwwboards/fpga/65 messages23844.shtml
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? (http://www.telesys.ru/wwwboards/fpga/65 messages23853.shtml)
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
========
Path: news-archive.icm.edu.pl!news2.icm.edu.pl!mimuw.edu.pl!news.mimuw.edu.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mai
From: amsNO_SPAM_at_nospam_e7.pl (Andrzej Sarbinowski)
Subject: Re: DAC Philipsa - HELP HELP HELP
Date: Sat, 01 May 2004 06:03:58 GMT
On Fri, 30 Apr 2004 18:14:17 +0200, "Michał Wysocki"
<mwsoft_at_nospam_satkabel.com.pl> wrote:
Witam
mam sobie takiego DACa - TDA1543
http://boss.iele.polsl.gliwice.pl/data/Philips/docs/tda1543.pdf
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...)
Czesc !
Kiedys opanowywalem tego scalaka wiec podziele sie tym co napisalem,
Program napisany dla 8051 dla obslugi TDA1543 - D/A 2x16 bit :
procedura dziala poprawnie na 100 %.
Porownaj ten kod ze swoim, jak chcesz to podesle schemacik jak to-to
jest popodlaczane na priv.
Pozdrawiam :
Andrzej Sarbinowski
PS: Przepraszam ze wale zrodla na liste, ale nie sa zbyt dlugie, a
moze komus jeszcze sie przydadza : a widze ze temat sie raz poraz
pojawia na liscie.
; Plik i2s.asm
PUBLIC SendI2S
$DEFFN SendI2S(0,0,0,0,0,4,0,0)
EXTERN _R
I2SWR EQU P1.1
I2SCL EQU P1.2
I2SDA EQU P1.3
RSEG CODE
macro %W10us
MOV R5,#4
DJNZ R5,$
endmac
SendI2S: MOV R0,#$LOCBI SendI2S
MOV _at_nospam_R0,_R+6
INC R0
MOV _at_nospam_R0,_R+7
MOV R0,#$LOCBI SendI2S
MOV A,_at_nospam_R0
XRL A,#80h
CLR KTORYKAN
LCALL SendI2SB
MOV R0,#$LOCBI SendI2S+1
MOV A,_at_nospam_R0
CLR KTORYKAN
LCALL SendI2SB
MOV A,#0
SETB KTORYKAN
LCALL SendI2SB
MOV R0,#$LOCBI SendI2S+2
MOV A,_at_nospam_R0
XRL A,#80h
SETB KTORYKAN
LCALL SendI2SB
MOV R0,#$LOCBI SendI2S+3
MOV A,_at_nospam_R0
SETB KTORYKAN
LCALL SendI2SB
MOV A,#0
CLR KTORYKAN
LCALL SendI2SB
RET
SendI2SB: MOV R7,#7
NastBIT: RLC A
MOV I2SDA,C
%W10us
SETB I2SCL
%W10us
CLR I2SCL
DJNZ R7,NastBIT
RLC A
MOV I2SDA,C
MOV C,KTORYKAN
MOV I2SWR,C
%W10us
SETB I2SCL
%W10us
CLR I2SCL
RET
RSEG BITVARS
KTORYKAN DS 1
END
/* Plik przyklad.c */
typedef unsigned char byte;
typedef unsigned int word;
extern void SendI2S(word,word);
void init_I2S(void);
void main(void)
{ word KanalL,KanalP;
init_I2S();
do
{
/* ........ */
SendI2S(KanalL,KanalP);
} while(1);
}
void init_I2S(void)
{ SendI2S(0,0);
SendI2S(0,0);
}
========
Path: news-archive.icm.edu.pl!news2.icm.edu.pl!opal.futuro.pl!news.infinity.net.pl!news.npnet.org!news.vectranet.pl!news.wlb.vectranet.pl!not-for-mai
From: "Michał Wysocki" <mwsoft_at_nospam_satkabel.com.pl>
Subject: Re: DAC Philipsa - HELP HELP HELP
Date: Sat, 1 May 2004 13:26:43 +0200
PS: Przepraszam ze wale zrodla na liste, ale nie sa zbyt dlugie, a
moze komus jeszcze sie przydadza : a widze ze temat sie raz poraz
pojawia na liscie.
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);
}
========
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mai
From: "megaraptor" <megaraptor_at_nospam_wp.pl>
Subject: Re: DAC Philipsa - HELP HELP HELP
Date: Sat, 1 May 2004 10:25:36 +0200
mam sobie takiego DACa - TDA1543
http://boss.iele.polsl.gliwice.pl/data/Philips/docs/tda1543.pdf
16bitow, format wejsciowy I2S, wyjscie pradowe, przetwornik I/U zrobilem
na najprostszym oporniku 1k, wyjscie Iref tez przez 1k do
masy
A próbowałeś ten rezystor podczepić nie do masy tylko do zasilania ?
Pzdr
megaraptor
========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.vectranet.pl!news.wlb.vectranet.pl!not-for-mai
From: "Michał Wysocki" <mwsoft_at_nospam_satkabel.com.pl>
Subject: Re: DAC Philipsa - HELP HELP HELP
Date: Sat, 1 May 2004 14:41:53 +0200
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
========
Path: news-archive.icm.edu.pl!news2.icm.edu.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mai