Rozwój elektroniki przebiega szybko i coraz częściej mikrokontroler jest głównym elementem tego lub innego urządzenia. Wykonuje główną pracę i uwalnia projektanta od konieczności tworzenia wyrafinowanych rozwiązań obwodów, zmniejszając w ten sposób rozmiar płytki drukowanej do minimum. Jak wszyscy wiedzą, mikrokontroler jest kontrolowany przez program zapisany w jego wewnętrznej pamięci. A jeśli doświadczony programista elektroniczny nie ma problemów z wykorzystaniem mikrokontrolerów w swoich urządzeniach, to dla początkującego amatora radia próbującego napisać program do kontrolera (szczególnie PIC) może okazać się dużym rozczarowaniem, a czasem małym pokazem pirotechnicznym w postaci czipu do palenia.
Dziwne, ale przy całej wielkości Internetu ma bardzo mało informacji na temat oprogramowania układowego Kontrolery Pic, a materiał, który można znaleźć, ma bardzo wątpliwą jakość. Oczywiście możesz kupić programatora fabrycznego za nieodpowiednią cenę i uszyć tyle, ile chcesz, ale co, jeśli dana osoba nie jest zaangażowana w masową produkcję. Do tych celów możesz stworzyć prosty i niedrogi sposób wdrożenia domowej robotyo nazwie Programista JDM zgodnie z poniższym schematem (rysunek nr 1):
Dziwne, ale przy całej wielkości Internetu ma bardzo mało informacji na temat oprogramowania układowego Kontrolery Pic, a materiał, który można znaleźć, ma bardzo wątpliwą jakość. Oczywiście możesz kupić programatora fabrycznego za nieodpowiednią cenę i uszyć tyle, ile chcesz, ale co, jeśli dana osoba nie jest zaangażowana w masową produkcję. Do tych celów możesz stworzyć prosty i niedrogi sposób wdrożenia domowej robotyo nazwie Programista JDM zgodnie z poniższym schematem (rysunek nr 1):
Rysunek nr 1 - schemat programatora
Natychmiast przynoszę listę elementów dla tych, którzy są zbyt leniwi, aby zajrzeć do diagramu:
- R1 - 10 kOhm
- R2 - 10 kOhm (obcięty). Dostosowując rezystancję tego rezystora, podczas programowania należy uzyskać napięcie około 13 V na styku nr 4 (VPP). W moim przypadku rezystancja wynosi 1,2 kOhm
- R3 - 200 omów
- R4, R5 - 1,5 kOhm
- VD1, VD2, VD3, VD4, VD6 - 1N4148
- VD5 - 1N4733A (napięcie stabilizacji 5,1 V)
- VD7 - 1N4743A (napięcie stabilizacyjne 13 V)
- C1 - 100 nF (0,1 μF)
- C2 - 470 μF x 16 V (elektrolityczny)
- SUB-D9F - złącze portu COM (MOM lub SOCKET)
- Gniazdo DIP8 - zależy od używanego kontrolera
Obwód wykorzystuje przykład podłączenia takich popularnych kontrolerów jak PIC12F675 i PIC12F629, ale to wcale nie oznacza, że oprogramowanie układowe innej serii Zdj będzie niemożliwe. Aby napisać program do sterownika innego typu, wystarczy przenieść przewody programatora zgodnie z rysunkiem 2, który podano poniżej.
Rysunek nr 2 - Opcje obudowy kontrolera PIC z niezbędnymi wnioskami
Jak można się domyślić, obudowa jest używana w schemacie mojego programisty Dip8. Z wielkim pragnieniem możesz stworzyć uniwersalny adapter dla każdego rodzaju układu, uzyskując w ten sposób uniwersalny programator. Ale od kiedy Kontrolery PIC Rzadko pracuję, to mi wystarczy.
Chociaż sam obwód jest dość prosty i nie powoduje trudności w montażu, ale wymaga również szacunku. Dlatego fajnie byłoby zrobić dla niego płytkę drukowaną. Po kilku manipulacjach z programem Sprintlayout, textolit, wiertło i żelazo, urodził się tutaj taki blank (zdjęcie nr 3).
Chociaż sam obwód jest dość prosty i nie powoduje trudności w montażu, ale wymaga również szacunku. Dlatego fajnie byłoby zrobić dla niego płytkę drukowaną. Po kilku manipulacjach z programem Sprintlayout, textolit, wiertło i żelazo, urodził się tutaj taki blank (zdjęcie nr 3).
Zdjęcie nr 3 - płytka programatora
Pobierz źródło PCB dla programu Sprintlayout Możesz skorzystać z tego linku:
W razie potrzeby możesz go zmienić na swój typ kontrolera PIC. Dla tych, którzy zdecydowali się pozostawić tablicę bez zmian, poszerzyłem widok z boku części, aby ułatwić instalację (rysunek 4).
W razie potrzeby możesz go zmienić na swój typ kontrolera PIC. Dla tych, którzy zdecydowali się pozostawić tablicę bez zmian, poszerzyłem widok z boku części, aby ułatwić instalację (rysunek 4).
Rysunek 4 - Tablica po stronie montażu
Trochę więcej czarów z lutownicą, a my mamy gotowe urządzenie, które może flashować Kontroler obrazu przez Port COM twój komputer. Wciąż ciepły i nie zmyty z topnika, wynik moich wysiłków pokazany jest na zdjęciu nr 5.
Od teraz pierwszy krok w kierunku oprogramowania układowego Kontroler obrazudobiegł końca. Drugi etap będzie obejmował podłączenie programatora do komputera i pracę z programem IC Prog.
Niestety, nie wszystkie współczesne komputery i laptopy są w stanie współpracować z tym programatorem z powodu banalnej nieobecności na nich Porty COM, a te, które są zainstalowane na laptopach, nie zapewniają niezbędnego programowania 12V. Postanowiłem więc zwrócić się do mojego pierwszego PCktóry dawno temu odkurzył i czekał na swoją najlepszą godzinę (i nadal czekał).
Więc włącz komputer i najpierw zainstaluj program IC Prog. Możesz pobrać go ze strony autora lub pod tym linkiem:
Podłączamy programator do Port COM i uruchom nowo zainstalowaną aplikację. Do prawidłowego działania konieczne jest wykonanie szeregu manipulacji. Początkowo konieczne jest wybranie rodzaju kontrolera, który będziemy szyć. Mam to PIC12F675. Na zrzucie ekranu nr 6 pole wyboru kontrolera jest podświetlone na czerwono.
Niestety, nie wszystkie współczesne komputery i laptopy są w stanie współpracować z tym programatorem z powodu banalnej nieobecności na nich Porty COM, a te, które są zainstalowane na laptopach, nie zapewniają niezbędnego programowania 12V. Postanowiłem więc zwrócić się do mojego pierwszego PCktóry dawno temu odkurzył i czekał na swoją najlepszą godzinę (i nadal czekał).
Więc włącz komputer i najpierw zainstaluj program IC Prog. Możesz pobrać go ze strony autora lub pod tym linkiem:
Podłączamy programator do Port COM i uruchom nowo zainstalowaną aplikację. Do prawidłowego działania konieczne jest wykonanie szeregu manipulacji. Początkowo konieczne jest wybranie rodzaju kontrolera, który będziemy szyć. Mam to PIC12F675. Na zrzucie ekranu nr 6 pole wyboru kontrolera jest podświetlone na czerwono.
Zrzut ekranu 6 - wybór typu mikrokontrolera
Następnie przejdź do menu „Ustawienia ”->„ Opcje”, w wyświetlonym oknie wybierz kartę I2C i zaznacz pola, jak pokazano na zrzucie ekranu # 7.
Zrzut ekranu 7 - ustawienie metody nagrywania kontrolera
W tym samym oknie przejdź na kartę „Programowanie„i wybierz”Kontrola programowania". Sprawdź po programowaniu może spowodować błąd, ponieważ w niektórych przypadkach oprogramowanie instaluje blokady blokujące SR. Aby się nie oszukać, lepiej wyłączyć tę kontrolę. W skrócie, postępuj zgodnie ze zrzutem ekranu nr 8.
Zrzut ekranu nr 8 - konfiguracja weryfikacji
Kontynuujemy pracę z tym oknem i przechodzimy do „Ogólne". Tutaj należy ustawić priorytet programu i koniecznie użyć NT / 2000 / XP sterownik (zrzut ekranu nr 9). W niektórych przypadkach program może sugerować instalację tego sterownika i może wymagać ponownego uruchomienia IC Prog.
Zrzut ekranu 9 - Ustawienia ogólne
Dzięki temu oknu praca się kończy. Teraz przejdźmy do ustawień samego programatora. Wybierz z menu „Ustawienia ”->„ Ustawienia programatora”lub po prostu naciśnij klawisz F3. Pojawi się następujące okno, pokazane na zrzucie ekranu nr 10.
Zrzut ekranu nr 10 - okno ustawień programatora
Przede wszystkim wybierz typ programatora - Programista Jdm. Następnie ustawiamy przycisk opcji do korzystania ze sterownika Windows. Następnym krokiem jest wybór Port COMz którym jest połączony twój programista. Jeśli tak, nie ma żadnych pytań, a jeśli jest ich więcej, zajrzyj do menedżera urządzeń, który jest aktualnie używany. Suwak opóźnienia wejścia / wyjścia służy do kontroli prędkości zapisu i odczytu. Może to być potrzebne na szybkich komputerach, a jeśli występują problemy z oprogramowaniem układowym - ten parametr należy zwiększyć. W moim przypadku pozostał domyślnie równy 10 i wszystko działało dobrze.
W tym ustawieniu programu IC Prog się skończyło i możesz przejść do samego oprogramowania układowego, ale najpierw czytamy dane z mikrokontrolera i sprawdzamy, co jest w nim zapisane. Aby to zrobić, na pasku narzędzi kliknij ikonę mikroukładu z zieloną strzałką, jak pokazano na zrzucie ekranu nr 11.
W tym ustawieniu programu IC Prog się skończyło i możesz przejść do samego oprogramowania układowego, ale najpierw czytamy dane z mikrokontrolera i sprawdzamy, co jest w nim zapisane. Aby to zrobić, na pasku narzędzi kliknij ikonę mikroukładu z zieloną strzałką, jak pokazano na zrzucie ekranu nr 11.
Screenshot 11 - Proces odczytu informacji z mikrokontrolera
Jeśli mikrokontroler jest nowy i nie był wcześniej flashowany, wówczas wszystkie jego komórki pamięci zostaną wypełnione wartościami 3FFFz wyjątkiem ostatniego. Będzie zawierać wartość stałej kalibracyjnej. Jest to bardzo ważna i unikalna wartość dla każdego kontrolera. Dokładność zegara zależy od niego, który jest wybierany przez producenta, wybierając i instalując tę stałą. Zrzut ekranu nr 12 pokazuje komórkę pamięci, w której stała zostanie zapisana podczas odczytu kontrolera.
Zrzut ekranu 12 - wartość stałej kalibracji
Powtarzam, że wartość jest unikalna dla każdego mikroukładu i nie musi pokrywać się z tym, co pokazano na rysunku. Wielu z braku doświadczenia zastępuje tę stałą, a następnie Kontroler obrazu zaczyna działać niepoprawnie, jeśli projekt używa taktowania z wewnętrznego generatora. Radzę zapisać tę stałą i nakleić napis z jego wartością bezpośrednio na kontrolerze. W ten sposób unikniesz wielu problemów w przyszłości. Tak więc wartość jest zapisywana - idziemy dalej. Otwórz plik oprogramowania układowego, który zwykle ma rozszerzenie .hex. Teraz zamiast pisać 3FFF, bufor programowania zawiera kod naszego programu (zrzut ekranu nr 13).
Zrzut ekranu 13 - oprogramowanie układowe pobrane do bufora programowania
Napisałem powyżej, że wielu zastępuje stałą kalibracji przez zaniedbanie. Kiedy to się dzieje? Dzieje się tak, gdy plik oprogramowania wewnętrznego jest otwarty. Wartość stałej zmienia się automatycznie na 3FFF a jeśli rozpoczniesz proces programowania, nie będzie odwrotu. Na zrzucie ekranu nr 14 ta komórka pamięci, w której stała była poprzednio 3450 (przed otwarciem plik szesnastkowy).
Zrzut ekranu nr 14 - automatyczna zmiana stałej kalibracji
Teraz musisz dokładnie wykonać poniższe kroki. Klikamy ikonę mikroukładu z błyskawicą na pasku narzędzi, informując w ten sposób program, że chcemy zainicjować proces oprogramowania układowego. Program zapyta, czy jesteśmy pewni, że chcemy sflashować to urządzenie. Zgadzamy się i klikamy „TAK". Następnie otrzymujemy ostrzeżenie pokazane na zrzucie ekranu # 15.
Zrzut ekranu nr 15 - ostrzeżenie o rozbieżności w wartościach stałej zegara
IC Prog mówi nam, że jedna wartość stałej kalibracyjnej (w moim przypadku 3450), a teraz inny (3FFF) automatycznie podstawiony z plik szesnastkowy. Proponuje się również pozostawienie wartości domyślnej 3FFF. Ważne jest, aby kliknąć „NIE„do IC Prog podczas programowania zwrócił nam wartość 3450 lub co będzie z tobą. Ogólnie kliknij „NIE”i obserwuj następujące okno (zrzut ekranu nr 16).
Zrzut ekranu 16 - proces programowania
W tym okresie radzę nie naciskać ani obciążać komputera innymi zadaniami. Kiedy zrobiłem zrzut ekranu dla tego artykułu, po kliknięciu przycisku Drukuj ekran wystąpił błąd zapisu i musiałem to zrobić od nowa. Po pewnym czasie IC Prog wyświetli komunikat o pomyślnej weryfikacji nowo napisanego kodu w twoim Kontroler obrazu, więc wszystkim, którzy lubili ten artykuł, chcę to zobaczyć po podobnych wysiłkach (zrzut ekranu nr 17):
Zrzut ekranu nr 17 - oprogramowanie układowe powiodło się, możesz się zrelaksować
Jeśli w trakcie procesu masz jakieś pytania, przeczytaj ponownie ponownie artykuł, a na pewno wszystko się ułoży - sprawdzone osobiście. Powodzenia dla wszystkich i twórczego sukcesu !!!