<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=4&amp;t=8988&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-10-31T01:40:48+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=8988&amp;mode</id>
<entry>
<author><name><![CDATA[borcio992]]></name></author>
<updated>2014-10-31T01:40:48+01:00</updated>
<published>2014-10-31T01:40:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101663#p101663</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101663#p101663"/>
<title type="html"><![CDATA[Re: TDA1543 i Atmega32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101663#p101663"><![CDATA[
<div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br />ok .. tzn nie rozumiem i tak twojego sposobu no ale to nieistotne - może masz jakiś fajny patent. Ja podszedłem do tego inaczej ... I2S generuję czysto programowo w przerwaniu timera z częstotliwością samplowania dźwięku. Daje mi to możliwość zapisu na karcie przy najnormalniejszym zastosowaniu systemu plików FAT z częstotliwościami samplowania do hmmm powiedzmy 10 kHz a tak bez ograniczeń to do ok 8 kHz ... <br /><br />tutaj kiedyś sobie taki projekt popełniłem<br /><br /><!-- m --><a class="postlink" href="http://atnel.pl/avr-wav-player-recorder.html" >http://atnel.pl/avr-wav-player-recorder.html</a><!-- m --><br /></div><br /><br />Daje możliwość zapisu czy odczytu ??<br /><br />Specjalny program do wkładania wavów na procka napiszę sobie który będzie wszystko obsługiwał. <br />Tyle że jest jeden problem... przez który będę musiał zrobić obsługę I2S programowo na innych pinach, bo nie mogę na chwilę zrobić przerwania które skorzysta z interfejsu SPI podczas odczytu danych co mi psuje całą komunikację. <br />Chyba że ktoś wie w którym miejscu mogę sobie pozwolić na przerwanie ?? bo w żadnej nocie katalogowej kart sd nie znalazłem takiej informacji ...<br /><br />Tak to teraz wygląda z drobnymi przeróbkami ze strony wyjścia (AOL i Vref itp.) bo muszę jeszcze płytkę z NE5532 dorobić ale mam ją na prototypowej:<br /><a href="http://forum.atnel.pl/_obrazki/o/6320/0a499fbffbced6f07bab11ced7423565.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/6320/0a499fbffbced6f07bab11ced7423565.png" alt="Obrazek" /></a><br />I mam albo rybki albo akwarium <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /> albo wrzucanie sampli do TDA albo czytanie karty SD<br /><br />---------------------Dodano po iluś tam minutach, godzinach ettecera ------------------------<br />Zoptymalizowałem kod i zszedlem do 2.5ms max z 5ms co najmniej, ale to i tak za długo ... SPI działa na full speedzie podczas odczytywania :&lt; a i tak to nic nie daje<br /><br /><a href="http://forum.atnel.pl/_obrazki/o/6320/672071d3ff594ece5908e69a6247361d.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/6320/672071d3ff594ece5908e69a6247361d.jpg" alt="Obrazek" /></a><br />Tak wygląda dziura ściągania 512 bajtów z karty SD<br /><br /><div style="width: 583px; height: 471px; margin: 0 auto; padding-left: 26px; padding-top: 48px; background: url('https://www.atnel.pl/download/atnel_tv.png') no-repeat;"> <strong>iframe</strong> </div><br />Melodia jest taka sama jak od 29 sekundy tego:<br /><!-- m --><a class="postlink" href="https://www.youtube.com/watch?v=IuEOxRQ5SyU" >https://www.youtube.com/watch?v=IuEOxRQ5SyU</a><!-- m --><br /><br />To jest 8 bitów i są kłopoty a co dopiero przy 16 :3<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6320">borcio992</a> — 31 paź 2014, o 01:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-10-31T01:32:55+01:00</updated>
<published>2014-10-31T01:32:55+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101661#p101661</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101661#p101661"/>
<title type="html"><![CDATA[Re: TDA1543 i Atmega32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101661#p101661"><![CDATA[
ok .. tzn nie rozumiem i tak twojego sposobu no ale to nieistotne - może masz jakiś fajny patent. Ja podszedłem do tego inaczej ... I2S generuję czysto programowo w przerwaniu timera z częstotliwością samplowania dźwięku. Daje mi to możliwość zapisu na karcie przy najnormalniejszym zastosowaniu systemu plików FAT z częstotliwościami samplowania do hmmm powiedzmy 10 kHz a tak bez ograniczeń to do ok 8 kHz ... <br /><br />tutaj kiedyś sobie taki projekt popełniłem<br /><br /><!-- m --><a class="postlink" href="http://atnel.pl/avr-wav-player-recorder.html" >http://atnel.pl/avr-wav-player-recorder.html</a><!-- m --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 31 paź 2014, o 01:32</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[borcio992]]></name></author>
<updated>2014-10-31T01:13:00+01:00</updated>
<published>2014-10-31T01:13:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101658#p101658</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101658#p101658"/>
<title type="html"><![CDATA[Re: TDA1543 i Atmega32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101658#p101658"><![CDATA[
<div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br /><div class="quotetitle">borcio992 napisał(a):</div><div class="quotecontent">Robię przesunięcie bitowe i zapamiętuje ten bit i cała transmisja jest przesunięta o 1 bit<br /></div><br />Nie widzę za bardzo jak to robisz - ale czy nie tracisz w tym momencie cennego czasu ?</div><br /><br />Panie Mirku jak wszystko będzie działać będę zapisywał od razu przygotowane dane (przesunięte) na karcie SD, zapis i odczyt mam zrobiony taki łopatologiczny beż żadnych FS na karcie, czas odczytu 512 bajtów (wrzucenia ich do tablicy zmiennych) to 5 ms ... trochę za długo. 5 ms to 220 sampli ominiętych dla odczytania 512 sampli więc robi się w sumie spora dziura.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6320">borcio992</a> — 31 paź 2014, o 01:13</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-10-31T01:04:23+01:00</updated>
<published>2014-10-31T01:04:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101657#p101657</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101657#p101657"/>
<title type="html"><![CDATA[Re: TDA1543 i Atmega32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101657#p101657"><![CDATA[
<div class="quotetitle">borcio992 napisał(a):</div><div class="quotecontent"><br />Robię przesunięcie bitowe i zapamiętuje ten bit i cała transmisja jest przesunięta o 1 bit<br /></div><br />Nie widzę za bardzo jak to robisz - ale czy nie tracisz w tym momencie cennego czasu ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 31 paź 2014, o 01:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[borcio992]]></name></author>
<updated>2014-10-31T00:23:06+01:00</updated>
<published>2014-10-31T00:23:06+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101655#p101655</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101655#p101655"/>
<title type="html"><![CDATA[Re: TDA1543 i Atmega32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101655#p101655"><![CDATA[
<div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br />ale po SPI sprzętowym nie zrobisz panie kochany transmisji danych I2S i tu masz ZONK'a .... bo przełączanie sygnału WS musi następować na jeden bit przed końcem bajtu z tego co pamiętam .... więc jak chcesz to zrobić przy sprzętowym SPI ? hmmm ?<br /></div><br />Robię przesunięcie bitowe i zapamiętuje ten bit i cała transmisja jest przesunięta o 1 bit. Clock do TDA odcinam tranzystorem z pozytywnym skutkiem (takie emulowane &quot;chip select&quot;)<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6320">borcio992</a> — 31 paź 2014, o 00:23</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-10-31T00:13:39+01:00</updated>
<published>2014-10-31T00:13:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101654#p101654</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101654#p101654"/>
<title type="html"><![CDATA[Re: TDA1543 i Atmega32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101654#p101654"><![CDATA[
ale po SPI sprzętowym nie zrobisz panie kochany transmisji danych I2S i tu masz ZONK'a .... bo przełączanie sygnału WS musi następować na jeden bit przed końcem bajtu z tego co pamiętam .... więc jak chcesz to zrobić przy sprzętowym SPI ? hmmm ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 31 paź 2014, o 00:13</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[borcio992]]></name></author>
<updated>2014-10-31T00:07:15+01:00</updated>
<published>2014-10-31T00:07:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101653#p101653</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101653#p101653"/>
<title type="html"><![CDATA[Re: TDA1543 i Atmega32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101653#p101653"><![CDATA[
<div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br />Skoro piszesz, że pin WS to wyjście z tego scalaka - to powiedz mi w jaki sposób przełączasz wysyłanie danych do lewego i prawego kanału ? Zaglądałeś w ogóle do noty PDF TDA1543? ... czy może mówisz o całkiem innym scalaku ?<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 3 minutach ]</span></strong><br /><br />Poza tym że jednak traktujesz w kodzie WS jako wejście - więc dobrze <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> pewnie to twoja literówka<br /><br />Nie mniej jednak zajrzyj do noty PDF i zobacz DOKŁADNIE jak albo precyzyjniej, KIEDY należy przełączać sygnałem WS dane pomiędzy kanałem lewym i prawym ... bo na pewno robisz to teraz źle <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /><br /></div><br /><br />Przesunąłem bajt w prawo o 1 miejsce i zaczęło grać z wielkimi szumami, ale słychać melodię lekko i myślę że to jest spowodowane asynchronicznym wysyłaniem danych przez UART'a więc zacząłem pisać obsługę odczytu karty SD ale utknąłem :/. 5ms trwa odczyt 512 bajtów z karty SD, tworzy to sporą dziurę w podawaniu sampli. <br />Jest jakaś możliwość szybkiego czytania z kart pamięci ??. Fifo bym zrobił ale jest problem że mam wszystko na SPI, kartę SD jak i TDA więc odrywając się na chwilę od odczytywania karty by wysłać sample do TDA wiąże się z rozsypaniem transmisji z kartą SD.<br /><br />Będę musiał chyba wyjść z TDA programowo na porty ...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6320">borcio992</a> — 31 paź 2014, o 00:07</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-10-28T06:26:44+01:00</updated>
<published>2014-10-28T06:26:44+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101152#p101152</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101152#p101152"/>
<title type="html"><![CDATA[Re: TDA1543 i Atmega32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101152#p101152"><![CDATA[
Skoro piszesz, że pin WS to wyjście z tego scalaka - to powiedz mi w jaki sposób przełączasz wysyłanie danych do lewego i prawego kanału ? Zaglądałeś w ogóle do noty PDF TDA1543? ... czy może mówisz o całkiem innym scalaku ?<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 3 minutach ]</span></strong><br /><br />Poza tym że jednak traktujesz w kodzie WS jako wejście - więc dobrze <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> pewnie to twoja literówka<br /><br />Nie mniej jednak zajrzyj do noty PDF i zobacz DOKŁADNIE jak albo precyzyjniej, KIEDY należy przełączać sygnałem WS dane pomiędzy kanałem lewym i prawym ... bo na pewno robisz to teraz źle <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 28 paź 2014, o 06:26</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[borcio992]]></name></author>
<updated>2014-10-28T01:51:45+01:00</updated>
<published>2014-10-28T01:51:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101148#p101148</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101148#p101148"/>
<title type="html"><![CDATA[Re: TDA1543 i Atmega32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101148#p101148"><![CDATA[
<div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br /><div class="quotetitle">borcio992 napisał(a):</div><div class="quotecontent">a DAC_WS jako pin output do procesora.<br /></div><br />A ten pin to jest WYJŚCIE z tego scalaka ?</div><br /><br />Tak<br />[syntax=c]DDRC |= 1&lt;&lt;PC2; // PC2 od DAC_WS[/syntax]<br /><br />Właśnie gdzieś doczytałem że ten scalak w U2 jedzie może w tym jest problem ... <br />Ma ktoś może jakiś testowy pewny program tworzący sinusa??<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6320">borcio992</a> — 28 paź 2014, o 01:51</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-10-28T00:58:26+01:00</updated>
<published>2014-10-28T00:58:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101145#p101145</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101145#p101145"/>
<title type="html"><![CDATA[Re: TDA1543 i Atmega32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101145#p101145"><![CDATA[
<div class="quotetitle">borcio992 napisał(a):</div><div class="quotecontent"><br />a DAC_WS jako pin output do procesora.<br /></div><br />A ten pin to jest WYJŚCIE z tego scalaka ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 28 paź 2014, o 00:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[borcio992]]></name></author>
<updated>2014-10-28T00:16:00+01:00</updated>
<published>2014-10-28T00:16:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101144#p101144</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101144#p101144"/>
<title type="html"><![CDATA[TDA1543 i Atmega32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8988&amp;p=101144#p101144"><![CDATA[
Witam <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />Bawię się przetwornikiem TDA1543 na razie testuję jego działanie. <br />Mam mianowicie taki problem iż nie wiem czemu, ale przy wysyłaniu danych od 0 do 255 (8 bitowych) w pewnym momencie ucina mi sygnał i tak jakby się nie mógł zmieścić w zakresie Vpp i zostaje przeniesiony bezsensownie. Można jakoś zwiększyć zakres w jakim napięcie wyjściowe wychodzi z przetwornika ?<br /><a href="http://forum.atnel.pl/_obrazki/o/6320/4e5565b13434e126f6c269c0219170b2.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/6320/4e5565b13434e126f6c269c0219170b2.jpg" alt="Obrazek" /></a><br /><br />I nie wiem czy to jest wina złego doboru elementów czy programu??<br /><a href="http://forum.atnel.pl/_obrazki/o/6320/4feb9643e4d8f4fc8ec6873d997c901e.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/6320/4feb9643e4d8f4fc8ec6873d997c901e.jpg" alt="Obrazek" /></a><br />SCK i MOSI naturalnie idą do SPI a DAC_WS jako pin output do procesora.<br />Całość taktuje 20MHz kwarcem.<br /><br />[syntax=c]while(1) {<br />    for ( uint8_t i = 0; i &lt; 8; i++ )<br />      {<br />        #define RR 256<br />        #define BB 128<br />        for ( uint16_t n = BB - RR/2; n &lt; BB + RR/2; n += 32 )<br />        Send8SPI(n);<br />        for ( uint16_t n = BB + RR/2; n &gt; BB - RR/2; n -= 32 )<br />        Send8SPI(n);<br />      }<br />}[/syntax]<br /><br />A funkcja Send8SPI jest następująca:<br /><br />[syntax=c]uint8_t SPI_Send(uint8_t bajt) {<br />SPDR = bajt;<br />while(!(SPSR &amp; (1&lt;&lt;SPIF)));<br />return SPDR;<br />}<br /><br />static void Send8SPI(uint8_t t) {<br />SPI_Send(t);<br />PORTC &amp;= ~(1&lt;&lt;PC2);<br />SPI_Send(t);<br />    PORTC |= 1&lt;&lt;PC2;<br />}[/syntax]<br /><br />Przy mniejszych wartości RR(32) wychodzi piła wg. mnie 'w miarę'<br /><a href="http://forum.atnel.pl/_obrazki/o/6320/4229cf7bec3948286ee0a8e8b8bda3ea.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/6320/4229cf7bec3948286ee0a8e8b8bda3ea.jpg" alt="Obrazek" /></a><br /><br />Co może być przyczyną ??<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6320">borcio992</a> — 28 paź 2014, o 00:16</p><hr />
]]></content>
</entry>
</feed>