[elektro] OT: VB2008 soros vonal olvasás

hozso_001 at freemail.hu hozso_001 at freemail.hu
Tue Nov 12 13:24:06 CET 2013


   Nincs ezzel gond, ezt a részét csak elviekben kérdeztem.

   Én momentán pollingolom adott időközönként, azonban
még mindig ott tartok, hogy az első vett karakter elveszik!



    Üdv.: Horváth Zsolt


2013.11.11. 17:27 keltezéssel, Balla Zoltán írta:
> Feladó: <elight at gmail.hu>
>> A vett adatokat INTERRUPT-os kezeléssel,
>> vagy egy ASM, C vagy miegymás  betéttel nem lehetne
>>   egy körbufferbe az érkezés ritmusában bepakogatni?
>> Ez garantáltan nem erőforrás igényes dolog.
>>
>> http://prohardver.hu/tema/regebbi_informatikai_konyvek_assembly_hardver_programozas_temakban/hsz_1-50.html
>> http://www.antikvarium.hu/konyv/joe-campbell-c-tippek-trukkok-224480
>>
>>
>>    Azután ha megtelt a buffer , a főprogram eseménykezelője
>> egyben kinyalja a megérkezett  mondatot..
>>
> Nagyjából ez is történik normál esetben...
> Van a hardver soros port, annak megszakításkezelője, amihez NEM férsz hozzá(hivatalosan)! A driver
> pedig lekezeli a megszakítást, gyűjtve a memóriába a vett adatokat. Amint a meghatározott mennyiség
> bejött, jelzi a soros port komponens felé, amit a user programból használunk. Az a beállítástól
> függően 1...n byte után szintén eseménykezelőt hívhat meg, melyben tudjuk, hogy n darab byte
> biztosan van már a pufferban.
> De a kapcsolat a user program és a soros port komponens között többféle lehet, lehet pollingolás,
> eseménykezelés, és logikátlan használat is. Elvileg mindegyik működhet is, ha nincs benne nagy
> logikai bukfenc, de nem mindegy, hogy 100% erőforrást zabál fel közben a program, vagy csak alig
> alig valamit! Ez pedig a user szintű részben dől el, nem a soros port komponens rétegben és főleg
> nem a driverben....
>
> Zoli
>
> -----------------------------------------
>            elektro[-flame|-etc]



More information about the Elektro mailing list