-
Developing in C for the ATmega328P: Struct - buttons[]
Where I describe the struct, buttons[] and how to use it to debounce and check for button presses.
-
Developing in C for the ATmega328P: Function - digitalRead()
Where I describe the function - digitalRead().
-
Developing in C for the ATmega328P: Function - pinMode()
Where I describe the function - pinMode().
-
Developing in C for the ATmega328P: Function - digitalWrite()
Where I describe the function - digitalWrite().
-
Developing in C on the AVR ATmega328P: Frequently Found Errors (FFE)
Where I attempt to gather in one place, all of the errors found while building (compile/link/locate) and uploading code to the Uno.
-
Developing in C for the ATmega328P: Functions - Serial input/output
Where I describe the functions for serial input/out - puts(), getchar() and printf().
-
Developing in C for the ATmega328P: Function - analogWrite()
Where I describe the function - analogWrite().
-
Developing in C for the ATmega328P: AVR_C Library Functions
Where I describe how to use the Library functions in AVR_C.
-
Developing in C on the AVR ATmega328P: Frequently Asked Questions (FAQ)
Where I attempt to direct all of the questions, pertaining to Developing in C for the Arduino Uno.
-
Developing in C for the ATmega328P: Build
Where I describe the process of developing code for the Arduino Uno(AVR ATmega328P), specifically, the build process.
-
Developing in C for the ATmega328P: Edit
Where I describe the process of developing code for the Arduino Uno(AVR ATmega328P), specifically, editing the code.
-
Developing in C for the ATmega328P: Upload
Where I describe the process of developing code for the Arduino Uno(AVR ATmega328P), specifically, uploading code to the Uno.
-
Developing in C for the ATmega328P: Using git
Where I discuss how to implement and use git to develop code in C for the Arduino Uno.
-
GCC 12 AVR array subscript 0 is outside array bounds
Where I describe a new error caused by a bug in GCC 12 as it relates to the AVR microcontrollers.
-
Using Makefiles to Automate Development
Where I demonstrate how to use make and makefiles to automate your build process.
-
Comparing Board and Language Speeds
Where I compare the execution speeds of different combinations of boards and languages.
-
Git: Beginning to Use It (ESP32)
Where I discuss what to do once you’ve downloaded a repository from Github.
-
Developing in C for the ATmega328: PRNG, FSM and more!
Where I discuss psuedo-random number generators (PRNG), finite state machines (FSM) and other software topics.
-
Hardware Debug: Exploring the ATmega328PB Xplained Mini
Where I demonstrate how to use the ATmega328PB Xplained Mini from Microchip to understand how to program in Standard C.
2021
-
Developing in C for the ATmega328: Hints on Using Bloom and avr-gdb
Where I provide hints on using avr-gdb and bloom to debug code on the ATmega328P.
-
Developing in C for the ATmega328: Examples of Bloom with gdb to Debug
Where I show some examples as to how to use Bloom and avr-gdb to debug code on the ATmega328P.
-
Developing in C for the ATmega328: Setup Bloom and gdb for Hardware Debug
Where I illustrate how to setup using avr-gdb to debug code on the ATmega328P and replacing avarice with Bloom and the Atmel Dragon with the Microchip Snap.
-
Hardware Debug: Using gdb to Debug
Where I illustrate debugging code for the ATmega328P using the Atmel Dragon, avr-gdb and avarice.
-
Developing in C for the ATmega328P: Using Windows, Advanced
Where I setup the advanced, Standard C tool chain (avr-gcc) for the ATmega328P on Windows.
-
Developing in C for the ATmega328: Multitasking
Where I illustrate developing multitasking code for the ATmega328P using a new Standard C framework.
-
Developing in C for the ATmega328: Using the Standard C Framework
Where I illustrate developing code for the ATmega328P using the new Standard C framework.
-
DEPRECATED: Developing in C for the ATmega328P: Windows Setup Using WSL1
DEPRECATED: Due to Microsoft’s inability to enable serial ports in WSL 2, attempting to perform embedded development in WSL is futile.
-
Developing in C for the ATmega328P: macOS Setup
Where I setup the Standard C toolchain (avr-gcc) for the ATmega328P on macOS using homebrew.
-
Developing in C for the ATmega328P: Linux Setup
Where I setup the Standard C toolchain for the ATmega328P for Linux, with specific emphasis on the Raspberry Pi.
-
Developing in C for the ATmega328P: Setup Introduction
Updated: Where I describe the optional steps to setup the Standard C toolchain for the ATmega328P on Windows, Linux, or macOS using a command line-based approach.