Witam
Nie mogę zrozumieć jednej rzeczy. Wymyśliłem sobie sterowanie silnikami krokowymi. Każda "procedura" ma swój numer.
Cały blok ma się wykonać licznik razy.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Wcześniej zadeklarowałem zmienne w strukturze:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
No i początkowe wartości :
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Miałoby to działać tak,że w tablicy "procedura" jest trzymany numer procedury. I tak np.
1 - silnik 1 do przodu,
2 - silnik 1 do tyłu ,
3 - silnik 1 jazda referencyjna itd.
Czyli instrukcją for zwiększam sobie licznik_proc ( zadeklarowany jako uint8_t licznik_proc;)
potem switchem sprawdzam co dany numer procedury robi i tak dalej.
Niestety pierwszy switch jest dobrze rozpoznawany a potem są bzdury. Do tego licznik cykli (ram_cfg.counter) zmniejsza wartości przeskakując co kilka.
Dodam ,że jak na twardo wpiszę algorytm ( silnik1 do przodu, silnik 2 do tyłu. itp.) to wszystko działa i lcznik cykli się zminejsza o jeden. Może to zaćma spowodowana zmęczeniem ale nie mogę z tym ujechać.