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

Gotowy program na 90s2313 do wysyłania danych przez RS232 w Bascom AVR

valuss 19 Sty 2004 19:08 3917 14
REKLAMA
  • #1 482118
    valuss
    Poziom 16  
    Posty: 304
    Pomógł: 2
    Ocena: 33
    Czy ktos moze podac mi gotowy dzialajacy program na 90s2313 ktory wysylal by do komputera PC przez rs232 jakiekolwiek dane. Nie moge sobie z tym poradzic.
    Nie wiem czy wina lezy po stronie programu czy moze ustawien bascomowego terminala. Komp z prockiem polaczony jest przez max232.

    z gory za pomoc
  • REKLAMA
  • #2 482185
    adi-niunio
    Poziom 23  
    Posty: 679
    Pomógł: 9
    Ocena: 33
    no wiesz według mnie to potrzebujesz jeszcze jakiś program na kompie, którym będziesz coś odbierał.
    Same wysłanie nic ci nie da, a i tak nie bedziesz wiedxział czy działa OK.
  • #3 482334
    valuss
    Poziom 16  
    Posty: 304
    Pomógł: 2
    Ocena: 33
    Program do odbierania to zwykly windowsowy terminal lub bascomowy emulator terminala
  • REKLAMA
  • #4 482430
    W.K
    Poziom 15  
    Posty: 139
    Pomógł: 1
    valuss napisał:
    Nie wiem czy wina lezy po stronie programu czy moze ustawien bascomowego terminala. Komp z prockiem polaczony jest przez max232.

    z gory za pomoc


    To może na początek zaprezentuj swój program !
    Cześć
  • REKLAMA
  • #5 482551
    szymtro
    Poziom 30  
    Posty: 1421
    Pomógł: 101
    Ocena: 59
    NP taki:

    Dim ala as byte

    do
    print "HELLO WORLD ";ala
    incr ala
    wait 1
    loop
    end

    Bedzie wysylal do terminala napis HELLO WORLD i na koncu liczbe od 0 do 255 zeby bylo latwiej zauwazyc czy cos sie zmienia
  • #6 482610
    W.K
    Poziom 15  
    Posty: 139
    Pomógł: 1
    szymtro napisał:
    NP taki:

    Dim ala as byte

    do
    print "HELLO WORLD ";ala
    incr ala
    wait 1
    loop
    end

    Bedzie wysylal do terminala napis HELLO WORLD i na koncu liczbe od 0 do 255 zeby bylo latwiej zauwazyc czy cos się zmienia


    Tak ale w symulatorze .Kolega Valuss wspomniał o Max232 więc chodzi mu o rzeczywistą komunikację między PC a mikrokontrolerem.
  • REKLAMA
  • #7 482638
    valuss
    Poziom 16  
    Posty: 304
    Pomógł: 2
    Ocena: 33
    Dokladnie chodzi mi o rzeczywista komunikacje w jedna strone. Musze wyslac do PC kilka zmienncy zeby moc je podgladnac podczas pracy mikrokontrolera.
    Proboiwalem podobnego programu jaki zaproponowal Szymtro ale nie chcial dzialac/ Przekopywanie sie przez polski help do bascoma AVr tez niewiele dalo.
    poza tym nie jestem pewien jak ustawic terminal (parzystosc, bit syopu itp) kompilator pozwala tylko na ustawienie predkosci transmisji
  • #8 482692
    Ziele6
    Poziom 14  
    Posty: 168
    Ocena: 3
    A nie zapomniałes przypadniem podać częstotliwości kwarca i prędkość transmisji?

    np:
    $crystal = 8000000
    $baud = 9600
  • #9 482815
    ozman
    Poziom 21  
    Posty: 626
    Pomógł: 19
    Ocena: 36
    Ziele6 napisał:
    A nie zapomniałes przypadniem podać częstotliwości kwarca i prędkość transmisji?

    np:
    $crystal = 8000000
    $baud = 9600


    Nawet jak zapomnisz to kompilator bierze to z ustawień opcji no chyba że ktoś ustawi tam jakieś błędne to wtedy niepójdzie program

    z reułu też nietreba do karzdego rogramu wpisywać np. config lcd itd. bo jak wszystkie piny poprzypisujemy sobie w opcjach to nietreba tego pisać w programie
  • #10 483137
    valuss
    Poziom 16  
    Posty: 304
    Pomógł: 2
    Ocena: 33
    Czy dobzre rozumiem ze taki napisany program + uklad max232 do konwersji napiec + emulator terminala np bascomowy i powinno dzialac ?? Tzn wyswietlic napis a potem liczby od zera w gore co sekunde ?
    A co z ustawieniami terminala ?? parzystosc, bity stopu ??
  • #11 483161
    szymtro
    Poziom 30  
    Posty: 1421
    Pomógł: 101
    Ocena: 59
    domyslnie mikrokontroler jest ustawiony tak jak domyslne ustawienia terminala, tzn
    parity: none
    databits: 8
    stopbits: 1
    A predkosc trzeba ustawic samemu(w mikrokontrolerze i w terminalu taka sama) i niema bata musi dzialac. Wykonalem juz kilka urzadzen ktore komunikuja sie z PC po RS'ie i oprocz paru wtpadek z kolejnoscia przewodow to dziala bez zarzutu. Ostatnio nawet przetestowalem transmisje 115 200 i tez dziala.
    Jezeli tylko nie zamieniles polaczen z wyjscia mikrokontrolera do odpowiedniego wejscia Max'a i wyjscia Max'a do PC to niema takiej mozliwosci zeby nie dzialalo. A testowy programik napewno dziala tylko trzeba jeszcze do niego dodatkowo okreslic: $baudrate i $crystal
  • #12 483165
    valuss
    Poziom 16  
    Posty: 304
    Pomógł: 2
    Ocena: 33
    Dobra dzieki zaraz wszytsko posprawdzam jeszcze raz dokladnie.
  • #13 1737934
    jkowalik
    Poziom 12  
    Posty: 18
    Ocena: 2
    Cześć!
    A jak podłączacie mikrokontroler do PC?
    Możecie jakiś schemacik podrzucić?
  • #15 1738033
    Kminek
    Poziom 15  
    Posty: 200
    Pomógł: 21
    Ocena: 16
    Hej!

    Ja podłączam według takiego schematu. Na bank działa, a jedyne problemy związane z komunikacją przez RS wynikają zazwyczaj przez system windows XP który ma poblokowane porty (a przynajmniej ja miałem z tym problemy).

    Pozdrawiam
    Załączniki:
    • Gotowy program na 90s2313 do wysyłania danych przez RS232 w Bascom AVR pc-rs232-up.gif (4.75 KB) Musisz być zalogowany, aby pobrać ten załącznik.

