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

AVR910 i FT232BM - Czy ktoś zbudował programator z konwerterem USB>RS232?

hunterhouse 17 Wrz 2006 20:44 2472 17
REKLAMA
  • #1 3030071
    hunterhouse
    Poziom 26  
    Posty: 893
    Pomógł: 84
    Ocena: 3
    Witam kolegów.

    zastanawia mnie czy ktoś z kolegów robił już taki programator, a konkretnie podłączenie FT232BM czyli konwertera USB > RS232 do programatora AVR910.
    w teorii powinno bez problemu działać ale pytam sie czy ktoś ma może takie urządzenie gotowe i może się podzielić doświadczeniami praktycznymi.

    podaje jeszcze linki do modułu USB>RS232 na allegro http://allegro.pl/item127857975_modul_konwertera_usb2_0_rs232_ttl_nowy.html

    i programatora AVR910 przerobionego troszkę http://www.mikrocontroller-projekte.de/

    czekam na info i pozdrawiam
  • REKLAMA
  • #2 3030535
    McRancor
    VIP Zasłużony dla elektroda
    Posty: 5326
    Pomógł: 479
    Ocena: 124
    Mam takie coś na TUSB3410 i FT232BM działa prawidłowo.

    Jedyny problem jaki miałem to zastosowałem AT90S2313-4SC i popędziłem go kwarcem 4Mhz, przerobiłem odpowiednio soft, ale nie dało się zaprogramować więcej niż 1-2KB pamięci - powód oczywisty błędy transmisji. Po wymianie kwarca na 7.38 i programu w procku wszystko śmiga jak należy z AVRprog, z Bascomem nie chciał mi się uruchomić, ale nawet nie wnikałem czemu, bo AVRprog sprawdza się doskonale.

    Mimo że to takie fajne, teraz używam nieśmiertelnego SI-proga - kwestia gustu, jednak Si-proga na USB nie przerobisz, nie będzie działał.
  • #3 3032615
    hunterhouse
    Poziom 26  
    Posty: 893
    Pomógł: 84
    Ocena: 3
    ja juz mam jedno AVR910 tylko że zintegrowane na płycie z ATmega128.
    lubie ten programator bo jest chyba najszybszym z istniejących ISP.

    teraz chce zbudować taki uniwersalny i zastanawiam się nad USB bo tam i com by był i zasilanie na jedym kablu. czyli kolega mówi że działa bezproblemowo, to dobrze.

    pozdrawiam i jak by jeszcze ktoś miał jakieśdoświadczenie w tym temacie to prosze pisać.

    PS: a tej Si-prog to jest jest szybszy od AVRproga+AVR910(ten przerobiony) ??
  • #4 3032637
    szymtro
    Poziom 30  
    Posty: 1421
    Pomógł: 101
    Ocena: 59
    Napiszcie coś więcej o tej prędkości (np 2048 bajtów w... (oddzielnie zapis i odczyt by mnie interesowało))
  • #5 3032682
    hunterhouse
    Poziom 26  
    Posty: 893
    Pomógł: 84
    Ocena: 3
    dla przykładu AVR910(v3.8) + AVRprog + atmega8 @8Mhz
    program 4950 Bajtów
    write: 2,6 sekundy
    verifity: 1,8 sekundy
    w sumie 4,4 sekundy od momętu klikniecia progamuj do momętu gdy program wystartował. co daje średnio około 1020 bajtów/sekunde

    moze zna ktoś jeszcze jakiś szybki programator bo może jest coś jeszcze lepszego a ja nawet niewiem :)
  • #6 3032960
    lbugiera
    Poziom 21  
    Posty: 348
    Pomógł: 45
    Ocena: 5
    hunterhouse napisał:
    dla przykładu AVR910(v3.8) + AVRprog + atmega8 @8Mhz
    program 4950 Bajtów
    write: 2,6 sekundy
    verifity: 1,8 sekundy
    w sumie 4,4 sekundy od momętu klikniecia progamuj do momętu gdy program wystartował. co daje średnio około 1020 bajtów/sekunde

    moze zna ktoś jeszcze jakiś szybki programator bo może jest coś jeszcze lepszego a ja nawet niewiem :)


    Mozesz podac link do softu, do tego AVR910, bo mój wgrywa 4kB kodu .... 2 minuty :/.


    Pozdrawiam
    Boogie
  • REKLAMA
  • #7 3033118
    McRancor
    VIP Zasłużony dla elektroda
    Posty: 5326
    Pomógł: 479
    Ocena: 124
    W pierwszym poscie jest
  • #8 3033187
    lbugiera
    Poziom 21  
    Posty: 348
    Pomógł: 45
    Ocena: 5
    No rzeczywiście, nie zauważyłem. Ale ni w ząb nic w tym języku nie rozumiem. Więc mam 2 pytanka:

    Wsad jest do AT90S2313 ?
    Coś wspominają o kwarcu 7,3 Mhz - taki ma być ?? bo standardowo jest 4Mhz.

    Jak mi ktoś, jak leszczowi, powie co i jak względem "standardowego" AVR910 i poda link do zipa z hexem to przekaze skromne 100 punktów :). Nie lubie tego języka :)

    Pozdrawiam
    Boogie
  • #9 3033229
    przemek20
    Poziom 21  
    Posty: 328
    Pomógł: 41
    Ocena: 25
    Za pomoca isp programmera i paru kabelków wgrywam 4kB w 3 sekundy niecałe wraz z weryfikacją na bieżąco (standardowo jak klikne erase, and program all robi jeszce jedna weryfikacje i to trwa około 6 sekund całość).
    Procek atmega 128. Więc nie rozumiem kompletnie gdzie skąd te problemy z prędkością.
    Żeby ładować program przez 2 minuty to sie trzeba nieźle postarać... :)
    Pozdrawiam.
  • REKLAMA
  • REKLAMA
  • #11 3033305
    McRancor
    VIP Zasłużony dla elektroda
    Posty: 5326
    Pomógł: 479
    Ocena: 124
    Przeczytałbyś drugi post i wiedziałbyć o kwarcu :)

    Wsadź kwarca 7,3 i wgraj ten program:
    http://www.klaus-leidinger.de/mp/Mikrocontroller/AVR-Prog/avr910_2313_v38b.hex

    Tylko transmisja jest w tedy 115K, oryginalny AVRprog nie zadziała, trzeba robić avrdudem, dlatego to rozwiązanie kompromisowe, takim leniwcom jak mi średnio odpowiada.
  • #12 3033307
    hunterhouse
    Poziom 26  
    Posty: 893
    Pomógł: 84
    Ocena: 3
    więc tak
    to jest AVR910 ale faktycznie przerobiony na inny procesor bo się w tamtym nie mieściło. Kwarc 7.3728
    schemat jest tu http://www.klaus-leidinger.de/mp/Mikrocontroller/AVR-Prog/AVR910-schalt-klein.jpg
    zamiast tych czarów na tranzystorach ja wstawiam max232.
    wsad tutaj http://www.klaus-leidinger.de/mp/Mikrocontroller/AVR-Prog/avr910_2313_v38b.hex oczywiście do At90s2313 ale ponoć na attiny2331 też działa, jeszcze nie sprawdzałem ale niedługo będe wiedział, być moze trzeba będzie jeszcze raz skompilować pod inny chip.

    mam teraz pytanko do przemek20 ten ISP programer to jest na lpt i oparty na scalaku 74HCT541 ??

    co do AVRproga to wersja 1.40 (najnowsza) działa bez problemu z najnowszym softem i kwarcem 7,3728
  • #13 3033613
    lbugiera
    Poziom 21  
    Posty: 348
    Pomógł: 45
    Ocena: 5
    McRancor napisał:
    ...
    Tylko transmisja jest w tedy 115K, oryginalny AVRprog nie zadziała, trzeba robić avrdudem, dlatego to rozwiązanie kompromisowe, takim leniwcom jak mi średnio odpowiada.


    No właśnie mi też :/ tym bardziej że avrprog ma bardzo fajny interfejs do przestawiania fusow... Ale zawsze to lepiej niż wgrywać 2 minuty kilka kB kodu. Z tego co udało mi się wyczytać to w źródle wystarczy zmienić baudrate, można nawet je przystosowac do kwarca 4Mhz sądząc po tym zdaniu.

    Cytat:
    Falls jemand den 7.3728 Mhz Quarz nicht extra beschaffen möchte, kann er auch im Source eine passende Baudrate mit 4 oder 8 Mhz Quarz auswählen und neu compilieren.


    Jeśli ktoś rozumie ten język to prosze o potwierdzenie.
    Patrzac w kod uart jest inicjalizowany od etykiety u_init.

    W każdym bądź razie dzięki za wsparcie McRancor i Hunterhouse. Punkciki rozesłane.

    Pozdrawiam
    Boogie

    EDIT:
    Kurde, znowu nie doczytałem zdania w poście hunterhouse
    Cytat:
    ... co do AVRproga to wersja 1.40 (najnowsza) działa bez problemu z najnowszym softem i kwarcem 7,3728

    No ale nic ... spróbuje z kwarcem 4Mhz go uruchomić bo taki mam.
  • #14 3033687
    McRancor
    VIP Zasłużony dla elektroda
    Posty: 5326
    Pomógł: 479
    Ocena: 124
    Mi uruchamianie z kwarcem 4Mhz nie wyszło, przy większej ilości wgrywanego kodu, transmisja się rozjeżdżała. W oryginale był AT90S1200 i UART był zrobiony programowo, więc problemu nie było, w 2313 jest już sprzętowo i problem jest.

    Co do źródła, dobrze wyczytałeś że można zmieniać w zależności od posiadanego kwarca, ale jak już pisałem radze dać taki przy którym baudrate jest generowany bez błędów.

    Avrprog będzie też działał jak kwarc będzie 4Mhz, dla niego nie ma różnicy bo to kod w procku generuje baudrate

    No i dzięki za punkty, gdybyś ich kiedykolwiek potrzebował - mam pod dostatkiem ;)
  • #15 3033793
    hunterhouse
    Poziom 26  
    Posty: 893
    Pomógł: 84
    Ocena: 3
    z tym kwarcem jest dokładnie jak kolega McRancor pisze. tylko czy jest sens zmieniać kwarc i kombinować z softem jak na kwarcu 7,xxx działa idealnie. jeszcze mi się nie zdażyło żeby mi wywaliło błędy przy weryfikacji nawet na procku co śmiga na 16Mhz

    jest takie przysłowie, której z praw Morphiego czy cuś:
    "Jeśli ulepszasz coś dostatecznie długo to napewno to zepsujesz" ;)

    PS: to ja też podziękuje za punkty chociaż nie poto to robiłem, a w sumie też mi ich nie braknie.

    Zamówilem już ten modół USB > RS232 na allegro i będe kombinował.

    pozdrawiam
  • #16 3035740
    lbugiera
    Poziom 21  
    Posty: 348
    Pomógł: 45
    Ocena: 5
    hunterhouse napisał:
    ...tylko czy jest sens zmieniać kwarc i kombinować z softem jak na kwarcu 7,xxx działa idealnie.


    No właśnie nie mam takiego kwarcu i stąd całe zamieszanie, a ze mieszkam na prowincji to nawet z takim kwarcem jest problem. Musze polegać na tym co mam w szufladzie :)

    Ale wkońcu zrobiłęm na kwarcu 4Mhz. Trwało to dość długo bo ... miałem zamienione linie MOSI i MISO w kablu wyjściowym. Jeszcze sobie diody pod inne porty popodłączałem. W źródle są ładnie przygotowane definicje dla różnych kwarców i baudrate'ów, trzeba tylko odpowiednie odznaczyć.

    McRancor napisał:
    Mi uruchamianie z kwarcem 4Mhz nie wyszło, przy większej ilości wgrywanego kodu, transmisja się rozjeżdżała.


    U mnie przy 19200 i 38400 nie było żadnych błędów (AVRProg, avrdude nie testowałem) Ani razu, jak narazie, nie zaprogramował źle, a programowałem kilkadziesiąt razy mege8 hexem 8kB (program mrugajaca dioda + duuża tablica 16 przypadkowych, powtarzających się wartości).

    hunterhouse napisał:
    ... ponoć na attiny2331 też działa, jeszcze nie sprawdzałem ...


    Ja sprawdzałem, działa :). Zmieniłem tylko plik z definicjami na tn2313def.inc. Podczas kompilacji wyskoczy, że stała PAGESIZE jest dwa razy zdefiniowana i trzeba wstawić średnik przed tą w tn2313def.inc. Program się kompiluje i można wgrywać do tiny.

    Zmieniałem jeszcze bit U2X w UCSRA, żeby osiągnąć na tiny2313 baudrate 38400. Równiez działa bez problemu i zauważalnie szybciej.
    Programowanie plus weryfikacja (AVRProg) megi8 hexem 8kB przy 19200kbit/s = 14s, a przy 38400kbit/s = 10s.

    McRancor napisał:
    No i dzięki za punkty, gdybyś ich kiedykolwiek potrzebował - mam pod dostatkiem


    Spoko ... teraz będe spamował :) :) .. a tak naprawde to pierwszy raz zrobiłem z nich użytek :)

    Szkoda, że nie rozwijają dalej AVRProga (nie ma nawet tiny2313) bo ustawianie fusów w tym programie jest super. Może ktoś z was zna jakiś program, który również działa w ten sposób ??

    Pozdrawiam
    Boogie
  • #17 3035753
    szymtro
    Poziom 30  
    Posty: 1421
    Pomógł: 101
    Ocena: 59
    Na te moduły to jest jeszcze jedno rozwiazanie. Mozna kupić usb data cable do telefonu komórkowego za jakieś 7zł. W środku jest gotowy modulik (zapewne na 3.3V ale to nie problem) i podłaczyć bezpośrednio do procka - jak ktoś buduje samemu płytkę to po takim rozwiązaniu zrobi sie naprawdę bardzo malutka.

    Dodatkowym atutem jest porównanie cen (7zł vs 34zł nawet mając na uwadze ze moze sie kiedyś spalić)
  • #18 3043446
    hunterhouse
    Poziom 26  
    Posty: 893
    Pomógł: 84
    Ocena: 3
    witam

    dostałem dzisiaj przesyłkę a w niej modulik.
    podłłączyłem wszystko i sprawdzam czy działa, i nie działa.

    ale sie tym nie zmartwiłem zbytnio bo jeszcze chyba nic mi nie działało za 1 razem hehe. troszkę pogrzebałałem w ustawieniach na kompie i chodzi. okazało sięże AVRprog czyta tylko z com1 ,2,3,4 a reszte olewa. a że ja mam kilka innych urządzeni wirtualnych to usb dostał 16 :D
    ale po przestawieniu chodzi pięknie, do tego na ATTINY2313, tak jak juzwcześniej kolega pisał.

    nie zmieniałem nawet typu scalaka tylko wgrałem juz skompilowany pod AT90S2313. widać są kompatybilne hehe

    pozdrawiam wszystkich

