[elektro] Válasz: PIC, TRMT
Nemeth Tibor
nemeth.tibor798 at t-online.hu
Sun Sep 22 01:52:30 CEST 2013
Hali!
Én már szívtam vele. Először csináltam olyat, hogy egy differenciális
vonalon jött/ment adat, szóval olyan RS485 szerű dolgot. Ehhez ugye meg
kell oldani a vonalmeghajtó adat-irány vezérlését.
Nem gondoltam végig és majd egy hetem ráment mire rájöttem.
Az első, hibás, nekifutás az volt, hogy alapvetően várunk, hogy
megszólítsanak. Ha küldeni való lett, akkor átvátottam kimenetibe az
adatirányt majd adatok bele a ciklikus bufferba és amikor az kiürült az
adatirányt visszaváltottam.
No ez volt a baj. Interrupt vagyis TXIF akkor keletkezik, amikor TXREG
átpakolja az adatot TSR-be. Abból viszont még ki kell pakolni a biteket
és ennek a végét jelzi TRMT, erre viszont (az általam ismert picben)
nincs megszakítás.
Csak úgy tudtam megoldani, hogy TXIF megszakításnál, ha már nem volt
küldendő adat, elindítottam egy timert, úgyis tudom mennyi idő alatt
folynak ki a bitek, és ennek megszakítási rutinja állított az
adatirányt. Bonyolította a problémát, ha közben a főprogram újra küldeni
akart de azt már nem részletezem.
Azt persze nem tudom válaszoltam-e a kérdésre, hiszen végül is nem
használtam TMRT-t.
Üdv.
Németh Tibor
2013.09.20. 12:38 keltezéssel, Andras Huszti írta:
> Hello,
>
> Javaslom az interrupt hasznalatat korbufferrel. Akkor nem kell bitekre varakozni. Hacsak nem valami specko dolgot csinalsz.
>
> Errata?
>
> From my ALCATEL ONE TOUCH
>
> Balla Zoltán <sdrlab at yandex.ru> írta:
>
>> Sziasztok!
>>
>> Pic-es felhasználókat kérdeznék arról, hogy futott e már valaki olyan hibába, miszerint a TRMT bit
>> figyelése az adatok elküldéséhez viszonyítva nem mindig korrekt ?! Az az, elvileg akkor áll be,
>> amikor befejeződött a vonalon a kommunikáció..., na de mikor törlődik ? Mert ugye, a TXregbe írás
>> után, ha van még kiküldendő adat, ezt a bitet figyeli az ember, mikor mutat üres állapotot, hogy a
>> következő kimenő adat írását megejtsük. De ha a TRMT nem akkor törlődik, amikor a TXreg kiürül,
>> akkor előfordulhat hogy még egyet mutat, az az már üreset, holott épp csak el fog kezdődni a
>> kommunikáció...ergó egymásra íródhat pl 2 byte adat.... Vagy hogy is van ez ?
>>
>> Zoli
>>
>> -----------------------------------------
>> elektro[-flame|-etc]
>>
> -----------------------------------------
> elektro[-flame|-etc]
>
> -----
> A(z) üzenetben nem található vírus.
> Ellenőrizte: AVG - www.avg.com
> Verzió: 2013.0.3408 / Vírus adatbázis: 3222/6687 - Kiadás dátuma: 2013.09.21.
>
More information about the Elektro
mailing list