<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p><font face="Arial">Mám podezření, že to bude souviset s ne
plnohodnotnou obsluhou přerušení. Tedy to, co jsem sám nevěděl,
že pokud nastane více přerušení současně, priority pouze určují
pořadí spuštění rutin, ale neznamená to, že jestliže běží rutina
s nižší prioritou a vznikne vyšší přerušení, že se ta nižší
přeruší, obslouží se ta výšší, pak pokračuje ta nižší a pak
hlavní program. Jinak řečeno... Neumí vnořovat přerušení.</font></p>
<p><font face="Arial">Mám podobný problém, kde, přerušení časovačem
mám každých 50uS. Ono to není v mém případě důležité, aby to
bylo přesně 50uS. Pokud nenastává jiné přerušení, vidím na
osciloskopu, že to sedí. Pokud ale nastává přerušení od
seriového portu, interval 50uS není přesný.</font></p>
<p><font face="Arial">Nevím, zda to nemůže být Váš případ, kdy dojde
k tak zásadní deformaci šířku pulzu na seriovém portu, že se
data přenesou špatně. Takže se přikláním k tomu, co napsal pan
Labaj.</font><br>
</p>
<pre class="moz-signature" cols="72">Martin Záruba</pre>
<div class="moz-cite-prefix">Dne 22.11.2023 v 18:36 Petr Labaj
napsal(a):<br>
</div>
<blockquote type="cite"
cite="mid:c98e6a53-c52d-f903-b43d-94305df19917@volny.cz">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Přiznávám, že by mě to zajímalo.<br>
Tedy pro obecnou osvětu a poučení, i když ve Vašem konkrétním
případě to dokážete ošéfovat pomocí SW.<br>
<br>
Připojil bych na ten převodník jen osciloskop a kontrolní PC, nic
jiného. Na druhé straně by nikdo neodpovídal.<br>
A do Arduina dát jednoduchý program, který bude vysílat stále
dokola třeba po 2 sekundách ten string.<br>
<br>
Pokud to tady bude OK (na osciloskopu i přijetím na na kontrolním
PC), tak nechat HW stejně, ale posílat to Vašim původním
programem, pokud umí posílat výzvy i bez odpovědi.<br>
Pokud to opět bude OK, tak teprve pak připojit ten odpovídač a
hledat tam.<br>
<br>
Máte 4-kanál, tak by asi nebyl problém ho odpíchnout od Tx dat,
která by byla vstupem pro ten převodník (tj. výstupní drát z
Arduina).<br>
<br>
PL<br>
<br>
**********************<br>
<br>
<div class="moz-cite-prefix">Dne 22.11.2023 v 18:13 Jirka Mww
napsal(a):<br>
</div>
<blockquote type="cite"
cite="mid:CAGNMtu3qn0TCVmDj1tv0Hy5ax5Zd8fxCYXpKjU1e+j7a8tx9-A@mail.gmail.com">
<meta http-equiv="content-type" content="text/html;
charset=UTF-8">
<div dir="auto">Dobrý den,
<div dir="auto">To s tím rozdělením jsem zkoušel, nebyla tam
žádná změna i když jsem tam dal ještě navíc delay.
Osciloskop mám, 4 kanál paměťový, ale nevím, na co ho
synchronizovat. Necháme to být, SW to řeší </div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">Dne st 22. lis 2023 18:05
uživatel Petr Labaj <<a href="mailto:labaj@volny.cz"
moz-do-not-send="true" class="moz-txt-link-freetext">labaj@volny.cz</a>>
napsal:<br>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div> Myslel jsem, že se Vám to s těmi odpory spravilo. A
ono ne.<br>
Tak to je skoro čas na plán B.<br>
Máte osciloskop? Pokud je to jeden ze 40 pokusů, tak tohle
chytnout by měla být brnkačka. A zřejmě budou "načaté" i
ostatní přenosy, jen budou ještě v toleranci.<br>
<br>
Co by udělalo Serial2.print("X1A") a pak
Serial2.println("") nebo jak se ty funkce na Arduinu
jmenují? Prostě poslat to CR dalším voláním.<br>
<br>
PL<br>
<br>
********************<br>
<br>
<div>Dne 22.11.2023 v 17:42 Jirka Mww napsal(a):<br>
</div>
<blockquote type="cite">
<div dir="ltr">Díky za další rady, on ale bude problém
asi jinde. Po doplnění těch opěrných odporů na A+ a B-
se to začalo chovat o dost líp, ale po dopsání
nějakých dalších řádků do Arduina ATMEGA se to zase
trochu zhoršilo.
<div>Mám podezření, že ty procedury Arduina pro
obsluhu sériových portů nejsou asi úplně nezávislé,
nebo tomu vadí něco jiného z mého SW. V podstatě s
tím můžu žít, ty posílané povely se dají opakovat,
když nepřijde včas relevantní odpověď. Schema těch
převodníků nemám, je to z Ali, drát na řízení směru
toku nemají, to co poslu se zároveň zpětně načte.
Ten co komunikuje s měničem GOODWE problémy nemá,
komunikace 100% chodí včetně CRC. Vyhození
převodníků je trochu problém, relova deska pro
obsluhu je SMD , musel bych tam okolo převodníku
RS485 škrbat spoje, to se mi nechce. Raději budu
řešit ty výpadky přes úpravu SW a už se tím dál
nebudu zabývat</div>
<div><br>
</div>
<div>Zdravi</div>
<div>
<div>
<div dir="ltr" class="gmail_signature"
data-smartmail="gmail_signature">Jirka
Sloupenský OK1MWW</div>
</div>
<br>
</div>
</div>
<div
id="m_-155959138218532413DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2"><br>
<table style="border-top:1px solid #d3d4de">
<tbody>
<tr>
<td style="width:55px;padding-top:13px"><a
href="https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail"
target="_blank" rel="noreferrer"
moz-do-not-send="true"><img
src="https://s-install.avcdn.net/ipm/preview/icons/icon-envelope-tick-round-orange-animated-no-repeat-v1.gif"
alt="" style="width:46px;height:29px"
moz-do-not-send="true" width="46"
height="29"></a></td>
<td
style="width:470px;padding-top:12px;color:#41424e;font-size:13px;font-family:Arial,Helvetica,sans-serif;line-height:18px">Neobsahuje
žádné viry.<a
href="https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail"
style="color:#4453ea" target="_blank"
rel="noreferrer" moz-do-not-send="true">www.avast.com</a></td>
</tr>
</tbody>
</table>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">út 21. 11. 2023
v 20:28 odesílatel Dodo Racek <<a
href="mailto:dodoracek@gmail.com" target="_blank"
rel="noreferrer" moz-do-not-send="true"
class="moz-txt-link-freetext">dodoracek@gmail.com</a>>
napsal:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px
0px 0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div dir="auto">
<div dir="auto">Tazko hadat, malo vstupnych
informacii.</div>
<div dir="auto"><br>
</div>
Obe strany su v istej chvili prepnute na
vysielanie ?
<div dir="auto"><br>
</div>
<div dir="auto">Pri riadenom prepinani mozete
prepnut na prijem skor ako je odoslany posledny
znak. </div>
<div dir="auto">Niektore obsluhy seriovej linky
povazuju odoslanie za skoncene, ked je posledny
byte vo vysielacom registri (ale este neodisiel
po seriovej linke )</div>
<div dir="auto"><br>
</div>
<div dir="auto">Automaticke prepinania sa robia
rozne, od detekcie startbitu hrubym casovanim
MKO, niektore sa snazia detekovat rychlost
vysielania a nastavit cas prepnutia podla casu
vyslania bytu a odhadnutej rychlosti... byva to
rozne.</div>
<div dir="auto"><br>
</div>
<div dir="auto">Mate linku zakoncenu na oboch
stranach prislusnou zatazou ? Napr 120R + 1n</div>
<div dir="auto"><br>
</div>
<div dir="auto">Mate definovane urovne linky, ked
su obe strany na prijme ?</div>
<div dir="auto">Niektore prevodniky to robia
"automaticky" a u niektorych je potrebne jeden
vodic potiahnut odporom na zem a druhy vodic na
+5v.</div>
<div dir="auto"><br>
</div>
<div dir="auto">Niektore zapojenia prevodnikov
422/485 umoznuju zaroven citat, co sa lokalne
vysiela a napr. detekovat chybu vysielania, ked
sa iny vysielac na linke namontuje do
komunikacie....</div>
<div dir="auto"><br>
</div>
<div dir="auto">Chcelo by to ozajstne schemy tych
prevodnikov. </div>
<div dir="auto">Ci mate chybu v prograne mozete
overit tak, ze vyhodite prevodniky a pojdete
Rx-Tx priamo na TTL urovniach.</div>
<div dir="auto"><br>
</div>
<div dir="auto">Dodo</div>
<br>
<br>
<div class="gmail_quote" dir="auto">
<div dir="ltr" class="gmail_attr">Dňa ut 21. 11.
2023, 15:31 Jirka Mww <<a
href="mailto:jirka.mww@gmail.com"
target="_blank" rel="noreferrer"
moz-do-not-send="true"
class="moz-txt-link-freetext">jirka.mww@gmail.com</a>>
napísal(a):<br>
</div>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div dir="ltr">Dobrý den,
<div>ladím tady komunikaci mezi dvěma
Arduiny, jedno je Arduino Nano a druhé je
Arduino Mega , příslušný seriový kanál je
na Mega serial2. Na Nano používám HW
seriový kanál. SW seriový kanál není vůbec
využit. Na Arduinu Nano je modul RS485,
který má externí vstup pro přepínání směru
přenosu, ten obsluhuji svým SW a vše zdá
se funguje správně. Na Arduinu Mega mám
nějaký čínský modul RS485, který takový
vstup nemá , přepíná se sám, posílám jen
čtyři znaky pomocí funkce <span style="font-family:Consolas,"Courier New",monospace;font-size:14px;white-space:pre-wrap;color:rgb(211,84,0)">Serial2</span><span style="color:rgb(78,91,97);font-family:Consolas,"Courier New",monospace;font-size:14px;white-space:pre-wrap">.</span><span style="font-family:Consolas,"Courier New",monospace;font-size:14px;white-space:pre-wrap;color:rgb(211,84,0)">println</span><span style="font-family:Consolas,"Courier New",monospace;font-size:14px;white-space:pre-wrap;color:rgb(67,79,84)">(</span><span style="font-family:Consolas,"Courier New",monospace;font-size:14px;white-space:pre-wrap;color:rgb(0,92,95)">"X1A"</span><span style="font-family:Consolas,"Courier New",monospace;font-size:14px;white-space:pre-wrap;color:rgb(67,79,84)">) </span><span style="font-family:Consolas,"Courier New",monospace;font-size:14px;white-space:pre-wrap"><font color="#4e5b61"> t.j. </font></span>včetně
CR na konci, většinou to funguje, ale ten
koncový znak, na který protistrana čeká,
aby příkaz provedla, se občas ( cca 1 x za
40 přenosů ) nepošle. Linku monitoruji
přes externí převodník a PC ale efekt je
stejný, jak na straně Arduino Nano, tak na
straně PC. Prostě ten koncový znak
nepřijde tam ani tam. Komunikace s FVE
měničem Goodwe přes další port toho
Arduino Mega mi funguje normálně. Je tam
podobný modul RS485 opět bez řízení směru
přenosu, je jenom galvanicky oddělený.
Nemáte nějaký nápad, na co se zaměřit ?
Vkládání zpoždění do různých relevantních
částí programu nepomáhá. </div>
<div><br clear="all">
<div>
<div dir="ltr" class="gmail_signature">Zdravi<br>
Jirka Sloupenský OK1MWW</div>
</div>
</div>
</div>
<br>
</blockquote>
</div>
</div>
</blockquote>
</div>
</blockquote>
<br>
</div>
_______________________________________________<br>
HW-list mailing list - sponsored by <a
href="http://www.HW.cz" rel="noreferrer noreferrer"
target="_blank" moz-do-not-send="true">www.HW.cz</a><br>
<a href="mailto:Hw-list@list.hw.cz" target="_blank"
rel="noreferrer" moz-do-not-send="true"
class="moz-txt-link-freetext">Hw-list@list.hw.cz</a><br>
<a href="http://list.hw.cz/mailman/listinfo/hw-list"
rel="noreferrer noreferrer" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">http://list.hw.cz/mailman/listinfo/hw-list</a><br>
</blockquote>
</div>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz" moz-do-not-send="true">www.HW.cz</a>
<a class="moz-txt-link-abbreviated moz-txt-link-freetext" href="mailto:Hw-list@list.hw.cz" moz-do-not-send="true">Hw-list@list.hw.cz</a>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list" moz-do-not-send="true">http://list.hw.cz/mailman/listinfo/hw-list</a>
</pre>
</blockquote>
<br>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
</pre>
</blockquote>
</body>
</html>