AVR ATmega Projects

Install GNU Make

Using the GNU AVR toolchain on Windows 10

Introduction This page aims to provide guidance on setting up a full GCC-based toolchain on a contemporary Windows platform. I’ve formulated these guidelines using my Windows 10 system, but they are generally applicable to Windows versions dating back to Windows 7. In earlier Windows editions, you might consider using WinAVR, which used to be the […]

Using the GNU AVR toolchain on Windows 10 Read More »

Overview of Hardware Design

A wireless, voice-controllable, household system.

Motivation We have developed a smart home control system that enables individuals to voice-control their household devices. This system operates wirelessly and allows users to manage various home facilities, such as lights, fans, and background music, using voice commands. We have successfully implemented the basic functions of controlling lights, fans, and music. Beyond simple on/off

A wireless, voice-controllable, household system. Read More »

which pins tie to which functional hardware etc

Introduction to the Atmel ATmega16 Microcontroller

Introduction A microcontroller typically serves as the central “intelligence” of a mechatronic system, functioning as a miniature self-contained computer. It can be programmed to interact with both the system’s hardware components and the user. Even the most basic microcontroller can execute elementary mathematical operations, manage digital outputs, and monitor digital inputs. With the continuous evolution

Introduction to the Atmel ATmega16 Microcontroller Read More »

Embedded Controllers Using C and Arduino 2E

Embedded Controllers Using C and Arduino / 2E

1. Course Introduction 1.1 Overview This course serves as an introduction to the C programming language with a specific emphasis on embedded programming. It assumes that you have prior experience with a high-level language such as Python, BASIC, FORTRAN, or Pascal. Given the intricacies of embedded systems, we commence our journey by exploring the language’s

Embedded Controllers Using C and Arduino / 2E Read More »

Atmel studio 6.1 progisp or flash magic

Alarm clock DPR

In this project, we will create a straightforward alarm clock using the timers of the ATmega32 microcontroller. The ATmega32A microcontroller features a 16-bit timer, which will be utilized for tracking seconds and constructing a digital clock. Hardware components include the ATmega32 microcontroller, an 11.0592MHz crystal, two 22pF capacitors, a 5V power supply, AVR-ISP PROGRAMMER, a

Alarm clock DPR Read More »

Visual Aid

Automated Frozen Pipe Burst Prevention System

1. Introduction 1.1 Problem Extreme cold temperatures, such as those experienced during the winter in Illinois, pose a significant threat of causing pipes to freeze and subsequently burst. Just this past winter break, our apartment complex sent out an email notifying residents on our floor that several units had unfortunately suffered burst pipes due to

Automated Frozen Pipe Burst Prevention System Read More »

AVR USB Devices and Programming

During this week’s lecture, we delved into a relatively less-explored subject: USB, a widely-used protocol enabling computers to interact with peripheral devices equipped with microcontrollers. Developing a USB device empowers any computer to establish communication without the need for the specialized software and hardware that have been our focus thus far. For the next two

AVR USB Devices and Programming Read More »

Controlling Angular Position of Servo Motor using Pulse Width Modulation

Interfacing Servo Motor with Atmega32 Microcontroller

A Servo Motor is a type of DC Motor that incorporates error sensing negative feedback to precisely regulate the angular position of its shaft. Unlike standard DC Motors, servo motors do not rotate continuously but instead perform controlled angular rotations, such as 0-90° or 0-180°. While Stepper Motors can also achieve accurate angular rotations, Servo

Interfacing Servo Motor with Atmega32 Microcontroller Read More »

Scroll to Top