Difference between revisions of "Baremetal Arduino"

From Interaction Station Wiki
Jump to navigation Jump to search
m
m
Line 22: Line 22:
  
 
== Unleash your μController ==
 
== Unleash your μController ==
'''One note of warning: work carefully, detailed and pay attention to the correct orientation and pin numbering of the parts. Hooking up your power source the wrong way can destroy the μController.'''
+
'''One note of warning:''' work carefully, detailed and pay attention to the correct orientation and pin numbering of the parts. Hooking up your power source the wrong way can destroy the μController.
  
 
First of all you need to relieve the μController from the Arduino board. Another option is to buy one. The μController on the Arduino is the Atmel AVR ATMEGA328P-PU, you can order these for example at [https://www.conrad.nl/nl/atmel-avr-risc-microcontroller-atmel-atmega328p-pu-soort-behuizing-pdip-28-flash-geheugen-32-kb-geheugen-ram-2-kb-155197.html Conrad].  
 
First of all you need to relieve the μController from the Arduino board. Another option is to buy one. The μController on the Arduino is the Atmel AVR ATMEGA328P-PU, you can order these for example at [https://www.conrad.nl/nl/atmel-avr-risc-microcontroller-atmel-atmega328p-pu-soort-behuizing-pdip-28-flash-geheugen-32-kb-geheugen-ram-2-kb-155197.html Conrad].  

Revision as of 23:33, 17 April 2015

Bare machine (or bare metal), in computer parlance, means a computer without its operating system. Modern operating systems evolved through various stages, from elementary to the present day complex, highly sensitive real-time systems. In the very first stage of computing there was nothing like an operating system at all. Programs were fed to the computer system directly using machine language by the programmers without any system software support. This approach is termed the "bare machine" approach in the development of operating systems. [1]

Here with Bare metal we mean the μController without it's Arduino layer. We remove the μController from it's comfortable position on the Arduino hardware and place it on a breadboard. This page will take you throught the steps on how to do this. It will not tell you how you should layout your breadboard. These are considered implementation details and are up to the you. However, to assist with this there is a Fritzing[2] project available with the electrical schematic and starting point for laying out your breadboard design.

The steps we need to follow:

  1. download and install Fritzing
  2. download and install the Arduino Unleashed project files
  3. create your breadboard layout using Fritzing
  4. copy your breadboard layout to the physical world
  5. program the μController

Note: this page is a work in progress.

Download and install the Arduino Unleashed project files

Create your breadboard layout using Fritzing

Copy your breadboard layout to the physical world

Program the μController

Unleash your μController

One note of warning: work carefully, detailed and pay attention to the correct orientation and pin numbering of the parts. Hooking up your power source the wrong way can destroy the μController.

First of all you need to relieve the μController from the Arduino board. Another option is to buy one. The μController on the Arduino is the Atmel AVR ATMEGA328P-PU, you can order these for example at Conrad.

To remove the chip from your Arduino can be a bit challenging. Carefully push a small flat screwdriver in between the chip and the socket lifting the chip out of its socket bit by bit. Be careful not to bend the legs too much as they will break easily.


BreadBoardArduino.png

Notes & References