Написание более сложных программ

Для того, чтобы удобнее было писать более сложные программы, мною разработана библиотеку классов VE_AVR C++ Class Library, которая в объектно-ориентированном виде описывает периферийные устройства микроконтроллеров ATmega. Её использование позволяет не только повысить читаемость кода, но и сделать код переносимым между такими разными микроконтроллерами, как например ATmega32 и ATmega325.

Периферийные устройства описываются классами на основе шаблонов классов (templates) и встраиваемыми функциями, поэтому получаемый исполняемый код программы не содержит кода неиспользуемых функций. Также не создаётся никаких объектов, просто регистры периферийных устройств микроконтроллера определены как структуры данных. Это позволяет например вызывать функции библиотеки из обработчиков-прерываний, а в исполняемом коде не происходит вызова каких-либо функций как таковых.

Библиотека сопровождается примерами использования классов периферийных устройств.

Автор: Андрей Шаройко <vanyamboe@gmail.com>