AVR Embedded Tutorials

From Free Pascal wiki
Revision as of 07:00, 21 October 2020 by Trev (talk | contribs) (Software: Fix typo)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Deutsch (de) English (en)

AVR embedded tutorials

This is an overview of tutorials for programming AVR microcontrollers with Free Pascal and Lazarus. This includes various ATtiny and ATmega microcontrollers. Most of the examples also run on an Arduino with an ATmega; especially the Uno/Nano. The Arduino-Mega can also be programmed. Basically, all AVR microcontrollers are programmed more or less the same way. Usually only the registers differ a little.

Set up cross compiler/IDE

Building the cross compiler and setting up the Lazarus IDE:

AVR programming examples

AVR tutorials




  • UART - Serial input and output via UART (COM port).
  • SPI - Use of the hardware SPI interface with an ATmega328 / Arduino.
  • SPI slave - Use SPI as a slave.
  • I²C / TWI - Communication with I²C / TWI, hardware controlled.
  • Software I²C/TWI - Communication with I²C / TWI, software controlled.

External modules

See also