How to Make and Program an Absolutely Minimalistic Barebone Arduino Running the Internal Clock

by Skorekaj in Circuits > Arduino

5391 Views, 29 Favorites, 0 Comments

How to Make and Program an Absolutely Minimalistic Barebone Arduino Running the Internal Clock

Bareduino.jpg

This project came about when i got interested in Arduino and what you could do with them. I ordered an Arduino Leonardo and started to mess around with the various elementary projects and sensors. I quickly realised that i wanted to make something that could run for a long time and was using little power. I was having to spend quite a lot of time in order to get this working, so hopefully this will help others and make it a smoother path to making Low Power consuming Arduino projects.

B.O.M

What you will need:

The assumption is that you have burnt the BootLoader, see here if not: How to bur the BootLoader on an ATMega328p chip
and that you have an FTDI controller already but if you don't, below is a link to get one.

1 * Arduino FTDI (http://www.ebay.co.uk/itm/TTL-3-3V-5-5V-FT232RL-FT...)

1 * Atmega328p (http://www.ebay.co.uk/itm/181954046884?_trksid=p20...)

1 * Breadboard (http://www.ebay.co.uk/itm/Green-Mini-Solderless-Pr...)

Jumper cables, Dupont Male to Male (http://www.ebay.co.uk/itm/40-Pcs-Dupont-Jumper-Wir...)

1 * 22pF capacitor

Wire It Up

Screen Shot 2016-10-14 at 21.41.08.png

Wire up the Arduino Uno with the breadboard and the ATMega like the above, don’t forget to include the capacitor.

Program Using the Arduino IDE

Screen Shot 2016-10-14 at 17.11.19.png

You will have to download and install the internal Clock library in the IDE, follow Tom's article below.

tomheylen: How to load the internal Clock library in the IDE: (https://www.instructables.com/id/2-Arduino-the-ATME...)

Once that is installed move on to the below.

In the IDE, under tools and make sure the Board: AtMega328 on a breadboard (8 MHz internal Clock).

Make sure the FTDI is chosen under Port:.

UpLoad the a sketch like the below:

<p>#include "LowPower.h"</p><p>void setup() {
  pinMode(13, OUTPUT); 
}</p><p>void loop() {
  digitalWrite(13, HIGH);   
  LowPower.powerDown(SLEEP_60MS, ADC_OFF, BOD_OFF);  // PowerDown 
  digitalWrite(13, LOW);    
  LowPower.powerDown(SLEEP_120MS, ADC_OFF, BOD_OFF);  // PowerDown
  digitalWrite(13, HIGH);   
  LowPower.powerDown(SLEEP_60MS, ADC_OFF, BOD_OFF);  // PowerDown 
  digitalWrite(13, LOW);    
  LowPower.powerDown(SLEEP_2S, ADC_OFF, BOD_OFF);  // PowerDown 
}</p>

The End . . .

IMG_2313 copy.jpg
IMG_2298 copy.jpg

You now have an absolute bare minimum configuration, consisting of the AtMega328, and LED, breadboard, wires and power.

Now the fun can begin . . . ;)

Thanks To: