Difference between revisions of "AVR Embedded Tutorials"

From Free Pascal wiki
Jump to navigationJump to search
m (→‎Set up cross compiler/IDE: New update from German page)
m (→‎AVR programming examples: Added tutorials heading)
Line 18: Line 18:
 
* [https://github.com/sechshelme/Lazarus-Embedded sechshelme examples] (external)
 
* [https://github.com/sechshelme/Lazarus-Embedded sechshelme examples] (external)
 
* [https://github.com/ccrause/fpc-avr crrause examples] (external)
 
* [https://github.com/ccrause/fpc-avr crrause examples] (external)
 +
 +
== AVR tutorials ==
  
 
=== Software ===
 
=== Software ===
  
* [[AVR_Programming]] - important basics and special features for programming AVR
+
* [[AVR_Programming]] - Important basics and special features for programming AVR.
* [[AVR Embedded Tutorial - Library|Libraries]] - units in AVR programming.
+
* [[AVR Embedded Tutorial - Library|Libraries]] - Units in AVR programming.
* [[AVR Embedded Tutorial - Delays|Delay]] - waiting routines (delay/sleep).
+
* [[AVR Embedded Tutorial - Delays|Delay]] - Waiting routines (delay/sleep).
 
* [[AVR Embedded Tutorial - Multiplex|Multiplex]] - Multiplex based on a 4-digit 7-segment display.
 
* [[AVR Embedded Tutorial - Multiplex|Multiplex]] - Multiplex based on a 4-digit 7-segment display.
 
* [[AVR Embedded Tutorial - Int to digits|Integer to digits]] - Output an integer to digits (7-segment display).
 
* [[AVR Embedded Tutorial - Int to digits|Integer to digits]] - Output an integer to digits (7-segment display).

Revision as of 06:56, 26 January 2020

Deutsch (de) English (en)

AVR embedded tutorial

This is a tutorial 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

Software

Hardware

Communication

  • 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