Witam Proboje sobie zlozyc pewne urzadzenie na w/w PICu. Do programowana uzywam Willema, udalo mi sie raz zaprogramowac uklad, jednak musze go przeprogramowac i tu sie zaczynaja schody... PIC sie nie chce skasowac. Przy probie kasowania dostaje komunikat "Blad zapisu pola OSCCAL" W przypadku gdy probuje nadpisac nowym hexem pamiec, willem pisze "blad zapisu pola programu"
Czy ktos moze mi powiedziec co jest grane ? Czyzby to F w nazwie bylo tylko dla "PICu" a ten uklad jest OTP ?
Nie, układ nie jest OTP :-]. Podejrzewałbym raczej twój programator. Do uruchomienia trybu programowania konieczne jest przytrzymanie nogi zegara, danych na masie i podanie napięcia zasilania i programującego w odpowiedniej sekwencji
formatting link
Większość prostych programatorów tego nie potrafi. Zmontuj sobie jdma z dodatkowym tranzystorem do odcinania zasilania
Jakieś dzikie oznaczenia, pytanie jest czy MCLR jest ustawiony na Internal czy External?
Zakładam, że Internal bo w innym wypadku nie było by problemu.
Pytanie jeszcze jak skonfigurowałeś porty GP0 i GP1 (wejście/ wyjście)?
Nic się z tym PICem nie stało tylko nie doczytałeś pewnie jakie są warunki programowania.
W skrócie - Jeśli masz ustawiony MCLR na wewnętrzny to programator nie jest w stanie zatrzymać/wyzerować procesora sygnałem "0" -> MCLR. Jeśli zatem na GP0 lub GP1 w czasie pracy pojawia się "1" to, tak jak już był wspomniane, nie jest wygenerowany warunek wejścia w tryb programowania. Jeśli zdarzy się przypadkiem, że procesor wejdzie w tryb programowania to i tak może odczytać nieprawidłowe informacje gdy przesunie się licznik rozkazów.
Rozwiązaniem problemu jest programator, który nie podaje napięcia na stałe ale ma możliwość załączania tylko na czas programowania.
Jak już go wykasujesz to ustaw w configu MCLR na zewnętrzne i po sprawie.
Po nowego nie ma sensu bo z każdym stanie się to samo.
Problem zazegnany. Programator JDM w wersji z tranzystorem MOSFET dal sobie rade skasowac i zaprogramowac uklad. Dla potomnych zostawie tylko informacje ze tego 2n7000 mozna z powodzniem zastapic BS170
W kwesti tej konfiguracji bitow czekam ze kolega mi to moze wyjasni, bede wiedziec na przyszlosc.
sam możesz też wyjaśnić, wszystko jest w pdfie. O oscylatorze sobie poczytaj , a dalej to:
watchdog: robi reset procka w czasie działania procka jeśli timer odliczający ten reset nie zostanie skasowany, przydatne do układów gdzie procek może być zakłócony np. w samochodzie, kasuje sie go poleceniem w takich przypadkach CLRWDT, oczywiście czas timera się ustala i można ustalić od kilku chyba ms do
200 czy jakoś tak
power up timer: timer startujący procka po opuźnieniu aby napięcie się ustabilizowało
brown out detect: czujnik spadku napięcia, robi reset chyba w takich przypadkach , nie używałem nigdy
code protect: no comment
data ee read protect: to samo ale do pamięci wewnętrznej eeprom
Tak jak wspominałem, najlepiej zainstaluj MPLABa, a potem zaimportuj plik hex i zobacz jak wygląda słowo konfiguracyjne w oryginale.
Kroki:
Ustaw procesor: Configure -> Select Device...
File -> Import...
Configure -> Configuration Bits...
Microchip, do danego procesora, zawsze udostępnia dokumentację podzieloną na dwie cześci: 'Data Sheet' oraz 'Programming Specification', opis słowa konfiguracyjnego znajdziesz akurat w jednym i drugim dokumencie:
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.