Tutorial 2 for Arduino: Now with more Blinky Things!


This tutorial was featured on the official Arduino blog on 3/9/2011

That’s right folks, it’s Monday, and the second installment of my arduino tutorial series is here! I spent the last week in Disney World, but now that I’m back, it’s time to get down to business! This week, I’ll show you how to read a push button, debounce its input using software, how to create a function in the arduino programming environment, and how to change LED brightness using Pulse Width Modulation (PWM). If you have no idea what PWM is, or if you are confused about analog and digital signals, go check out my TechBits episode on the topic first! Don’t forget to go browse the element14 Arduino Group; it’s a great place to post questions, and learn from others!

You can download the files associated with this episode here:

GNU GPL License Distributed under the GNU General Public (Open-Source) License.
Please Attribute and Share-Alike.


  1. Hi Jermey,

    The GROUND terminal of my board is not working properly. what actions can be taken to rectify this defect

  2. Hi there Jeremy, I just started reading your book and it’s awesome, but… im having some trouble understanding one thing in these line code:

    currentButton = debounce(lastButton);

    I understand that “currentButton” will be set as “debounce(lastButton)” but what’s is really the function of “lastButton” being on parenthesis as an argument.

Leave a Reply

Required fields are marked *.