Adóvevő pdi
A PDI adóvevő felelős a soros interfész jelének fizikai szintű feldolgozásáért. Az adó-vevő kétirányú fél-duplex szinkron szekvenciális vevővel és adóval van kialakítva (azonos az USRT USRT üzemmódban). Az adó-vevő támogatja a küldés kezdetének felderítését, a küldés hibáit, a paritás generálását, a paritáshibák felderítését és az ütközések észlelését.
A PDI két kimeneten keresztül érhető el:
- PDI_CLK: PDI szinkron bemenet (Reset pin).
- PDI_DATA: PDI bemenet / kimenet (teszt kimenet).
Ezeken a két csapon kívül a külső programozó / hibakeresőnek és a mikrokontrollernek össze kell kapcsolnia a VCC és GND vonalakat. Tipikus csatlakozás látható a 29.2. Ábrán.
29.2. Ábra. Csatlakozás a PDI interfészhez
A szakasz többi része az XMEGA mikrokontrollerek programozói programozóinak gyártói közé tartozik.
29.3.1. Munkavállalási engedély
A PDI adóvevő használata előtt engedélyeznie kell. Ehhez először meg kell PDI_DATA átvezető magas állapotba ideig, amely nagyobb, mint a minimális időtartama külső törlőimpulzus (külső törlőimpulzus időtartamát adja meg a dokumentációt a mikrokontroller). E művelet eredményeként a Reset kimenet reset funkciója le van tiltva (feltéve, hogy ezt a funkciót a biztosíték-bit előtt nem tiltotta le).
A PDI művelet engedélyezéséhez a következő lépés a PDI_DATA vonal magas állapotban tartása 16 PDI_CLK ciklus (16 emelkedő éllel). Az első PDI_CLK ciklusnak legfeljebb 100 μs késleltetéssel kell megjelennie, miután a reset funkció kikapcsolt állapotban van a Reset póluson. Ha ez a követelmény nem teljesül, a Reset Reset (Reset Reset) funkció automatikusan újraindul, és a PDI engedélyező szekvenciát meg kell ismételni.
Miután befejezte az összes leírt lépést, a PDI be van kapcsolva és készen áll az utasítások fogadására. A munkavállalási engedély sorrendjét a 29.3 ábra mutatja.
A PDI_DATA csapnak van egy belső felhúzási ellenállása, amely a PDI-vel egy időben aktiválódik.
29.3. Ábra. PDI munkaengedményi szekvencia
Ha a frekvencia szinkronizáló PDI_CLK vonal lenne körülbelül 10 kHz, ezt lesz érzékelhető, mint az inaktivitás és szinkronozóvezetéken letiltja a PDI-t és az újbóli a reset függvény y O visszaállítása (PDI_CLK), de azzal a kikötéssel, hogy a funkció nem volt tiltva visszaállító biztosíték-bites. Ha a munka felbontása során túl nagy késedelmek vannak, a PDI munkafolyamat sorrendjét újra kell indítani.
Az említettekből következik, hogy a minimális programozási frekvencia körülbelül 10 kHz.
29.3.3. A csomag és a szimbólumok formátuma
A PDI felület fix küldési formátumot használ. Az egymást követő csomagot 8 adatbit, start bit, stop bit és paritás bit alkotja.
29.4. Ábra. A PDI-felület küldésének formátuma
Három karakter van: DATA, BREAK és IDLE. A BREAK szimbólum 12 bit alacsony szintű átvitelével jön létre. Az IDLE szimbólum egyenlő a 12 magas szintű bit hosszával. Mindkét karakter, a BREAK és az IDLE, hosszabb, mint 12 bit.
29.5. Ábra. A PDI interfész szimbólumai és időzítési diagramjai
29.3.4. Soronkénti átvitel és vétel
A PDI adó-vevő képes működni akár adási üzemmódban (TX), akár vételi üzemmódban (RX). Alapértelmezés szerint RX módban működik, és várja a kezdő bitet.
A programozó és a PDI szinkronban működnek a PDI_CLK jelével, amelyet a programozó generál. A szinkronizációs impulzusok élei közötti kapcsolat és az adatok mintavétele vagy módosítása rögzített. Ábrán látható 29.6 az adatkimenet (akár a programozó, vagy a PDI) mindig akkor jelentkezik, a lefutó éle PDI_CLK, és az adatok a minta - a felfutó él PDI_CLK.
29.6. Ábra. Az adatok módosítása és kiválasztása
29.3.5. Soros adatátvitel
Az adatátvitel (PDI vezérlő) kezdeményezését követően a jeladó a PDI_DATA vonal mentén történő áthelyezés útján egy startbitet, adatbitet, paritásbitet és két stopbitet továbbít. Az átviteli sebességet a PDI_CLK jel adja meg. Az átviteli módban az IDLE bitek (egy bitek) automatikusan továbbításra kerülnek a DATA szimbólumok átadásakor keletkező szünetek feltöltéséhez. Ha az átvitel során ütközés tapasztalható, a kimeneti meghajtó le van tiltva, és az interfész az RX vételi módba kerül. várni a BREAK szimbólumra.
29.3.5.1. Az irányítási konfliktusok és ütközések felderítése
Az ellenőrzési konfliktusok elkerülése érdekében, ha mind a PDI, mind a programozó egyszerre próbál irányítani a PDI_DATA vonalat, ütközésérzékelő mechanizmust biztosít. Ez a mechanizmus az a módja, hogy a PDI interfészadatok kimenetét a PDI_DATA vonalra irányítsa. Amint a 7. ábrán látható, a kimeneti meghajtó aktiválása csak akkor kell változtatni az állam a kimenet (0-1 vagy 1-0). Ez azt jelenti, hogy ha két vagy több azonos értékű bit kerül sor egy sorban, akkor ezt az értéket továbbítani fogja, a meghajtó csak az első szinkronizációs ciklus alatt aktív. Az első ciklus után következik be kikapcsolni a járművezetők és tovább a kimenet nagy impedanciájú állapotban és fenntartása a beállított szintet PDI_DATA sorban, amíg a következő aktiválása a vezérlő áramkör megfelel adaptív harisnyatartó.
29.7. Ábra. Az adatok kimenetének vezérlése a PDI_DATA vonalra egy adaptív merevítő segítségével
A helyzet, amikor a programozó és a PDI egyidejűleg vezérli a PDI_DATA vonalat, a 29.8 ábra mutatja. A PDI_DATA vonalon megjelenő szint helyességének meghatározására alkalmas képességet a PDI interfész akkor kapja meg, ha két vagy több bitet egymás után ugyanazzal az értékkel továbbítanak. Egy ütközést észlel, ha a programozó áthelyezte a PDI_DATA vonalat a várt PDI felület állapotával ellentétes állapotba.
29.8. Ábra. Ellenőrzési ütközések és ütközés észlelése a PDI_DATA vonalon
Ha a PDI átmásolja az egységek és a nullák átlapolását, akkor az ütközést nem lehet észlelni, mert A kimeneti meghajtó folyamatosan aktív lesz, kizárva a PDI_DATA vonal lekérdezésének lehetőségét. Azonban minden előfeltétel legalább két azonos bitet tartalmazó sorozatot tartalmaz (egypontos bitek), és ezért, ha üzenet érkezik, legalább egyszer ütközhet.
29.3.6. Következõ vétel
A startbit detektálása után a vevő 8 adatbitet vesz át egy eltolási regiszterrel. Ha a vett paritásbit nem egyenlő a vett adatbitek paritásával, akkor egyenlõ hiba lép fel. Ha az egyik vagy mindkét stopbit nulla, küldési hiba lép fel. Ha a paritás bitnek megvan a helyes értéke és a küldési hiba nem észlelhető, a vett adatbitek párhuzamos formában hozzáférhetővé válnak a PDI vezérlő számára.
29.3.6.1. A BREAK szimbólum észlelése
Ha a PDI átviteli módban van, a programozó által továbbított BREAK szimbólum nem BREAK szimbólumként értelmezhető, hanem adatátvitel ütközésként. Ha a PDI vételi üzemmódban működik, akkor a BREAK szimbólumot felismeri a rendeltetési cél. Továbbítása során két egymást követő karakter (külön kell választani egy vagy több, egyetlen bit), az utolsó karakter BREAK mindig el kell ismerni a tervezett célra, akár az olvasás vagy átviteli mód eredetileg PDI.
29.3.7. Irányváltás
A fél-duplex átviteli időzítési diagram helyességének biztosítása érdekében egy egyszerű Guard Time mechanizmust biztosítanak, amely akkor lép életbe, amikor a PDI interfész iránya megváltozik. Ha a PDI átveszi a vételi módot az átviteli módba, további IDLE biteket adnak hozzá a kezdő bit továbbítása előtt, amelynek számát a felhasználó állítja be. A minimális késleltetés az RX módból a TX üzemmódba történő váltáskor két IDLE ciklus. Az ilyen késleltetés időtartama növelhető úgy, hogy a megfelelő értéket a PDI vezérlő vezérlőregiszter GUARDTIME bitjére írja. A GUARDTIME bit alapértelmezett értéke a késleltetés maximális növelését eredményezi 128 bites értékkel.
29.9. Ábra. Módosítsa a PDI irányát az IDLE bitek beillesztésével
A programozó elveszti az irányítást a PDI_DATA vonalon azon a ponton, ahol a cél PDI RX üzemmódból TX módba kerül. Az őrségi intervallum bevezetése lehetővé teszi, hogy ez az átviteli fázis kevésbé kritikus legyen. Ha a programozó RX módból TX módba mozog, legalább egy IDLE bitet be kell illeszteni, mielőtt a kezdő bit továbbítása megtörténne.