<?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=3&amp;t=17082&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2017-01-11T21:56:35+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=3&amp;t=17082&amp;mode</id>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2017-01-11T21:56:35+01:00</updated>
<published>2017-01-11T21:56:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179662#p179662</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179662#p179662"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179662#p179662"><![CDATA[
daj sobie spokój na razie z SPI2X<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 11 sty 2017, o 21:56</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kolka47]]></name></author>
<updated>2017-01-11T21:25:34+01:00</updated>
<published>2017-01-11T21:25:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179661#p179661</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179661#p179661"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179661#p179661"><![CDATA[
Po wczytywaniu się w notę katalogową udało mi się wykombinować coś takiego:<br />[syntax=c]#define XCK PB0 //sck<br />#define TXD PD1//mosi<br />#define RXD PD0 //miso<br />#define CS PB4[/syntax]<br />Najpierw definiowałem odpowiadające SPI dla USART0. W nocie nie ma pinu CS dla USART w trybie MSPI więc pozostawiłem taki jak był. <br />Teraz inicjalizacja USART'u:<br />[syntax=c]DDRB |= (1&lt;&lt;CS);<br />DDRD |= (1&lt;&lt;TXD)|(XCK);<br />PORTB |= (1&lt;&lt;CS);<br />UCSR0C |= (1&lt;&lt;UMSEL01)|(1&lt;&lt;UMSEL00)|(0&lt;&lt;UCPHA0)|(0&lt;&lt;UCPOL0); //inicjalizacja usart w mspi mode<br />UCSR0B = (1&lt;&lt;RXEN0)|(1&lt;&lt;TXEN0);<br />/*SPSR |= (1&lt;&lt;SPI2X); masymalny zegar SCK*/[/syntax]<br />W rejestrze UCSR0C inicjalizowany jest tryb MSPI, a w rejestrze UCSR0B włączany jest &quot;odbiornik i transmiter&quot;. Nie wiem teraz, który rejestr odpowiedzialny jest ustawienie zegara SCK taki jak w SPI był SPSR. <br />Czy taki sposób rozumowania jest poprawny, czy wszystko co tu napisałem jest błędne, bo jak nie to chyba temu nie podołam?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14902">Kolka47</a> — 11 sty 2017, o 21:25</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2017-01-11T18:28:29+01:00</updated>
<published>2017-01-11T18:28:29+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179647#p179647</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179647#p179647"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179647#p179647"><![CDATA[
<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Czyli wymagałoby to przerobienia całej biblioteki PetitFs?<br /></div><br />Żart <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> ... Ta biblioteka jest PRZEŚLICZNIE napisana .... przepięknie ma oddzieloną warstwę abstrakcyjną od sprzętowej, dzięki czemu zmian trzeba byłoby dokonać niewiele i tylko zdaje się w jednym pliku w folderze biblioteki <br /><br /><div class="quotetitle">Kolka47 napisał(a):</div><div class="quotecontent"><br />W jaki sposób można użyć USART w trybie SPI<br /></div><br />Zajrzyj do byle pierwszej noty dowolnego AVR ale z tych nowszych typu m88 ale maszt też w swojej nocie m1284 . Przecież jest CAŁKIEM ODDZIELNY rozdział w nocie PDF &quot;USART in SPI mode&quot; Różnica sprowadza się do tego, że innych rejestrów używa się do konfiguracji i obsługi SPI <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> tzn rejestrów od modułu USART ...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 11 sty 2017, o 18:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kolka47]]></name></author>
<updated>2017-01-11T17:55:14+01:00</updated>
<published>2017-01-11T17:55:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179645#p179645</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179645#p179645"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179645#p179645"><![CDATA[
Czyli wymagałoby to przerobienia całej biblioteki PetitFs? W jaki sposób można użyć USART w trybie SPI, bo poszukałem trochę na forum i na innych stronach, ale nie znalazłem niczego konkretnego i nie wiem za bardzo jak się do tego zabrać. Może istnieje jakiś inny sposób?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14902">Kolka47</a> — 11 sty 2017, o 17:55</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2017-01-11T16:36:17+01:00</updated>
<published>2017-01-11T16:36:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179641#p179641</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179641#p179641"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179641#p179641"><![CDATA[
hmm no to problem - to może skorzystaj z drugiego SPI <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> ... pewnie zapytasz - &quot;jak to? przecież jest tylko jeden SPI w tym procku&quot;<br /><br />Nie prawda są aż trzy <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> dzięki temu, że ma DWA USART'y ... otóż można użyć interfejsów USART w trybie SPI ...<br /><br />czyli przestawisz sobie obsługę karty na SPI<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 11 sty 2017, o 16:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kolka47]]></name></author>
<updated>2017-01-11T16:29:13+01:00</updated>
<published>2017-01-11T16:29:13+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179640#p179640</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179640#p179640"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179640#p179640"><![CDATA[
Próbowałem tak robić i wtedy dzieje się tak, że plik się otwiera przez chwilkę widać tytuł utworu i napis &quot;PLAY&quot;, ale później od razu przeskakuje na &quot;NEXT&quot; i dalej nic się nie dzieje. Domyślam się, że z tego samego powodu bo piny OC3A i OC3B to wyjścia PWM timera 3, które są na pinach PB6 i PB7 czyli MISO i SCK od karty SD.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14902">Kolka47</a> — 11 sty 2017, o 16:29</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2017-01-11T16:22:52+01:00</updated>
<published>2017-01-11T16:22:52+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179639#p179639</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179639#p179639"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179639#p179639"><![CDATA[
Pewnie - zamień Timer1 i Timer3 miejscami w kodzie ... czyli Odbiór podczerwieni zrób na Timer1 a Timer3 użyj zamiast obednego Timera1 - to chyba najprostsze co można zrobić<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 11 sty 2017, o 16:22</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kolka47]]></name></author>
<updated>2017-01-11T16:10:55+01:00</updated>
<published>2017-01-11T16:10:55+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179638#p179638</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179638#p179638"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179638#p179638"><![CDATA[
Już wiem dlaczego mi to nie działa. Bibliotekę przerobiłem dobrze, ale zapomniałem o jednej rzeczy. Przecież wejście ICP dla timera1 jest pod pinem PD6, a dla timera3 jest to pin PB5 i faktycznie pragram do pilota z książki działa wtedy na timerze3. Tylko chcąc zastosować to do mojego projektu nie mogę podłączyć się do ICP3, bo ten pin jest zajęty przez kartę SD (MOSI). Czy da się to w jakiś sposób obejść?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14902">Kolka47</a> — 11 sty 2017, o 16:10</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kolka47]]></name></author>
<updated>2017-01-09T21:41:04+01:00</updated>
<published>2017-01-09T21:41:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179503#p179503</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179503#p179503"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179503#p179503"><![CDATA[
Faktycznie coś było z workspacem, bo w nowym rozpoznaje już rejestry. Niestety nie udaje mi się dodać do odtwarzacza obsługi tego pilota. Poniżej zamieszczam zawartość zmienionego pliku ir_decode.c.<br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br /><br />#include &quot;ir_decode.h&quot;<br /><br />volatile uint8_t address;// adres RC5<br />volatile uint8_t command;// komenda RC5<br />volatile uint8_t toggle_bit;// bit TOGGLE<br /><br />// flaga = 1 - informuje, Âże odebrany zostaÂł nowy kod z pilota<br />// po odczytaniu danych ze zmiennych naleÂży wyzerowaĂ¦ flagĂŞ aby<br />// zostaÂły przyjĂŞte kolejne kody z pilota<br />volatile uint8_t Ir_key_press_flag;<br /><br />volatile uint8_t rc5cnt;<br /><br />void ir_init() {<br />DDR(IR_PORT) &amp;= ~IR_IN;// pin jako wejĹ“cie<br />PORT(IR_PORT) |= IR_IN;// podciÂągniĂŞcie pinu do VCC<br />#if TIMER3_PRESCALER == 1<br />TCCR3B |= (1&lt;&lt;CS30);         // Timer1 / 1<br />#endif<br />#if TIMER3_PRESCALER == 8<br />TCCR3B |= (1&lt;&lt;CS31);         // Timer1 / 8<br />#endif<br />#if TIMER3_PRESCALER == 64<br />  TCCR3B |= (1&lt;&lt;CS31)|(1&lt;&lt;CS30); // Timer1 / 64<br />#endif<br />#if TIMER3_PRESCALER == 256<br />TCCR3B |= (1&lt;&lt;CS32);         // Timer1 / 256<br />#endif<br /><br />TCCR3B &amp;= ~(1&lt;&lt;ICES3);      // Zbocze opadajace na ICP<br />rc5cnt = 0;// zerowanie licznika wystepujacych zboczy<br /><br />TIMSK3 |= (1&lt;&lt;ICIE3);        // Przerwanie od ICP<br />Ir_key_press_flag = 0;// zerowanie flagi otrzymania kodu z pilota<br />}<br /><br /><br /><br /><br /><br />// procedura obsÂługi przerwania ICP1<br />ISR(TIMER3_CAPT_vect) {<br /><br />#define FRAME_RESTART 0<br />#define FRAME_OK 1<br />#define FRAME_END 2<br />#define FRAME_ERROR 3<br /><br />static uint16_t LastCapture;<br />uint16_t PulseWidth;<br />static uint8_t IrPulseCount;<br />static uint16_t IrData;<br />static uint8_t frame_status;<br /><br /><br />PulseWidth = ICR3 - LastCapture;<br />LastCapture = ICR3;<br /><br />TCCR3B ^= (1&lt;&lt;ICES3);// zmiana zbocza wyzwalajÂącego na przeciwne<br /><br />if (PulseWidth &gt; MAX_BIT) rc5cnt = 0;<br /><br />if (rc5cnt &gt; 0) frame_status = FRAME_OK;<br /><br />if (rc5cnt == 0) {<br />IrData = 0;<br />IrPulseCount = 0;<br />TCCR3B |= (1&lt;&lt;ICES3);<br />rc5cnt++;<br />frame_status = FRAME_END;<br />}<br /><br />if (frame_status == FRAME_OK) {<br /><br />    // gdy zakÂłĂłcenia (szpilki) - RESTART<br />if(PulseWidth&lt;MIN_HALF_BIT) frame_status = FRAME_RESTART;<br /><br />// gdy bÂłÂąd ramki danych (moÂże inny standard niÂż RC5) RESTART<br />if( PulseWidth &gt; MAX_BIT ) frame_status = FRAME_RESTART;<br /><br />if (frame_status == FRAME_OK) {<br />if (PulseWidth &gt; MAX_HALF_BIT) rc5cnt++;<br /><br />if (rc5cnt &gt; 1)<br />if ( (rc5cnt % 2) == 0 ) {<br />IrData = IrData &lt;&lt; 1;<br />if((TCCR3B &amp; (1&lt;&lt;ICES3))) IrData |= 0x0001;<br />IrPulseCount++;<br /><br />if (IrPulseCount &gt; 12) {<br />if (Ir_key_press_flag == 0) {<br />command = IrData &amp; 0b0000000000111111;<br />address = (IrData &amp; 0b0000011111000000) &gt;&gt; 6;<br />toggle_bit = (IrData &amp; 0b0000100000000000) &gt;&gt; 11;<br />}<br />frame_status = FRAME_RESTART;<br />Ir_key_press_flag = 1;<br />}<br />}<br />rc5cnt++;<br />}<br />}<br /><br />if (frame_status == FRAME_RESTART){<br />rc5cnt = 0;<br />TCCR3B &amp;= ~(1&lt;&lt;ICES3);<br />}<br />}[/syntax]<br />w ir_decode.h zmienione jest tylko #define TIMER3_PRESCALER 8.<br />Na próbę, czy będzie to działać zmieniłem klawisz do zmieniania utworów na przycisk vol up na pilocie i wygląda to tak:<br />[syntax=c]// klawisz do zmiany utworu na następny<br />if(Ir_key_press_flag) {<br />if( !address &amp;&amp; vol_up==command ){<br />Ir_key_press_flag=0;<br />command=0xff;<br />address=0xff;<br />break;<br />}<br />}[/syntax]<br />Układ nie reaguje na wciskanie klawisza na pilocie. <br />Ponad to jest jeszcze jeden problem, który występuje tylko na tej nowej ATmedze1284P, a mianowicie utwory przełączają się same po różnym czasie (czasem po 2 sekundach a czasem po 20, ale najczęściej w pierwszych 5 sekundach utworu), a zegar który odmierza czas utworu działa jakoś dziwnie, bo czasem jedna sekunda trwa 5, a czasem w pół sekundy przelecą 3. Dzieje się tak tylko po podłączeniu głośników. Na ATmedze644p nie było takiego problemu.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14902">Kolka47</a> — 9 sty 2017, o 21:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2017-01-05T13:52:31+01:00</updated>
<published>2017-01-05T13:52:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179135#p179135</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179135#p179135"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179135#p179135"><![CDATA[
To coś musisz źle robić .... bo mi normalnie w Eclipsie się kompiluje gdy używam rejestrów dla Timera3 - sprawdź czy ci się workspace nie sypnął. Co za problem założyć nawet na chwilę całkiem nowy workspace, szybko utworzyć nowy projekt z tym prockiem i sprawdzić - ja właśnie tak zrobiłem - 5 sekund klikania<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 5 sty 2017, o 13:52</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kolka47]]></name></author>
<updated>2017-01-05T13:44:27+01:00</updated>
<published>2017-01-05T13:44:27+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179133#p179133</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179133#p179133"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=179133#p179133"><![CDATA[
Kupiłem tą ATmege1284P i program bez pilota działa, ale nie mogę skonfigurować timera3 żeby na nim działała podczerwień. Podkreśla mi błąd pod rejestrami TCCR3B i TIMSK3 ( Symbol 'TCCR3B' could not be resolved ) i pod każdym z  bitów tego rejestru ( ICES3, ICIE3). Wszedłem w plik iom1284p.h w folderze avr, żeby zobaczyć czy definicje się zgadzają i wszystko jest ok, eclipse też mi pokazuje tego procka gdy klikam load from MCU, więc nie wiem o co chodzi.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14902">Kolka47</a> — 5 sty 2017, o 13:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2016-12-20T15:33:56+01:00</updated>
<published>2016-12-20T15:33:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177972#p177972</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177972#p177972"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177972#p177972"><![CDATA[
nie - nie opisywałem przerabiania biblioteki IR na timer 8-bitowy<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 20 gru 2016, o 15:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kolka47]]></name></author>
<updated>2016-12-20T12:28:34+01:00</updated>
<published>2016-12-20T12:28:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177956#p177956</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177956#p177956"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177956#p177956"><![CDATA[
Faktycznie nie wiedziałem, bo trochę goni mnie czas z tym projektem i jestem niestety zmuszony &quot;skakać&quot; po tematach, a jestem dosyć mocno początkujący <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /><br />W takim razie chyba najlepiej będzie jak zaopatrzę się w nowego procka.<br />A tak z ciekawości, czy opisywał Pan gdzieś dokładnie taki sposób przerobienia podczerwieni, bo na pewno kiedyś do tego wrócę, a na forum nic nie znalazłem (albo źle szukałem)?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14902">Kolka47</a> — 20 gru 2016, o 12:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2016-12-20T12:17:16+01:00</updated>
<published>2016-12-20T12:17:16+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177955#p177955</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177955#p177955"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177955#p177955"><![CDATA[
<div class="quotetitle">Kolka47 napisał(a):</div><div class="quotecontent"><br />Może w takim razie lepszym rozwiązaniem byłoby zamienić kod tak aby PWM działał na timerze2?<br /></div><br />Łoooooj <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> panie strasznie chybiony pomysł - czyżbyś nie wiedział że do odtwarzania dźwięków potrzebny jest przede wszystkim 16-bitowy PWM ! <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> Pewnie na 8-bitowym też to jakoś będzie działać ale obawiam się tragicznego pogorszenia jakości - jest sens ? <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />to już lepiej albo przerobić podczerwień na Timer2 albo dać procka który ma dwa Timery 16-bitowe w takiej samej obudowie czyli ATmega1284P <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 20 gru 2016, o 12:17</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kolka47]]></name></author>
<updated>2016-12-20T11:52:32+01:00</updated>
<published>2016-12-20T11:52:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177954#p177954</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177954#p177954"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177954#p177954"><![CDATA[
Wydaje się dosyć skomplikowane.<br />Może w takim razie lepszym rozwiązaniem byłoby zamienić kod tak aby PWM działał na timerze2? Popatrzyłem do noty atmegi644p i próbowałem poustawiać odpowiednie bity według tego jak to jest ustawione w timerze1, ale niestety nie udało się. Program działa normalnie, czyta kartę wyświetla nazwę utworu i czas, tylko nie ma dźwięku, więc musiałem jeszcze coś przeoczyć. Wrzucam kod z fragmentami, w których robiłem poprawki:<br />[syntax=c]// konfiguracja PWM (Timer1) nośna tu zamiana na timer2<br />TCCR2A = (1&lt;&lt;WGM20)|(1&lt;&lt;COM2A1)|(1&lt;&lt;COM2B1);<br />TCCR2B = (1&lt;&lt;CS20);[/syntax]<br />[syntax=c]OCR2A = v1;// próbka na wyjście PWM1, kanał L<br />OCR2B = v2;// próbka na wyjście PWM2, kanał R[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14902">Kolka47</a> — 20 gru 2016, o 11:52</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2016-12-20T07:06:19+01:00</updated>
<published>2016-12-20T07:06:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177941#p177941</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177941#p177941"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177941#p177941"><![CDATA[
<div class="quotetitle">Kolka47 napisał(a):</div><div class="quotecontent"><br />więc czy da się przerobić kod pilota tak, aby działał na timerze2,<br /></div><br />Pewnie, że się da ... tylko trzeba wtedy nieco inaczej podejść w ogóle do dekodowania - czyli wybrać sobie jakieś wejście przerwań zewnętrznych INTx które będzie reagowało na impulsy zaś Timer2 użyć do analizy czasu ramek<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 20 gru 2016, o 07:06</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kolka47]]></name></author>
<updated>2016-12-20T03:24:41+01:00</updated>
<published>2016-12-20T03:24:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177939#p177939</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177939#p177939"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177939#p177939"><![CDATA[
Program udało się uruchomić. Najpierw zmieniłem ISR na COMPB i wtedy muzyka grała, ale z efektem tak zwanego predatora, ale później jeszcze zmieniłem OCR0B na OCR0A w miejscu w kodzie gdzie obliczany jest preskaler timera0 w zależności od częstotliwości taktowania i muzyka ładnie gra. <br />Teraz miałbym jeszcze jedno pytanie, które jest związane z moim projektem i tym tematem, więc nie chcę zakładać nowego wątku. W projekcie chcę, aby przełączanie utworów było sterowanie z pilota na podczerwień. Ale z tego co widzę to pilot i pwm z którego idzie sygnał dźwiękowy korzystają z timera1. Domyślam się, że nie może tak być, więc czy da się przerobić kod pilota tak, aby działał na timerze2, a jeżeli nie to w jaki sposób to zrobić?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14902">Kolka47</a> — 20 gru 2016, o 03:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kicajek]]></name></author>
<updated>2016-12-16T07:45:08+01:00</updated>
<published>2016-12-16T07:45:08+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177626#p177626</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177626#p177626"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177626#p177626"><![CDATA[
Witam<br /><div class="quotetitle">Kolka47 napisał(a):</div><div class="quotecontent"><br />W zestawie ATB mam ATmege 644p, więc możliwe, że powinienem w kodzie pozmieniać niektóre rejestry, ale szukałem i znalazłem tylko jedno miejsce: ...<br /></div><br />Atmega 644 posiada dwa &quot;ISR'y&quot; od TIMER0 - COMPA i COMPB, Atmega16(32) pod który jest kod ma tylko ISR(TIMER0_COMP_vect) więc jest jeszcze coś.<br /><br />Pozdr.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=826">kicajek</a> — 16 gru 2016, o 07:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2016-12-16T07:03:31+01:00</updated>
<published>2016-12-16T07:03:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177622#p177622</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177622#p177622"/>
<title type="html"><![CDATA[Re: Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177622#p177622"><![CDATA[
<div class="quotetitle">Kolka47 napisał(a):</div><div class="quotecontent"><br />Tutaj w oryginalnym kodzie z książki tryb CTC był włączany w rejestrze TCCR0B<br /></div><br />Nigdy w życiu w książce tak nie było żeby CTC był włączany jak piszesz na rejestrze TCCR0B ... pewnie jak wielu początkujących mylisz pojęcia i wydaje ci się, zaznaczam wydaje ci się, że Timer który ma rejestry B i A to znaczy, że ustawianie bitów w jednym jest dla kanału A zaś w drugim dla B. Nie zaglądanie do noty w tym wypadku przez początkujących powoduje zatem, że męczą się niemiłosiernie przez długi czas .... i nic im nie działa<br /><br />nie ma tak panie kochany żeby jakiś tam tryb CTC był włączany albo w rejestrze TCCR0B albo w TCCR0A<br /><br />oba rejestry zawierają różne bity i dla przykładu preskaler dla obu kanałów A i B ustawia się tylko w rejestrze TCCR0B bo tam są bity CSXn .... jak mówię zajrzyj do noty nawet nie na opis tych rejestrów tylko obrazki na których widać te rejestry z nazwami bitów w nocie PDF<br /><br />i wtedy ew zacznij przerabianie kodu pod m644p ....<br /><br />a najlepiej to weź m32 i odpal bezpośrednio przykład z książki żeby zobaczyć co i jak - pamiętaj tylko o podłączeniu wszystkich sygnałów czyli nie tylko SPI ale też zdaje się jest tam używany sygnał CD<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 16 gru 2016, o 07:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kolka47]]></name></author>
<updated>2016-12-16T02:27:23+01:00</updated>
<published>2016-12-16T02:27:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177619#p177619</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177619#p177619"/>
<title type="html"><![CDATA[Odtwarzacz WAV na ATB 1.03 nie działa]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17082&amp;p=177619#p177619"><![CDATA[
Pracuję nad projektem odtwarzacza WAV na zestawie ATB i ostatnią, a zarazem najważniejszą rzeczą w tym projekcie jest odtwarzanie plików WAV z karty SD. Na początku chciałem posilić się gotowcem z płyty z green booka z lekcji 14, żeby sprawdzić czy wszystko działa i okazało się, że nie. Nie udaje mi się odtworzyć dźwięku. Program normalnie wchodzi w pętle główną i wyświetla na ekranie &quot;Insert SD CARD&quot; i dalej po włożeniu karty wyświetla się napis PLAY oraz nazwa pliku wav z karty, ale muzyka nie gra. Po wyjęciu karty na wyświetlaczu nic się nie zmienia, a jak mniemam powinno pojawić się znowu &quot;insert SD Card&quot;. Dodam jeszcze, że po włożeniu karty SD nie wyświetla się od razu menu z napisem PLAY itd. tylko są około 3 mignięcia na zmianę insert sd card, play, insert... po czym zostaje na PLAY i już nic nie miga.<br />W zestawie ATB mam ATmege 644p, więc możliwe, że powinienem w kodzie pozmieniać niektóre rejestry, ale szukałem i znalazłem tylko jedno miejsce:<br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">   // konfiguracja Timer0 (samplowanie)<br />   TCCR0A = (1&lt;&lt;WGM01);      // tryb CTC<br />   TIMSK0 = (1&lt;&lt;OCIE0B);      // zezwolenie na przerwanie CompareMatch</div><br />Tutaj w oryginalnym kodzie z książki tryb CTC był włączany w rejestrze TCCR0B i wtedy program nie wchodził nawet do pętli głównej. Zmieniłem na TCCR0A i działa tak jak opisałem powyżej, ale nie wiem co mam dalej z tym zrobić.<br />Bardzo proszę o pomoc  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14902">Kolka47</a> — 16 gru 2016, o 02:27</p><hr />
]]></content>
</entry>
</feed>