logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Projekt SST Multi Programator ISP port COM

zasoby 29 Lis 2003 23:58 10899 17
REKLAMA
  • Programuje w systemie(ISP) mikrokontrolery takie jak: 89S8252, 89S53, 89S51, 89S52, i rodzinę AVR(do 64KB kodu na razie). Używa do tego celu portu COM (można wybrać, który) a zasilanie pobiera z programowanego układu. Czas programowania ok. 4KB to ok. 1 minuta i 48 sekund.

    Projekt SST Multi Programator ISP port COM

    Ten projekt może nie jest nowy, ponieważ w Internecie można znaleźć sporo programatorów tzw. ISP, tzn., że mikrokontroler może być programowany w systemie poprzez kilkuprzewodowy interfejs. Można zapytać, że skoro jest już parę gotowych projektów to, po co tworzyć następny?

    Kiedyś siedziałem sobie przy komputerze tworząc kolejny program do mikrokontrolera tym razem próbowałem przerobić radio samochodowe z RDSem. no i za którymś razem zdenerwowało mnie bardzo kolejne przełączanie wtyczki, aby wydrukować kolejną wersję kodu. No właśnie. Większość programatorów używa tego samego złącza, co drukarka LPT. Powiecie pewnie żebym sobie albo zmienił drukarkę albo dołożył drugiego LPT’ka. Ale, po co mi drugi taki port. Drukarkę i tak trzeba będzie zmienić, ale jeszcze nie teraz.

    Dlatego właśnie zacząłem szukać programatorów, ISP, które używają złącza COM. No i owszem jest parę w Internecie, ale albo trzeba za nie zapłacić albo działają tylko z paroma układami. Dodatkowo ATMEL wprowadza nowy mikrokontroler AT89S52, który ma zastąpić AT89C51 i C52. No i jak to przystało na nowy produkt da się go zaprogramować przez ISP. Niestety inżynierowie z ATMEL a albo nie pomyśleli wystarczająco długo albo mieli inny powód i wprowadzili pewne zmiany w protokole komunikacji z tym chipem poprzez ISP. Normalność nakazywałaby zunifikowanie protokołu programowania albo z poprzednikami (89s8252, 89s53) albo przynajmniej z rodziną mikrokontrolerów AVR. Niestety mamy kolejną mutację protokołu i starym programatorem raczej nic nie zdziałamy. Dlatego postanowiłem opracować mój własny programator.

    Cały programator został wykonany od podstaw. Własnoręcznie zaprojektowałem płytkę drukowaną, napisałem wsad do mikrokontrolera oraz oprogramowanie pod windows. Do zaprojektowania płytki oraz do stworzenia schematu elektrycznego użyłem programy Circuitmaker 2000, który zawiera w sobie edytor schematów(Circuitmaker) i edytor obwodów drukowanych(Traxmaker). Ktoś pewnie zapyta, dlaczego nie użyłem pakietu Protela? Otóż, dlatego że polubiłem ten pakiet no i uruchamia się on szybciej niż Protel. Wsad do mikrokontrolera napisałem w Bascomie a aplikacje pod Windows w Visual Basicu. BASIC znowu ktoś zapyta, dlaczego? Ja uważam, że używanie programów wyższego rzędu niż asembler jest dużo przyjemniejsze, bo można się skupić na tym, co chcemy osiągnąć a nie na tym jak i co poprzesuwać, przez ACC. Ale dość już wstępu. Przejdźmy do szczegółów.

    Projekt SST Multi Programator ISP port COM

    Kompletny projekt w załączniku

    Autor: Szymon Trocki
    Zgoda na publikację: #3
    Załączniki:
    • sst_progra_isp.zip (1.15 MB) Musisz być zalogowany, aby pobrać ten załącznik.

    Fajne? Ranking DIY
    O autorze
    zasoby
    Poziom 23  
    Offline 
    zasoby napisał 784 postów o ocenie 447, pomógł 4 razy. Jest z nami od 2002 roku.
  • REKLAMA
  • #2 420047
    In
    Poziom 15  
    Posty: 197
    Pomógł: 2
    Ocena: 22
    Witam
    Ustroistwo ciekawe.Tylko dlaczego wszystkie pliki po rozpakowaniu razy dwa ? prawdopodobnie aby było więcej 8O i dlaczego 5p za 1.5M :?:
    Pozdrowienia i wesołych i spokojnych nadchodzących świąt :!:
  • #3 429110
    hynix
    Poziom 2  
    Posty: 2
    Friend Does it support atmel 89s52 ic
    :?
  • REKLAMA
  • #4 429745
    zasoby
    Poziom 23  
    Posty: 784
    Pomógł: 4
    Ocena: 447
    yes all types like 89S8252, 89S53, 89S51, 89S52
    and AVR family up to 64kB code in the moment
  • REKLAMA
  • #5 464810
    Zaro
    Poziom 11  
    Posty: 9
    Bardzo ciekawe, ale przydałby się soft pod DOS-a, a poza tym kto może mi zaprogramować 89c4051.
  • #6 490596
    szymtro
    Poziom 30  
    Posty: 1421
    Pomógł: 101
    Ocena: 59
    c4051 można zaprogramować każdym programatorem do tego celu.
    Co do obsługi w dosie to jeżeli znajdzie się chętny i wie jak to przerobić na wersje dosową to udostępnie plik źródłowy VB ale pod warunkiem, że umieści efekt pracy na elektrodzie(również).
  • #7 521360
    szymtro
    Poziom 30  
    Posty: 1421
    Pomógł: 101
    Ocena: 59
    UWAGA - jeżeli ktoś ściągnął sobie ten projekt to niech dodatkowo ściągnie sobie poprawioną aplikację. Przez drobny przypadek wyszło tak że ostatni bajt z pliku nie był wysyłany do programatora. Teraz jest OK. Dodatkowo jako drugi załącznik spakowane niezbedne biblioteki(tak na wszelki).
    Załączniki:
    • biblioteki.zip (607.61 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • SST Multi Programator ISP v25.exe (76 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #8 578313
    szymtro
    Poziom 30  
    Posty: 1421
    Pomógł: 101
    Ocena: 59
    Najnowsza wersja firmware do programatora.
    Teraz wystarczy jeden program sterujący - ten sam co do najnowszego programatora at89. Dzieki temu zmienia się tylko numer portu jak używamy dwóch różnych programatorów. I nowa naklejka na obudowę.
    Niedługo przedstawię też następny programator - bazujący na tym ale do programowania ATmega i ATtiny.
    Załączniki:
    • naklejka2.zip (6.46 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • program v31.zip (41.87 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • bascom.zip (11 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #9 578653
    elektryk
    Poziom 42  
    Posty: 11029
    Pomógł: 439
    Ocena: 241
    gulson napisał:
    yes all types like 89S8252, 89S53, 89S51, 89S52
    and AVR family up to 64kB code in the moment
    But the question was about 89C series, that IMHO have NOT ISP.
  • #10 584247
    Yoshi
    Poziom 19  
    Posty: 294
    Pomógł: 14
    Ocena: 18
    Witam,
    mam następujący problem.
    Wykonałem powyższy programator,wszystko działa poprawnie,ale niestety pod WinXP oraz W95.
    Sprawdzałem wielekrotnie,nawet dziś w pracy,programator programuje poprawnie bez żadnych problemów.
    Jestem użytkownikiem W98SE i po uruchomieniu programu obsługującego programator i wtbraniu jakiejkolwiek opcji pojawia się komunikat :
    RUN TIME ERROR 8012
    The device not open.

    Sprawdzałem ustawienia w systemie i d...
    Dziś podpiąłem programator do kilku komputerów,działa wszędzie oprócz komputerów z W98 oraz W98SE,pojawia się ten sam komunikat.
    Natomiast na komputerach z W95 oraz WinXP działa poprawnie.

    Co może być przyczyną braku komunikacji,co należy zmienić,ustawić,czy ktoś miał podobny problem ?
  • #11 585070
    szymtro
    Poziom 30  
    Posty: 1421
    Pomógł: 101
    Ocena: 59
    Kolega Yoshi był pierwszy - najnowszy wsad do proca nie działa. On działa tylko niezbędna jest wymiana kwarcu na 22.118.400 MHz(większy bitrate - 57600). Jak się tego nie zrobi to programator nawet w terminalu nie beknie. Przepraszam wszystkich za tą wpadkę z kwarcem - pisząc posta zapomniałem tego dodać.

    Tak że jeszcze raz - wsad do mikrokontrolera z pliku bascom.zip(ten ostatni) - musi być wymieniony kwarc z 11059200 na 22118400(ten wolniejszy chodzi niestabilnie na 57600)

    Co do tego problemu z error 8012. Dotyczy to otwierania portu. Jeszcze to sprawdzę ale pewnie chodzi o zarejestrowanie controlek .ocx. Niech ktoś to jeszcze sprawdzi - na win98 i na milenium powinien być ten sam problem - w win95 zawsze wszystko działa - dobry system.
  • #12 604072
    Przybyłek
    Poziom 14  
    Posty: 208
    Pomógł: 1
    Ocena: 43
    witam
    Mam problem z tym programatorem jk wlączam program to wyskakuje że brakuje pliku
  • REKLAMA
  • #13 604077
    Przybyłek
    Poziom 14  
    Posty: 208
    Pomógł: 1
    Ocena: 43
    jest to plik comdlg16.oxd
  • #14 604082
    Przybyłek
    Poziom 14  
    Posty: 208
    Pomógł: 1
    Ocena: 43
    przepraszam plik to comdlg32.ocx
  • #15 604486
    szymtro
    Poziom 30  
    Posty: 1421
    Pomógł: 101
    Ocena: 59
    Pewnie nie ściągnąłeś sobie bibliotek. Plik biblioteki.zip. Jak coś to wyślij mi PW z mailem to ci wyśle żebyś nie tracił punktów.
  • #16 616350
    szymtro
    Poziom 30  
    Posty: 1421
    Pomógł: 101
    Ocena: 59
    kupiłem ostatnio 90s2313 i zauważyłem że czasem się programuje a czasem nie. Z poprawionym softem działa za każdym razem.
    Załączniki:
    • bascom v63.zip (10.99 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #17 4569478
    cypa100
    Poziom 12  
    Posty: 44
    Ocena: 10
    Czy tym programatorem zaprogramuje układ AT89C4051

Podsumowanie tematu

✨ Projekt SST Multi Programator ISP umożliwia programowanie mikrokontrolerów z rodziny 89S oraz AVR (do 64KB kodu) za pomocą portu COM, zasilanie pobierane jest z programowanego układu. Czas programowania 4KB wynosi około 1 minuty i 48 sekund. Projekt bazuje na interfejsie ISP, który pozwala na programowanie mikrokontrolerów przez kilka przewodów, eliminując konieczność używania złącza LPT, co ułatwia pracę przy częstych aktualizacjach oprogramowania. W dyskusji poruszono kwestie kompatybilności z różnymi systemami operacyjnymi (Win95, Win98, Win98SE, WinXP), gdzie pojawiały się błędy typu "RUN TIME ERROR 8012" związane z otwieraniem portu COM i brakującymi bibliotekami (comdlg32.ocx). Rozwiązaniem było zarejestrowanie kontrolek .ocx oraz poprawa firmware, w tym wymiana kwarcu mikrokontrolera na 22.1184 MHz dla stabilnej pracy przy prędkości 57600 baudów. Udostępniono także poprawioną aplikację i biblioteki. Projektator planuje rozwój programatora do układów ATmega i ATtiny. W dyskusji pojawiły się pytania o możliwość programowania układów AT89C4051, które nie posiadają natywnego ISP, oraz o wsparcie dla innych modeli mikrokontrolerów. Użytkownicy zgłaszali problemy z brakującymi plikami i stabilnością programowania, które zostały rozwiązane przez aktualizacje oprogramowania i poprawki sprzętowe.
Podsumowanie wygenerowane przez AI na podstawie treści dyskusji.
REKLAMA