Skip to content

MyIDE replaces WINAVR. Users who want to move from Arduino-IDE to pure C++ are welcome.

Notifications You must be signed in to change notification settings

EKlatt/2021-AVR-IDE-GCC-11

Repository files navigation

MyIDE created from AVR-GCC 11.1.0

This is the beta version of MyIDE intended for advanced Arduino-IDE
users. MyIDE is not a replacement for WINAVR. It is just a new approach.
MyIDE consists of

  • AVR-GCC 11.1.0 for Windows 64 bit
  • Programmer's Notepad 2
  • GNU utilities for Win32.
  • Gerd's AVR simulator
  • AVRA 1.4.2 assembler
  • AVRDUDESS - A GUI for AVRDUDE

MyIDE is intended for programmers who want to understand
the basics behind the scene (Arduino-IDE).

Main goal: Writing code in native C++

The main goal is to develop C++ programs using the AVR-toolchain
from Zak Kemble.
You may write your source code also in C and Assembler (S-files).
The source file needs to have the extension "cpp", 'c' or 'S'.

Understanding a micro controller

The AVR assembler simulator by Gerhard Schmidt is included.
This software emulates e.g. ATmega micro controllers.
So you really may understand what goes on within your micro controller.
You may create assembler code, running the integrated assembler and simulate it.
The source file needs to have the extension "asm".

AVR assembler AVRA

AVRA is an assembler by Burkhard Arenfeld (and others) for Atmel AVR microcontrollers, and it is almost
compatible with Atmel's own assembler.
I included it in MyIDE if you want to develop in assembler. You need to distingish between "AVR assembler AVRA" and GCU-GCC assembler.
If you want to create assembler applications try AVR assemble AVRA .
The source file needs to have the extension "asm".

Automatically detection of source:

The "makefile" automatically detects all types of source-files.
In fact more than one source-file will be detected.

Ready to use makefile:

There is a ready to use makefile, which needs to be copied into project-folder.
You only need to change the PORT according to your USB-connection.

Installation of MyIDE:

Follow the instructions in INSTALL.md

What to do after installation

No further installation is needed.
No settings of environment-values are nessesary.
The makefile will find all tools automatically.
This is done because Programmer's Notepad sends its directory-path to the makefile.
Hence do not change the structure of MyIDE.
Below the MyIDE main folder needs to be the following subfolders:

archives, avr_sim, avra, libraries, makefile, PNP, toolchain, utils

Thanks to the developers

I appreciate the work of Zak Kemble and his toolchain:
https://blog.zakkemble.net/avr-gcc-builds/
The contents will be find in the folder "..\MyIDE\toolchain".
This great implementation contains e.g. avr-gcc.exe but alse make.exe,
avrdude.com, avrdude.conf and all the libraries.

Zak Kemble also developed a GUI for avrdude called avrdudess..
https://blog.zakkemble.net/avrdudess-a-gui-for-avrdude/
The contents will be found in the folder "..\MyIDE\avrdudess".

This MyIDE runs within the Windows-Shell.
The MyIDE-folder "..\MyIDE\utils" contains Unix-tools derived from:
http://unxutils.sourceforge.net Karl M. Syring
Hence UNIX-commands like ls.exe may be used within make.exe.

As Editor I choosed portable Programmer's Notepad:
The MyIDE-folder "..\MyIDE\PNP" contains the folders and files derived from:
https://github.com/simonsteele/pn/releases/download/v2.4.2/portable-pn2421440.zip
I made some additions in UserTools.xml in order to add options in the TOOLS-menue.

Gerd's AVR simulator simulates AVR 8-bit micro controllers of any type.
For more information see:
Gerd's AVR simulator (avr-asm-tutorial.net) The MyIDE-folder "..\MyIDE\avr_sim" contains the file "avr_sim.exe" derived from:
http://www.avr-asm-tutorial.net/avr_sim/23/avr_sim_23_win64_debug.zip

There are a view AVR assemblers like: avra, tavrasm, gavrasm, avrasm2 ...

  • avra: You need to compile the executable first. Does not work with "'#PRAGMA'".
  • tavrasm: Is out of date.
  • gavrasm: Is included in Gerd's AVR simulator. Does not need "*.inc" -files"!
  • avrasm2: Microchip only offers the assembler together with there IDE's

I decided to use "AVRA".

Release 1.4.2 (2020-07-18, by Burkhard Arenfeld, Robert Russell, and others)

So you need to download "AVRA".

AVRA Home Page (sourceforge.net)

Ro5bert/avra: Assembler for the Atmel AVR microcontroller family (github.com)

https://github.com/Ro5bert/avra/archive/1.4.2.zip

Have fun.