Difference between revisions of "AVR Embedded Tutorials"

From Lazarus wiki
Jump to navigationJump to search
m (→‎Set up cross compiler/IDE: New update from German page)
(→‎See also: Bypass redirect; add Raspberry Pi Pico/RP2040)
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{LanguageBar}}
 
{{LanguageBar}}
  
== AVR embedded tutorial ==
+
== AVR embedded tutorials ==
  
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.
+
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 ==
 
== Set up cross compiler/IDE ==
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|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).
Line 59: Line 61:
 
* [[AVR Programming]] - Important basics and special features for programming AVR Embedded/Arduino
 
* [[AVR Programming]] - Important basics and special features for programming AVR Embedded/Arduino
 
* [[Arduino]] - Communication with an Arduino
 
* [[Arduino]] - Communication with an Arduino
* [[ARM Embedded Tutorial|ARM Embedded Tutorials]] - Tutorials for ARM Embedded/STM32.
+
* [[ARM Embedded Tutorials]] - Tutorials for ARM Embedded/STM32 and Raspberry Pi Pico/RP2040.
  
 
[[Category:Operating Systems and Platforms]]
 
[[Category:Operating Systems and Platforms]]

Revision as of 02:53, 1 February 2021

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

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

  • AVR - Cross compiler with make
  • AVR Programming - Important basics and special features for programming AVR Embedded/Arduino
  • Arduino - Communication with an Arduino
  • ARM Embedded Tutorials - Tutorials for ARM Embedded/STM32 and Raspberry Pi Pico/RP2040.