We often allow our “software serial” libraries and don’t investigate what’s going on under the hood – unless they at least fail us. Do you want to learn how to harness the power of barrier-driven bitbanging? [Jim Mack] Using the LTC protocol as a springboard teaches us how to fly our protocol implementation.
LTC (Linear /[Longitudinal] Timecode) is a widely used and beautifully crafted protocol that flies under our radar and is one from which hackers can learn a lot. It is used for the production of media and for the synchronization of audio / video devices during playback. LTC’s signal is almost digital but not perfect: it doesn’t need a watch, and it has no polarity. Additionally, it mimics an audio signal really well, you can decode it at any playback speed and many other features and features that [Jim] Outline you need to maintain time, though, and [Jim]Its article shows us how to keep your initial tasks straight without compromising them
Using interrupts means that your main loop can do other things, effectively allowing you to perform a variety of tasks in the background. [Jim] Using an LTC protocol transmitter, fire of interrupt at a defined frequency, processing LTC data in the main loop, and playing a time-critical GPIO wave from inside the interrupt handler code. He explained the code structure and the subtleties of the path, and finally, provided the source code for a highly capable and configurable LTC transmitter project for our study and reuse. Whether it’s RF transmitter bitbanging, IR remote signal reception, UART emulation, or any other protocol lacking peripherals in your MCU, this is where you learn how to do it.
Inside [Jim]In a previous article, he spent a lot of time explaining the basics of precision and accuracy, then rehearsing these theories using an ATMega. In the next article in this series, he wants to create an LTC decoder, teaching us more about using barriers properly for time-sensitive tasks. We can’t wait!