Miałem taka myśl, ale istnienie adresu bardzo ułatwia sprawę, dzięki niemu mam jednoznacznie przypisana komendę do kanału. W przypadku jakieś skuchy podczas transmisji nie tracę wszystkich informacji a jedynie tylko jeden kanał. Kiedy nadleci nowa ramka to nadpisze/uzupełni błąd i będzie ok.
"światełka" przesyłam jako jeden bajt i później z tego dekoduję które ma się świecić a które nie.
Pomysł z przesyłaniem w podczerwieni wziął się z małych helikopterków sterowanych właśnie w ten sposób. Niestety Bluetooth odpada ze względu na miejsce. Płytkę pcb mam 25mm x 20 mm i nie mam na niej miejsca na BT. Procesor to Atiny2313 w obudowie 4 x 4 mm a z drugiej strony pcb mikroskopijny driver dla silnika.
Udało mi się troche dogadać z programem, ale chciałbym żeby działało tak bezbłędnie jak przykładowa biblioteka dla RC5 od Mirka. W tej chwili działa prawie dobrze, tzn czasami zdarzy się jakaś błędna ramka. Zrobiłem tak jak napisałem wcześniej, skróciłem czas trwania bitu do 2*300us co dało mi możliwość wysyłania kolejnych ramek co 20ms.
Tak przy okazji, jak zwiększyć precyzję impulsu sterowania servem modelarskim? Zrobiłem sobie pwm programowy
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
ale w takim przypadku szerokość impulsu to max 30 (pwm_servo), poza tym zakresem" wychodzę poza zakres działania serva. Servo obraca się o 180 stopni, ale jak to wykorzystać kiedy mam tylko wartość max 30 ?