IonicWind Software

Aurora Compiler => Software Projects => Topic started by: sapero on August 09, 2009, 09:19:45 AM

Title: Manchester encoding software modem
Post by: sapero on August 09, 2009, 09:19:45 AM
In telecommunication, Manchester code is a line code in which the encoding of each data bit has at least one transition and occupies the same time. It is, therefore, self-clocking, which means that a clock signal can be recovered from the encoded data [...]
Manchester code always has a transition at the middle of each bit period. In the normal encoding, transition direction indicates the data bit (0 or 1). In Differential encoding, A '1' bit is indicated by making the first half of the signal equal to the last half of the previous bit's signal.

I have included both methods in this small modem. The standard method uses "m_polarization" bit to automatically detect signal polarisation, and the differential method uses the same bit variable to remember the previously received bit.

You can use this modem as the last communication medium (via sound card) with external hardware - like a microcontroller. With my build-in soundcard I was able to demodulate manchester data at 3675bits/second without any errors (with 44100 sampling rate). Attached source code is configured to simultaneously transmit and receive.

Emergence version (http://www.ionicwind.com/forums/index.php/topic,3550.msg28265.html#msg28265)
Title: Re: Manchester encoding software modem
Post by: ZeroDog on August 09, 2009, 10:20:02 AM
hmmm.  This looks really interesting.  I dont use aurora at all, but if I did, this would be a really neat project.  Thanks for sharing  ;D