Categories

Breadboard

14-May-2013 9:14pm
New products for May 2013

It’s always exciting to add new products and this month is no exception

Continue reading “15 new products for May” »

19-Sep-2011 6:35am
8 Breadboard Hacks

A few hacks to make bread boarding easier…

1. Hacking the power buses

The power buses on a breadboard are constructed in multiple pieces. To get continuity down the length of the bus Continue reading “8 Breadboard Hacks” »

3-Apr-2011 1:41pm
Analogue to Digital Conversion Interrupts on an ATmega168

Back in February, we wrote a post on Analogue to Digital Conversion. Many people mentioned that it was a bit light and they would like a more advanced tutorial. Well here it is…

Continue reading “Analogue to Digital Conversion Interrupts on an ATmega168A” »

13-Feb-2011 8:44am
Analogue to Digital Conversion on an ATmega168

Many AVR microcontrollers are capable of doing Analogue to Digital Conversion. The ATmega168 has 6 ports (8 ports on the SMD packages) that can be used for analogue input. This tutorial shows you how.

Continue reading “Analogue to Digital Conversion on an ATmega168” »

9-Jan-2011 11:32am
Reading and writing EEPROM

EEPROM (Electrically Erasable Programmable Read Only Memory) Is non-volatile memory, meaning it persists after power is removed. The ATmega168 microcontroller has 512 bytes of EEPROM which can be used to store system parameters and small amounts of data. This tutorial shows you how to read and write EEPROM.
Continue reading “Reading and writing Atmega168 EEPROM” »

23-Oct-2010 6:40am

Atmega168 Experimenter's Kit

Recently a friend asked me, “What do I buy if I’m just starting out with embedded systems and want to learn?”. I told him a breadboard solution would be best and started rattling off all the bits that he would need. Then I got thinking, what if we made this a kit? So here it is…

Continue reading “Atmega168 Experimenter’s Kit” »

4-Sep-2010 3:53pm

This tutorial will teach you how to use external and pin change interrupts on an AVR microcontroller. I will be using an ATmega168. The general principles apply to other AVR microcontrollers, but the specific vary greatly.

External interrupts on an atmega168 microcontroller

What is an Interrupt?

Imagine your are sitting at your computer, reading this post. The phone rings and you answer it. After you hang up the phone (it was a telemarketer trying to sell you a timeshare), you get back to the awesomeness of the post, picking up where you left off.

Microcontroller interrupts are just like that.

  • The microcontroller is executing it’s main routine
  • An event occurs, which raises an interrupt
  • The Interrupt Service Routine (ISR) is run
  • On termination of the ISR, the microcontroller returns to it’s main routine, at the point where it left off

Continue reading “External Interrupts on an ATmega168” »

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” »

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” »

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” »