Difference between revisions of "AVR Embedded Tutorials"

From Free Pascal wiki
Jump to navigationJump to search
m (→‎See also: Updated)
m (→‎Set up cross compiler/IDE: New update from German page)
Line 10: Line 10:
  
 
* [[AVR Embedded Tutorial - Entry Lazarus and Arduino|Getting started Lazarus and Arduino (Uno/Nano)]] - How do I set up Lazarus to program an Arduino (AVR - Cross compiler).
 
* [[AVR Embedded Tutorial - Entry Lazarus and Arduino|Getting started Lazarus and Arduino (Uno/Nano)]] - How do I set up Lazarus to program an Arduino (AVR - Cross compiler).
* [[AVR Embedded Tutorial - Set up Lazarus for ATmega and ATTiny|Set up Lazarus for ATtiny and ATmega]] - Lazarus cross compilation for additional Arduino / AVRs.
+
* [[AVR Embedded Tutorial - Set up Lazarus for ATmega and ATTiny|Set up Lazarus for ATtiny and ATmega]] - Lazarus cross compilation for additional Arduino/AVRs.
 +
* Tool for creating and modifying AVR/Arduino projects: [https://github.com/sechshelme/Lazarus-Embedded/tree/master/Arduino_AVR_Package AVR/ Arduino Package] - sechshelme (external link).
 
* [[AVR Embedded Tutorial - Various programmers|Various programmers]] - hardware connections to flash the AVR.
 
* [[AVR Embedded Tutorial - Various programmers|Various programmers]] - hardware connections to flash the AVR.
  

Revision as of 01:29, 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

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