Programming-Arduino (1) - Pages-24
Programming-Arduino (1) - Pages-24
The heart—or, perhaps more appropriately, the brain—of the device is the
central processing unit (CPU). It controls everything that goes on within the
device. It fetches program instructions stored in the flash memory and executes
them. This might involve fetching data from working memory (RAM), changing
it, and then putting it back. Or, it may mean changing one of the digital outputs
from 0V to 5V.
The EEPROM memory is a little like the flash memory in that it is non-
volatile. That is, you can turn the device off and on and it will not have forgotten
what is in the EEPROM. Whereas the flash memory is intended for storing
program instructions (from sketches), the EEPROM is used to store data that you
do not want to lose in the event of a reset or the power being turned off.
Other Components
Above the microcontroller is a small, silver, rectangular component. This is a
quartz crystal oscillator. It ticks 16 million times a second, and on each of those
ticks, the microcontroller can perform one operation—addition, subtraction, or
another mathematical operation.
In the top-left corner is the Reset switch. Clicking on this switch sends a
logic pulse to the Reset pin of the microcontroller, causing the microcontroller to
start its program afresh and clear its memory. Note that any program stored on
the device will be retained, because this is kept in non-volatile flash memory—
that is, memory that remembers even when the device is not powered.
On the right-hand edge of the board is the Serial Programming Connector. It
offers another means of programming the Arduino without using the USB port.
Because we do have a USB connection and software that makes it convenient to
use, we will not avail ourselves of this feature.
In the top-left corner of the board next to the USB socket is the USB
interface chip. This chip converts the signal levels used by the USB standard to
levels that can be used directly by the Arduino board.