<div class="iw_mail" dir="ltr" style="font-size: 13px;"><div>To bych také rád věděl. Ale očividně ta obsluha přerušení nebyla správně slinkovaná, resp. byla tam nějaká defaultní.</div><div><br></div><div class="">Martin Locker</div><div><br></div><div class="iw-reply-block" dir="LTR" style="font-size: 13px;font-family:Roboto, Tahoma, Helvetica, sans-serif;line-height:normal;"><div style="margin:0;font-family:Roboto, Tahoma, Helvetica, sans-serif;font-size:13px;font-weight:300;line-height:150%;letter-spacing:normal;color:#333333;"><div style="display:none;margin:0;font-family:Roboto, Tahoma, Helvetica, sans-serif;font-size:13px;font-weight:300;line-height:150%;letter-spacing:normal;color:#333333;">----- Původní zpráva -----</div><hr size="1" width="100%" style="width:100%;padding:0;margin:10px 0;color:#888888;background-color:#888888;border-color:#DDDDDD;">Odesilatel: wek (<a href="mailto:konfera@efton.sk" style="font-family: Helvetica, sans-serif; font-size: 12px; font-weight: 300; line-height: 150%; color: rgb(0, 136, 204); text-decoration: none;">konfera@efton.sk</a>)<br>Datum: 26/12/2023 16:45<br>Příjemce: HW-news (<a href="mailto:hw-list@list.hw.cz" style="font-family: Helvetica, sans-serif; font-size: 12px; font-weight: 300; line-height: 150%; color: rgb(0, 136, 204); text-decoration: none;">hw-list@list.hw.cz</a>)<br>Předmět: <span style="font-family:Helvetica, sans-serif;font-size:12px;font-weight:300;line-height:150%;color:#333;text-decoration:none;font-weight:bold;">Re: Re[2]: STM32F103 UART DMA</span></div><br><div><div dir="auto">No a kto potom rozsvietil LEDku?<br><br>wek</div><br><br><div class="gmail_quote"><div dir="auto">On 26 December 2023 14:44:03 CET, David Obdrzalek <<a href="mailto:david.obdrzalek@mff.cuni.cz">david.obdrzalek@mff.cuni.cz</a>> wrote:</div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><pre class="k9mail"><div dir="auto">(a místo toho to vleze do nějaké generické BAD_IRQ nebo tak, a ta bude úmyslné while(1);) <br><br>On December 26, 2023 1:46:26 PM GMT+01:00, David Obdrzalek <<a href="mailto:david.obdrzalek@mff.cuni.cz">david.obdrzalek@mff.cuni.cz</a>> wrote:</div><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;"><br><div dir="auto">Aha, Name mangling, tedy, zdá se. A zatuhne to proto, že to do té rutiny ani nevleze, myslím.<br>D. O. <br><br>On December 26, 2023 1:00:12 PM GMT+01:00, Martin Locker <<a href="mailto:locker@vosrk.cz">locker@vosrk.cz</a>> wrote:</div><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;"><br><div dir="auto"><br><br>Tak už se mi to podařilo rozjet. Někde jsem vygůglil, že je nutné přidat:<br>extern "C" void DMA1_Channel6_IRQHandler(void);<br>Sice nechápu proč, ale už to běží.<br><br>Tak teď už jen vyřešit "zásadnější" problém. Jak se zachytit na začátek paketu.<br>Zařízení (lidar) kontinuálně odesílá data po paketech začínajících 0x54 0x2C.<br>Tak bych potřeboval odstartovat ten DMA přenos se začátkem packetu. <br>Abych po dokončení přenosu, měl vždy jeden celý packet.<br><br>Martin Locker<br><br>----- Původní zpráva -----<br>Odesilatel: Jaroslav Buchta (<a href="mailto:jaroslav.buchta@hascomp.cz">jaroslav.buchta@hascomp.cz</a>)<br>Datum: 26/12/2023 12:13<br>Příjemce: <a href="mailto:hw-list@list.hw.cz">hw-list@list.hw.cz</a><br>Předmět: Re: STM32F103 UART DMA<br><br>Podival bych se, jestli neni nejaka zakernost v DigitalRead/Write v preruseni (nebo to rovnou nahradil)<br>A jestli neni potreba nulovat neco dalsiho v ISR, ze by se to v preruseni zacyklilo...<br>A nebo ladit v debuggeru.<br>Dne 26.12.2023 v 12:08 Martin Locker napsal(a):</div><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #8ae234; padding-left: 1ex;"><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #fcaf3e; padding-left: 1ex;"><div dir="auto">tak to v obsluze přerušení zatuhne </div></blockquote></blockquote><br><div dir="auto"><br></div><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #8ae234; padding-left: 1ex;"><div dir="auto">Odial viete, ze to zatuhne *v* obsluhe prerusenia?</div></blockquote><br><div dir="auto">Po přijetí nastaveného počtu znaků se rozsvítí led, první příkaz v obsluze přerušení. <br>Z toho vyvozuji, že se do obsluhy přerušení skočí. <br><br></div><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #8ae234; padding-left: 1ex;"><div dir="auto">Co presne znamena *zatuhne*?</div></blockquote><br><div dir="auto">Periodický výpis běžící v hlavní smyčce po rozsvícení led už nepokračuje. <br>Když neposílám data (která by se přijala), tak periodický výpis běží.<br><br></div><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #8ae234; padding-left: 1ex;"><div dir="auto">Dalo by sa zbavit veci z toho arduina?</div></blockquote><br><div dir="auto">Asi budu muset. To jsem použil abych nemusel ručně řešit ten seriák pro debug.<br>Martin<br><br>On 26 December 2023 10:34:47 CET, Martin Locker <<a href="mailto:locker@vosrk.cz">locker@vosrk.cz</a>> wrote:<br><br>Zdravím a přeji krásné pohodové svátky.<br><br>Zbylo mi i trochu času, a tak jsem si zase začal hrát s STM32, ale trochu jsem se zasekl.<br>Řeším příjem dat na Uartu, chtěl jsem to vyzkoušet přes DMA. Vypadá to, že to funguje, ale<br>pokud nechám generovat přerušení na konci přenosu, tak to v obsluze přerušení zatuhne <br>(mám tam pro test rozsvícení led, jednou se do obsluhy IRQ skočí).<br>Když to nechám bez přerušení a testuji pouze příznak dokončení DMA přenosu, tak to běží.<br><br>Pokud by se někdo také "nudil", tak zdroják je:<br><a href="https://robotika.vosrk.cz/_soubory/main.cpp">https://robotika.vosrk.cz/_soubory/main.cpp</a><br><br>Díky za případné nakopnutí (správným směrem).<br><br>Martin Locker<hr>HW-list mailing list  -  sponsored by <a href="http://www.HW.cz">www.HW.cz</a><br><a href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a><br><a href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a><hr>HW-list mailing list  -  sponsored by <a href="http://www.HW.czHw-list">www.HW.czHw-list</a>@list.hw.<a href="czhttp://list.hw.cz/mailman/listinfo/hw-list">czhttp://list.hw.cz/mailman/listinfo/hw-list</a><hr>HW-list mailing list  -  sponsored by <a href="http://www.HW.cz">www.HW.cz</a><br><a href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a><br><a href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a><br><br></div><br></blockquote><br></blockquote><div dir="auto"><br><hr>HW-list mailing list  -  sponsored by <a href="http://www.HW.cz">www.HW.cz</a><br><a href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a><br><a href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a><br><br></div></pre></blockquote></div><hr>_______________________________________________<br>HW-list mailing list  -  sponsored by <a href="http://www.HW.cz">www.HW.cz</a><br><a href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a><br><a href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a></div></div></div>