Goed, ik heb een programmaatje dat de seriele poort ttyS1 opent en wat ermee doet (pins aansturen met ioctl of tcsetattr) in een while(1) lus. Met ctrl-c sluit ik het programma af. En nog een keer opstarten, gaat goed. Weer ctrl-c. Enzovoort. Maar na een tijdje werkt het niet meer.
Ik denk dat dat komt doordat close(fd) niet wordt uitgevoerd na ctrl-c en dat hier en daar wat buffers enzo open blijven. Hoe kan ik ze toch sluiten zonder in de while lus steeds de invoer te checken?
Of wat ik eigenlijk ook zoek, met root alle open sessies van ttyS1 afsluiten zodat er weer nieuwe kunnen worden gemaakt. Hoef ik niet meer te rebooten :-)
Ik denk dat dat komt doordat close(fd) niet wordt uitgevoerd na ctrl-c en dat hier en daar wat buffers enzo open blijven. Hoe kan ik ze toch sluiten zonder in de while lus steeds de invoer te checken?
Of wat ik eigenlijk ook zoek, met root alle open sessies van ttyS1 afsluiten zodat er weer nieuwe kunnen worden gemaakt. Hoef ik niet meer te rebooten :-)