Protostack
Home | Online Store | Tutorials | Library | Shipping & Returns | Contact Us
RSS feed 6 Feed

Archive

Tag: ATmega8

28 Pin AVR Development Board – Version 1.6

17-Apr-2011 4:42pm
28 Pin AVR Development Board - Version 1.6

We released the 28 Pin AVR Development Board back in 2008 and since then it has gone through many iterations. This week we release version 1.6 which adds 4 improvements. These improvements were based on customer feedback and we are very grateful for the feedback. Please keep it coming.

Continue reading “28 Pin AVR Development Board – Version 1.6” »

Version 1.5 of AVR 28 pin board

30-Jul-2010 9:57am

Version 1.5 of the 28 Pin AVR Development Board is now available. As before we have incorporated a number of changes that people had asked for.

New version of Protostack AVR 28 pin board

The most notable change is a figure-8 shaped hole for mounting the voltage regulator. This configuration allows for both Input/Ground/Output (IGO) and Ground/Output/Input (GOI) style voltage regulators. Other changes to the power supply include the addition of a diode to protect against reverse polarity and a resettable fuse.
Continue reading “Version 1.5 of AVR 28 pin board” »

Introduction to I/O Registers

30-Jun-2010 9:25am

Introduction to I/O registers

This tutorial will teach you how to use the I/O ports on an AVR microcontroller. I will be using an Atmega8 but the general principles apply to any AVR microcontroller.

Introduction

The Atmega8 has 23 I/O ports which are organised into 3 groups:

  • Port B (PB0 to PB7)
  • Port C (PC0 to PC6)
  • Port D (PD0 to PD7)

Continue reading “Introduction to I/O Registers” »

Introduction to 74HC595 shift register – Controlling 16 LEDs

28-May-2010 9:23am

This tutorial shows you how to control 16 LEDs with just 3 control lines. We do this by daisy chaining 74HC595 shift registers

Image

The 74HC595 shift register has an 8 bit storage register and an 8 bit shift register. Data is written to the shift register serially, then latched onto the storage register. The storage register then controls 8 output lines. Continue reading “Introduction to 74HC595 shift register – Controlling 16 LEDs” »

Character LCD Displays – Part 2

18-Apr-2010 9:18am

Introduction

This tutorial continues from Character LCD Displays – Part 1. In this part we will connect the LCD module to an Atmega8 microcontroller, then write some code to drive it.

Image
Continue reading “Character LCD Displays – Part 2” »

Debouncing a switch

26-Mar-2010 9:16am

Mechanical switches do not make or break a connection cleanly due to microscopic conditions on the contact surface. This is referred to as “Switch Bounce” and can cause problems in digital circuits. In this tutorial we will build a circuit that demonstrates this problem, then modify it slightly to resolve it.

Image

We will be reusing the circuit from the ATmega8 breadboard circuit tutorial. Continue reading “Debouncing a switch” »

Character LCD Displays – Part 1

9-Mar-2010 9:14am

Introduction

LCD character displays can be found in espresso machines, laser printers, children’s toys and maybe even the odd toaster. The Hitachi HD44780 controller has become an industry standard for these types of displays. This tutorial will teach you the basics of interfacing with a HD44780 compatible display using some DIP switches and a few other components.

Image
Continue reading “Character LCD Displays – Part 1” »

ATmega8 breadboard circuit – Part 3 of 3 – The Firmware

12-Aug-2009 8:53am

This tutorial continues on from ATmega8 breadboard circuit Part 1 and ATmega8 breadboard circuit Part 2. So far we’ve built a power supply, added the microcontroller, added some plumbing to make it work and added the ISP interface, but it really doesn’t do anything. The next step is to add some I/O devices and upload some firmware.

atmega8 breadboard circuit

A lot of ATmega8 tutorials will use a “Hello World” program which consists of an LED that blinks at 1Hz. For this tutorial we will build on this and have an LED that blinks 3 times when a button is pressed. The first thing we need to do is add the LED and button to the breadboard. Continue reading “ATmega8 breadboard circuit – Part 3 of 3 – The Firmware” »

ATmega8 breadboard circuit – Part 2 of 3 – The Microcontroller

26-Jul-2009 8:50am

This tutorial continues on from ATmega8 Breadboard Circuit – Part 1 where we build a small power supply on the breadboard. In this part we will add the ATmega8 microcontroller and an interface to allow it to be programmed.

atmega8 circuit diagram

The first step is to orient yourself with the ATMEGA8 microcontroller. Since we are building our circuit on a breadboard, we’re using the PDIP variant (ATMEGA8-16PU). You could also build this circuit using an ATmega48, 88, 168 or 328 as these all share the same pin layout but have slightly different features, clock speeds and memory.

When you look at the microcontroller you will see a few makings which help identify the pin numbers. At one end there is a semicircle/half moon section. This denotes the top of the IC (Integrated Circuit). In a PDIP/DIP package the pins are numbered from 1 in an anticlockwise fashion from this marker. Additionally, on the ATmega8 there is a small circle identifying pin 1.
Continue reading “ATmega8 breadboard circuit – Part 2 of 3 – The Microcontroller” »

Atmega8 breadboard circuit – Part 1 of 3 – Power supply

20-Jul-2009 8:45am

This is the 1st of a 3 part series where I will describe how to build a basic ATmega8 circuit and program it with a simple program. This tutorial is ideal for first timers, so read on…

atmega8 circuit on a breadboard

Breadboards usually have a break or two in the bus strips, so the first thing we will do is put jumpers on them, so you have connectivity through the whole strip. The exact position of these jumpers will depend on the model of breadboard you use, so use the continuity tester on your multimeter to determine where these jumpers should go. The breadboard we are using can be found here but any full size breadboard should work.
Continue reading “Atmega8 breadboard circuit – Part 1 of 3 – Power supply” »