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

BASCOM - Jak przesyłać dane z czujników przez UART między dwoma ATmega8?

CyccX 14 Kwi 2013 20:03 2226 1
REKLAMA
  • #1 12198938
    CyccX
    Poziom 15  
    Witam,

    posiadam dwie atmegi8 sprzęgnięte ze sobą komunikacja za pomocą UART. Jedna atmega będzie zbierać informację z czujników i poprzez UART przesyłać bajty danych do drugiej atmegi której zadaniem jest wyświetlanie tych wartości na wyświetlaczu graficznym.

    Moja ramka danych składa się z dwóch bajtów, pierwszy z nich jest to bajt "adresowy" który wskazuje atmedze na wyświetlaczu która zmienna jest akurat przesyłana : zmienna1, lub zmienna2 lub zmienna 3.

    wszystko działa prawidłowo do puki atmega odbiorcza jest "przygotowana" na odbieranie trzech różnych zmiennych " zmienna 1, zmienna 2 lub zmienna 3.


    program w nadajniku:

    Kod: text
    Zaloguj się, aby zobaczyć kod


    w odbiorniku:

    Kod: text
    Zaloguj się, aby zobaczyć kod


    Urządzenie przestaje działać poprawnie gdy atmega odbiorcza nie rozpoznaje adresu A=3, czyli jakbyśmy dodali średniki przed kompilacją dla przykładu 2.

    dzieje się wtedy tak że, admega odbiorcza odbiera wrzuca do zmiennej A nadawane dane do zmiennej3 - a powinna je zignorować, i zacząć odczyt danych od zmiennej1 czyli A=1

    Panowie jak to rozwiązać ?? żeby druga część ramki danych była pomijana gdy pierwsza część "adresowa" nie spełnia żadnego warunku ??

    funkcja ta ma mi później posłużyć do wywoływania podprogramu w atmedze wyświetlacza również zdalnie przez UART
  • REKLAMA
  • #2 12199689
    zumek
    Poziom 39  
    CyccX napisał:
    ...Panowie jak to rozwiązać ?

    Choćby tak:
    Kod: text
    Zaloguj się, aby zobaczyć kod
REKLAMA