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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2018-08-30T06:18:40+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=49&amp;t=21198&amp;mode</id>
<entry>
<author><name><![CDATA[Slavo]]></name></author>
<updated>2018-08-30T06:18:40+01:00</updated>
<published>2018-08-30T06:18:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211154#p211154</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211154#p211154"/>
<title type="html"><![CDATA[Re: HC-05 i  AVR ATmega328P nie chcą się dogadać... :)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211154#p211154"><![CDATA[
Witam po króciutkiej przerwie... <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />Dzięki wam udało mi się rozwikłać zagadkę:<br />Kolega rskup przynaglił mnie do ponownej analizy mojego kodu asm, co uczyniłem dość skrupulatnie.<br />Kolega mirekk36 naprowadził mnie na trop brakującego &quot;ENTERA&quot;.<br /><br />I rzeczywiście: po analizie kodu, okazało się, że trzeba wykonać małą korektę co do kolejności niektórych rozkazów i każdorazowego powtórzenia transmisji znaku &quot;ENTER&quot; po każdej transmisji litery &quot;A&quot;<br />Nie wiem czemu ale mnie nagle olśniło, że przecież ten &quot;ENTER&quot; to też znak i że można a nawet trzeba go wysłać tak jak każdy inny znak!!!<br />Przerobiłem kod i zadziałało !!!!<br /><br />Temat zamknięty.<br /><br />Dziękuję za poświęconą uwagę i kilka słów odpowiedzi!!!<br /><br />Pozdrawiam<br />Sławek<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=18273">Slavo</a> — 30 sie 2018, o 06:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Slavo]]></name></author>
<updated>2018-08-30T04:45:40+01:00</updated>
<published>2018-08-30T04:45:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211152#p211152</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211152#p211152"/>
<title type="html"><![CDATA[Re: HC-05 i  AVR ATmega328P nie chcą się dogadać... :)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211152#p211152"><![CDATA[
Bardzo dziękuję kolegom za reakcję i odpowiedzi.<br /><br />Już się odnoszę kolejno:<br /><br /><strong>@mirekk36:</strong><br />tak, najpierw chcę wysłać pojedynczy znak a potem - w ramach praktyki - chcę potrenować wysyłanie stringów. Na razie mam mgliste pojęcie jak to w assemblerze zrealizować ale to kwestia czasu kiedy się nauczę. - Owszem, wiem, że to zadanie jest banalnie proste w C. Na razie jednak zostaję przy assemblerze.<br /><br /><strong>@rskup:</strong><br /><span style="text-decoration: underline">config HC-05:</span><br />38400,0,0  - jest to odpowiedź na zapytanie AT+UART? (38400 bits/s, 1 bit STOP, bez bitu parzystości)<br /><br /><span style="text-decoration: underline">config AVR:  </span><br />UCSR0A:<br />           U2X0=1 - podwójna prędkość transmisji<br /><br />UCSR0B:<br />            RXCIE0 = 1 - zezwolenie na obsługę przerwania po wykryciu ustawienia bitu RXC0<br />            TXCIE0 = 1 - zezwolenie na obsługę przerwania po wykryciu ustawienia bitu TXC0<br />            RXEN0  = 1 - wł. możliwości odbioru danych<br />            TXEN0  = 1 - wł. możliwości wysyłania danych<br /><br />UCSR0C:<br />           UMSEL0[1:0] = 00  - USART asynchroniczny<br />           UPM0[1:0]     = 00  - bez bitu parzystości<br />           USBS0           = 0    - 1 bit STOPU<br />          UCSZ0[1:0]    = 11 - dane 8-bitowe<br /><br /><br />i nastawy prędkości transmisji:<br />UBRR0H = 0x00 (d: 0)<br />UBRROL = 0x2F (d: 47)<br />- wg dokumentacji dla ATmega328P dla podwójnej prędk. transmisji (U2X0=1) przy fosc=14.7456MHz (a taki właśnie mam) , UBRR0 =74 dla 38400bps<br /><br />Tak więc raczej parametry transmisyjne AVR i BT są takie same (no chyba, że coś przeoczyłem)<br /><br />Natomiast nie bardzo rozumiem pytania o pin KEY:<br />o ile w module BT jest przycisk, który na pin34 (KEY) podaje 3,3V aby włączyć komendy AT, o tyle w AVR takiego nie znalazłem ^^<br /><br />Trudno mi zatem odpowiedzieć, czy podłączenie pinu KEY jest takie samo <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />No chyba, że słowo-klucz &quot;pin KEY&quot; odnosi się do czegoś innego.<br /><br />Pozdrawiam<br />Sławek<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=18273">Slavo</a> — 30 sie 2018, o 04:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[rskup]]></name></author>
<updated>2018-08-29T16:38:33+01:00</updated>
<published>2018-08-29T16:38:33+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211108#p211108</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211108#p211108"/>
<title type="html"><![CDATA[Re: HC-05 i  AVR ATmega328P nie chcą się dogadać... :)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211108#p211108"><![CDATA[
Czy konfiguracja HC-05 dla testu z PC i ATmega328 jest taka sama (włącznie z takim samym podłączeniem pinu KEY)?<br />Czy na pewno masz odpowiednio ustawiona prędkość RS232 na procesorze?<br /><br />-- <br />Pozdrawiam,<br />Robert<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3427">rskup</a> — 29 sie 2018, o 16:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2018-08-29T07:38:25+01:00</updated>
<published>2018-08-29T07:38:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211101#p211101</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211101#p211101"/>
<title type="html"><![CDATA[Re: HC-05 i  AVR ATmega328P nie chcą się dogadać... :)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211101#p211101"><![CDATA[
Nie za bardzo jestem w stanie się wgryzać a temat ale tak na szybko co mi przychodzi na myśl - czytając ogólnie o problemie. To czy kolega nie zapomniał o specyficznej różnicy w znakach końca linii ? <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />toż Android w ogóle nie wysyła na końcu znaku ENTER czyli (13) .... trzeba ręcznie to robić. Chyba że na razie testujesz tylko wysyłanie samych pojedynczych znaków a nie stringów.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 29 sie 2018, o 07:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Slavo]]></name></author>
<updated>2018-08-29T04:04:48+01:00</updated>
<published>2018-08-29T04:04:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211100#p211100</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211100#p211100"/>
<title type="html"><![CDATA[HC-05 i  AVR ATmega328P nie chcą się dogadać... :)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=21198&amp;p=211100#p211100"><![CDATA[
Witam wszystkich <br /><br />Więc problem jak w temacie. <br /><br />Zagadka powstała po tym jak zacząłem experymentować po lekturze  poradników o &quot;prostym Terminalu Bluetooth&quot; autorstwa szanownego Mirka Kardasia (dzięki Mu niech będą i szacunek za to co robi)<br />(#0245, #0246, #0247, #0248, #0250, #0251)<br />Przerobiłem krok po kroku omawiany w poradnikach kod w B4A.<br /><br />Wsystko dziala super (!!!!!!!), ale:<br />mój experyment polega na tym, że zamiast terminala PC używam AVR ATmega328P.<br /><br />I teraz:<br />Terminal PC + FTDI + HC-05      &lt;=&gt;    Android (app B4A)    - konfiguracja działająca; komunikacja w obie strony bo obserwuję na terminalu i na telefonie<br />Terminal PC + FTDI                   &lt;=       AVR ATmega328P     - konfiguracja działająca; komunikacja w jedną stronę (na razie) bo obserwuję na terminalu to co wysyłam z procka (0x41 czyli literę &quot;A&quot; i to widzę na terminalu PC)<br /><br />AVR ATmega328P + HC-05        &lt;=&gt;   Android (app B4A)      - konfiguracja nie działa; litera &quot;A&quot; wysyłana z procka do telefonu nie dociera (a procek ją na pewno potrafi wysłać - nie wiem czy wysyła jak mu podłączę BT)<br /><br />Nie mam pojęcia dlaczego procek na terminal wysyła dane a przez BT już nie.<br /><br />w AVR transmisja wygląda tak :<br /><br />[syntax=asm]USART_Transmit:<br /> ;zaczekaj aż do opróżnienia bufora danych<br /> ;sbis UCSR0A, UDRE0  ;tu drobna przeróbka rozkazów ze względu na rozszerzoną pamięć w procku <br /><br />  lds r15, UCSR0A<br />  sbrs r15, 5<br />  rjmp USART_Transmit<br /> ;umieść dane w buforze, wyślij dane<br /><br /> ldi r16, 0x41     &lt;&lt;&lt;=======   tu do rejestru w postaci hex ładuję po prostu literę A  <br /> <br /> sts UDR0, r16<br /> ;powrót z procedury<br /> ret[/syntax]<br /><br />Natomiast w kodzie B4A zdarzenie NewText wygląda tak:<br /><br />[syntax=basic4gl]Sub ast_NewText ( Text As String)<br />edtLog.Text = Text<br />tts1.Speak(Text, False)<br />ToastMessageShow (Text, True)<br />End Sub[/syntax]<br /><br />Zatem z AVR wysyłam coś jako &quot;hex&quot; a w app oczekuję stringa - czy to może być powodem, że nic się nie pojawia w komponencie &quot;edtLog&quot; ???<br />No moim zdaniem tu nie powino się to gryźć bo przecież terminal rozpoznaje 0x41 i pokazuje śliczne duże &quot;A&quot;<br />Ale mogę się mylić...<br /><br />Ponieważ AVR jest zasilany 5V to na jego lini Tx stosuję najprostszy znaleziony w necie dzielnik rezystorowy aby stan wysoki ok 5V sprowadzić do poziomu ok 3,3V , który jest tolerowany przez moduł BT - przynajmniej takich połączeń z dzielnikiem można znaleźć dużo w necie i wg autorów różnej maści, taki dzielnik powinien wystarczyć.<br /><br />Robiłem też doświadczenie bez dzielnika na lini Tx, zasilając AVR napięciem 3,3V - efekt taki sam: osobno AVR z terminalem na PC działa (litera &quot;A&quot; pojawia sie w terminalu na PC) , również osobno moduł BT z terminalem na PC działa (efekty obserwuję na Androidzie)<br />ale jeśli podłączę BT i AVR to na telefonie nie ma nic.<br /> <br /><br />Aha:<br />z poziomu AVR testowane było tylko wysyłanie &quot;A&quot;<br />Nie testowałem odbioru bo w kodzie asemblera utknąłem właśnie przy nadawaniu.<br /><br />Czy któryś z szanownych forumowiczów może udzielić jakieś wskazówki / sugestii?<br />Może ktoś miał podobny problem?<br /><br />Będę wdzięczny za wszelkie odpowiedzi.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=18273">Slavo</a> — 29 sie 2018, o 04:04</p><hr />
]]></content>
</entry>
</feed>