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...
Saved in:
| Main Authors: | , , , , |
|---|---|
| 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 |