EasyManuals Logo

Arduino uno User Manual

Arduino uno
311 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #77 background imageLoading...
Page #77 background image
Admittedly thats a lot of code, but you know most of it already, and the new
parts are fairly easy. In the first line, we include the Bounce2 library well use
later to debounce our two buttons. Then we define constants for the pins we
use, and we define the variable
guess
that will hold the players current guess.
The Bounce2 library declares a class named
Bounce
, and you have to create a
Bounce
object for every button you want to debounce. Thats what happens in
lines 11 and 12.
In the
setup
method, we initialize all our pins and set the random seed. We
also initialize the serial port, because well output some debug messages. In
lines 20 to 23, we initialize the two
Bounce
objects. The
attach
method connects
a
Bounce
object to a certain pin. With the
interval
method you can set a buttons
debounce delay in milliseconds.
Our
loop
function has been reduced to two function calls. One is responsible
for dealing with guess button pushes, and the other one handles pushes of
the start button. In
handle_guess_button
, we use the
Bounce
class for the first time.
To determine the current state of our
guess_button
object, we have to call its
update
method. Afterward, we read its current status using the
read
method.
If the button was pressed, its state is set to
HIGH
, and we increment the
guess
variable. To make sure that the guess is always in the range between 1 and
6, we use the modulus operator (
%
) in line 36. This operator divides two values
and returns the remainder. For 6, it returns values between 0 and 5, because
when you divide a number by 6, the remainder is always between 0 and 5.
Add 1 to the result, and you get values between 1 and 6. Finally, we output
the current guess using the three LEDs, and we also print it to the serial port.
The handling of the start button in
handle_start_button
works exactly the same
as the handling of the guess button. When the start button is pressed, we
calculate a new result and output it on the serial port. Then we check whether
the user has entered a guess (
guess
is greater than zero in this case) and
whether the user has guessed the correct result. In either case, we print a
message to the serial port, and if the user guessed right, we also call the
hooray
method.
hooray
lets all three LEDs blink several times.
At the end of the method, we wait for two seconds until the game starts again,
and we reset the current guess to zero.
After youve uploaded the software to the Arduino, start the IDEs serial
monitor. It will print the current value of the
guess
variable whenever you
press the guess button. Press the start button, and the new result appears.
In the following figure, you can see a typical output of our binary die.
Chapter 3. Building Binary Dice 58
report erratum discuss
www.it-ebooks.info

Table of Contents

Other manuals for Arduino uno

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Arduino uno and is the answer not in the manual?

Arduino uno Specifications

General IconGeneral
Form factorArduino
CertificationRoHS, FC, CE
Processor model-
Processor frequency- MHz
Microcontroller modelATmega328
Microcontroller frequency16 MHz
DC input voltage7-12 V
Operating voltage5 V
DC current per I/O pin40 mA
Flash memory0.032 MB
Maximum internal memory- GB
SRAM (Static Random Access Memory)2 KB
EEPROM (Electrically Erasable Programmable Read-Only Memory)1 KB
Wi-FiNo
Number of analog I/O pins6
Number of digital I/O pins14
Weight and Dimensions IconWeight and Dimensions
Board dimensions53.4 x 68.6 mm

Related product manuals