Podsumowanie tematu

✨ Dyskusja dotyczy gotowego programu w Bascom AVR dla mikrokontrolera AT90S2313 umożliwiającego wysyłanie danych do komputera PC przez interfejs RS232 z wykorzystaniem układu MAX232 do konwersji poziomów napięć. Poruszono kwestie konfiguracji programu, w tym konieczność ustawienia częstotliwości kwarcu ($crystal) oraz prędkości transmisji ($baud), które muszą być zgodne z ustawieniami terminala (np. Bascomowy emulator terminala lub standardowy terminal Windows). Domyślne parametry transmisji to brak parzystości (none), 8 bitów danych i 1 bit stopu. Podkreślono, że oprócz poprawnego programu ważne jest prawidłowe podłączenie przewodów między mikrokontrolerem, układem MAX232 i komputerem. Wskazano, że do testów można użyć prostego programu wysyłającego ciąg znaków "HELLO WORLD" wraz z inkrementowaną liczbą co sekundę. Poruszono również problemy z dostępem do portów RS232 w systemie Windows XP. W dyskusji pojawiły się linki do schematów połączeń oraz FAQ dotyczącego komunikacji RS232 z mikrokontrolerami.
Podsumowanie wygenerowane przez AI na podstawie treści dyskusji.
REKLAMA