Arduino Philosophy and Community

in #iot2 years ago

Open Source Physical Computing Platform
“open source hardware”
open source: free to inspect & modify
physical computing
ubiquitous computing
pervasive computing
ambient intelligence
calm computing
smart objects
Examples wiki (the “playground”) editable by anyone
Forums with lots of helpful people

Similar to Basic Stamp (if you know of it)
but cheaper, faster, & open
Uses AVR ATmega168 microcontroller chip
chip was designed to be used with C language
The designer of the AVR purposefully arranged its registers and instruction set so that C programs would compile efficiently on it. This is a big deal, compared to previous microcontrollers where C programs were almost always less efficient than a hand-coded assembly language variant.

16 kBytes of Flash program memory
1 kByte of RAM
16 MHz (Apple II: 1 MHz)
Inputs and Outputs
14 digital input/output pins
4 analog input pins
6 analog output pins (only sorta analog, uses PWM , which we’ll talk about later)
Completely stand-alone: doesn’t need a computer once programmed

  • Don’t worry if the above doesn’t make sense, you don’t really need to know it.
    ckt (2).jpg

“sketch” – a program you write to run on an Arduino board
“pin” – an input or output connected to something. e.g. output to an LED, input from a knob.
“digital” – value is either HIGH or LOW. (aka on/off, one/zero) e.g. switch state
“analog” – value ranges, usually from 0-255. e.g. LED brightness, motor speed, etc.