hns napisał(a):
Dodam, że polecenie AT+RST? nie działa.
Witam.
Ale co to dokładnie znaczy, że Ci nie działa?
W tym sensie, że wysyłasz z mkbootloadera i nie resetuje procka? Bo jeśli o to Ci chodzi to polecenie resetu musisz mieć obsłużone w swoim programie w mikrokontrolerze. Tzn. musisz ten ciąg AT+RST? lub dowolny inny jaki sobie wymyślisz do resetowania po przeparsowaniu u siebie podpiąć go do funkcji resetującej wyglądającej np. tak:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Dodatkowo musisz pamiętać, że jeśli do magistrali będziesz miał podpięte więcej slave'ów to nie możesz użyć takiej samej funkcji reset dla wszystkich układów bo będzie to powodować resetowanie wszystkich urządzeń jednocześnie i wtedy każdy uruchomi bootloader, każdy zacznie jednocześnie nadawać i z transmisji nici. W takim wypadku dla każdego urządzenia musisz mieć inny ciąg resetujący. Tak jak pisałem w przytoczonym wątku u mnie np. resetowanie to ciąg znaków $1S gdzie $ oznacza, że to komenda wysyłana przez mastera, 1 to adres urządzenia a S to właśnie komenda reset obsługiwana przez główny program w procku (nie przez bootloader w procku!!!). U mnie to tak prosto jest (bez parsowania komend AT) bo układ prosty, komend mało więc na case'ach to zrobiłem. Jak chcę 3 slave'y zaktualizować to najpierw wpisuję w mkbootloader jako ciąg resetujący $1S, po aktualizacji zmieniam go na $2S itd dla każdego sterownika.
Pozdrawiam
Jarek