Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Atmel 89C51RB2-CM - Zaprogramowanie mikrokontrolera...

kris6661991 13 Kwi 2013 21:21 1710 6
  • #1 13 Kwi 2013 21:21
    kris6661991
    Poziom 25  

    Witam.

    Zakupiłem okazyjnie kartę dźwiękową TerraTec Phase 26 USB... Karta nie daje żadnych znaków życia (nie łączy się z komputerem, nie reaguje na przyciski). Wszystkie napięcia, pozostałe układy etc - OK... po dłuższych badaniach okazało się, że uszkodzony jest mikrokontroler 89C51RB2-CM, a dokładniej jego oprogramowanie (zapewne niepowodzenie we wrzuceniu nowszej wersji firmware).

    Faktem jest, iż nie jestem biegły w temacie programowania (po prostu nigdy tego nie robiłem - nigdy nie było mi to potrzebne), w związku z czym proszę o pomoc - co, jak i do czego.
    Podejmowałem już niejednokrotnie próby "zaprogramowania go" lecz napotykałem na liczne problemy. Z pomocą kolegi który niejako trudzi się w dziedzinie mikrokontrolerów, lecz nie programował nigdy tej grupy kontrolerów jak i nie posiada programatora z podstawką pod niego.
    Wykonałem prościutki kontroler według zamieszczonego niżej schematu:
    http://electronics-diy.com/avr_programmer.php
    wyprowadzając odpowiednio połączenia z mojego mikrokontrolera. Jedyny program jaki znalazłem obsługujący ten model to FLIP. Niestety przy próbie połączenia wyświetla komunikat "timeuot error". Dodam, iż używam w pełni sprawnej przejściówki USB -> RS232 LogiLink AU0002B z którą nigdy nie miałem najmniejszych problemów, oraz że jest ona odpowiednio skonfigurowana.
    Oczywiście posiadam oryginalny wsad do tego kontrolera w najnowszej dostępnej wersji oryginalnie w formacie bin, oraz po przekształceniu - w hex.

    0 6
  • Pomocny post
    #3 14 Kwi 2013 10:30
    JarekC
    Poziom 27  

    >bogdan_p
    Tutaj się akurat mylisz. AT89C51Rx2 ma wbudowany szeregowy bootloader i do ich zaprogramowania potrzebujemy tylko programu FLIP i przejściówki RS232.

    >
    Połączenia podczas programowania są następujące:
    PC RS232Tx - uP Rx
    PC RS232Rx - uP Tx
    PC GND - up GND

    Aby wprowadzić uP w tryb bootloadera należy:

    -linie PSEN uP zewrzeć do masy przez rezystor 1k
    -uaktywnić linie RESET (reset aktywny poziomem "1")
    -zwolnić linie reset
    -zwolnić linię PSEN

    W programie FLIP ustawić prędkość transmisji najlepiej na 9600.

    Pozdrawiam
    JarekC

    0
  • #4 14 Kwi 2013 16:24
    kris6661991
    Poziom 25  

    JarekC -> gdzieś o tym czytałem ale nie byłem pewien działania tego. Sprawdzę dokładnie Twój patent, jeśli zadziała - jesteś wielki :) Coś czuję, że z biegiem czasu trzeba zainwestować w zestaw startowy do AVRów i się troszkę podszkolić w tym temacie, coraz więcej tego a ja dalej stoję w miejscu :)

    BTW - FLIP czyta wyłącznie pliki HEX, a ja mam oryginalny BIN (binarny). Zna Ktoś może dobry DZIAŁAJĄCY konwerter plików z bin na hex? Ja znalazłem jeden... do którego nie mam jakoś zaufania - FLIP ładuje plik, lecz pokazuje, że jego część jest uszkodzona lub niekompletna. Wsad w bin jest 200% OK.


    Po czasie:

    Gwoli ścisłości - znalazłem jeszcze jeden dość podobny temat
    https://www.elektroda.pl/rtvforum/topic2488312.html
    Zauważyłem, że dodatkowo powinien być dołączony kwarc (jasne). Po czym stworzyłem podsumowujący cały temat schemat

    Atmel 89C51RB2-CM - Zaprogramowanie mikrokontrolera...

    Proszę o potwierdzenie, czy wszystko jest tak jak myślę :)

    Pozdrawiam!

    0
  • Pomocny post
    #5 14 Kwi 2013 20:35
    JarekC
    Poziom 27  

    Jeszce linia EA powinna być podpięta do "1" (VCC).
    Reszta OK.

    Pozdrawiam
    JarekC

    0
  • #6 14 Cze 2013 13:16
    starenia
    Poziom 1  

    Witaj,
    mam również tego terrateca i ów nieznośny problem. Udało Ci się w końcu zaprogramować mikrokontroler?

    0
  • #7 14 Cze 2013 17:01
    kris6661991
    Poziom 25  

    Niestety nie, szukam do teraz osoby która zajęła by się zaprogramowaniem tego mikrokontrolera w wersji SLSU bądź na podstawce dil40 (trzeba by było nieco zmodernizować).

    0