AVR a dva seriaky

Pavel Hudecek phudecek@tiscali.cz
Čtvrtek Prosinec 11 16:14:03 CET 2008


Je-li možno si vybrat, tak bych doporučil softwareový seriák použít na 
pomalejší rozhraní, tzn. 485.

Jinak pro SW příjem UARTu se dá také dobře použít přerušení od obou hran na 
přímajícím pinu (jde to i přes "pin change interrupt" s více piny najednou). 
Pak stačí měřit čas mezi hranami a z toho poskládat bity.

Další možnost je přiohnout si k tomuto použítí SPI - např. tak, že po 
přerušení vyvolaném startbitem spustíte čítač, který na konci stopbitu pustí 
příjem v režimu master s nezapojeným CLK.

2 sériáky mají velké atmegy.

PH

From: "Tomas Chvatal" <tchvatal@ezop.cz>
potrebuji udelat komunikacni "prekladac" ktery
bude mit na jedne strane RS232/PC a na druhe bus, neco jako RS485
(max.19200), tedy format dat stejny jako rs232.
Z obou stran pujdou ruzne protokoly a AVR to musi "prekladat".
Z te strany 485 bude proudit celkem dost dat (vytizeni skoro 100%).
Vetsina dat se bude muset obalit nejakym frame+crc a poslat na stranu pc.
Na strane k PC pocitam s rychlosti 38400, to je alespon maximum co dostanu
ze software uartu.

Zajimavy sw uart jsem nasel na Avrfreaks a libi se mi na nem, ze pouziva
timer1 jak pro generovani hodin, tak i signalu TX na vyvodu OC1A a prijem RX
na ICP1. Takze alespon castecne vyuziva dostupny hw.
(http://www.avrfreaks.net/index.php?module=Freaks%20Academy&func=viewItem&item_id=521&item_type=project)

Na strane 485 bych nerad pouzil sw uart kvuli presnosti casovani.

Nejradeji bych to udelal s Atmega8, 48, 88 nebo 168, tedy DIL pouzdro s 28
vyvody,
za prve kvuli velikosti (snad se to pak vejde do konektoru canon 25),
za druhe kvuli cene a za treti kvuli dobre dostupnosti.

Atmega s 2x uartem v dil 28 asi neni (nebo je ?) takze neznate jiny figl
jak vyuzit nejake hw avrka
pro vytvoreni rychleho seriaku half duplex ? 




Další informace o konferenci Hw-list