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

Miniprogramator mikrokontrolerów AT89Cx051 na LPT

Nemo 29 Lut 2004 00:20 53476 145
  • Keywords: AT89C2051, AT89C1051, AT89C4051, PFP-01

    Co się odwlecze, to nie uciecze...

    Obiecałem programator małych Atmeli na LPT, no i wreszcie jest. Cały opis jest w pliku spakowanym w HTML'u, zaś program osobno. Układ jest sprawdzony i działa. Mam nadzieję, że będzie przydatny.

    Programator wymaga tylko jednego napięcia zasilającego 5V o wydajności np. 100mA np. z USB, albo Game Portu (programator pobiera około 10mA) i zapewnia wszystkie przewidziane przez producenta operacje. Zapis, odczyt, kasowanie, zapis bitów blokady i odczyt sygnatury. Dalszy opis w załączniku.

    Do projektu dostępne są płytki drukowane, jak w opisie.
    Wiadomość o płytkach drukowanych i kitach: Link: Kity i płytki.
    Pozdrawiam.

    Obsługa pod XP i 2000: Należy zainstalować taki programik, jak ten w linku. Dzięki niemu programator ożywa. Proszę o sygnały, czy to działa. http://www.vendetta.org/files/userport.zip

    PS. Wszelkie problemy z budową i eksploatacją proszę zgłaszać pod tym postem, aby inni też mogli się z nimi zapoznać. Wsparcie serwisowe zapewnione. :)

    Fajne? Ranking DIY
    O autorze
    Nemo
    Poziom 31  
    Offline 
    Specjalizuje się w: technolog chemiczny
    Nemo napisał 2077 postów o ocenie 70, pomógł 9 razy. Mieszka w mieście Radom. Jest z nami od 2003 roku.
  • #2 524695
    CosteC
    Poziom 38  
    czy ktos to już zbudował? i czy działa pod XP? albo 2000? czy też tylko i jedynie pod 95 i 98?
  • #3 524697
    Nemo
    Poziom 31  
    Działa pod W95 i W98, na innych nie był sprawdzany. Na XP być może, ale coś trzeba chyba doinstalować, ze względu na bezpośrednie odwołania do portów. Poza tym pisany jest pod Win16, a nie Win32.
    Pozdrawiam.
  • #4 527251
    Danieloos
    Poziom 25  
    kilka pytań co do tego jakim programem potraktować ten progamator
    moze miał bys schemat ideowy lub moze jestes w stanie wysłac za pobraniem orginalną płytke
    ja tam zabardzo nie widze druku pozdrawiam..
  • #5 528427
    Nemo
    Poziom 31  
    W pierwszym poście jasno napisałem: Wiadomości odnośnie płytek na PW. Kropka.
    Pozdrawiam.
  • #6 529171
    Akane
    Poziom 27  
    alter, może ja piję za dużo kawy, ale nie widać nigdzie opcji OPEN! jak mam zaprogramować pamięć, skoro nie można żadnego pliku z dysku otworzyć
  • #7 531523
    Nemo
    Poziom 31  
    Ależ jest. Tyle, że jej uaktywnienie wymaga sprawnego programatora w porcie LPT. Jeśli program nie znajdzie programatora, nie uruchomi się. Na schemacie jest dokładnie opisana budowa programatora. Wykonanie w 100% zgodnie ze schematem zapewnia jego poprawną pracę.
    Pozdrawiam.
  • #8 534119
    lechoo
    Poziom 39  
    Jakby trochę lepiej przemyśleć konstrukcję przetwornicy 5V/12V to byłby 1 scalak mniej...
  • #9 534872
    Nemo
    Poziom 31  
    Proszę bardzo, zaproponuj. Najlepiej w tym temacie. Może z czasem powstanie wersja 1.1 programatora. Oczywiście, jeśli będzie większe zainteresowanie (obecne oceniam na 10%).
    Pozdrawiam.
  • #10 538620
    silvvester
    Poziom 25  
    programator działa jak trzeba z uruchomieniem też nie ma większych problemów .
    sprawdzany na w98 , przy opóźnieniu 5 w ->system .
    :multi:
  • #11 641953
    amoc
    Poziom 11  
    czy programator wspulpracuje z programem Bascom ?
  • #12 641981
    Yoshi
    Poziom 19  
    amoc napisał:
    czy programator wspulpracuje z programem Bascom ?


    Witaj powinien,ponieważ w opcjach Programmer wybierasz External programmer wskazujesz ścieżkę dostępu do programu.
  • #13 644763
    szymonnn
    Poziom 11  
    nie moge pobrac tych plikow,choc punkty mam,to gdy daje dowland, chce mi zapisac jako html. czy ktos moglbym i wyslac te 2 zipy na e-maila? bede wdzieczny:> robin321(_at_)wp.pl
  • #15 664863
    poomex
    Poziom 11  
    Czy ktos sprawdzil czy ten programator dziala pod win xp i 2000, ewentualnie jaka jest procedura uruchomienia go na tych systemach?
  • #16 665266
    Nemo
    Poziom 31  
    Obecna wersja programu, o ile mi wiadomo, nie chodzi na systemach tego rodzaju. Ale może komuś się to udało uruchomić na XP.
    Być może powstanie wersja wykorzystująca bibliotekę dlportio.dll (tak jak w PonyProg'u), ale na razie nie mam czasu na próby. Może w wakacje.
    Pozdrawiam.
  • #18 670492
    weweru
    Poziom 12  
    pytanie może głupie, ale
    Jak działa z programem keil?
  • #19 674095
    Nemo
    Poziom 31  
    Keil generuje plik *.hex (tak sądzę). Należy go przekonwertować na *.bin np. programikiem hex2bin. Jest w Internecie oraz należy do kitu.
    Pozdrawiam.
  • #20 822686
    UnLoved
    Poziom 12  
    i czy nie dałoby się przypadkiem zmniejszyć ilość elementów przez wyrzucenie ze schematu tej przetwornicy i podłączenie normalnego zasilania 5V i 12V z zasilacza komputerowego? pozatym wydaje mi się że takie zasilanie z przetwornicy może robić jakieś błędy w programowaniu


    ps: czy można na upartego podłączyć zasilanie 5V normalnie z zasilacza komputerowego?
  • #21 823259
    Krzychu ADC
    Poziom 15  
    Nie narzekaj UnLoved, jak ci się tamta płytka nie podoba to zmotujesz wszystko na uniwersalnej um5 w pare godzin. Przetwornica dziala dobrze (jestem pod wrażeniam) i niema potrzeby jej wymiany.

    A teraz byćmoże lamerskie pytaie, ale jestem początkujący: Rozumiem że pliki ze wsadami muszą być BIN (to że domyślnie szuka *.eep nie ma znaczenia)?
  • #22 823544
    UnLoved
    Poziom 12  
    nie narzekam tylko się post nie zmienil a ja chcę sobie sam płytkę wytrawić tylko pytam się czy mogę podłšczyć obojętnie jakie +5V
  • #23 825236
    Nemo
    Poziom 31  
    Rozszerzenie *.EEP pozostało jako relikt z poprzednich zastosowań programu. To jest to samo co *.BIN. W najnowszej wersji programu będzie to poprawione, a może nawet uda mi się dodać konwersję z *.HEX. Wszystko jest kwestią tygodni, bo na razie nie mam wolnej chwili, aby usiąść przy tym.
    Pozdrawiam.
    PS. Przetwornica była sprawdzana i liczona empirycznie - musi działać.
  • #24 908271
    adames80
    Poziom 18  
    a wczym byl pisany ten program?i czy jest mozliwosc dostania kodu zrodlowego?
  • #25 908554
    Nemo
    Poziom 31  
    Program był pisany w C++. Kody źródłowe nie są zbyt pasjonujące dla obserwacji, dlatego nie zdecydowałem się na ich publikację. I raczej się nie zdecyduję - bo niektórzy padliby ze śmiechu... :)
    Pozdrawiam.

    PS. Na stronie w linku powyżej niedługo będzie dostępna nowa wersja programu sterującego (1.1.3a). Oprócz obsługi plików *.HEX będzie dodane kilka pożytecznych funkcji.
  • #26 985782
    synk
    Poziom 1  
    Zainteresował mnie temacik tego programatora.
    Jeszcze go nie używałem, ale.
    Jeżeli chodzi o Win XP i 2000.
    Do obsługi portów w borland c++ były jak wiemy komendy inportb i outportb. Akurat miałem problem do dostania się bezpośrednio do portów z środowiska Borland C++ Builder 6.0 bo powyższe komendy zostały wycowane.
    Problem rozwiązałem stosując bibliotekę dynamiczną inpout32.dll.
    Jeżeli dołączymy ją dynamicznie albo statycznie do naszego programu udostepnia komendy które pozwalają zapisać bezpośrednio do portów odpowiednie wartości.
    A skoro można obsługiwać łącze równoległe odwołując sie do numeru portu złącza np. $378H to używając w/w biblioteki będzie można to zrobić pod win XP i 2000.

    szczegółowe informacje można znaleźć pod adresem:
    http://www.logix4u.net/inpout32.htm

    na tej stronie można znaleźć bibliotekę, szczegółowe info na jej temat, sposób użycia a co więcej również jej kod źródłowy.

    na wszelki wypadek załączam całość spakowaną.

    Mam nadzieje, że te informacje się komuś do czegoś przydadzą :D

    PS. nie używałem jej pod win XP i 2000, ale dostęp portu karty pomiarowej której używam do własnych celów działa bez zarzutu pod win 98.
    Załączniki:
  • #27 1003298
    Cudnny
    Poziom 11  
    Witam!!
    Mam pytanie czy tym programatorem moge programować biosy w kompie!! Potrzebuje mału programato do biosów!!??
  • #28 1004517
    Nemo
    Poziom 31  
    Tak jak napisałem wyżej, programator programuje wyłącznie mikrokontrolery AT89C1051, AT89C2051 i AT89C4051 - nic więcej. Do BIOS'ów trzeba innego programatora.
    Pozdrawiam.
  • #29 1023492
    Guma1975
    Poziom 14  
    Witam!
    Zrobiłem to coś i od razu mam pytanie dotyczące działania tego programu.
    Testowałem to na płycie MSI k7n2 ustawienia portu LPT na SPP, EPP oraz na laptopie 485 hinote ultra C-475 tj. 486 dx75MHz tam była opcja bidirectional / ps2 w biosie jeśli chodzi o LPT niestety w żadnym wypadku program nie wykrywał układu 89c2051 oraz sprawdzałem aby coś zaprogramować i nic.
    Po odczycie nic nie było.
    TEST który tam jest po przeprowadzeniu i pomiarach było OK.
    W TEST jest chyba błąd bo jak wziąłem OK po kolei i trafiłem na "teraz 12V przetwornica włączona" jest 12V, a potem powinno być "przetwornica wyłączona i 0 V" a jest przetwornica włączona 12V itd.
    Podczas programowania, miernikiem stwierdzam 12.6V(potem zero) na pin1 lecz nic poza tym układ się nie programuje! oczywiście najpierw wczytuje plik bin z rozszerzeniem zmienionym na eep
    Sprawdziłem już wszystkie połączenia i nawet poziomy napięć podawanych w TEST były OK więc nie wiem o co chodzi!!!
    Przerobiłem troche układ prosze spojrzeć, lecz myślę że to działa jak należy stan wysoki na 12V_ON włącza 12V
    Proszę o pomoc!
    Dołączam schemat z moją przeróbką polegająca na wyeliminowaniu przetwornicy (zasilam całość z 15V stab. na 12 oraz na 5)
    Jeszcze jedno czy nie ma błędów w schemacie połączeń?
    czy pin 11 LPT ma być połączony z pin 9 LPT czyli D7 oraz czy podciągnięte poprzez rezystory 22k do 5V mają być tylko D0 i D1 ??
    Proszę o wyjaśnienia czemu to nie działa ??
    czy do resetu układu 89c2051 potrzebna jest zwłoka pinu 1 z poziomu 12V na zero (do masy) czy może być tak jak po mojej przeróbce ?
    Pozdrawiam i czekam na wsparcie.
  • #30 1026553
    Nemo
    Poziom 31  
    Układ zbudowany zgodnie ze schematem umieszczonym w pierwszym poście działa na 100%. Na żadne przeróbki nie daję gwarancji, gdyż sam ich nie robiłem i nie testowałem. Program działa z takim układem, jak na schemacie.

    Zwykle problemem jest ustawienie opóźnienia w programie. Spróbuj dać większe - a wtedy układ powinien być wykrywany. Co zaś się tyczy dwukierunkowości - zrobiłeś test z rezystorem na porcie LPT (opisany w dokumentacji z pierwszego postu)?

    W opcji TEST błędu nie ma. Testowałem przy jego pomocy swój programator (testowali też inni użytkownicy) i nikt nie znalazł tam błędu. Być może Twoja przeróbka powoduje to niewyłączanie.

    RESET dla układu działa również tak, jak opisano w dokumentacji (poziom GND praca, 5V reset, 12V programowanie). Aby był zresetowany trzeba dać najpierw GND, a potem 5V. Na schemacie błędów nie ma.

    Twoja przeróbka nie jest w stanie podać napięcia 5V na nogę RESET mikrokontrolera. I tu masz błąd. :)

    Pozdrawiam.
REKLAMA