Podsumowanie tematu

✨ Dyskusja dotyczy budowy programatora AVR910 z wykorzystaniem konwertera USB na RS232 opartego na układzie FT232BM. Użytkownicy potwierdzają, że takie rozwiązanie działa poprawnie, jednak kluczowe jest zastosowanie odpowiedniego kwarcu – najlepiej 7,3728 MHz zamiast standardowego 4 MHz, aby uniknąć błędów transmisji i problemów z programowaniem większych rozmiarów pamięci. Wgranie odpowiedniego oprogramowania (wsadu) do mikrokontrolera AT90S2313 jest konieczne, a dostępne są gotowe pliki HEX dostosowane do tego kwarcu. Programowanie odbywa się za pomocą narzędzi takich jak AVRprog lub avrdude, przy czym AVRprog wymaga kompatybilnego kwarcu i wsadu. Prędkość programowania przy użyciu AVR910 z ATmega8 @8 MHz wynosi około 1020 bajtów na sekundę. Alternatywnie, niektórzy stosują programator SI-prog, który jest szybszy, ale nie działa na USB. W dyskusji pojawiła się także sugestia wykorzystania tanich kabli USB do telefonów komórkowych jako modułów USB-RS232. Problemy z działaniem często wynikają z nieprawidłowych ustawień portów COM w systemie operacyjnym, gdzie AVRprog obsługuje tylko porty COM1-COM4. Całość opiera się na modyfikacjach oryginalnego schematu AVR910, z zastosowaniem układu MAX232 zamiast tranzystorów do poziomów RS232. Kompatybilność wsadu z AT90S2313 i ATTINY2313 została potwierdzona.
Wygenerowane przez model językowy.
REKLAMA