Witam,
Tworzę prosty nadajnik i odbiornik do sterowania wykorzystujący do tego dwie Atmegi8. W nadajniku mam potencjometry. Sygnal jest konwertowany przez ADC i nastepnie wysylany do odbiornika, gdzie generowany jest sygnal PWM do serwomechanizmów.
Problem polega na tym żeby odbiornik rozróżniał, z którego potencjometry wysyłana jest wartość i żeby odpowiedni serwomechanizm tą wartość otrzymał.
Myślałem nad jakimś sposobem adresowania każdego potencjometru i póki co najbliżej działający pomysł wygląda tak:
Generalnie pomysł polega na tym, że idzie 1 bajt "adres", następnie 1 bajt "dana". I tak w kółko. Tylko mam problem z zaimplementowaniem tego.
Sam ADC, PWM, UART itd działają OK kiedy przesyłam jedną wartość ( to jest tylko z jednego potencjometru, drugi mam zakomentowany). Kiedy mam oba to też działa ale ewidentnie sypią się błędy bo jednym potencjometrem czasami steruję jednym serwem a czasami dwoma.
Za wszelką pomoc i sugestie dzięki
Tworzę prosty nadajnik i odbiornik do sterowania wykorzystujący do tego dwie Atmegi8. W nadajniku mam potencjometry. Sygnal jest konwertowany przez ADC i nastepnie wysylany do odbiornika, gdzie generowany jest sygnal PWM do serwomechanizmów.
Problem polega na tym żeby odbiornik rozróżniał, z którego potencjometry wysyłana jest wartość i żeby odpowiedni serwomechanizm tą wartość otrzymał.
Myślałem nad jakimś sposobem adresowania każdego potencjometru i póki co najbliżej działający pomysł wygląda tak:
Kod: C / C++
Generalnie pomysł polega na tym, że idzie 1 bajt "adres", następnie 1 bajt "dana". I tak w kółko. Tylko mam problem z zaimplementowaniem tego.
Sam ADC, PWM, UART itd działają OK kiedy przesyłam jedną wartość ( to jest tylko z jednego potencjometru, drugi mam zakomentowany). Kiedy mam oba to też działa ale ewidentnie sypią się błędy bo jednym potencjometrem czasami steruję jednym serwem a czasami dwoma.
Za wszelką pomoc i sugestie dzięki