Autor Wątek: Kontrolery Arduino  (Przeczytany 53345 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Odp: Kontrolery Arduino
« Odpowiedź #240 dnia: Września 30, 2016, 07:03:12 »
To co zakupiłeś Vito to klon klona tego https://www.arduino.cc/en/Main/ArduinoBoardMicro :)
Mi też nie wykrywa mmjoy2 w IDE, bo bootloader inny wgrany jest i wsio, musisz wgrać bootloader od nowa czysty, żeby ide widziało podpięty uC.
Jeżeli koniecznie chcesz, żeby ide widziało to jako sparkfanowy model płytki - https://github.com/sparkfun/Arduino_Boards

Odp: Kontrolery Arduino
« Odpowiedź #241 dnia: Września 30, 2016, 13:42:10 »
Dzięki sugestiom Golasa udało się wgrać do ProMicro program 3.14ter SimOut_LEDs. Zanim omówię testy chciałbym wrócić do moich problemów, które wynikają z braku wiedzy związanej z uP. Zacznę od znanego kontrolera Damosa DMKeys8 opartego na Atm32U4. W tym przypadku nie ma problemów. Po wprowadzeniu DMKeys8 przyciskiem programowym DFU w programie Damosa kontroler był widziany jako ATm32U4 i można było w programie Flip wgrać program użytkowy czyli DMKeys8. Zakładam, że programowa lub hardwarowa ingerencja DFU uaktywnia tzw. bootloader uP.
W naszym przypadku zwarcie RST z GND także uaktywnia bootloader o nazwie Arduino Leonardo na 8 sec. Ponieważ płytka Leonardo oraz ProMicro ma ten sam uP to wydaje się logiczne, że maja taki sam bootloader. Teraz pojawia się problem, który nie rozumiem. Producent płyty nazwanej ProMicro wgrywa jakiś program o nazwia Arduino Leonardo, który jest widziany w IDE oraz w menadżer urządzeń także pod tą nazwą. Pytanie co się kryje w tym programie. Byłem przekonany, że zakupiona płyta ProMicro powinna być widziana w IDE jako ProMicro. Próbowałem intuicyjnie wgrać do jednej z  płyt różne drivery od ProMicro, ale bez powodzenia.  Może ten bootloader Leonardo jest w konflikcie z driverami ProMicro. Nie znam się na tym. Jedna zakupiona płyta ProMicro z którą nie robiłem eksperymentów jest widziana w IDE i bez problemów wgrałem program 3.14ter. Ciekawe czy drivery definiują wyprowadzenia pinów uP na wyjścia płyty ProMicro. Leonardo ma na płycie więcej wyprowadzeń od ProMicro. Druga sprawa to opcja w IDE wypalania bootloadera. Tak jak wspomniałem na początku wydawało się, że bootloader jest wypalany u producenta uP i określa rodzaj uP. Może ktoś obeznany z tą tematyką wyjaśni te problemy.
Czas na opis testów programu 3.14ter SimOut_LEDs zrealizowanego na ProMicro (Leonardo). Test wykonałem konfigurując w HSC pod adresem 21 LED a następnie pod tym samym adresem 7segLED. Dla LED jest wyświetlane 40 LED w grupach po 8 LED. Numeracja LED jest tak jak na załączonym szkicu. Nie ma to większego znaczenia ponieważ trzeba zrobić pcb z złączami 10 pin i można zachować kolejność tak jak w starym SimOUT. Co do 7segLED to jest tutaj przekłamanie, widać to na tym samym szkicu. Tak jak wspomniałem ma wstępie może 3.14ter ma u siebie ProMicro widziane w IDE z innymi driverami. To wyjaśnimy po jego powrocie z wakacji.

Układ do testów.



Wyniki testów.






Odp: Kontrolery Arduino
« Odpowiedź #242 dnia: Września 30, 2016, 14:21:19 »
Mogę być w błędzie, ale wydaje mi się, że ProMicro to sama nazwa płytki już gotowej - natomiast bootloader uzależniony jest tylko i wyłącznie od uC na płycie. Wszak możesz mieć 15 klonów Leonardo pod różnymi nazwami z różnie poprowadzonymi ścieżkami i wejściami - a i tak IDE będzie widziało to jako Leonardo ze względu właśnie na wsad do uC. Jak się mylę poprawcie ;)

Odp: Kontrolery Arduino
« Odpowiedź #243 dnia: Września 30, 2016, 15:22:55 »
Coś w tym jest, każdy bootloader jest odpowiednio skonfigurowany pod dane uC. Ostatnio miałem okazję robić Arduino ze zwykłej Atmegi8.

Odp: Kontrolery Arduino
« Odpowiedź #244 dnia: Września 30, 2016, 16:06:14 »
No ja poczyniłem tak kiedyś z jakiegoś attiny do jakiejś pierdoły gdzie ni w żab nie chciało mi się gotowca przepisywać na c++, kwestia właśnie bootloadera - kilka ósemek mam do odzysku ale brak czasu i chęci żeby poskładać HVP (programator 12V)

Odp: Kontrolery Arduino
« Odpowiedź #245 dnia: Września 30, 2016, 17:08:53 »
W takim razie pytanie praktyczne. Jeśli wgrałem program MMJoy2 do mojego ProMicro (Leonardo) czy jest możliwość powrotu do takiej  wersji aby był widziany w IDE. Po wgraniu MMJoy2 jest nadal widziany w menadżer urządzeń po zwarciu RST z GND jako Arduino Leonardo przez 8 sec. Jak to zrobić, czy jest potrzebny programator czy można to zrobić z poziomu IDE czy może Flipa oraz tylko USB.

Offline mj

  • *
Odp: Kontrolery Arduino
« Odpowiedź #246 dnia: Września 30, 2016, 17:58:40 »
Musisz prawidłowo sflashować w ciągu tych 8 sekund. Jeśli klon Pro Micro jest widoczny jako Leonardo, użyj sterowników od Leonardo. Wystarczy IDE.

Odp: Kontrolery Arduino
« Odpowiedź #247 dnia: Października 01, 2016, 08:55:51 »
Drugi ProMicro (Leonardo) na którym robiłem eksperymenty jest już widziany w IDE. Reaktywizację zrobiłem w następujący sposób. W Menedeżr urządzeń był widziany jako inne urządzenie. Prawym klawiszem myszy wybrałem aktualizuj sterowniki i wybrałem wskazanie ręczne ścieżki gdzie jest driver. Driver jest na ścieżce Arduino (IDE) -> drivers. Po chwilowym  zwarciu RST z GND w czasie 8 sec wskazałem wspomnianą ścieżkę z driverami i aktualizuj. W IDE jest teraz widziany jako Leonardo i mogę wgrać program 3.14ter. Mam już 2 ProMicro (Leonardo) widziane w IDE i mogę robić kolejne testy z programem 3.14ter w połączeniu "sieciowym" RS232.
Mam pytanie do Golasa związane z ProMicro oraz MMJoy2. Czy możesz zrobić eksperyment jeśli to jest możliwe polegający na wgraniu do ProMicro drivera od Leonardo tak aby był widziany w IDE. Ja nie wiem jak to zrobić. W menadżer urządzeń MMJoy2 nie jest widziany, prawdopodobnie jest jako HID. Jeśli zewrę RST z GND to pojawi się na 8 sec jako Arduino Leonardo bootloader COM...Czy można to zrobić bez zewnętrznego programatora.

Cytuj
Musisz prawidłowo sflashować w ciągu tych 8 sekund. Jeśli klon Pro Micro jest widoczny jako Leonardo, użyj sterowników od Leonardo. Wystarczy IDE.
Czy możesz podać szczegóły jak to zrobić, nie jestem fachowcem w tej dziedzinie.

Odp: Kontrolery Arduino
« Odpowiedź #248 dnia: Października 02, 2016, 14:37:23 »
Kolejny krok do przodu. Połączyłem z sobą 2 ProMicro. Jeden jest master o adresie 21 a drugi slave z adresem 22. Zgodnie z sugestią zablokokowałem // #define MASTER_MODULE oraz zmieniłem adres na 22. Niestety transmisja do slave nie dochodzi (nie zapala się dioda RX w slave) nie zapalają się także LED w testerze. Myślę, że trzeba zrobić małą korektę w programie.
Nie zamawiam jeszcze NANO, zrobię to później po powrocie Piotra. Jestem pewny, że projekt SimOut oparty na Arduiono będzie działać. Ponieważ HSC jest przygotowane na sterowanie 48 LED w ramach jednego uP (adresu IP) oraz 6 7segLED to możemy także to zrobić w nowym SimOUT (powinien być wolny 1 pin). Można pod ten projekt wykonać płytki pcb. Master może być na ProMicro (płytka 23 zł) a slave na NANO (14-15 zł). Dla opcji 48 LED dochodzi 6 złączy 10 pin, dla 7segLED 1 złącze 16 pin. Projekt bardzo tani z możliwością tzw. dekompozycji modułów co jest korzystne przy budowie kokpitów.

Układ do testów.



Odp: Kontrolery Arduino
« Odpowiedź #249 dnia: Października 04, 2016, 08:35:04 »
Na schemacie jest pokazana pierwsza wersja SimOut zrealizowana na Arduino ProMicro z prototypowym programem 3.14ter. Program realizuje sterowanie 40 LED, dorysowałem jeszcze jedną grupę 8 LED, ponieważ HSC to umożliwia oraz nie ma problemów z wolnym pin na ProMicro. Zasilanie LED jest z zewnętrznego zasilacza 5 V. Projekt jest bardzo tani (ProMicro 23.50 zł) i łatwy do zrobienia. Zamówiłem także Arduino Nano do dalszych testów.

Schemat SimOut -ProMicro-LED.



Offline mj

  • *
Odp: Kontrolery Arduino
« Odpowiedź #250 dnia: Października 04, 2016, 23:52:01 »
Czy możesz podać szczegóły jak to zrobić, nie jestem fachowcem w tej dziedzinie.

Nie wiem, czy dobrze zrozumiałem, z czym masz problem. Nie wgrywałem MMJoy2, nie śledziłem aż tak tego tematu, natomiast u mnie Pro Micro w trybie HID jest widoczne jako urządzenie HID z nazwą Arduino Leonardo i jest normalnie dostępne w Arduino IDE pod którymś z portów COM. Miałem taką sytuację, że płytka nie była wykrywana, a wręcz dostawałem komunikat, że nie można rozpoznać urządzenia podłączonego pod USB. Przyczyną było użycie złych sterowników (Sparkfun Pro Micro zamiast Arduino Leonardo), a rozwiązanie problemu polegało na wgraniu dowolnego programu (jednego z przykładowych, które się szybko kompilują) w ciągu tych ośmiu sekund po resecie. Trzeba wybrać prawidłowy sterownik, mikroprocesor, podłączyć pod USB, wybrać port i wgrać program.

W sprzedaży są dostępne klony Sparkfun Pro Micro z jego bootloaderem - wtedy są widoczne jako Pro Micro i wymagają sterowników ze strony Sparkfuna, ale są też klony, które są widoczne jako Arduino Leonardo i one nie potrzebują dodatkowych sterowników, wystarczy wybrać Leonardo.

Odp: Kontrolery Arduino
« Odpowiedź #251 dnia: Października 05, 2016, 09:33:33 »
Cytuj
Przyczyną było użycie złych sterowników (Sparkfun Pro Micro zamiast Arduino Leonardo), a rozwiązanie problemu polegało na wgraniu dowolnego programu (jednego z przykładowych, które się szybko kompilują) w ciągu tych ośmiu sekund po resecie.
Dzięki za wyjaśnienia. Też do tego doszedłem, ale nie opanowałem sztuki manipulacji w tych 8 sec. Dzisiaj się udało. Po ustaleniu COM trzeba zrobić kompilację prostego przykładu, zewrzeć RST z GND, w narzędziach zaznaczyć port i przejść do wgrywania. Jeśli nie zdążymy to będzie komunikat. Doszedłem doświadczalnie, że można jeszcze raz na krótko zewrzeć RST z GND w momencie przechodzenia z zaznacz port do wgrywania. U mnie to zadziałało.
Dla mnie IDE oraz Arduino jest nową sytuacją. Miałem do tej pory do czynienia z Flip albo PonyPro, gdzie nie było ograniczenia 8 sec, ale mam nadzieję, że już to opanowałem.

Odp: Kontrolery Arduino
« Odpowiedź #252 dnia: Października 05, 2016, 10:41:08 »
Chciałbym nawiązać do moich ostatnich problemów. Jeśli dobrze rozumuję to mamy dwa problemy związane z identyfikacją uP Atm32U4. Gdy zewrzemy RST z GND to jest widziany Arduino Leonardo bootloader na 8 sec. Pytanie pierwsze: czy może być widziany pod inna nazwą np. jeśli jest kilku producentów Atm32U4.  Mam na myśli goły uP bez płytki (Leonardo, ProMicro itp.). Czy zapis tego bootloardera jest jednorazowy u producenta uP czy można go zmieniać. Jeśli tak to w jakim celu.
Drugie pytanie dotyczy tzw. sterowników czyli wspomnianych np. Sparkfun Pro oraz Arduino Leonardo. Zarówno jeden jak i drugi jest widziany w IDE. Jakie korzyści dają wspomniane sterowniki, czy chodzi o dodatkowe biblioteki w IDE oraz dostępne przykłady.
Jeśli dobrze zrozumiałem to sterowniki są zapisywane w pamięci uP i mogą być wymieniane dowolną ilość razy na inne.

Odp: Kontrolery Arduino
« Odpowiedź #253 dnia: Października 05, 2016, 11:55:00 »
Tak jak pisałem kilka postów wcześniej, wgrywałem ostatnio bootloadera Arduino na Atmege8 za pomocą drugiego Arduino. Więcej w linku:
https://www.youtube.com/watch?v=dpgcBsl9D4k

Odp: Kontrolery Arduino
« Odpowiedź #254 dnia: Października 05, 2016, 14:07:28 »
Widzę, że aby  dobrze zrozumieć temat trzeba trochę poczytać.  Poszukam w Internecie. Z podanego linku wynika, że bootloader można samemu wgrywać.