Implementation of Manchester codec for information transmission systems based on AVR and ARM architecture microcontrollers

ATmega series AVR microcontrollers (e.g., ATmega8A or ATmega16A) and ARM microcontrollers with a Cortex M3 core (e.g., STM32F103С8T6) are among the most popular controllers used in solving engineering problems related to servicing various fire and security alarm sensors and devices for metering hous...

Full description

Saved in:
Bibliographic Details
Main Authors: Andrey Sadchenko, Oleg Kushnirenko, Nataliia Kushnirenko, Olha Sadchenko, Alexander Troyanskiy
Format: Article
Language:English
Published: Politehperiodika 2022-12-01
Series:Tekhnologiya i Konstruirovanie v Elektronnoi Apparature
Subjects:
Online Access:https://tkea.com.ua/index.php/journal/article/view/49
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1849732076887080960
author Andrey Sadchenko
Oleg Kushnirenko
Nataliia Kushnirenko
Olha Sadchenko
Alexander Troyanskiy
author_facet Andrey Sadchenko
Oleg Kushnirenko
Nataliia Kushnirenko
Olha Sadchenko
Alexander Troyanskiy
author_sort Andrey Sadchenko
collection DOAJ
description ATmega series AVR microcontrollers (e.g., ATmega8A or ATmega16A) and ARM microcontrollers with a Cortex M3 core (e.g., STM32F103С8T6) are among the most popular controllers used in solving engineering problems related to servicing various fire and security alarm sensors and devices for metering household and industrial power consumption. At the same time, to transfer the data via a twisted pair or AC voltage network, it needs to be encoded using Manchester 1 or Manchester 2 code, and said AVR and ARM microcontroller units (MCU) contain no hardware encoder and decoder for the Manchester code. The study aimed at solving the engineering problem of implementing the codec (encoder-decoder) of the Manchester code based on the hardware interfaces of low-performance microcontrollers. The direct implementation of the encoding algorithm with the Manchester code using a purely software-driven approach significantly decreases the information transfer rate. At the same time, among the hardware interfaces of the MCU, there is always a serial universal asynchronous data transceiver (UART). However, the UART data transfer protocol is not generally suitable for Manchester encoding and, therefore, needs to be software adapted. In order to adapt the UART protocol to the conditions of Manchester encoding, the 8N1 mode is selected at the hardware level, which means 8 data bits, 1 stop and 1 start bit. The software implementation of the encoder consists in the fact that out of the total possible volume of 256 code combinations, 16 are selected that satisfy the Manchester 2 code, while the start and stop conditions for data bytes transmitted in a row also satisfy the structure of the Manchester code. To maximize the efficiency of the program code, all code words are stored in the memory of the MCU in such a way that their serial number corresponds to the decimal interpretation of 4 bits of the input data. The decoding of the received data is also performed as efficiently as possible using the decoding table. The implementation of the software and hardware codec of the Manchester code significantly expands the scope of popular AVR and ARM microcontrollers and reduces the cost of the finished product by excluding any additional units that perform the function of encoding and decoding the Manchester code.
format Article
id doaj-art-50e0470bc0dc4bbaaf921ffa130d5480
institution DOAJ
issn 2225-5818
2309-9992
language English
publishDate 2022-12-01
publisher Politehperiodika
record_format Article
series Tekhnologiya i Konstruirovanie v Elektronnoi Apparature
spelling doaj-art-50e0470bc0dc4bbaaf921ffa130d54802025-08-20T03:08:20ZengPolitehperiodikaTekhnologiya i Konstruirovanie v Elektronnoi Apparature2225-58182309-99922022-12-014–6172410.15222/TKEA2022.4-6.1749Implementation of Manchester codec for information transmission systems based on AVR and ARM architecture microcontrollersAndrey Sadchenko0Oleg Kushnirenko1Nataliia Kushnirenko2Olha Sadchenko3Alexander Troyanskiy4Odessа Polytechnic National UniversityOdessа Polytechnic National UniversityOdessa, Odessа Polytechnic National UniversityOdessa, Odessа Polytechnic National UniversityOdessa, Odessа Polytechnic National UniversityATmega series AVR microcontrollers (e.g., ATmega8A or ATmega16A) and ARM microcontrollers with a Cortex M3 core (e.g., STM32F103С8T6) are among the most popular controllers used in solving engineering problems related to servicing various fire and security alarm sensors and devices for metering household and industrial power consumption. At the same time, to transfer the data via a twisted pair or AC voltage network, it needs to be encoded using Manchester 1 or Manchester 2 code, and said AVR and ARM microcontroller units (MCU) contain no hardware encoder and decoder for the Manchester code. The study aimed at solving the engineering problem of implementing the codec (encoder-decoder) of the Manchester code based on the hardware interfaces of low-performance microcontrollers. The direct implementation of the encoding algorithm with the Manchester code using a purely software-driven approach significantly decreases the information transfer rate. At the same time, among the hardware interfaces of the MCU, there is always a serial universal asynchronous data transceiver (UART). However, the UART data transfer protocol is not generally suitable for Manchester encoding and, therefore, needs to be software adapted. In order to adapt the UART protocol to the conditions of Manchester encoding, the 8N1 mode is selected at the hardware level, which means 8 data bits, 1 stop and 1 start bit. The software implementation of the encoder consists in the fact that out of the total possible volume of 256 code combinations, 16 are selected that satisfy the Manchester 2 code, while the start and stop conditions for data bytes transmitted in a row also satisfy the structure of the Manchester code. To maximize the efficiency of the program code, all code words are stored in the memory of the MCU in such a way that their serial number corresponds to the decimal interpretation of 4 bits of the input data. The decoding of the received data is also performed as efficiently as possible using the decoding table. The implementation of the software and hardware codec of the Manchester code significantly expands the scope of popular AVR and ARM microcontrollers and reduces the cost of the finished product by excluding any additional units that perform the function of encoding and decoding the Manchester code.https://tkea.com.ua/index.php/journal/article/view/49optical networkmodemmanchester encodinghardware codecuartmicrocontrolleravrarm
spellingShingle Andrey Sadchenko
Oleg Kushnirenko
Nataliia Kushnirenko
Olha Sadchenko
Alexander Troyanskiy
Implementation of Manchester codec for information transmission systems based on AVR and ARM architecture microcontrollers
Tekhnologiya i Konstruirovanie v Elektronnoi Apparature
optical network
modem
manchester encoding
hardware codec
uart
microcontroller
avr
arm
title Implementation of Manchester codec for information transmission systems based on AVR and ARM architecture microcontrollers
title_full Implementation of Manchester codec for information transmission systems based on AVR and ARM architecture microcontrollers
title_fullStr Implementation of Manchester codec for information transmission systems based on AVR and ARM architecture microcontrollers
title_full_unstemmed Implementation of Manchester codec for information transmission systems based on AVR and ARM architecture microcontrollers
title_short Implementation of Manchester codec for information transmission systems based on AVR and ARM architecture microcontrollers
title_sort implementation of manchester codec for information transmission systems based on avr and arm architecture microcontrollers
topic optical network
modem
manchester encoding
hardware codec
uart
microcontroller
avr
arm
url https://tkea.com.ua/index.php/journal/article/view/49
work_keys_str_mv AT andreysadchenko implementationofmanchestercodecforinformationtransmissionsystemsbasedonavrandarmarchitecturemicrocontrollers
AT olegkushnirenko implementationofmanchestercodecforinformationtransmissionsystemsbasedonavrandarmarchitecturemicrocontrollers
AT nataliiakushnirenko implementationofmanchestercodecforinformationtransmissionsystemsbasedonavrandarmarchitecturemicrocontrollers
AT olhasadchenko implementationofmanchestercodecforinformationtransmissionsystemsbasedonavrandarmarchitecturemicrocontrollers
AT alexandertroyanskiy implementationofmanchestercodecforinformationtransmissionsystemsbasedonavrandarmarchitecturemicrocontrollers