Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 29 mar 2024, o 00:20


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 1 ] 
Autor Wiadomość
PostNapisane: 5 paź 2012, o 19:58 
Offline
Użytkownik

Dołączył(a): 26 lut 2012
Posty: 82
Pomógł: 0

Napisałem obsługę silnika krokowego przez TCP/IP z obracaniem go o zadaną przez WWW ilość kroków oraz w danym kierunku. Niestety (wydaje mi się, że z powodu dużej ilości kodu samego stosu) silnik lubi sobie zgubić krok lub dwa.
Podczas testów samego silnika doszedłem do tego, że idealnym "taktowaniem" dla niego jest 2,5ms, przy innych wartościach robił za dużo bądź za mało kroków (silnik ma 100 kroków).
Kod obsługi wygląda następująco:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Oczywiście reszta kodu czyli ustawienie timera, rejestru przepełnienia, przerwania itp jest ustawiona na w/w 2,5ms a funkcje kroki_prawo() itd są z płyty dołączonej do książki.

Posiadacie Panowie jakieś pomysły jak zniwelować to zjawisko?
Myślałem nad wrzuceniem całej obsługi do przerwania bo silnik cały obrót robi w ułamku sekundy a requesty z przeglądarki nie będą przychodziły bez przerwy więc chwilowa przerwa w działaniu stosu nie zaszkodzi ale raczej nie jest to eleganckie rozwiązanie;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 1 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Google [Bot] i 11 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO