Pytanie:
Czego potrzebuję, aby umieścić mój kod w mikrokontrolerze?
Adam
2015-06-29 23:10:14 UTC
view on stackexchange narkive permalink

Dowiedziałem się o kodowaniu kontrolera, ale tak naprawdę nigdy nie umieszczałem kodu na fizycznym urządzeniu. Próbuję dowiedzieć się, co muszę zamówić, aby rozpocząć tworzenie podstawowego systemu wbudowanego.

Na przykład, jeśli mam PIC18F1330, mam MPLAB IDE i kompilator XC8. Świetnie, więc mam skompilowany kod i jestem gotowy, aby umieścić to na kontrolerze. Co muszę mieć, aby przesłać mój skompilowany kod z mojego komputera do kontrolera?

Widziałem takie rzeczy, jak debugger w obwodzie i zestaw PIC. Po prostu zgubiłem się w tym momencie.

Więc kiedy mam PICkit, PICkit pozwala mi fizycznie podłączyć mój komputer do mikrokontrolera?
Tak, na PICKit, ICD itp. Znajduje się złącze, które podłączasz do swojej płytki w celu programowania w obwodzie i debugowania.
Pięć odpowiedzi:
Spehro Pefhany
2015-06-29 23:26:21 UTC
view on stackexchange narkive permalink

Ponieważ używasz MPLAB IDE z kompilatorem XC8 C, możesz sprawdzić kompatybilność z menu Konfiguruj-> Wybierz urządzenie (zielony wskaźnik oznacza w pełni obsługiwane, żółty jest częściowy, a czerwony to niewspierany).

W tej chwili najlepszym wyborem byłby Pickit 3, ICD3 lub RealICE (w kolejności rosnącej ceny)

Oto kompatybilni programiści i debuggery:

Naprawdę chcesz mieć wsparcie dla debugowania, a także wsparcie programowania.

enter image description here

Po zainstalowaniu sterowników urządzeń możesz je wybrać i połączyć się z nimi (dane urządzenie może być zainstalowane tylko jako debugger lub programista w danym momencie):

enter image description here

Następnie, kiedy program jest kompilowany (w formie debugowania lub wydania), możesz zaprogramować mikrokontroler za pomocą przycisków pokazanych poniżej:

enter image description here

Fizycznie PICkit lub inna jednostka debugowania / programisty ma złącze, które podłączasz do swojego systemu. Jest 6 pinów, z których 5 jest używanych, łącznie z zasilaniem i masą.

enter image description here

sweber
2015-06-29 23:42:20 UTC
view on stackexchange narkive permalink

Istnieje kilka sposobów na przesłanie kodu do mikrokontrolera.

W Internecie można znaleźć całkiem sporo programistów, którzy sami stworzyli, ale zazwyczaj mają oni również własne oprogramowanie i nie są (no) zintegrowany z MPLAB IDE.

Najtańszym rozwiązaniem firmy Microchip jest PicKit za ~ 40 €, który jest podłączony do komputera przez USB. Chociaż PicKit ma kilka opcji debugowania, istnieje również mocniejszy ICD `` In Circuit Debugger '' za ~ 180 €, który ma więcej funkcji debugowania, ale oczywiście może również flashować chipy.

Zawsze czułem PicKit jest dla mnie wystarczający.

Istnieją wersje innych firm, ponieważ microchip publikuje oprogramowanie układowe i schematy dla PicKit, ale jeśli je kupisz, upewnij się, że naprawdę dostajesz to, co myślisz, co dostajesz . Kiedyś zobaczyłem ofertę PicKit 3, ale nie byłem pewien, czy to nie jest PicKit 2.


Tak jak komentarz: Istnieją mikrochipy MCU, które mogą się flashować. Na przykład użyliśmy rodziny PIC18F2450 / 2550/4450/4550 z wbudowanym USB i umieściliśmy na niej program ładujący. Gdy zworka jest zamknięta, MCU wchodzi w tryb programu ładującego podczas uruchamiania i możesz sflashować MCU swoim kodem. Wszystko to jest dostępne w firmie Microchip.

Aby z tego skorzystać, potrzebujesz kilku modyfikacji w swoim kodzie. I oczywiście potrzebujesz zwykłego programisty, aby początkowo flashować program ładujący na MCU. Tak więc ta funkcja nie ma sensu, jeśli masz programistę. Ale miło, jeśli chcesz, aby klienci otrzymywali aktualizacje oprogramowania sprzętowego.

Oleg Mazurov
2015-06-29 23:54:27 UTC
view on stackexchange narkive permalink

W chwili pisania tego tekstu istnieją 3 główne sposoby wypalania pliku binarnego do mikrokontrolera. W zależności od konkretnego mikro mogą być dostępne dowolne 3 z nich. Najstarszą metodą jest programator / debugger specyficzny dla urządzenia. Aktualne dla części Microchip to Pickit3 / ICD3, są one kompatybilne ze wszystkimi aktualnymi mikrochipami PIC i niektórymi starszymi. Nie można ich używać do programowania części wykonanych przez innych producentów.

Druga metoda nazywa się bootloaderem. Jest to mały program wypalony w mikro przed przejęciem części. Bootloader pozwala na programowanie poprzez standardowy interfejs [s] micro - UART, SPI, Ethernet, itp. Układy ARM często są dostarczane z fabrycznie załadowanym bootloaderem, a także AVR. Nie potrzebujesz własnego sprzętu programistycznego, jeśli obecny jest bootloader, ale nie będziesz w stanie łatwo wykonać jednoetapowego debugowania.

Trzeci nazywa się JTAG. Jest to interfejs półgeneryczny, można za jego pomocą programować wiele różnych części, a także debugować. Będziesz potrzebował narzędzia zwanego kluczem JTAG. Niektóre części PIC mają JTAG. Układy ARM zazwyczaj mają JTAG, a wiele z nich nie ma żadnego innego interfejsu debugowania.

chamod
2015-06-29 23:25:00 UTC
view on stackexchange narkive permalink

Urządzenie do programowania mikrokontrolerów jest tym, czego potrzebujesz. Jest to element sprzętowy, który łączy się z komputerem i mikrokontrolerem w celu wykonania niezbędnych funkcji w celu załadowania programu do chipa. Debugger obwodów to urządzenie, które ma więcej funkcji niż programator, na przykład debugowanie kodu, gdy jest on uruchomiony na chipie. Możesz użyć ICD lub PIC Kit do zaprogramowania uC. Lub, jeśli chcesz, możesz również użyć bardzo prostego obwodu, takiego jak programator JDM.

Zwróć uwagę, że MPLAB IDE obsługuje PIC Kit i ICD. Ale jeśli używasz programatora JDM, będziesz musiał użyć innego oprogramowania, takiego jak PICPgm, aby załadować skompilowany układ.

Mister Mystère
2015-06-29 23:35:23 UTC
view on stackexchange narkive permalink

Przepis ogólny:

  1. Wpisz swój kod w edytorze tekstu w wybranym języku
  2. Przetłumacz ten język na kod maszynowy za pomocą kompilatora. Kod maszynowy to lista liczb szesnastkowych: niektóre reprezentują instrukcje, reszta to argumenty / parametry tych instrukcji. Powszechnie nazywany „plikiem HEX”. Każdy fragment programu sprowadza się do tego ciągu podstawowych instrukcji + ich parametrów.
  3. Przenieś ten kod maszynowy do pamięci programu swojego urządzenia. Odbywa się to za pomocą programatora. Programator jest dostarczany ze sterownikiem, który jest oprogramowaniem sterującym programatorem: daj mu plik HEX, a on zajmie się resztą. Programista odczyta twój plik HEX i pokręci wierszami programowania urządzenia (coś w rodzaju kodu Morse'a) w zakodowany sposób, aby faktycznie zapisać pamięć programu. Po załadowaniu programu następuje ponowne uruchomienie urządzenia, a następnie urządzenie automatycznie rozpoczyna wykonywanie kodu na samym początku pamięci programu. To twój kod. To jest rażąco powiedziane, ale na razie to prawie wszystko, co musisz wiedzieć.

Już prawie wszystko . Masz zintegrowane środowisko programistyczne, które robi 1 i 2 w bardzo przyjazny dla użytkownika sposób. Ma nawet interfejsy dla programistów, więc nie musisz się martwić o to, co to jest plik HEX (naciśnij „odtwórz” i gotowe).

Jednak nadal potrzebujesz programatora fizycznego, aby połączyć swoje urządzenie z komputerem - jest tam kilka numerów PIC. Pickit jest jednym z nich. Jeśli zamierzasz poważnie podchodzić do programowania wbudowanego, prawdopodobnie powinieneś zainwestować w debuger obwodów (ICD). To programista, a także coś, co pozwala podglądać lub zaglądać do zmiennych i rejestrów w mikro, a nawet przechodzić i zatrzymywać program do woli.



To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...