ATNEL tech-forum https://forum.atnel.pl/ |
|
jak pozbyć się delay w funkcji przy pobieraniu dany uartgetc https://forum.atnel.pl/topic21694.html |
Strona 1 z 1 |
Autor: | Szofer [ 10 gru 2018, o 22:11 ] |
Tytuł: | jak pozbyć się delay w funkcji przy pobieraniu dany uartgetc |
Witam mam pytanie bo nie wiem jak ugryźć temat, jak pozbyć się tego dileja?? baud jest 31250, czyli około 1ms na komendę 3 bajtową, tylko że moja pętla while w main zapiernicza szybciej, czy da się to jakoś inaczej oprócz wstawiania najpierw do tablicy? bo tablice po wykonaniu funkcji trzeba posprzątać jeszcze, a bajty nadlatują dalej tak wiem ewentualny timer w kolejnym ifie, albo... |
Autor: | mirekk36 [ 10 gru 2018, o 22:30 ] |
Tytuł: | Re: jak pozbyć się delay w funkcji przy pobieraniu dany uart |
Nasz niby Greenbooka jak widać po ikonkach w twoim podpisie na forum ... i ty taki kod piszesz ? Toż masz pokazane jak korzystać z buforów cyklicznych w GB ... no wystarczy poczytać jeden z bodajże najważniejszych rozdziałów GB ... właśnie o odbieraniu danych z UARTA poprzez mechanizm zdarzeń ... Skądś ty tego delaya wynalazł - no coś okrutnego i nie dziwota że nie działa. |
Autor: | Szofer [ 10 gru 2018, o 22:52 ] |
Tytuł: | Re: jak pozbyć się delay w funkcji przy pobieraniu dany uart |
Mirku, tak delay okrutny i chce się go pozbyć, a tak nawiasem mówiąc to ta moja funkcja działa i to bardzo dobrze z tym potworkiem, ale powtarzasz jak mantrę .... twuu z delay-ami wiec ... i ja się chcę go pozbyć, tylko jak najprościej pobrać daną z bufora cyklicznego za pomocą uart_getc(); bez opuszczania ifa? tak by było najprościej i nie blokować programu. Do GB zaglądnę jeszcze raz, zakładka na stronie 396 zdarzenia uart jest. |
Strona 1 z 1 | Strefa czasowa: UTC + 1 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |