■ FIGURE 9.
■ FIGURE 7.
■ FIGURE 10. Arduino proto shield on base.
■ FIGURE 8. Arduino on base.
Now, we can use that temporary buffer to send the
bytes to the Mini Terminal and have them displayed on the
LCD. All the IMT sees is the stream of bytes; it knows
nothing about how they were stored by the sender. If you
think this is complicated, you should take a look at the
PROGMEM stuff in avr-libc to see what is even deeper
under the hood there.
The p_string macro we are using provides two layers
of simplification above the truly difficult stuff in avr-libc. If
we just want to use the LCD and don't really care how it
works, then using these layers makes sense. If we can use
the computer to do the hard stuff to simplify our lives,
why not do so?
So, this takes us from last month’s Arduino-simple high
level view of how to use the IMT to the intermediate level
libraries, and hints at the further complexities in the next
layer down in avr-libc and the Wire library. You should
have some further insight about the software abstraction
process that puts progressively simpler layers on top of the
complex underlying code, then lets the computer deal
with the hard stuff while allowing the user to get the job
done (wasting as few brain cells as possible).
Some guru types are going to try to make you feel
guilty about doing this the easy way, claiming you ought
to use real C (or assembler or whatever) or go home. Just
smile at them, while you actually make things work using
the best (read simplest) tools available.
Building The Arduino
August 2013 73
The Arduino handheld prototyper consists of three
main parts, two of which we have already seen. First, there
is the Arduino proto shield that we looked at in great
detail beginning in the December 2012 Nuts & Volts. The
second part is the IMT that we began looking at last
month. The third part is the base kit (Figure 6) that ties
together the first two parts, giving us an Arduino, a proto
shield with a mini breadboard, and an IMT with an 8x2
character LCD and five pushbuttons that (taken all
together) can be used to prototype devices.
The base kit has a plastic base board, lots of nylon
nuts and bolts, a nine volt battery connector, some
Velcro™ to attach the battery, and some bumper feet. [You
can get the Arduino proto shield, the IMT, and the
handheld prototyper from the Nuts & Volts webstore.]
The components in Figure 6 are intended to use with
both the older style Arduinos and the newer Uno R3 with
expanded connections. We have sufficient nylon nuts and
bolts to build either style, but here we'll see the Uno R3
being built. Figure 7 shows the plastic base with the bolts
in the holes held in place by nuts (also the rubber
bumpers are on the bottom, but show through the clear
plastic). Note that there is no bolt in the hole that
corresponds to the Arduino hole directly next to the