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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2023-11-30T23:20:28+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=24592&amp;mode</id>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2023-11-30T23:20:28+01:00</updated>
<published>2023-11-30T23:20:28+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237704#p237704</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237704#p237704"/>
<title type="html"><![CDATA[Re: Transmisja binarna uart]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237704#p237704"><![CDATA[
<div class="quotetitle">motomichu30 napisał(a):</div><div class="quotecontent"><br />. Jeszcze trochę dodam i może uda mi się napisać komunikację podobną do Modbusa.<br /></div><br />No i powodzenia, modbus też ma dwa tryby pracy: ASCII i RTU. Ten drugi to właśnie binarny i jednak w przypadku Modbusa o wiele lepiej sprawdza się właśnie akurat RTU<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 30 lis 2023, o 23:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[motomichu30]]></name></author>
<updated>2023-11-30T20:45:51+01:00</updated>
<published>2023-11-30T20:45:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237703#p237703</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237703#p237703"/>
<title type="html"><![CDATA[Re: Transmisja binarna uart]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237703#p237703"><![CDATA[
Bardzo dziękuje za pomoc.<br />Mirku, przepraszam że zawróciłem głowę ale o ile poradniki związane z biblioteką obejrzałem wszystkie tak ten mi gdzieś umknął.<br />Nastukałem taki kod:<br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/wdt.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;string.h&gt;<br />#include &lt;stdlib.h&gt;<br />#include &lt;stdio.h&gt;<br /><br />#include &quot;MK_LCD/mk_lcd44780.h&quot;<br />#include &quot;MK_MULTI_UART_20_AT/mk_multi_uart.h&quot;<br /><br />uint16_t tab&#91;4&#93;;<br />char uart_rxbuf&#91;50&#93;;<br /><br />void buf_to_fun(void * bufor){<br />long int num = atol(bufor);<br />tab&#91;0&#93;=((num%10000)-num%1000)/1000;<br />tab&#91;1&#93;=((num%1000)-num%100)/100;<br />tab&#91;2&#93;=((num%100)-num%10)/10;<br />tab&#91;3&#93;=(num%10);<br /><br />}<br />void parsuj_uart( void * buf, uint8_t size ) {<br /><br />buf_to_fun(buf);<br />char * wsk = buf;<br />wsk&#91;size&#93; = 0;<br />lcd_cls();<br />lcd_locate(0,0);<br />lcd_int(tab&#91;0&#93;);<br />lcd_locate(0,7);<br />lcd_int(tab&#91;1&#93;);<br />lcd_locate(1,0);<br />lcd_int(tab&#91;2&#93;);<br />lcd_locate(1,7);<br />lcd_int(tab&#91;3&#93;);<br /><br /><br />}<br /><br /><br /><br /><br /><br /><br /><br />int main( void ) {<br /><br />uart_init();<br />uart_reg_callback( 0, uart_rxbuf, parsuj_uart );<br />uart_echo( 0, 1 );<br /><br /><br />sei();<br /><br /><br /><br />while(1) {<br />UART_RX_EVENT();<br />}<br /><br />}[/syntax]<br />Zaczyna to działać tak jak bym chciał. Jeszcze trochę dodam i może uda mi się napisać komunikację podobną do Modbusa. Trzymajcie za mnie kciuki <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6133">motomichu30</a> — 30 lis 2023, o 20:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2023-11-30T17:13:12+01:00</updated>
<published>2023-11-30T17:13:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237702#p237702</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237702#p237702"/>
<title type="html"><![CDATA[Re: Transmisja binarna uart]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237702#p237702"><![CDATA[
Kilka lat temu przerabiałem bibliotekę pod transmisję binarną. Potrzeba mi było przesyłać z dużą prędkością mnóstwo liczb 0-255. Projekt co prawda zarzuciłem (zmieniły się priorytety), ale jak znajdę gdzieś te strzępy programu to pokażę. Wiem, że to jakieś kosmetyczne zmiany były w bibliotece. Transmisja binarna uartem ma też niestety swoje wady i polecałbym jednak zostać przy ASCII.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1922">SylwekK</a> — 30 lis 2023, o 17:13</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2023-11-30T17:04:42+01:00</updated>
<published>2023-11-30T17:04:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237701#p237701</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237701#p237701"/>
<title type="html"><![CDATA[Re: Transmisja binarna uart]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237701#p237701"><![CDATA[
<div class="quotetitle">motomichu30 napisał(a):</div><div class="quotecontent"><br />Póki co napisałem takie programy, oczywiście nie działają tak jak chcę żeby działały co mnie jakoś mocno nie dziwi<br /></div><br />No mnie też nie dziwi ale to dlatego że totalnie niestety mieszasz wszystko i nie za bardzo zdajesz sobie sprawę z tego czym się różni transmisja binarna od transmisji ASCII. <br /><br />Do takiego zadania o którym piszesz można najspokojniej w świecie wykorzystać transmisję ASCII ale to hmmm no musisz czy tego chcesz czy nie jednak się wgryźć głębiej i zrozumieć co to oznacza &quot;transmisja ASCII&quot; bo wbrew pozorom początkującym wydaje się to trudniejsze niż transmisja binarna a w praktyce jest w 100% odwrotnie. Po stokroć łatwiejsza jest transmisja ASCII i w ogóle od niej warto zacząć i zrozumieć do końca - w ogóle od A do Z ... a dopiero później jak się nabierze praktyki to myśleć o transmisji binarnej.<br /><br />Poszukaj na moim kanale youtube poradników w tych tematach bo są i to bardzo dobre - żeby to zrozumieć najpierw ok?<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 5 minutach ]</span></strong><br /><br />obejrzyj chociaż by ten jeden poradnik:<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><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 30 lis 2023, o 17:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[motomichu30]]></name></author>
<updated>2023-11-30T15:12:12+01:00</updated>
<published>2023-11-30T15:12:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237700#p237700</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237700#p237700"/>
<title type="html"><![CDATA[Transmisja binarna uart]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24592&amp;p=237700#p237700"><![CDATA[
Cześć,<br />Posiadam bibliotekę MK MULTI UART 2.0 AT<br />Potrzebuję pomocy z napisaniem kodu, który poprawnie odbierze mi dane tak, żebym mógł użyć ich w dalszej części programu.<br />Dla przykładu, nadajnik wysyła zawartość tablicy uint8_t tab[]{12,34,56,78}<br />czyli:<br />uart_putlong(0, tab, 10);<br />Nadajnik odbiera dane i przysyła również do tablicy uint8_t tab[]<br />Tak żeby:<br />tab[0]=12<br />tab[1]=34<br />tab[2]=56<br />tab[3]=78<br /><br />Jakich funkcji tej biblioteki powinienem użyć to oprogramowania teg?<br />Póki co napisałem takie programy, oczywiście nie działają tak jak chcę żeby działały co mnie jakoś mocno nie dziwi <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><br />[syntax=c]//nadajnik<br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br />#include &quot;MK_MULTI_UART_20_AT/mk_multi_uart.h&quot;<br />#include &quot;LCD/lcd44780.h&quot;<br /><br />char uart0rxbuf&#91;50&#93;;<br /><br /><br /><br />uint8_t dane&#91;&#93;={12 , 34 , 56 , 78};<br /><br />int main(void){<br /><br /><br /><br />uart_init();<br /><br /><br />sei();<br /><br />while(1){<br /><br />UART_RX_EVENT();<br /><br />uart_putint(0, dane&#91;0&#93;, 10);<br />uart_putint(0, dane&#91;1&#93;, 10);<br />uart_putint(0, dane&#91;2&#93;, 10);<br />uart_putint(0, dane&#91;3&#93;, 10);<br />_delay_ms(100);<br />}<br /><br />}[/syntax]<br /><br />[syntax=c]//odbiornik<br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/wdt.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;string.h&gt;<br />#include &lt;stdlib.h&gt;<br />#include &lt;stdio.h&gt;<br /><br />#include &quot;LCD/lcd44780.h&quot;<br />#include &quot;MK_MULTI_UART_20_AT/mk_multi_uart.h&quot;<br /><br />uint8_t uart_rxbuf&#91;4&#93;;<br />uint8_t tab&#91;4&#93;;<br /><br /><br />int main( void ) {<br /><br />lcd_init();<br /><br /><br />uart_init();<br />//uart_get_bin( 0,  buf );<br /><br />uart_echo( 0, 1 );<br /><br /><br />sei();<br /><br /><br /><br />while(1) {<br />UART_RX_EVENT();<br />uart_get_bin( 0,  tab );<br />lcd_locate(0, 0);<br />lcd_int(tab&#91;0&#93;);<br />lcd_locate(0, 7);<br />lcd_int(tab&#91;1&#93;);<br />lcd_locate(1, 0);<br />lcd_int(tab&#91;2&#93;);<br />lcd_locate(1, 7);<br />lcd_int(tab&#91;3&#93;);<br />_delay_ms(1000);<br />lcd_cls();<br />}<br /><br />}[/syntax]<br />Wiem, że to co nadaje i to co odbieram to są kody znaków ascii. I nie wiem jak przerobić całość na operowanie zmiennymi tylu int lub pochodnymi.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6133">motomichu30</a> — 30 lis 2023, o 15:12</p><hr />
]]></content>
</entry>
</feed>