transmisja szegowa

To forum jest dla wszystkich pasjonatów mikrokontrolerów AVR Atmela. Wymiana doświadczeń i pomoc dla początkujących w pisaniu programów zarówno w C, Asemblerze jak i BASCOM. Zapraszam znawców tematu, aby pomogli wszystkim początkującym!
ODPOWIEDZ
Michał17
Użytkownik
Posty: 329
Rejestracja: 07 sty 2006, 14:25
Lokalizacja: Łódź

transmisja szegowa

Post autor: Michał17 » 11 maja 2006, 14:01

Jaki program wstawić aby atmega8 przesyłała szeregowo dane do drugiego AVRa.
Czy należy wpisać tak:

Kod: Zaznacz cały

if portb.0 = 1 then 
         set portd.0         ' przesyłany sygnał = 10010
         waitus 5
         reset portd.0
         waitus10
         set portd.0
         wait 5
         reset portd.0
:?:
Czy na przesyłanie jest prostrzy sposób? I jak zrobić dekodowanie?

Awatar użytkownika
gaweł
Użytkownik
Posty: 651
Rejestracja: 05 kwie 2004, 8:38
Lokalizacja: Białystok
Kontakt:

Post autor: gaweł » 11 maja 2006, 14:23

Na przesyłanie danych pomiędzy dwoma procesotrami jest wiele rozwiązań. Jednym z prostszych jest użycie do tego asynchronicznej transmisji szeregowej. Praktycznie każdy procek AVR udostępnie układ transmisji szeregowej UART. Z technicznego punktu widzenia należy wyprowadzenia TxD jednednego połączyć z RxD drugiego (i symetrycznie w drugą stronę). W oprogramowaniu należy należy wysłać dane do UART i one odbiorą się poprzez UART w drugim.

ZbeeGin

Post autor: ZbeeGin » 14 maja 2006, 16:25

A nie lepiej wykorzystać SHIFTIN, SHIFTOUT. Kombinujesz jak koń pod górkę.

Michał17
Użytkownik
Posty: 329
Rejestracja: 07 sty 2006, 14:25
Lokalizacja: Łódź

Post autor: Michał17 » 16 maja 2006, 13:32

A mógłbyś opisać jak to zrobić albo dać lina do opisu. Dzięki.

ODPOWIEDZ