ISP Programmer A.Dybkowskiego

Troche mnie juz meczy PonyProg (glownie ze wgledu na dziwne zachowania podczas wczytywania plikow hex i eep oraz rozne dziwne bledy, np. verify failed pomimo, ze chip zawiera prawidlowa zawartosc itd.) i pomyslalem o ISP Programmer. Program na pierwszy rzut oka swietny (doskonala robota, gratuluje), ale czy moglbym prosic o pare usprawnien?

  1. Po zakonczeniu programowania zostawia mi RESET na ON, dzieki czemu musze recznie klikac za kazdym razem OFF, zeby przetestowac uklad.
  2. Maly feature:) Jesli wskazuje mu plik z rozszerzeniem hex to znajdujac w tym katalogu plik o tej samej nazwie z rozszerzeniem eep nie moglby mi go automatycznie wczytac? Roboty niewiele, a mysle, ze byloby to przydatne.

Co o tym myslicie?

P.S. Zeby nie bylo, ze malkontent ze mnie, a palcem sam nie kiwne, to gdybym mial kod zrodlowy sam chetnie to poprawie:)

Reply to
T.M.F.
Loading thread data ...

Jezeli kazda operacje wykonujesz osobno (np. klikajac "Erase" a potem "Pgm Flash") to program nie domysli sie, ze akurat chciales na koncu zdjac reset. Polecam wykorzystanie przycisku "Erase & Program All", ktory kasuje uklad, programuje i weryfikuje pamiec Flash i EEPROM (gdy jest wybrany plik do programowania EEPROMu) a a koncu jest zdejmowany automatycznie reset.

Pomysle, moze to i byloby przydatne. Ale co z uzytkownikami zaskoczonymi, ze po wybraniu pliku .hex do programowania pamieci Flash jakos automagicznie i bez ich zgody zmienil sie tez plik dla EEPROMu?

Reply to
Adam Dybkowski

Adam Dybkowski napisał(a): >(ciach) Jesli juz mozna to i ja sie dolacze do sugerowanych zmian ;) przydala by sie obsluga wiekszej ilosci prockow (rodzajow). z 51 widze: S51/S52 S53/8252

8253 A to nie wszystkie 51 ktore maja isp/spi, pozatym chyba duzo wygodniej by bylo wybierac procka z listy - tzn wybor S51 S52 S53 8252 8253 niz laczone S51/52 - usera niewiele interesuje czy dwa typy procka programuje sie tak samo czy nie, wazne zeby latwo i bezblednie wybral procek). Pozatym - ReadSignature - jesli wybiore procek wlasciwy - przewaznie odczyta ok, ale jesli wybiore nie ten co trzeba - to jest sieczka/FF/00 - praktyczniejsze wydaje mi sie robienie odczytu sygnaturki wszelkimi metodami i podanie wyniku tylko sensownego. Tzn - po nacisnieciu read signature soft proboje odczytac wg roznych typow prockow, a wyniki odczytu odfiltrowuje do sensownych (bo FF lub 00 mozna wyrzucic) i podaje typ procka. Czesto jest uklad, jest isp, a niewiadomo jaki procek siedzi i trzeba po kolei klikac moze ktorys typ zalapie...

Przydala by sie jeszcze jedna sprawa -w systemach 2000/xp niezawsze dziala "sieganie" do portu lpt - soft moglby to jakos sprawdzac? bo czesto niewiem czy brakuje mi jakiegos portio.dll, czy lpt uwalone, kabel zly, czy programator nie chodzi, albo procek nie chodzi... Niby wszystko wyglada ok, a nie programuje/zle programuje/udaje ze programuje a odczytuje same FF itp.

A pozatym rowniez chwale - swietny sofcik.

Reply to
BartekK

Dla mnie też byłoby to naturalne.

programowania pamieci Flash

Dorób okienko opcji, a w nim ptaszka "Automatically reload related files", będą zadowolone oba obozy. :-)

Pozdrawiam Piotr Wyderski

Reply to
Piotr Wyderski

to moze przy okazji poprosze cie o jeszcze jedna rzecz - mozliwosc kalibracji wewnetrznego oscylatora RC w AVR zgodnie z dokumentem "AVR053: Calibration of the internal RC oscillator"

Reply to
T.M.F.

W jakich prockach? O ile pamietam (z czasow zabawy z ATmega8) to kalibracje zrobione w fabryce mozna tylko odczytac z procesora (i robi to ISP Programmer) a potem wykorzystac do swoich potrzeb programowo. W innych AVRach rozwiazali to inaczej?

Reply to
Adam Dybkowski

Nie. Procek jest kalibrowany dla jednej czestotliwosci. Jesli generator RC potrafi pracowac z kilkoma to dla pozostalych musisz sobie sam skalibrowac programowo ladujac stosowna wartosc do rejestru OSCCAL. W podanym przeze mnie dokumencie jest dokladny opis jak programowo kalibrowac procka. Z tym, ze zeby sie to dalo zrobic programator na MISO musi wystawic przebieg 32768Hz, tak dlugo az procek sie skalibruje (znaczy program to zrobi) sygnalizujac to na linii MOSI. W sumie pod Windowsem programowe wygenerowanie przebiegu o dokladnej czestotliwosci moze byc w sumie niemozliwe... ale gdybys mial chwilke to zerknij na tego pdfa.

Reply to
T.M.F.

No to wszystko jasne - nie ma szans wygenerowac takiego przebiegu na porcie LPT, szczegolnie ze mialoby to sluzyc do kalibracji oscylatora. To uda sie tylko w programatorach o wiekszej lub mniejszej inteligencji sprzetu. A nie w kabelku z jednym buforem za 2 zl. :(

Reply to
Adam Dybkowski

Niestety:( Chyba, ze pod w98, ale kto jeszcze tego uzywa:) Natomiast uzywajac twojego programu znalazlem pare dziwnych bledow(?) W kazdym razie programujac nim 90S2313 wybieram erase&program all i procek sie szybko programuje, po chwili zaczyna weryfikacje i tu dziwna rzecz. Trwa to w nieskonczonosc, na dole jakies dziwne cyferki, nie mialem sily czekac az skonczy. Jesli chcesz postaram sie problem dokladniej opisac i ew. wyslac screenshoty, no ale to juz na priv jesli jestes zainteresowany.

Reply to
T.M.F.

Tez sie nie da. Jestem prawie pewny, ze i w DOSie nie bedzie lekko. I nie chodzi tu o regularne generowanie przerwań 32768 Hz (a właściwie trzeba by 2x częściej aby wygenerować falę prostokątną), ale o wypchnięcie tego przez LPT. Procek za 5 zł podłączony do portu COM załatwi sprawę.

Czy jeżeli przeprowadzasz operacje klikając każdą oddzielnie to działa dobrze (tzn. po kolei: odczytanie sygnatury, erase, pgm flash, verify flash, pgm eeprom, verify eeprom), a robione przyciskiem Erase&Program All już nie działa?

Reply to
Adam Dybkowski

Problemem jest chyba plik eep. Program ktory programuje nie zawiera danych w EEPROM, wiec powstaje pusty plik zawierajacy: :00000001FF Twoj program przy jego programowaniu sie wykrzacza - pisze np. 644 z

65408 i tak sobie postepuje. Dokladnie, jak cokolwiek umieszcze w EEPROM to juz jest ok. Kolejna rzecz to czasami po Erase Chip traci sie sygnatura ukladu. Co ciekawe program czasami potrafi ja odczytac bez problemu, a czasami w takiej sytuacji musze recznie dac reset off (po read sig. program mi zostawia reset on o czym juz pisalem). Erase & pgm all oczywiscie mi wylacza reset, ale nie wiem dlaczego samo programowanie FLASH nie moze go zostawic w stanie w jakim go zastalo:) Pozdrawiam, T.M.F.
Reply to
T.M.F.

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.