{"id":252,"date":"2007-10-14T09:46:25","date_gmt":"2007-10-14T08:46:25","guid":{"rendered":"http:\/\/www.evertdekker.com\/wp\/?p=252"},"modified":"2015-08-03T20:23:35","modified_gmt":"2015-08-03T19:23:35","slug":"manchester-code","status":"publish","type":"post","link":"https:\/\/evertdekker.com\/wp\/?p=252","title":{"rendered":"Manchester coding"},"content":{"rendered":"<hr \/>\n<p>For wireless communication you need <a href=\"https:\/\/en.wikipedia.org\/wiki\/Manchester_code\" target=\"_blank\">Manchester coding<\/a>. Manchester code provides simple encoding with no long period without a level transition. This helps clock recovery.<br \/>\nHere &#8216;s is a simple sample for a transmitter and receiver written in Bascom-avr.<br \/>\n1 will be coded as 01<br \/>\n0 will be coded as 10<br \/>\n00 and 11 are invalid<br \/>\nFor the receiving part in VB6 <a href=\"http:\/\/www.evertdekker.com\/wp\/?p=249\">check here<\/a> .<\/p>\n<pre class=\"brush: vb; gutter: true\">Declare Function Make_manchester(byval Temp As Byte) As Word\r\nDeclare Function Decode_manchester(byval Tempw As Word ) As Byte\r\n\r\n\r\n\r\n&#039;== Demo prog ==\r\nDim Lus As Byte\r\nDo\r\nFor Lus = 0 To 255\r\n   Tempword = Make_manchester(lus)\r\n   Print Decode_manchester(tempword)\r\nNext Lus\r\nLoop\r\nEnd\r\n\r\n \r\n\r\n&#039;Subroutines\r\nSub Make_manchester(byval Temp As Byte) As Word\r\nLocal Bit_number As Byte\r\nLocal Manchester As Word\r\nBit_number = 8\r\nDo\r\nShift Manchester , Left , 2\r\nDecr Bit_number\r\nIf Temp.bit_number = 1 Then\r\nManchester = Manchester + 1                                 &#039;01\r\nElse\r\nManchester = Manchester + 2                                 &#039;10\r\nEnd If\r\nLoop Until Bit_number = 0\r\nMake_manchester = Manchester\r\nEnd Sub\r\n\r\n\r\nSub Decode_manchester(byval Tempw As Word ) As Byte\r\nLocal Bit_number As Byte\r\nLocal Manchester As Word\r\nBit_number = 8\r\nDo\r\nShift Manchester , Left , 1\r\nDecr Bit_number\r\nTemp_1 = Tempw And &amp;B1100_0000_0000_0000\r\nIf Temp_1 = &amp;B0100_0000_0000_0000 Then Incr Manchester      &#039;01\r\nIf Temp_1 = &amp;B1100_0000_0000_0000 Or Temp_1 = 0 Then Set Data_error       &#039;11 or 00\r\nShift Tempw , Left , 2\r\nLoop Until Bit_number = 0\r\nIf Data_error = 0 Then\r\n   Decode_manchester = Manchester\r\nElse\r\n   Decode_manchester = 0\r\nEnd If\r\nReset Data_error\r\nEnd Sub<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>For wireless communication you need Manchester coding. Manchester code provides simple encoding with no long period without a level transition. This helps clock recovery. Here &#8216;s is a simple sample for a transmitter and receiver written in Bascom-avr. 1 will be coded as 01 0 will be coded as 10 00 and 11 are invalid [&#8230;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19],"tags":[26,30],"class_list":["post-252","post","type-post","status-publish","format-standard","hentry","category-bascom","tag-bascom","tag-manchester"],"_links":{"self":[{"href":"https:\/\/evertdekker.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/252","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/evertdekker.com\/wp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/evertdekker.com\/wp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/evertdekker.com\/wp\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/evertdekker.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=252"}],"version-history":[{"count":4,"href":"https:\/\/evertdekker.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/252\/revisions"}],"predecessor-version":[{"id":370,"href":"https:\/\/evertdekker.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/252\/revisions\/370"}],"wp:attachment":[{"href":"https:\/\/evertdekker.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=252"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/evertdekker.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=252"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/evertdekker.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=252"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}