Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Projekt SST Multi Programator ISP port COM

zasoby 29 Nov 2003 23:58 10518 17
IGE-XAO
  • 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
    Attachments:

    Cool? Ranking DIY
    Can you write similar article? Send message to me and you will get SD card 64GB.
    About Author
    zasoby
    Level 23  
    Offline 
    dddddd
    zasoby wrote 785 posts with rating 386, helped 4 times. Been with us since 2002 year.
  • IGE-XAO
  • #2
    In
    Level 15  
    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
    hynix
    Level 2  
    Friend Does it support atmel 89s52 ic
    :?
  • #4
    zasoby
    Level 23  
    yes all types like 89S8252, 89S53, 89S51, 89S52
    and AVR family up to 64kB code in the moment
  • IGE-XAO
  • #5
    Zaro
    Level 11  
    Bardzo ciekawe, ale przydałby się soft pod DOS-a, a poza tym kto może mi zaprogramować 89c4051.
  • #6
    szymtro
    Level 30  
    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
    szymtro
    Level 30  
    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).
  • #8
    szymtro
    Level 30  
    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.
  • #9
    elektryk
    Level 42  
    gulson wrote:
    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
    Yoshi
    Level 19  
    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
    szymtro
    Level 30  
    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
    Przybyłek
    Level 13  
    witam
    Mam problem z tym programatorem jk wlączam program to wyskakuje że brakuje pliku
  • #14
    Przybyłek
    Level 13  
    przepraszam plik to comdlg32.ocx
  • #15
    szymtro
    Level 30  
    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.
  • #17
    cypa100
    Level 11  
    Czy tym programatorem zaprogramuje układ AT89C4051