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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2018-12-13T10:12:07+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=21701&amp;mode</id>
<entry>
<author><name><![CDATA[jaca_76]]></name></author>
<updated>2018-12-13T10:12:07+01:00</updated>
<published>2018-12-13T10:12:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=21701&amp;p=214607#p214607</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=21701&amp;p=214607#p214607"/>
<title type="html"><![CDATA[Re: mK_multi_uart i Nextion]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=21701&amp;p=214607#p214607"><![CDATA[
Dzięki. Też mnie tak oświeciło jak pisałem zapytanie. <br />I oczywiście poprawię się z tymi callbackami.<br /><br />Edit.<br />Hmm problem jest taki że to nie końca ascii i &quot;13&quot; może wystąpić.<br />Czy gdzieś jeszcze jest sprawdzany znak końca linii  ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2479">jaca_76</a> — 13 gru 2018, o 10:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2018-12-13T10:02:35+01:00</updated>
<published>2018-12-13T10:02:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=21701&amp;p=214606#p214606</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=21701&amp;p=214606#p214606"/>
<title type="html"><![CDATA[Re: mK_multi_uart i Nextion]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=21701&amp;p=214606#p214606"><![CDATA[
Wywołujesz callbacki z przerwania ?!?!?!?! .... toż to istna masakra - taka porada - NIGDY tak nie rób. Tylko proszę nie pisz mi tutaj:<br /><br />&quot;a mi to działa...&quot;<br /><br />Bo odpowiedź brzmi - pewnie, że działa - to tak samo jak program z _delay_ms(1000) w przerwaniu też może działać .... <br /><br />Nie piszę tego broń Boże ze złością czy coś - tylko tak jak mówię ze zdziwieniem no i chcę ci poradzić dobrze. Skoro mówiłeś, że bibliotekę jako tako opanowałeś to sprawdź, że w przerwaniu jest tylko ustawiana flaga dzięki której później w zdarzeniu EVENT wywoływane są callbacki i ty dokładnie tak samo możesz zrobić.<br /><br />ok to nie na temat twojego problemu - no ale jak widzę taką zgrozę <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> w przerwaniu to uważam, że warto naprowadzić że jest źle a nawet bardzo źle<br /><br />----------------------<br /><br />A teraz na temat - w przerwaniu badaj wystąpienie zamiast znaku CR to wystąpienia trzech twoich znaków końca linii i to tyle - wystarczy wtedy jeden z nich zamienić na CR a dwa zignorować tak jak znaki LF i nawet nie musisz zmieniać w żadnej dalszej części biblioteki <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> — 13 gru 2018, o 10:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jaca_76]]></name></author>
<updated>2018-12-13T09:44:16+01:00</updated>
<published>2018-12-13T09:44:16+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=21701&amp;p=214605#p214605</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=21701&amp;p=214605#p214605"/>
<title type="html"><![CDATA[mK_multi_uart i Nextion]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=21701&amp;p=214605#p214605"><![CDATA[
Zakupiłem tą bibliotekę z myślą o wykorzystaniu w projekcie gdzie mam atnelowskie wifi i wyświetlacz Nextiona.<br />Nextion nie korzysta ze znaku końca linii a z trzech 0xff, wcześniej przerobiłem bibliotekę  z książek mirka i w sumie to działało.<br />Mój problem jest taki że mk_multi_uart jeszcze do nie do końca ogarniam i nie mam pomysłu na modyfikację.<br />Jeśli któryś z kolegów ma jakiś pomysł byłbym wdzięczny za podzielenie się wskazówkami.<br />Poniżej zmodyfikowany kod którego obecnie używam,:<br />[syntax=c]void UART2_RX_STR_EVENT(char * rbuf) {<br />    if( hex_line ) {<br />        uart_get_cmd( rbuf );<br />        int i=*(rbuf);<br />        if (i==0x65) {<br />        if( uart2_rx_touch_event_callback ) {<br />            (*uart2_rx_touch_event_callback)( rbuf );<br />        } else {<br />            UART2_RxHead = UART2_RxTail;<br />        }<br />    } else if(i==0x70){<br />        if( uart2_rx_str_event_callback ) {<br />            (*uart2_rx_str_event_callback)( rbuf );<br />        } else {<br />            UART2_RxHead = UART2_RxTail;<br />        }<br />    } else {<br />        UART2_RxHead = UART2_RxTail;<br />    }<br />    }<br />}<br /><br /><br />// pobieranie komend<br />char * uart_get_cmd(char * buf) {<br />    int c;<br />    uint8_t cnt_ff=0;<br />    char * wsk = buf;<br />    if( hex_line ) {<br />        while(1)  {<br />            c = uart2_getc();<br />            *buf++ = c;<br />            if (c==0xff){<br />                cnt_ff++;<br />                if(cnt_ff==3) break;<br />            }<br />            else {<br />                cnt_ff=0;<br />            }<br />        }<br />        *buf=0; // czy to napewno jest potrzebne  - dodoawanie 0 na koncu?<br />        hex_line--;<br />    }<br />    return wsk;<br />}[/syntax]<br /><br /><br />Czyżby wystarczyło lekko zmodyfikować ISR (USART0) ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2479">jaca_76</a> — 13 gru 2018, o 09:44</p><hr />
]]></content>
</entry>
</feed>