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



Teraz jest 9 kwi 2026, o 12:04


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 1 ] 
Autor Wiadomość
PostNapisane: 1 wrz 2015, o 21:08 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 15 lut 2012
Posty: 193
Pomógł: 6

Cześć, od jakiegoś czasu zajmuje się zagadnieniem generowania impulsu do sterownika silnika krokowego,
mam zewnętrzny sterownik reagujący na impuls >2,5us i chce zrobić aby silnik startował i zatrzymywał się z rampą.
Obecnie jedyne rozwiązanie które udało mi się zrealizować opiera się na dwóch timerach, 1 - 16bit 2-8bit
Timer 1 zajmuje się generowaniem "częstotliwości nośnej" a timer 2 reguluje długość impulsu,
za każdym przerwaniem timera 1 zmieniam wartość OCR1A na wartość z tablicy która jest uzupełniana przy inicjalizacji programu(nie byłem w stanie wykonywać tych działań w przerwaniu bo się nie wyrabiałem) dzięki czemu zwiększam częstotliwość oraz uruchamiam timer 2 który po odliczeniu 4us wykonuje przerwanie w którym się wyłącza.
Działa to zgodnie z założeniami, tylko może ma ktoś pomysł jak zrobić to wykorzystując tylko Timer 16 bitów, albo jak zwiększyć ilość kroków ramy którą obecnie ogranicza wielkość tablicy.

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


Pozdrawiam
KoreX



Ostatnio edytowano 1 wrz 2015, o 21:17 przez KoreX, łącznie edytowano 1 raz

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ł: Brak zidentyfikowanych użytkowników i 10 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