TANGIBLE MEDIA & PHYSICAL COMPUTING INTRODUCTION TO ARDUINO
|
|
- Darleen Robbins
- 5 years ago
- Views:
Transcription
1 TANGIBLE MEDIA & PHYSICAL COMPUTING INTRODUCTION TO ARDUINO
2 AGENDA ARDUINO HARDWARE THE IDE & SETUP BASIC PROGRAMMING CONCEPTS DEBUGGING & HELLO WORLD INPUTS AND OUTPUTS DEMOS
3 ARDUINO HISTORY IN 2003 HERNANDO BARRAGÁN CREATED THE DEVELOPMENT PLATFORM WIRING AS A MASTER'S THESIS PROJECT AT IDII, UNDER THE SUPERVISION OF MASSIMO BANZI AND CASEY REAS, KNOWN FOR THEIR WORK ON THE PROCESSING LANGUAGE. GOAL: CREATE SIMPLE, LOW COST TOOLS FOR CREATING DIGITAL PROJECTS BY NON ENGINEERS. WIRING CONSISTED OF A PCB WITH AN ATMEGA 168 MICRO CONTROLLER, AN IDE BASED ON PROCESSING AND LIBRARY FUNCTIONS TO PROGRAM THE CONTROLLER EASILY. IN 2005, MASSIMO BANZI, DAVID MELLIS AND DAVID CUARTIELLES, ADDED SUPPORT FOR THE CHEAPER ATMEGA8 MICROCONTROLLER TO WIRING. THEY FORKED THE WIRING SOURCE CODE AND STARTED RUNNING IT AS A SEPARATE PROJECT, CALLED ARDUINO.
4 WHAT IS AN ARDUINO TODAY? ARDUINO IS AN OPEN-SOURCE ELECTRONICS PROTOTYPING PLATFORM BASED ON FLEXIBLE, EASY-TO- USE HARDWARE AND SOFTWARE. IT IS INTENDED FOR ARTISTS, DESIGNERS, HOBBYISTS, AND ANYONE INTERESTED IN CREATING INTERACTIVE OBJECTS OR ENVIRONMENTS. THE PREMIER RESOURCE FOR ANYTHING ARDUINO - THE HOME OF THE ORIGINAL DOCUMENTATION FOR THE IDE, BUNDLED LIBRARIES, AND THE HARDWARE:
5 ARDUINO: INSPIRATION & HELP ARDUINO FORUM ARDUINO REFERENCE INSTRUCTABLES LADYADA ARDUNIO PLAYGROUND THE ITP PHYSICAL COMPUTING WIKI MAKE: PROJECTS
6 ARDUINO BOARDS** DRAFT ARDUINO MAKES SEVERAL DIFFERENT BOARDS, EACH WITH DIFFERENT CAPABILITIES. A FEW OPTIONS THAT ARE WELL-SUITED TO SOMEONE NEW TO THE WORLD OF ARDUINO: UNO R3 LILYPAD ARDUINO ARDUINO MEGA R3 ARDUNIO LEONARDO 3RD PARTY MANUFACTURERS CERTIFIED BY ARDUINO
7 ARDUINO UNO SPECS ATMEL ATMEGA328P 8-BIT MICROCONTROLLER 32KB OF FLASH MEMORY FOR APPLICATION PROGRAMS, 2KB OF SRAM 1KB OF EEPROM FOR NON-VOLATILE DATA. THE CLOCK SPEED IS 16MHZ.
8 ARDUINO UNO 1 & 2 : POWER (USB /BARREL JACK)
9 ARDUINO UNO 3&4&5 : PINS: 5V, 3.3V, GND
10 ARDUINO UNO 6 : PINS: ANALOG
11 ARDUINO UNO 7 & 8 : PINS: DIGITAL
12 ARDUINO UNO 9 : PINS: AREF
13 ARDUINO UNO 10 : RESET BUTTON
14 ARDUINO UNO 11 : POWER LED INDICATOR
15 ARDUINO UNO 12 : TX & RX LEDS
16 ARDUINO UNO 13 : MAIN IC
17 ARDUINO UNO 14 : VOLTAGE REGULATOR
18 AGENDA ARDUINO HARDWARE THE IDE & SETUP BASIC PROGRAMMING CONCEPTS INPUTS AND OUTPUTS DEMOS
19 DOWNLOAD & SETUP PREREQUISITES: LATEST JAVA SDK ( SHOULD BE PRE-INSTALLED) DOWNLOAD: FOLLOW THE INSTALLATION GUIDE (FOR YOUR OS):
20 THE IDE
21 LET S UPLOAD! PLUG YOUR ARDUINO INTO YOUR COMPUTER VIA THE USB CABLE SELECT THE CORRECT BOARD : (TOOLS> BOARDS) SELECT THE SERIAL/COM PORT: (TOOLS > PORT) OPEN THE BLINK EXAMPLE SKETCH BY GOING TO: FILE > EXAMPLES > 1.BASICS > BLINK
22 LET S UPLOAD! WITH YOUR ARDUINO BOARD CONNECTED, AND THE BLINK SKETCH OPEN, PRESS THE UPLOAD BUTTON. AFTER A SECOND, YOU SHOULD SEE SOME LEDS FLASHING ON YOUR ARDUINO, FOLLOWED BY THE MESSAGE DONE UPLOADING IN THE STATUS BAR OF THE BLINK SKETCH. IF EVERYTHING WORKED, THE ONBOARD LED ON YOUR ARDUINO SHOULD NOW BE BLINKING! YOU JUST PROGRAMMED YOUR FIRST ARDUINO!
23 LIBRARIES UNDER FILE > EXAMPLES, YOU WILL ALREADY FIND SOME USEFUL LIBRARIES WITH EXAMPLE SKETCHES( EEPROM, SOFTWARE SERIAL ) YOU CAN ALSO FIND A LIST WITH NAMES AND DESCRIPTIONS OF ALL THE LIBRARIES CURRENTLY INSTALLED IN YOUR IDE. GO TO SKETCH> INCLUDE LIBRARY >MANAGE LIBRARIES, AND THE LIBRARY MANAGER WILL POP UP, ALLOWING YOU TO VIEW AND INSTALL NEW LIBRARIES EASILY
24 AGENDA ARDUINO HARDWARE THE IDE & SETUP BASIC PROGRAMMING CONCEPTS INPUTS AND OUTPUTS DEMOS
25 THE ARDUINO LANGUAGE EVENTHOUGH THE ARDUINO LANGUAGE IS C++, MOST OF THE TIME YOU WILL BE PROGRAMMING PROCEDURALLY USING C, A SUBSET OF C++. THOSE WITH A FAMILIARITY WITH JAVA WILL NOT FIND PROGRAMMING FOR THE ARDUINO HARD. C++ IS OBJECT ORIENTED - AND EXTERNAL LIBRARIES ARE WRITTEN USING THIS PARADIGM. YOU NEED TO UNDERSTAND HOW TO INSTANTIATE OBJECTS FROM THESE LIBRARIES AND INVOKE THEIR METHODS. YOU WILL PROBABLY NOT HAVE TO CREATE YOUR OWN CLASS DEFINITIONS FROM SCRATCH - RATHER WE WILL FOCUS ON PROGRAM FLOW, FUNCTIONS AND OPTIMIZATION STRATEGIES.
26 COMPILATION YOU WRITE CODE IN THE ARDUINO IDE. YOUR SKETCH IS COMPILED INTO MACHINE CODE, WHICH THE MICRO CONTROLLER UNDERSTANDS. WE NEED A COMPILER TO SUPPORT THIS PROCESS: LUCKILY ARDUINO COMES WITH OPEN SOURCE C++ COMPILERS. WHEN YOU PRESS UPLOAD, THE IDE AUTOMATICALLY STARTS THE COMPILER, COMPILES THE CODE AND SENDS IT TO THE MICRO CONTROLLER VIA USB CABLE.
27 BASIC PROGRAMMING CONCEPTS AS EVERY USEFUL PROGRAMMING LANGUAGE, C++ IS MADE UP OF VARIOUS KEYWORDS AND CONSTRUCTS. THERE ARE CONDITIONALS, FUNCTIONS, OPERATORS, VARIABLES, CONSTRUCTORS, DATA STRUCTURES, AND MANY OTHER THINGS.
28 STRUCTURE OF A SKETCH: VOID SETUP(){ /*PUT YOUR SETUP CODE HERE */} THIS FUNCTION IS EXECUTED ONCE (WHEN PROGRAM STARTS) VOID LOOP(){/*MAIN CODE HERE */} THIS FUNCTION IS EXECUTED REPEATEDLY UNTIL YOU RESET OR CUT POWER. THESE FUNCTIONS MUST EXIST IN ORDER FOR THE PROGRAM TO COMPILE CORRECTLY.
29 FUNCTIONS PLEASE WRITE CUSTOM FUNCTIONS TO KEEP YOUR CODE ORGANIZED AND MODULAR! FUNCTION DEF EX: int sumfunction (int a, int b) { int c = a + b; return c; } FUNCTION CALL: void loop(){ int res = sumfunction(5,6); }
30 VARIABLES PROGRAMS ARE MOST USEFUL WHEN THEY PROCESS DATA: FROM USER, SENSOR, NETWORK, LOCAL FILE SYSTEM, LOCAL MEMORY WE MUST STORE THIS DATA IN MEMORY - SO THAT THE EXECUTING PROGRAM CAN PERFORM STANDARD OPERATIONS ON THE DATA: WRITE, READ, MODIFY AND USE. A VARIABLE: ASSOCIATES A MEMORY LOCATION WITH A NAME. PLEASE USE MEANINGFUL NAMES AND START WITH THEM WIT A LOWERCASE LETTER.
31 STANDARD DATATYPES FOR UNO A VARIABLE MUST HAVE A DATATYPE: boolean 1 byte true/false char 1 byte -127 to 127 (ASCII) unsigned char 1 byte 0 to 255 (ASCII) byte 1 byte 0 to 255 int/short 2 bytes to unsigned int 2 bytes 0 to long 4 bytes -2* 31 to 2 *31-1 unsigned long 4 bytes 0 to 2 *32-1 float 4 bytes 6-7 decimals of precision (total)
32 VARIABLE SCOPE int vala; int valb =6; void setup(){ int vala = 4; } void loop(){ int res = sumfunction(vala,valb); } int sumfunction (int a, int b) { int vala = a + b; return vala; }
33 CONSTANTS SOME INBUILT CONSTANTS FOR UNO: HIGH (INPUT): A VOLTAGE GREATER THAN 3.0V IS PRESENT AT THE PIN HIGH (OUTPUT): 5V SIGNAL IS OUTPUT LOW (INPUT): A VOLTAGE LESS THAN 1.5V IS PRESENT AT THE PIN LOW(OUTPUT): 0V SIGNAL IS OUTPUT
34 CONSTANTS SOME INBUILT CONSTANTS FOR UNO CONT: A DIGITAL PIN IS CONFIGURED AS AN INPUT OR OUTPUT USING THE PINMODE() FUNCTION. USE THE KEYWORD INPUT, OUTPUT, OR INPUT_PULLUP AS A PARAMETER TO THIS FUNCTION, DEPENDING ON YOUR INTENTIONS TRUE: ANY INTEGER (BOOLEAN SENSE) THAT IS NOT 0. FALSE: 0.
35 CONSTANTS DEFINE YOUR OWN: #DEFINE: GIVE A CONSTANT A NAME BEFORE COMPILING: #define <NAME> <value> CONST: MAKES A VARIABLE READ-ONLY const <datatype> <NAME> = <value>; GOOD PRACTICE: CAPITALIZE CONSTANTS
36 OPERATORS ARDUINO SUPPORTS UNARY AND BINARY OPERATIONS: Arithmetic: +, -, *, /, % Compound: +=,-=,*=, /= Inc & Dec: ++, - - Comparison: ==,!=, <, >,, Logical:!, &&, Bitwise: <<, >>,, &,^
37 CONDITIONAL STATEMENTS if ( boolean expr is true ) { /*perform instructions in this clause*/ } else if ( another boolean expr is true ) { /* perform instructions in this clause*/ } else { /*previous statements were false*/ }
38 SWITCH CASE 1: TESTVAL IS THE VARIABLE THAT WE TEST WITH 2: EXECUTE CORRESPONDING SWITCH STATEMENT 3: BREAK : JUMP OUT OF THE SWITCH CONSTRUCT 4: DEFAULT : IF NO OTHER CASE IS MATCHED switch ( testval ) { case 1: { // do this; break; } case 2: { // do this; break; } case n: { //do this; break; } default: { // no other cases were true; } }
39 FOR LOOP 1: COUNTER START 2: TERMINATING CONDITION 3: HOW MUCH TO CHANGE COUNTER EACH TIME for ( int i = 0; i < max ; i++ ) { /* do whatever repeatedly until counter(here: var named i) reaches max. */ }
40 WHILE LOOP 1: COME UP WITH BOOLEAN EXPRESSION 2: STATEMENTS INSIDE WHILE CLAUSE WILL EXECUTE UNTIL BOOLEAN EXPRESSION IS FALSE 3: MAY NOT EVEN EXECUTE ONCE 4: BEWARE OF INFINITE LOOPS while ( boolean expression is true ) { /* do whatever repeatedly until boolean expression is false */ }
41 DO WHILE LOOP 1: COME UP WITH BOOLEAN EXPRESSION 2: STATEMENTS INSIDE WHILE CLAUSE WILL EXECUTE UNTIL BOOLEAN EXPRESSION IS FALSE 3: WILL EXECUTE AT LEAST ONCE 4: BEWARE OF INFINITE LOOPS do { /* do whatever repeatedly until boolean expression is false */ } while ( boolean expression is true )
42 ARRAYS A COLLECTION OF VARIABLES (ALL OF THE SAME DATATYPE) THAT ARE ACCESSED WITH AN INDEX NUMBER. int numbers[6]; int mypins[] = {2, 4, 8, 3, 6}; int mysensvals[6] = {2, 4, -8, 3, 2}; char message[6] = hello ; 1; DECLARE AN ARRAY WITHOUT INITIALIZING IT 2: INITIALIZE AN ARRAY WITHOUT SPECIFYING A SIZE 3: SPECIFY SIZE AND INITIALIZE AN ARRAY 4: WHEN DECLARING AN ARRAY OF TYPE CHAR: SIZE == N+1, TO HOLD THE REQUIRED NULL CHARACTER.
43 ACCESSING ARRAY ELEMENTS THE FIRST ELEMENT OF THE ARRAY IS AT INDEX 0, AND THE LAST ELEMENT IS ACCESSED BY ARRAYSIZE-1: int testarray[ 10 ] = { 9,3,2,4,3,2,7,8,9,11 }; // testarray [ 0 ] contains 9 // testarray [ 9 ] contains 11 // testarray [ 10 ] is invalid and contains random information (other memory address) ASSIGN AND RETRIEVE: testarray [ 0 ] = 10; int test = testarray [ 3 ];
44 ARRAYS :: SIZEOF() THE SIZEOF OPERATOR RETURNS THE NUMBER OF BYTES IN A VARIABLE TYPE, OR THE NUMBER OF BYTES OCCUPIED BY AN ARRAY. SINGLE VAR USAGE: int test = 10; sizeof ( test ) returns 2. USE TO DETERMINE SIZE OF A GIVEN DATATYPE sizeof ( int ) returns 2.
45 ARRAYS :: SIZEOF() AND ITERATION TO DETERMINE ARRAY SIZE, IT DEPENDS ON THE DATATYPES OF ELEMENTS STORED IN THE ARRAY: int testints [ ] = { 1,2,3,4,5,6 }; int arraysize = sizeof(testints )/sizeof(int); arraysize == 6 ITERATE THROUGH AN ARRAY: for (int i = 0; i<sizeof(testints)/sizeof(int); i++) { // do something with testint[i] ; }
46 AGENDA ARDUINO HARDWARE THE IDE & SETUP BASIC PROGRAMMING CONCEPTS INPUTS AND OUTPUTS DEMOS
47 ANALOG AND DIGITAL SIGNALS WE LIVE IN AN ANALOG WORLD: ANALOG SIGNALS HAVE INFINITE POSSIBILITIES DIGITAL SIGNALS AND OBJECTS DEAL IN THE REALM OF THE DISCRETE OR FINITE, MEANING THERE IS A LIMITED SET OF VALUES THEY CAN BE. WORKING WITH ELECTRONICS MEANS DEALING WITH BOTH ANALOG AND DIGITAL SIGNALS, INPUTS AND OUTPUTS. OUR ELECTRONICS PROJECTS HAVE TO INTERACT WITH THE REAL, ANALOG WORLD IN SOME WAY, BUT MOST MICROPROCESSORS, COMPUTERS, AND LOGIC UNITS ARE PURELY DIGITAL COMPONENTS. THESE TWO TYPES OF SIGNALS ARE LIKE DIFFERENT ELECTRONIC LANGUA GES, SOME COMPONENTS UNDERSTAND BOTH, OTHERS JUST ONE.
48 ANALOG AND DIGITAL SIGNALS AN ELECTRONIC SIGNAL: A VOLTAGE THAT CHANGES OVER A GIVEN TIME PERIOD, & IS PASSED BETWEEN DEVICES IN ORDER TO SEND AND RECEIVE INFORMATION TRANSMISSION MEDIUM: WIRE OR BY AIR THROUGH RADIO FREQUENCY
49 ANALOG SIGNALS A TIME-VERSUS-VOLTAGE GRAPH OF AN ANALOG SIGNAL SHOULD BE SMOOTH AND CONTINUOUS.
50 DIGITAL SIGNALS MOST COMMON DIGITAL SIGNALS WILL BE ONE OF TWO VALUES LIKE EITHER 0V OR 5V. TIMING GRAPHS OF THESE SIGNALS LOOK LIKE SQUARE WAVES. DIGITAL WAVES ARE STEPPING, SQUARE, AND DISCRETE.
51 ANALOG AND DIGITAL SIGNALS MICROCONTROLLERS: ARE CAPABLE OF DETECTING BINARY SIGNALS, WHICH ARE INHERENTLY DIGITAL: FOR EXAMPLE IF MIICROCONTROLLER IS POWERED FROM 5V: 0V = BINARY 0 &5V = BINARY 1 WORLD: MORE COMPLEX: WHAT IF THE SIGNAL IS 2.72V? IS THAT A 0 OR A 1? WHEN READING AN ANALOG SENSOR, WE NEED TO MEASURE SIGNALS THAT VARY: (ANALOG SIGNALS) - HOW? SOLUTION: MOST MICROCONTROLLERS HAVE AN ADC: A DEVICE TO CONVERT THESE VOLTAGES INTO VALUES THAT THE MICROCONTROLLER CAN WORK WITH (DISCRETE VALUES) BY CONVERTING FROM THE ANALOG WORLD TO THE DIGITAL WORLD, WE CAN BEGIN TO USE ELECTRONICS TO INTERFACE TO THE ANALOG WORLD AROUND US.
52 DIGITAL I/O DIGITAL PINS: 0 TO 13 ON THE ARDUINO UNO READ THE STATE OF BUTTONS, SWITCHES WRITE (CHANGE THE STATE) OF LEDS, TRANSISTORS THE PIN CAN BE IN TWO POSSIBLE STATES : HIGH /LOW. TO CONFIGURE A SPECIFIED PIN TO BEHAVE EITHER AS AN INPUT OR AN OUTPUT: pinmode ( pin, mode ); pin: the number (int) of the pin to set mode: INPUT, OUTPUT, INPUT_PULLUP
53 DIGITAL I/O: READ digitalread ( pin ); pin: the number (int) of the pin to read returns HIGH or LOW. EXAMPLE: #define BUTTON_PIN 2; void setup() { pinmode(button_pin, OUTPUT); } void loop() { int val = digitalread(button_pin); }
54 DIGITAL I/O: WRITE digitalwrite ( pin, value ); pin: the number (int) of the pin to read value: HIGH or LOW. EXAMPLE: #define LED_PIN 7; void setup() { pinmode(led_pin, INPUT); } void loop() { digitalwrite(led_pin,high); }
55 ANALOG I/O: READ ANALOG PINS: A0 TO A5 ON THE ARDUINO UNO 10-BIT ANALOG TO DIGITAL CONVERTER: MAP INPUT VOLTAGES BETWEEN 0-5 VOLTS TO analogread ( pin ); pin: the number (int) of the pin to read returns an int between 0 and EXAMPLE: void loop() { int val = analogread(a0); }
56 ANALOG I/O: WRITING USE DIGITAL PINS LABELED WITH ~ analogwrite ( pin, value ); pin: the number (int) of the pin to read value: between 0 (always off) & 255 (always on) EXAMPLE: void loop() { } int val = analogread(a0); //0 to 1023 analogwrite( 3, val/4); //0 to 255
57 AGENDA ARDUINO HARDWARE THE IDE & SETUP BASIC PROGRAMMING CONCEPTS INPUTS AND OUTPUTS DEMOS
58 DEMO 1: DIGITAL OUT BLINK LED
59 DEMO 2: DIGITAL IN /OUT BLINK LED ONLY WHEN BUTTON PRESSED 2A: USE BUTTON TO TURN LED ON AND AGAIN OFF
60 DEMO 3: DIGITAL OUT /ANALOG IN CHANGE DELAY OF BLINKING LED ACCORDING TO POT VALUE
61 DEMO 4: PWM OUT /ANALOG IN USE A POT TO ALTER VALUE OF AN LED ****PLEASE CHANGE LED TO PIN 11 *****
62 DEMO 4A & B: DIGITAL IN / PWM OUT 4A: USE A BUTTON AS TRIGGER TO FADE AN LED W/ LOOP 4B: USE A BUTTON AS TRIGGER TO FADE AN LED W/O LOOP
63 DEMO 5: RGB LED COLOR MIXING INTRO -> MULTIPLE ANALOG OUT
64 DEMO 6: SOUND TONE EXERCISE - MAPPING VALUES TO A SPEAKER
65 DEMO 6: SOUND II THE ETUDE
Lab 01 Arduino 程式設計實驗. Essential Arduino Programming and Digital Signal Process
Lab 01 Arduino 程式設計實驗 Essential Arduino Programming and Digital Signal Process Arduino Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's
More informationBASIC ARDUINO WORKSHOP. Mr. Aldwin and Mr. Bernardo
BASIC ARDUINO WORKSHOP Mr. Aldwin and Mr. Bernardo 1 BASIC ARDUINO WORKSHOP Course Goals Introduce Arduino Hardware and Understand Input Software and Output Create simple project 2 Arduino Open-source
More informationArduino Prof. Dr. Magdy M. Abdelhameed
Course Code: MDP 454, Course Name:, Second Semester 2014 Arduino What is Arduino? Microcontroller Platform Okay but what s a Microcontroller? Tiny, self-contained computers in an IC Often contain peripherals
More informationkeyestudio Keyestudio MEGA 2560 R3 Board
Keyestudio MEGA 2560 R3 Board Introduction: Keyestudio Mega 2560 R3 is a microcontroller board based on the ATMEGA2560-16AU, fully compatible with ARDUINO MEGA 2560 REV3. It has 54 digital input/output
More informationIME-100 Interdisciplinary Design and Manufacturing
IME-100 Interdisciplinary Design and Manufacturing Introduction Arduino and Programming Topics: 1. Introduction to Microprocessors/Microcontrollers 2. Introduction to Arduino 3. Arduino Programming Basics
More informationIntroduction to Arduino. Wilson Wingston Sharon
Introduction to Arduino Wilson Wingston Sharon cto@workshopindia.com Physical computing Developing solutions that implement a software to interact with elements in the physical universe. 1. Sensors convert
More informationIntroduction to Arduino
Introduction to Arduino Paco Abad May 20 th, 2011 WGM #21 Outline What is Arduino? Where to start Types Shields Alternatives Know your board Installing and using the IDE Digital output Serial communication
More informationIntroduction to Microcontrollers Using Arduino. PhilRobotics
Introduction to Microcontrollers Using Arduino PhilRobotics Objectives Know what is a microcontroller Learn the capabilities of a microcontroller Understand how microcontroller execute instructions Objectives
More informationArduino Uno Microcontroller Overview
Innovation Fellows Program Arduino Uno Microcontroller Overview, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota Arduino Uno Power & Interface Reset Button USB
More informationARDUINO LEONARDO ETH Code: A000022
ARDUINO LEONARDO ETH Code: A000022 All the fun of a Leonardo, plus an Ethernet port to extend your project to the IoT world. You can control sensors and actuators via the internet as a client or server.
More informationArduino provides a standard form factor that breaks the functions of the micro-controller into a more accessible package.
About the Tutorial Arduino is a prototype platform (open-source) based on an easy-to-use hardware and software. It consists of a circuit board, which can be programed (referred to as a microcontroller)
More informationHow to Use an Arduino
How to Use an Arduino By Vivian Law Introduction The first microcontroller, TMS-1802-NC, was built in 1971 by Texas Instruments. It owed its existence to the innovation and versatility of silicon and the
More informationNote. The above image and many others are courtesy of - this is a wonderful resource for designing circuits.
Robotics and Electronics Unit 2. Arduino Objectives. Students will understand the basic characteristics of an Arduino Uno microcontroller. understand the basic structure of an Arduino program. know how
More informationARDUINO LEONARDO WITH HEADERS Code: A000057
ARDUINO LEONARDO WITH HEADERS Code: A000057 Similar to an Arduino UNO, can be recognized by computer as a mouse or keyboard. The Arduino Leonardo is a microcontroller board based on the ATmega32u4 (datasheet).
More informationMore Arduino Programming
Introductory Medical Device Prototyping Arduino Part 2, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota More Arduino Programming Digital I/O (Read/Write) Analog
More informationArduino Part 2. Introductory Medical Device Prototyping
Introductory Medical Device Prototyping Arduino Part 2, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota More Arduino Programming Digital I/O (Read/Write) Analog
More informationIDUINO for maker s life. User Manual. For IDUINO development Board.
User Manual For IDUINO development Board 1.Overview 1.1 what is Arduino? Arduino is an open-source prototyping platform based on easy-to-use hardware and software. Arduino boards are able to read inputs
More informationFUNCTIONS For controlling the Arduino board and performing computations.
d i g i t a l R e a d ( ) [Digital I/O] Reads the value from a specified digital pin, either HIGH or LOW. digitalread(pin) pin: the number of the digital pin you want to read HIGH or LOW Sets pin 13 to
More informationARDUINO UNO REV3 Code: A000066
ARDUINO UNO REV3 Code: A000066 The UNO is the best board to get started with electronics and coding. If this is your first experience tinkering with the platform, the UNO is the most robust board you can
More informationARDUINO M0 PRO Code: A000111
ARDUINO M0 PRO Code: A000111 The Arduino M0 Pro is an Arduino M0 with a step by step debugger With the new Arduino M0 Pro board, the more creative individual will have the potential to create one s most
More information<Table of content> <Parts and description> <Circuit board Guide> <Pins> <Basics of Coding> <Intro to Arduino> <Intro> <Downloading Arduino IDO>
http://www.arduino.cc/
More informationIDUINO for maker s life. User Manual. For IDUINO Mega2560 Board(ST1026)
User Manual For IDUINO Mega2560 Board(ST1026) 1.Overview 1.1 what is Arduino? Arduino is an open-source prototyping platform based on easy-to-use hardware and software. Arduino boards are able to read
More informationArduino Programming. Arduino UNO & Innoesys Educational Shield
Arduino Programming Arduino UNO & Innoesys Educational Shield www.devobox.com Electronic Components & Prototyping Tools 79 Leandrou, 10443, Athens +30 210 51 55 513, info@devobox.com ARDUINO UNO... 3 INNOESYS
More informationIME-100 ECE. Lab 3. Electrical and Computer Engineering Department Kettering University. G. Tewolde, IME100-ECE,
IME-100 ECE Lab 3 Electrical and Computer Engineering Department Kettering University 3-1 1. Laboratory Computers Getting Started i. Log-in with User Name: Kettering Student (no password required) ii.
More informationAlessandra de Vitis. Arduino
Alessandra de Vitis Arduino Arduino types Alessandra de Vitis 2 Interfacing Interfacing represents the link between devices that operate with different physical quantities. Interface board or simply or
More informationArduino Uno. Arduino Uno R3 Front. Arduino Uno R2 Front
Arduino Uno Arduino Uno R3 Front Arduino Uno R2 Front Arduino Uno SMD Arduino Uno R3 Back Arduino Uno Front Arduino Uno Back Overview The Arduino Uno is a microcontroller board based on the ATmega328 (datasheet).
More informationIntroduction To Arduino
Introduction To Arduino What is Arduino? Hardware Boards / microcontrollers Shields Software Arduino IDE Simplified C Community Tutorials Forums Sample projects Arduino Uno Power: 5v (7-12v input) Digital
More informationThe Arduino Briefing. The Arduino Briefing
Mr. Yee Choon Seng Email : csyee@simtech.a-star.edu.sg Design Project resources http://guppy.mpe.nus.edu.sg/me3design.html One-Stop robotics shop A-Main Objectives Pte Ltd, Block 1 Rochor Road, #02-608,
More informationArduino Uno. Power & Interface. Arduino Part 1. Introductory Medical Device Prototyping. Digital I/O Pins. Reset Button. USB Interface.
Introductory Medical Device Prototyping Arduino Part 1, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota Arduino Uno Power & Interface Reset Button USB Interface
More informationARDUINO UNO REV3 SMD Code: A The board everybody gets started with, based on the ATmega328 (SMD).
ARDUINO UNO REV3 SMD Code: A000073 The board everybody gets started with, based on the ATmega328 (SMD). The Arduino Uno SMD R3 is a microcontroller board based on the ATmega328. It has 14 digital input/output
More informationIntro to Arduino. Zero to Prototyping in a Flash! Material designed by Linz Craig and Brian Huang
Intro to Arduino Zero to Prototyping in a Flash! Material designed by Linz Craig and Brian Huang Overview of Class Getting Started: Installation, Applications and Materials Electrical: Components, Ohm's
More informationARDUINO YÚN MINI Code: A000108
ARDUINO YÚN MINI Code: A000108 The Arduino Yún Mini is a compact version of the Arduino YUN OVERVIEW: Arduino Yún Mini is a breadboard PCB developed with ATmega 32u4 MCU and QCA MIPS 24K SoC CPU operating
More informationARDUINO PRIMO. Code: A000135
ARDUINO PRIMO Code: A000135 Primo combines the processing power from the Nordic nrf52 processor, an Espressif ESP8266 for WiFi, as well as several onboard sensors and a battery charger. The nrf52 includes
More informationTANGIBLE MEDIA & PHYSICAL COMPUTING MORE ARDUINO
TANGIBLE MEDIA & PHYSICAL COMPUTING MORE ARDUINO AGENDA RECAP ALGORITHMIC APPROACHES TIMERS RECAP: LAST WEEK WE DID: ARDUINO IDE INTRO MAKE SURE BOARD AND USB PORT SELECTED UPLOAD PROCESS COVERED DATATYPES
More informationIntroduction to Arduino
Introduction to Arduino Mobile Computing, aa. 2016/2017 May 12, 2017 Daniele Ronzani - Ph.D student in Computer Science dronzani@math.unipd.it What are Microcontrollers Very small and simple computers
More informationTABLE OF CONTENTS INTRODUCTION LESSONS PROJECTS
TABLE OF CONTENTS INTRODUCTION Introduction to Components - Maker UNO 5 - Maker UNO Board 6 - Setting Up - Download Arduino IDE 7 - Install Maker UNO Drivers - Install Maker UNO Board Package 3 LESSONS.
More informationARDUINO MEGA 2560 REV3 Code: A000067
ARDUINO MEGA 2560 REV3 Code: A000067 The MEGA 2560 is designed for more complex projects. With 54 digital I/O pins, 16 analog inputs and a larger space for your sketch it is the recommended board for 3D
More informationARDUINO MEGA ADK REV3 Code: A000069
ARDUINO MEGA ADK REV3 Code: A000069 OVERVIEW The Arduino MEGA ADK is a microcontroller board based on the ATmega2560. It has a USB host interface to connect with Android based phones, based on the MAX3421e
More informationArduino ADK Rev.3 Board A000069
Arduino ADK Rev.3 Board A000069 Overview The Arduino ADK is a microcontroller board based on the ATmega2560 (datasheet). It has a USB host interface to connect with Android based phones, based on the MAX3421e
More informationARDUINO INDUSTRIAL 1 01 Code: A000126
ARDUINO INDUSTRIAL 1 01 Code: A000126 The Industrial 101 is a small form-factor YUN designed for product integration. OVERVIEW: Arduino Industrial 101 is an Evaluation board for Arduino 101 LGA module.
More informationArduino Platform Part I
Arduino Platform Part I Justin Mclean Class Software Email: justin@classsoftware.com Twitter: @justinmclean Blog: http://blog.classsoftware.com Who am I? Director of Class Software for almost 15 years
More informationUniversity of Portland EE 271 Electrical Circuits Laboratory. Experiment: Arduino
University of Portland EE 271 Electrical Circuits Laboratory Experiment: Arduino I. Objective The objective of this experiment is to learn how to use the Arduino microcontroller to monitor switches and
More informationARDUINO YÚN Code: A000008
ARDUINO YÚN Code: A000008 Arduino YÚN is the perfect board to use when designing connected devices and, more in general, Internet of Things projects. It combines the power of Linux with the ease of use
More informationCARTOOINO Projects Book
1 CARTOOINO Projects Book Acknowledgement Acknowledgement This Cartooino Projects Book is a cartoon based adaptation of the Arduino Projects Book. The Cartooino Project Book was developed by the GreenLab
More informationArduino 101 AN INTRODUCTION TO ARDUINO BY WOMEN IN ENGINEERING FT T I NA A ND AW E S O ME ME NTO R S
Arduino 101 AN INTRODUCTION TO ARDUINO BY WOMEN IN ENGINEERING FT T I NA A ND AW E S O ME ME NTO R S Overview Motivation Circuit Design and Arduino Architecture Projects Blink the LED Switch Night Lamp
More informationARDUINO MICRO WITHOUT HEADERS Code: A000093
ARDUINO MICRO WITHOUT HEADERS Code: A000093 Arduino Micro is the smallest board of the family, easy to integrate it in everyday objects to make them interactive. The Micro is based on the ATmega32U4 microcontroller
More informationArduino and Matlab for prototyping and manufacturing
Arduino and Matlab for prototyping and manufacturing Enrique Chacón Tanarro 11th - 15th December 2017 UBORA First Design School - Nairobi Enrique Chacón Tanarro e.chacon@upm.es Index 1. Arduino 2. Arduino
More informationComputer Architectures
Implementing the door lock with Arduino Gábor Horváth 2017. február 24. Budapest associate professor BUTE Dept. Of Networked Systems and Services ghorvath@hit.bme.hu Outline Aim of the lecture: To show
More informationArduino For Amateur Radio
Arduino For Amateur Radio Introduction to Arduino Micro controller vs. a PI Arduino Models, Books and Add-Ons Amateur Radio Applications Arduino Uno/Pro Micro Introduction to Arduino Programming More on
More informationARDUINO MINI 05 Code: A000087
ARDUINO MINI 05 Code: A000087 The Arduino Mini is a very compact version of the Arduino Nano without an on board USB to Serial connection The Arduino Mini 05 is a small microcontroller board originally
More informationArduino Uno R3 INTRODUCTION
Arduino Uno R3 INTRODUCTION Arduino is used for building different types of electronic circuits easily using of both a physical programmable circuit board usually microcontroller and piece of code running
More informationUSER MANUAL ARDUINO I/O EXPANSION SHIELD
USER MANUAL ARDUINO I/O EXPANSION SHIELD Description: Sometimes Arduino Uno users run short of pins because there s a lot of projects that requires more than 20 signal pins. The only option they are left
More informationThe Arduino IDE and coding in C (part 1)
The Arduino IDE and coding in C (part 1) Introduction to the Arduino IDE (integrated development environment) Based on C++ Latest version ARDUINO IDE 1.8.3 can be downloaded from: https://www.arduino.cc/en/main/software
More informationARDUINO. By Kiran Tiwari BCT 2072 CoTS.
ARDUINO By Kiran Tiwari BCT 2072 CoTS www.kirantiwari.com.np SO What is an Arduino? WELL!! Arduino is an open-source prototyping platform based on easy-to-use hardware and software. Why Arduino? Simplifies
More informationIntroduction to Microcontroller Apps for Amateur Radio Projects Using the HamStack Platform.
Introduction to Microcontroller Apps for Amateur Radio Projects Using the HamStack Platform www.sierraradio.net www.hamstack.com Topics Introduction Hardware options Software development HamStack project
More informationAdapted from a lab originally written by Simon Hastings and Bill Ashmanskas
Physics 364 Arduino Lab 1 Adapted from a lab originally written by Simon Hastings and Bill Ashmanskas Vithayathil/Kroll Introduction Last revised: 2014-11-12 This lab introduces you to an electronic development
More informationMicrocontrollers for Ham Radio
Microcontrollers for Ham Radio MARTIN BUEHRING - KB4MG MAT T PESCH KK4NLK TOM PERRY KN4LSE What is a Microcontroller? A micro-controller is a small computer on a single integrated circuit containing a
More informationSmart Objects. SAPIENZA Università di Roma, M.Sc. in Product Design Fabio Patrizi
Smart Objects SAPIENZA Università di Roma, M.Sc. in Product Design Fabio Patrizi 1 What is a Smart Object? Essentially, an object that: Senses Thinks Acts 2 Example 1 https://www.youtube.com/watch?v=6bncjd8eke0
More informationIntroduction to Programming Using Java (98-388)
Introduction to Programming Using Java (98-388) Understand Java fundamentals Describe the use of main in a Java application Signature of main, why it is static; how to consume an instance of your own class;
More informationLaboratory 1 Introduction to the Arduino boards
Laboratory 1 Introduction to the Arduino boards The set of Arduino development tools include µc (microcontroller) boards, accessories (peripheral modules, components etc.) and open source software tools
More informationProcedure: Determine the polarity of the LED. Use the following image to help:
Section 2: Lab Activity Section 2.1 Getting started: LED Blink Purpose: To understand how to upload a program to the Arduino and to understand the function of each line of code in a simple program. This
More informationIntroducting Itsy Bitsy 32u4
Introducting Itsy Bitsy 32u4 Created by lady ada Last updated on 2018-01-03 05:47:20 AM UTC Guide Contents Guide Contents Overview Pinouts Which do you have? Power Pins Adafruit Pro Trinket LiIon/LiPoly
More informationGOOD MORNING SUNSHINE
Item 11: Good Morning Sunshine Monday, 15 October 2018 12:30 PM GOOD MORNING SUNSHINE EXPLORE WALT: definition and decomposition of complex problems in terms of functional and non-functional requirements
More informationGetting to know the Arduino IDE
Getting to know the Arduino IDE I ve heard about Arduino, what the heck is it? Arduino is a development environment Combination of hardware and software Hardware based on Atmel AVR processors Software
More informationElectronic Projects for Artists II: Programming for Interactivity with Microcontrollers
Electronic Projects for Artists II: Programming for Interactivity with Microcontrollers Processing, Arduino, MAX/MSP/Jitter and Pure Data (with some Raspberry Pi thrown in.) The Arduino Photo: Randi Silberman
More informationChapter 2 The Basic Functions
Chapter 2 The Basic Functions 2.1 Overview The code you learn to write for your Arduino is very similar to the code you write in any other computer language. This implies that all the basic concepts remain
More informationSanguino TSB. Introduction: Features:
Sanguino TSB Introduction: Atmega644 is being used as CNC machine driver for a while. In 2012, Kristian Sloth Lauszus from Denmark developed a hardware add-on of Atmega644 for the popular Arduino IDE and
More informationBeetle SKU:DFR0282. Contents. Introduction
Beetle SKU:DFR0282 From Robot Wiki Beetle Contents 1 Introduction 2 Specification 3 PinOut 4 Tutorial o 4.1 Power o 4.2 Programming o 4.3 Example Code 5 Trouble shooting Introduction The Beetle is a minimalized
More informationLesson 5 Arduino Prototype Development Platforms. Chapter-8 L05: "Internet of Things ", Raj Kamal, Publs.: McGraw-Hill Education
Lesson 5 Arduino Prototype Development Platforms 1 Arduino Boards, Modules And Shields Popular AVR MCU based products Each board has clear markings on the connection pins, sockets and in-circuit connections
More informationArduino Dock 2. The Hardware
Arduino Dock 2 The Arduino Dock 2 is our supercharged version of an Arduino Uno R3 board. These two boards share the same microcontroller, the ATmel ATmega328P microcontroller (MCU), and have identical
More informationCTEC 1802 Embedded Programming Labs
CTEC 1802 Embedded Programming Labs This document is intended to get you started using the Arduino and our I/O board in the laboratory - and at home! Many of the lab sessions this year will involve 'embedded
More informationSerial.begin ( ); Serial.println( ); analogread ( ); map ( );
Control and Serial.begin ( ); Serial.println( ); analogread ( ); map ( ); A system output can be changed through the use of knobs, motion, or environmental conditions. Many electronic systems in our world
More informationEnergia MSP-430!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 1
Energia MSP-430 1 3 Energia 4 4 4 6 8 9 Energia 11 18 2 IIB Energia MSP-430 IIB C C++ 3 Energia Energia MSP-430 Windows Mac OS Linux MSP-430, http://www.energia.nu, Max OS X, windows Linux Mac OS X, energia-
More informationExen Mini. Setup Guide - V1. nerdonic.com
nerdonic. Exen Mini Setup Guide - V1 01 Exen Mini - Pinout SWCLK SWDIO RESET 3.3V GND POWER LED SWD HEADER PROGRAMMABLE LED 8 / PA06 3.3-20V INPUT REGULATED TO 3.3V 3.3-20V 3.3V INPUT OR REGULATED 3.3V
More informationThe Big Idea: Background: About Serial
Lesson 6 Lesson 6: Serial Serial Input Input The Big Idea: Information coming into an Arduino sketch is called input. This lesson focuses on text in the form of characters that come from the user via the
More informationIntroduction to Internet of Things Prof. Sudip Misra Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur
Introduction to Internet of Things Prof. Sudip Misra Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture - 23 Introduction to Arduino- II Hi. Now, we will continue
More informationSeeeduino LoRaWAN. Description
Seeeduino LoRaWAN SKU 102010128 LoRaWAN Class A/C Ultra long range communication Ultra low power consumption Arduino programming (based on Arduino Zero bootloader) Embeded with lithim battery management
More informationDigital Design through. Arduino
Digital Design through 1 Arduino G V V Sharma Contents 1 Display Control through Hardware 2 1.1 Powering the Display.................................. 2 1.2 Controlling the Display.................................
More informationArduino Programming and Interfacing
Arduino Programming and Interfacing Stensat Group LLC, Copyright 2017 1 Robotic Arm Experimenters Kit 2 Legal Stuff Stensat Group LLC assumes no responsibility and/or liability for the use of the kit and
More informationProgramming Microcontroller Assembly and C
Programming Microcontroller Assembly and C Course Number CLO : 2 Week : 5-7 : TTH2D3 CLO#2 Student have the knowledge to create basic programming for microcontroller [C3] Understand how to program in Assembly
More informationWorkshop on Microcontroller Based Project Development
Organized by: EEE Club Workshop on Microcontroller Based Project Development Presented By Mohammed Abdul Kader Assistant Professor, Dept. of EEE, IIUC Email:kader05cuet@gmail.com Website: kader05cuet.wordpress.com
More informationMassDuino User's manual
Table of Contents Release History... 2 Background... 2 What's MassDuino... 2 MassDuino Development Process... 3 MD-8088 and MD-328D specification... 4 MassDuino UNO family selection guide... 5 How to use...
More informationSpecification. 1.Power Supply direct from Microcontroller Board. 2.The circuit can be used with Microcontroller Board such as Arduino UNO R3.
Part Number : Product Name : FK-FA1410 12-LED AND 3-BOTTON SHIELD This is the experimental board for receiving and transmitting data from the port of microcontroller. The function of FK-FA1401 is fundamental
More informationWAVETEK BLE-WT51822AA/AB. Revision History. Bluetooth low energy Module WT51822AA (256k) /AB (128k) (Bluetooth Low Energy BT4.0) PRODUCT SPECIFICATION
Bluetooth low energy Module WT51822AA (256k) /AB (128k) (Bluetooth Low Energy BT4.0) PRODUCT SPECIFICATION Part number: BLE WT51822AA/AB Wavetek has developed a module which supports Bluetooth Low Energy
More informationINDUSTRIAL TRAINING:6 MONTHS PROGRAM TEVATRON TECHNOLOGIES PVT LTD
MODULE-1 C Programming Language Introduction to C Objectives of C Applications of C Relational and logical operators Bit wise operators The assignment statement Intermixing of data types type conversion
More informationFUNCTIONS USED IN CODING pinmode()
FUNCTIONS USED IN CODING pinmode() Configures the specified pin to behave either as an input or an output. See the description of digital pins for details on the functionality of the pins. As of Arduino
More information1 Overview. 2 Basic Program Structure. 2.1 Required and Optional Parts of Sketch
Living with the Lab Winter 2015 What s this void loop thing? Gerald Recktenwald v: February 7, 2015 gerry@me.pdx.edu 1 Overview This document aims to explain two kinds of loops: the loop function that
More informationDiploma in Embedded Systems
Diploma in Embedded Systems Duration: 5 Months[5 days a week,3 hours a day, Total 300 hours] Module 1: 8051 Microcontroller in Assemble Language Characteristics of Embedded System Overview of 8051 Family
More informationReview of the syntax and use of Arduino functions, with special attention to the setup and loop functions.
Living with the Lab Fall 2011 What s this void loop thing? Gerald Recktenwald v: October 31, 2011 gerry@me.pdx.edu 1 Overview This document aims to explain two kinds of loops: the loop function that is
More informationEXPERIMENT 7 Please visit https://www.arduino.cc/en/reference/homepage to learn all features of arduino before you start the experiments
EXPERIMENT 7 Please visit https://www.arduino.cc/en/reference/homepage to learn all features of arduino before you start the experiments TEMPERATURE MEASUREMENT AND CONTROL USING LM35 Purpose: To measure
More informationE11 Lecture 4: More C!!! Profs. David Money Harris & Sarah Harris Fall 2011
E11 Lecture 4: More C!!! Profs. David Money Harris & Sarah Harris Fall 2011 Outline Logistics Serial Input Physical Inputs/Outputs Randomness Operators Control Statements Logistics Logistics Tutoring hours:
More informationSTEPD StepDuino Quickstart Guide
STEPD StepDuino Quickstart Guide The Freetronics StepDuino is Arduino Uno compatible, uses the ATmega328P Microcontroller and works with most Arduino software. The StepDuino can be powered automatically
More informationw w w. b a s e t r a i n i n g i n s t i t u t e. c o
Disclaimer: Some of the images and most of the data in this presentation are collected from various sources in the internet. If you notice any copyright issues or mistakes, please let me know by mailing
More informationLab 2 - Powering the Fubarino. Fubarino,, Intro to Serial, Functions and Variables
Lab 2 - Powering the Fubarino Fubarino,, Intro to Serial, Functions and Variables Part 1 - Powering the Fubarino SD The Fubarino SD is a 56 pin device. Each pin on a chipkit device falls broadly into one
More informationARDUINO BOARD LINE UP
Technical Specifications Pinout Diagrams Technical Comparison Board Name Processor Operating/Input Voltage CPU Speed Analog In/Out Digital IO/PWM USB UART 101 Intel Curie 3.3 V/ 7-12V 32MHz 6/0 14/4 Regular
More informationWALT: definition and decomposition of complex problems in terms of functional and non-functional requirements
Item 1: The Clock is Ticking Monday, 15 October 2018 12:19 PM EXPLORE WALT: definition and decomposition of complex problems in terms of functional and non-functional requirements - Defined how each component
More informationElectronics Single Board Computers
Electronics Single Board Computers Wilfrid Laurier University November 23, 2016 Single Board Computers Single Board Computers As electronic devices get smaller and more sophisticated, they often contain
More informationIntroduction to Microprocessors: Arduino
Introduction to Microprocessors: Arduino tswsl1989@sucs.org October 7, 2013 What is an Arduino? Open Source Reference designs for hardware Firmware tools + GUI Mostly based around 8-bit Atmel AVR chips
More informationmith College Computer Science CSC270 Spring 2016 Circuits and Systems Lecture Notes, Week 11 Dominique Thiébaut
mith College Computer Science CSC270 Spring 2016 Circuits and Systems Lecture Notes, Week 11 Dominique Thiébaut dthiebaut@smithedu Outline A Few Words about HW 8 Finish the Input Port Lab! Revisiting Homework
More informationIME-100 ECE. Lab 4. Electrical and Computer Engineering Department Kettering University. G. Tewolde, IME100-ECE,
IME-100 ECE Lab 4 Electrical and Computer Engineering Department Kettering University 4-1 1. Laboratory Computers Getting Started i. Log-in with User Name: Kettering Student (no password required) ii.
More information