Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

AVR/Atmega32/Bascom - Uart programowy nie wszystko dociera.

wojno 25 Mar 2013 01:27 1965 10
  • #1
    wojno
    Level 12  
    Witam

    Nie potrafię sobie poradzić z odebraniem 150 bajtów z urządzenia do AVR-a przez uart programowy.
    Generalnie komunikacja działa, niestety nie wszystkie dane docierają. Prędkość transmisji 2400. Kwarc 16Mhz, piny Portb.0 i Portb.1.

    Proszę o pomoc w rozwiązaniu mojego problemu.
  • #2
    Kuniarz
    Moderator of Designing
    Zasadnicze pytanie - dlaczego akurat przez programowy UART, skoro jest sprzętowy i to nawet działający ;)
  • #3
    wojno
    Level 12  
    Jest już zajęty.
  • #4
    Kuniarz
    Moderator of Designing
    Może prościej będzie go zwolnić, chyba, że działa jako UART a Ty potrzebujesz drugi ?
  • #5
    wojno
    Level 12  
    Tak muszę to zrobić na uart programowym.
    Czytałem trochę na ten temat i jest to do wykonania.
  • #6
    jousto
    Level 17  
    Pokaż kolego program którym zasiliłeś Atmegę bo tak to ciężko coś ugadnąć.
  • #7
    BlueDraco
    MCUs specialist
    Ech, czemu ie weźmiesz jakiegoś tańszego mikrokontrolera z odpowiednią liczbą UARTów?
    Programowy UART w Bascomie nie musi działać - są duże narzuty na obsługę przerwań. Jeśli masz jakieś inne przerwanie o wyższym podpriorytecie to niemal bez szans.
  • #8
    medicb
    Level 28  
    Odpowiedni kwarc 11059200Hz lub 18432000Hz i powinno działać, u mnie bascomowe programowe uarty latają aż miło. Na 8Mhz był z tym problem.
  • #9
    wojno
    Level 12  
    Przykład programiku który pobiera dane z uart programowego i wysyła na sprzętowy zęby zobaczyć w terminalu co pobrał.

    Code: vbnet
    Log in, to see the code
  • #10
    wojno
    Level 12  
    No cóż najwyraźniej nie da się tego zrobić programowym uart-em.

    Czy da się zainstalować jakiś AVR z 2 uart sprzętowymi w miejsce atmegi32.
    To by rozwiązało mój problem.