I have been using Teensy 3. for sending SBUS and it has worked fine with 8E1 inverted 100000 baud, though the specification says 8E2.
However now I have found HW that does not accept the 8E1, and have not found any way sending 8E2.
So thinking, I could but the data to be send, 25 bytes with end bits etc, to an array of bits and send that bit by bit waiting 10 us in between every bit, but that would take 6 ms, 50 times per second, so not good.
Is there some bit banging library that would accept the array of bits and send them on the background without loading the processor too much?
Kind of like RAW serial out, a serial port that does not add any start/stop bits or parity, just sends the RAW binary data with given rate.
So I would provide an array of 300 bits to be send with rate 10 us between the bits, a new array would be provided 50 times per second. It would be good that it would notify when the array has been sent.
Best actually would be if this could be done by relatively simple register manipulation, not needing to use any huge libraries.
Just asking if someone has done something like this and willing to share or any good pointers where to start looking how to do this.
However now I have found HW that does not accept the 8E1, and have not found any way sending 8E2.
So thinking, I could but the data to be send, 25 bytes with end bits etc, to an array of bits and send that bit by bit waiting 10 us in between every bit, but that would take 6 ms, 50 times per second, so not good.
Is there some bit banging library that would accept the array of bits and send them on the background without loading the processor too much?
Kind of like RAW serial out, a serial port that does not add any start/stop bits or parity, just sends the RAW binary data with given rate.
So I would provide an array of 300 bits to be send with rate 10 us between the bits, a new array would be provided 50 times per second. It would be good that it would notify when the array has been sent.
Best actually would be if this could be done by relatively simple register manipulation, not needing to use any huge libraries.
Just asking if someone has done something like this and willing to share or any good pointers where to start looking how to do this.
Last edited: