[elektro] Usb avr kapcsolat tapasztalat

potyo potyo.ada at gmail.com
Fri Jul 13 14:17:05 CEST 2012


2012. július 13. 13:02 Mihály Debreceni írta, <debremisi at gmail.com>:

> Helo !
>  Csak vállaszolnék erre a levélre, mint írtam is mindig nagyon
> kezdőnek érezem magam ezen a téren.
>
> Számomra csak az internet marad tanúlásra, szeretek az ott látotakat
> kipróbálni és megérteni a
>
> folyamatok müködését. Ezért nem értem ha valameyik rajzon feltüntenek
> egy 3.6 V-os zéner diódát az
>
> miért nem müködik itt ? Miért kell éppen magamra hagyatkozni és
> plusszokat mint pl. a diódákat
>
> allkalmazni mikor csak így fog müködni. Ha mindenféle eszközöket
> megvásárolnák, akkor nem
>
> jönnék rá a dolgok miben létére.
>

A zéner ebben az esetben úgy viselkedik, mintha fognál egy ideális zéner
diódát és vele párhuzamosan kapcsolnál egy 100pF nagyságrendű kondenzátort.
A kondenzátor szerepét gondolom ismered, az a lényege, hogy sajátmagán a
feszültséget nem engedi nagyon hirtelen változni, hanem próbálja
kisímítani. Ez viszont ebben az esetben hátrány, mert a gyorsan változó USB
kommunikációs jeleket simítja ki, így tönkreteszi a kommunikációt. A
zénernek ez a kondenzátorként viselkedése egy parazita dolog, de a
gyártástechnológiából adódik, nem lehet elkerülni, csak esetleg a mértékét
csökkenteni valamelyest. A sima diódát hozzáadva olyan, mintha az előbb
említett kondenzátorral sorba kapcsolnál egy sokkal kisebb kapacitásút
(mert a sima diódának sokkal kisebb a kapacitása), és így az USB
kommunikáció már a két kondenzátor eredőjét látja, ami sokkal kisebb, mint
a zéner önmagában mért kapacitása, és így már nem teszi teljesen tönkre
jeleket.

De ezzel az egésszel az a baj, hogy az így szoftverből megvalósított USB
kommunikáció több sebből is vérzik. Az USB nagyon érzékeny az időzítésre,
és ezt dedikált hardverre szokás bízni (akár chipen belül), nem pedig
szoftverből oldani meg a lábak billegtetését. A másik, hogy eléggé
lefoglalja a kontrollert, míg egy hardveres USB egység az csak akkor szól a
kontrollerhez, ha valamit nem tud sajátmaga megoldani, márpedig elég sok
mindent megtud, pl. beadod neki egy pufferbe, hogy ezt kellene kiküldeni,
akkor az kiküldi és a kontroller közben tud mást csinálni, ha sérül a
kommunikáció során az adatok tartalma, akkor újraküldi anélkül, hogy a
kontrollert bármi módon terhelné. Illetve ha jól emlékszem, az így
megvalósított USB driver nemis szabványos az USB szabvány szerint, szóval
nem garantált, hogy minden operációs rendszeren menni is fog (persze más se
garantált, de ha szabványos dolgot csinálsz, akkor azért az esélye
magasabb).

Kapcsold már ki az automatikus sortöréseket vagy akármit csinálsz, nem
vagyunk már a 90-es évek elején, hogy a sortöréssel foglalkozni kellene.
Vagy akkor mondathatároknál tördeld a szövegedet, ne így ahogy épp esik...


More information about the Elektro mailing list