SlideShare ist ein Scribd-Unternehmen logo
1 von 45
Downloaden Sie, um offline zu lesen
MicrocontrollersMicrocontrollers
by @rexstjohn
(for web developers)
Rex St. JohnRex St. John
Internet of Things Evangelist at Intel
Our goal today is to understand what is going on here
Why Microcontrollers?Why Microcontrollers?
By 2020, there will be 50 billionBy 2020, there will be 50 billion
computers on earthcomputers on earth
Moore's Law: They will keep getting
smaller, cheaper and faster
Many of these devices willMany of these devices will lacklack useruser
interfacesinterfaces
Often communicating via low-energy wireless
protocols
They will rely on sensors to understandThey will rely on sensors to understand
their environmenttheir environment
Heat, temperature, sound, light, smoke, steam,
LiDAR...
And form "the edge" of large internetAnd form "the edge" of large internet
connected systems...connected systems...
These computers will often take theThese computers will often take the
form ofform of MicrocontrollersMicrocontrollers
Small computers specializing in real-time
operations
Increasingly we are using webIncreasingly we are using web
development tools and techniques todevelopment tools and techniques to
program these devicesprogram these devices
GitHub, Containers, Node.js etc
"Hybrid" developers will be needed who"Hybrid" developers will be needed who
are capable of understanding theseare capable of understanding these
systemssystems
Are you up for the task?
Full-Stack Developer, n: Person who isFull-Stack Developer, n: Person who is
comfortable programming both frontcomfortable programming both front
and back-end systemsand back-end systems
Full-Stack Developer, n: Person who isFull-Stack Developer, n: Person who is
paid once to do the work of four peoplepaid once to do the work of four people
(actual definition)
(technical definition)
Now that we can run Linux on our IoT devices, full-stack
developer takes on a whole new meaning!
Example ProjectsExample Projects
What can we do with microcontrollers?
RamBotRamBot
Gamification of drones and robots
Sign++Sign++
Sign language translation glove
Smart Chicken CoopSmart Chicken Coop
Smart chicken tender
TinyCheeseTinyCheese
Makes tiny cheese
A Microcontroller (MCU) is aA Microcontroller (MCU) is a smallsmall
computercomputer with awith a processorprocessor,, memorymemory,,
andand programmable input/outputprogrammable input/output
peripherals.peripherals.
They specialize in real-time behavior
They are used everywhere (automotive, industrial etc)
They are contained on an integrated circuit
MicroprocessorMicroprocessor MicrocontrollerMicrocontroller
Microprocessor
Plus other stuff*
On integrated circuits (IC)
Often on a PCB*
Programmable device
Accepts digital IO
Processes data
Provides results as output
*Other stuff may vary
*Printed Circuit Board
PCB with microcontroller pinout
Example UsesExample Uses
Home appliances
Industrial
Automotive
Drones
Everything, really
Anywhere you need cheap, highly reliable, event-
driven computers
Sensors attached to PCB boards are the "user
interface" for microcontrollers, lets learn how that
works
Web DevelopmentWeb Development
For ThingsFor Things
LibMRAALibMRAA FirmataFirmata
Firmata is a protocol for
communicating with
microcontrollers from software
on a computer (based on MIDI).
LibMRAA is a C/C++ library
with bindings to javascript &
python to interface with the
IO on Galileo, Edison etc.
We can now talk to our microcontrollers without writing
assembly language!
Johnny-Five Artoo
GobotCylon.js
Digital and Analog SensorsDigital and Analog Sensors
Communication for basic data
Digital I/ODigital I/O
GPIO: General purpose input / output
High or Low depending on voltage level (1 or 0)
Frequently come in "ports" of 8 (a byte)
Can alternate as analog pins (but not both!)
Good for LEDs, buttons, buzzers, relays
Example: LED with MRAAExample: LED with MRAA
var m = require('mraa'); //require mar
//write the mraa version to the console
console.log('MRAA Version: ' + m.getVersion());
//LED hooked up to digital pin 13 (or built in pin on Galileo Gen1 & Gen2)
var myLed = new m.Gpio(13);
myLed.dir(m.DIR_OUT); //set the gpio direction to output
var ledState = true; //Boolean to hold the state of Led
periodicActivity(); //call the periodicActivity function
function periodicActivity()
{
//if ledState is true then write a '1' (high) otherwise write a '0' (low)
myLed.write(ledState?1:0);
ledState = !ledState; //invert the ledState
//call the indicated function after 1 second (1000 milliseconds)
setTimeout(periodicActivity,1000);
}
Analog I/OAnalog I/O
GPIO pins for digital can often be used for analog
Good for sensing light, temperature, sound etc
We must translate digital signals to analog signals
(PWM)
Pulse Width ModulationPulse Width Modulation
Pulse Width Modulation, or
PWM, is a technique for
getting analog results with
digital means. Digital control
is used to create a square
wave, a signal switched
between on and off.
Useful for servos (robotics, drones), audio and more
Let us turn a jaggy thing into a squiggly thing
Example: 3-Axis AccelerometerExample: 3-Axis Accelerometer
Has a ground wire, power wire and 3-analog wires
// "ADXL335"
var five = require("johnny-five");
var Edison = require("edison-io");
var board = new five.Board({
io: new Edison()
});
board.on("ready", function() {
var accelerometer = new five.Accelerometer({
controller: "ADXL335",
pins: ["A0", "A1", "A2"]
});
accelerometer.on("change", function() {
console.log(" x : ", this.x);
console.log(" y : ", this.y);
console.log(" z : ", this.z);
});
});
Johnny-Five SyntaxJohnny-Five Syntax
Serial CommunicationsSerial Communications
Communication for fancy data
"Serial" aka "Time Division Multiplexed""Serial" aka "Time Division Multiplexed"
Data is sent one chunk at a time based on a clock signal
Errors and noise occur when sending data via wire
requiring safeguards.
: Inter-integrated circuit
: Serial peripheral communication
(SCI): Universal asynchronous receiver/ transmitter
I²C​
SPI
UART
Want more? Read this.
Common Serial CommunicationsCommon Serial Communications
Example: I2C LCDExample: I2C LCD
// How to write to the Seeed LCD Screen
// NOTE: You *MUST* plug the LCD into an I2C slot or this will not work!
var Cylon = require('cylon');
function writeToScreen(screen, message) {
screen.setCursor(0,0);
screen.write(message);
}
Cylon
.robot({ name: 'LCD'})
.connection('edison', { adaptor: 'intel-iot' })
.device('screen', { driver: 'upm-jhd1313m1', connection: 'edison' })
.on('ready', function(my) {
writeToScreen(my.screen, "Ready!");
}).start();
Cylon SyntaxCylon Syntax
SPISPI
“ A master sends a clock signal, and
upon each clock pulse it shifts one bit out
to the slave, and one bit in, coming from
the slave. Signal names are therefore SCK
for clock, MOSI for Master Out Slave In,
and MISO for Master In Slave Out.
I²CI²C
“ SCL and SDA. SCL is the clock line.
It is used to synchronize all data
transfers over the I2C bus. SDA is the
data line. The SCL & SDA lines are
connected to all devices on the I2C
bus.
Common Synchronous ProtocolsCommon Synchronous Protocols
SPISPI
Faster, 1-20MHz
Requires 3+ physical lines
Less worry about "noise"
All lines are unidirectional
Chip-select lines required
I²CI²C
Slower, 100 - 400MHz
2 lines only, easier to wire
Noise an issue
All lines are bi-directional
For chaining devices
Common Synchronous Protocols ComparedCommon Synchronous Protocols Compared
Many microcontrollers support both
protocols.
(or SCI) uses two wires (TX / RX) to transmit data(or SCI) uses two wires (TX / RX) to transmit data
asynchronously at an agreed-upon baud rateasynchronously at an agreed-upon baud rate
UARTUART
Uses start and stop bits for primitive error correction
Buad Rate: Transmission speed (9600, 115200 etc)
Long history, common on PCs before USB
UART NotesUART Notes
UART is a hardware module, not a protocol
Can run in a
Slow: 9 - 56 kHz (vs. 1 - 20 MHz for SPI)
Used for sending ASCII characters
Also: Keyboard, LCD monitor data
synchronous mode called USART
Test Time: ATmega32U4Xadow Main Board with
Lets find: SPI, UART, I2C, Analog I/O
Test Time: Find GPIO, Analog, PWM, UART, SPI
Test Time: Find SPI, UART, I2C, USB, PWM, GPIO, Clock lines
Further ReadingFurther Reading
Introduction to Microcontrollers

Weitere ähnliche Inhalte

Was ist angesagt?

IRJET - Zigbee based Street Light Control System
IRJET - Zigbee based Street Light Control SystemIRJET - Zigbee based Street Light Control System
IRJET - Zigbee based Street Light Control SystemIRJET Journal
 
GSM based elevator alarm and Panic Detection
GSM based elevator alarm and Panic DetectionGSM based elevator alarm and Panic Detection
GSM based elevator alarm and Panic DetectionAhmedNazir18
 
Home Automation Using Arduino and ESP8266
Home Automation Using Arduino and ESP8266Home Automation Using Arduino and ESP8266
Home Automation Using Arduino and ESP8266INFOGAIN PUBLICATION
 
Android-based surveillance Robot
Android-based surveillance RobotAndroid-based surveillance Robot
Android-based surveillance RobotTonmoy Bora
 
Contactless digital tachometer using microcontroller
Contactless digital tachometer using microcontroller Contactless digital tachometer using microcontroller
Contactless digital tachometer using microcontroller IJECEIAES
 
Color Recognition with Matlab Image Processing and Matlab Interfacing with Ar...
Color Recognition with Matlab Image Processing and Matlab Interfacing with Ar...Color Recognition with Matlab Image Processing and Matlab Interfacing with Ar...
Color Recognition with Matlab Image Processing and Matlab Interfacing with Ar...Sayan Seth
 
Wireless AI based industrial security robot
Wireless AI based industrial security robotWireless AI based industrial security robot
Wireless AI based industrial security robotVarun B P
 
Adding Remote Controller Functionality To Any Stereo
 Adding Remote Controller Functionality To Any Stereo Adding Remote Controller Functionality To Any Stereo
Adding Remote Controller Functionality To Any StereoEditor IJCATR
 
Arduino embedded systems and advanced robotics
Arduino embedded systems and advanced roboticsArduino embedded systems and advanced robotics
Arduino embedded systems and advanced roboticsShubham Bhattacharya
 
An Introduction to Robotics and Embedded System
An Introduction to Robotics and Embedded SystemAn Introduction to Robotics and Embedded System
An Introduction to Robotics and Embedded SystemPeeyush Sahu CAPM®
 
Arduino projects-pdf-download-list-jan-2015
Arduino projects-pdf-download-list-jan-2015Arduino projects-pdf-download-list-jan-2015
Arduino projects-pdf-download-list-jan-2015Hafid Moujane
 
Wireless industrial robot
Wireless  industrial robotWireless  industrial robot
Wireless industrial robotVarun B P
 
Gesture control robot using accelerometer documentation
Gesture control robot using accelerometer documentationGesture control robot using accelerometer documentation
Gesture control robot using accelerometer documentationRajendra Prasad
 
IoT Connectivity: The Technical & Potential
IoT Connectivity: The Technical & PotentialIoT Connectivity: The Technical & Potential
IoT Connectivity: The Technical & PotentialAndri Yadi
 

Was ist angesagt? (18)

IRJET - Zigbee based Street Light Control System
IRJET - Zigbee based Street Light Control SystemIRJET - Zigbee based Street Light Control System
IRJET - Zigbee based Street Light Control System
 
GSM based elevator alarm and Panic Detection
GSM based elevator alarm and Panic DetectionGSM based elevator alarm and Panic Detection
GSM based elevator alarm and Panic Detection
 
SURVEILLANCE ROBOT
SURVEILLANCE ROBOTSURVEILLANCE ROBOT
SURVEILLANCE ROBOT
 
Home Automation Using Arduino and ESP8266
Home Automation Using Arduino and ESP8266Home Automation Using Arduino and ESP8266
Home Automation Using Arduino and ESP8266
 
Android-based surveillance Robot
Android-based surveillance RobotAndroid-based surveillance Robot
Android-based surveillance Robot
 
Contactless digital tachometer using microcontroller
Contactless digital tachometer using microcontroller Contactless digital tachometer using microcontroller
Contactless digital tachometer using microcontroller
 
Color Recognition with Matlab Image Processing and Matlab Interfacing with Ar...
Color Recognition with Matlab Image Processing and Matlab Interfacing with Ar...Color Recognition with Matlab Image Processing and Matlab Interfacing with Ar...
Color Recognition with Matlab Image Processing and Matlab Interfacing with Ar...
 
Wireless AI based industrial security robot
Wireless AI based industrial security robotWireless AI based industrial security robot
Wireless AI based industrial security robot
 
Adding Remote Controller Functionality To Any Stereo
 Adding Remote Controller Functionality To Any Stereo Adding Remote Controller Functionality To Any Stereo
Adding Remote Controller Functionality To Any Stereo
 
Arduino embedded systems and advanced robotics
Arduino embedded systems and advanced roboticsArduino embedded systems and advanced robotics
Arduino embedded systems and advanced robotics
 
An Introduction to Robotics and Embedded System
An Introduction to Robotics and Embedded SystemAn Introduction to Robotics and Embedded System
An Introduction to Robotics and Embedded System
 
Anti theft & Automation using Arduino
Anti theft & Automation using ArduinoAnti theft & Automation using Arduino
Anti theft & Automation using Arduino
 
Arduino projects-pdf-download-list-jan-2015
Arduino projects-pdf-download-list-jan-2015Arduino projects-pdf-download-list-jan-2015
Arduino projects-pdf-download-list-jan-2015
 
Wireless industrial robot
Wireless  industrial robotWireless  industrial robot
Wireless industrial robot
 
Gesture control bot
Gesture control botGesture control bot
Gesture control bot
 
Gesture control robot using accelerometer documentation
Gesture control robot using accelerometer documentationGesture control robot using accelerometer documentation
Gesture control robot using accelerometer documentation
 
PERSON ALIVE DETECTION
PERSON ALIVE DETECTIONPERSON ALIVE DETECTION
PERSON ALIVE DETECTION
 
IoT Connectivity: The Technical & Potential
IoT Connectivity: The Technical & PotentialIoT Connectivity: The Technical & Potential
IoT Connectivity: The Technical & Potential
 

Andere mochten auch

New base 798 special 01 march 2016
New base 798 special 01 march 2016New base 798 special 01 march 2016
New base 798 special 01 march 2016Khaled Al Awadi
 
Future of Power: IBM Trends & Directions - Erik Rex
Future of Power: IBM Trends & Directions - Erik RexFuture of Power: IBM Trends & Directions - Erik Rex
Future of Power: IBM Trends & Directions - Erik RexIBM Danmark
 
‘ROLE OF INTERACTIVE RADIO PROGRAMMING ENHANCED BY MOBILE PLATFORMS FOR EFFEC...
‘ROLE OF INTERACTIVE RADIO PROGRAMMING ENHANCED BY MOBILE PLATFORMS FOR EFFEC...‘ROLE OF INTERACTIVE RADIO PROGRAMMING ENHANCED BY MOBILE PLATFORMS FOR EFFEC...
‘ROLE OF INTERACTIVE RADIO PROGRAMMING ENHANCED BY MOBILE PLATFORMS FOR EFFEC...IFPRIMaSSP
 
Future of Power: PureFlex and IBM i - Erik Rex
Future of Power: PureFlex and IBM i - Erik RexFuture of Power: PureFlex and IBM i - Erik Rex
Future of Power: PureFlex and IBM i - Erik RexIBM Danmark
 
Oracle Exalogic Elastic Cloud - Revolutionizing Data Center Consolidation
Oracle Exalogic Elastic Cloud - Revolutionizing Data Center ConsolidationOracle Exalogic Elastic Cloud - Revolutionizing Data Center Consolidation
Oracle Exalogic Elastic Cloud - Revolutionizing Data Center ConsolidationRex Wang
 
Management Styles and Employee Performance: A Study of a Public Sector Compan...
Management Styles and Employee Performance: A Study of a Public Sector Compan...Management Styles and Employee Performance: A Study of a Public Sector Compan...
Management Styles and Employee Performance: A Study of a Public Sector Compan...Masroor Soomro
 
THE DIMENSIONS OF CULTURE: Deeper cultural assumptions about reality and truth.
THE DIMENSIONS OF CULTURE: Deeper cultural assumptions about reality and truth.THE DIMENSIONS OF CULTURE: Deeper cultural assumptions about reality and truth.
THE DIMENSIONS OF CULTURE: Deeper cultural assumptions about reality and truth.Henry Chike Okonkwo
 
Knowledge, Process, Understanding, Product/Performance
Knowledge, Process, Understanding, Product/PerformanceKnowledge, Process, Understanding, Product/Performance
Knowledge, Process, Understanding, Product/PerformanceKristine Barredo
 
International trade
International tradeInternational trade
International tradeOnline
 
International Trade
International TradeInternational Trade
International TradeEthel
 

Andere mochten auch (13)

New base 798 special 01 march 2016
New base 798 special 01 march 2016New base 798 special 01 march 2016
New base 798 special 01 march 2016
 
Future of Power: IBM Trends & Directions - Erik Rex
Future of Power: IBM Trends & Directions - Erik RexFuture of Power: IBM Trends & Directions - Erik Rex
Future of Power: IBM Trends & Directions - Erik Rex
 
‘ROLE OF INTERACTIVE RADIO PROGRAMMING ENHANCED BY MOBILE PLATFORMS FOR EFFEC...
‘ROLE OF INTERACTIVE RADIO PROGRAMMING ENHANCED BY MOBILE PLATFORMS FOR EFFEC...‘ROLE OF INTERACTIVE RADIO PROGRAMMING ENHANCED BY MOBILE PLATFORMS FOR EFFEC...
‘ROLE OF INTERACTIVE RADIO PROGRAMMING ENHANCED BY MOBILE PLATFORMS FOR EFFEC...
 
Financial Statements
Financial StatementsFinancial Statements
Financial Statements
 
Future of Power: PureFlex and IBM i - Erik Rex
Future of Power: PureFlex and IBM i - Erik RexFuture of Power: PureFlex and IBM i - Erik Rex
Future of Power: PureFlex and IBM i - Erik Rex
 
Oracle Exalogic Elastic Cloud - Revolutionizing Data Center Consolidation
Oracle Exalogic Elastic Cloud - Revolutionizing Data Center ConsolidationOracle Exalogic Elastic Cloud - Revolutionizing Data Center Consolidation
Oracle Exalogic Elastic Cloud - Revolutionizing Data Center Consolidation
 
Management Styles and Employee Performance: A Study of a Public Sector Compan...
Management Styles and Employee Performance: A Study of a Public Sector Compan...Management Styles and Employee Performance: A Study of a Public Sector Compan...
Management Styles and Employee Performance: A Study of a Public Sector Compan...
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
THE DIMENSIONS OF CULTURE: Deeper cultural assumptions about reality and truth.
THE DIMENSIONS OF CULTURE: Deeper cultural assumptions about reality and truth.THE DIMENSIONS OF CULTURE: Deeper cultural assumptions about reality and truth.
THE DIMENSIONS OF CULTURE: Deeper cultural assumptions about reality and truth.
 
Knowledge, Process, Understanding, Product/Performance
Knowledge, Process, Understanding, Product/PerformanceKnowledge, Process, Understanding, Product/Performance
Knowledge, Process, Understanding, Product/Performance
 
International Trade
International TradeInternational Trade
International Trade
 
International trade
International tradeInternational trade
International trade
 
International Trade
International TradeInternational Trade
International Trade
 

Ähnlich wie Microcontrollers (Rex St. John)

An_Introduction_to_Microcontrollers.pptx
An_Introduction_to_Microcontrollers.pptxAn_Introduction_to_Microcontrollers.pptx
An_Introduction_to_Microcontrollers.pptxStefan Oprea
 
Introducttion to robotics and microcontrollers
Introducttion to robotics and microcontrollersIntroducttion to robotics and microcontrollers
Introducttion to robotics and microcontrollersSandeep Kamath
 
Tutorial Arach N!D
Tutorial Arach N!DTutorial Arach N!D
Tutorial Arach N!Dkameshsept
 
introduction of arduino and node mcu
introduction of arduino and node mcuintroduction of arduino and node mcu
introduction of arduino and node mcu6305HASANBASARI
 
Physical Computing and IoT
Physical Computing and IoTPhysical Computing and IoT
Physical Computing and IoTEduardo Oliveira
 
Embedded systems unit3
Embedded systems unit3Embedded systems unit3
Embedded systems unit3baskaransece
 
Tinkercad Workshop PPT, Dept. of ECE.pptx
Tinkercad Workshop PPT, Dept. of ECE.pptxTinkercad Workshop PPT, Dept. of ECE.pptx
Tinkercad Workshop PPT, Dept. of ECE.pptxJayashreeSelvam5
 
Sudhir tms 320 f 2812
Sudhir tms 320 f 2812 Sudhir tms 320 f 2812
Sudhir tms 320 f 2812 vijaydeepakg
 
Introduction to AIoT & TinyML - with Arduino
Introduction to AIoT & TinyML - with ArduinoIntroduction to AIoT & TinyML - with Arduino
Introduction to AIoT & TinyML - with ArduinoAndri Yadi
 
Digital Electronic and it application
Digital Electronic and it applicationDigital Electronic and it application
Digital Electronic and it applicationApurbo Datta
 
Week2 fundamental of IoT
Week2 fundamental of IoTWeek2 fundamental of IoT
Week2 fundamental of IoTsomphongt
 
Iot for smart agriculture
Iot for smart agricultureIot for smart agriculture
Iot for smart agricultureAtit Patumvan
 
Design and implementation of real time security guard robot using GSM/CDMA ne...
Design and implementation of real time security guard robot using GSM/CDMA ne...Design and implementation of real time security guard robot using GSM/CDMA ne...
Design and implementation of real time security guard robot using GSM/CDMA ne...Claude Ndayisenga
 
01 Mcu Day 2009 (Aec Intro) 8 6 Editado
01   Mcu Day 2009 (Aec Intro) 8 6   Editado01   Mcu Day 2009 (Aec Intro) 8 6   Editado
01 Mcu Day 2009 (Aec Intro) 8 6 EditadoTexas Instruments
 

Ähnlich wie Microcontrollers (Rex St. John) (20)

An_Introduction_to_Microcontrollers.pptx
An_Introduction_to_Microcontrollers.pptxAn_Introduction_to_Microcontrollers.pptx
An_Introduction_to_Microcontrollers.pptx
 
Iot Workshop NITT 2015
Iot Workshop NITT 2015Iot Workshop NITT 2015
Iot Workshop NITT 2015
 
Introducttion to robotics and microcontrollers
Introducttion to robotics and microcontrollersIntroducttion to robotics and microcontrollers
Introducttion to robotics and microcontrollers
 
Tutorial Arach N!D
Tutorial Arach N!DTutorial Arach N!D
Tutorial Arach N!D
 
introduction of arduino and node mcu
introduction of arduino and node mcuintroduction of arduino and node mcu
introduction of arduino and node mcu
 
Physical Computing and IoT
Physical Computing and IoTPhysical Computing and IoT
Physical Computing and IoT
 
Embedded systems unit3
Embedded systems unit3Embedded systems unit3
Embedded systems unit3
 
Introduction of Arduino Uno
Introduction of Arduino UnoIntroduction of Arduino Uno
Introduction of Arduino Uno
 
Tinkercad Workshop PPT, Dept. of ECE.pptx
Tinkercad Workshop PPT, Dept. of ECE.pptxTinkercad Workshop PPT, Dept. of ECE.pptx
Tinkercad Workshop PPT, Dept. of ECE.pptx
 
IOT beginnners
IOT beginnnersIOT beginnners
IOT beginnners
 
IOT beginnners
IOT beginnnersIOT beginnners
IOT beginnners
 
Sudhir tms 320 f 2812
Sudhir tms 320 f 2812 Sudhir tms 320 f 2812
Sudhir tms 320 f 2812
 
Bidirect visitor counter
Bidirect visitor counterBidirect visitor counter
Bidirect visitor counter
 
Introduction to AIoT & TinyML - with Arduino
Introduction to AIoT & TinyML - with ArduinoIntroduction to AIoT & TinyML - with Arduino
Introduction to AIoT & TinyML - with Arduino
 
Microprocessor Systems
Microprocessor Systems Microprocessor Systems
Microprocessor Systems
 
Digital Electronic and it application
Digital Electronic and it applicationDigital Electronic and it application
Digital Electronic and it application
 
Week2 fundamental of IoT
Week2 fundamental of IoTWeek2 fundamental of IoT
Week2 fundamental of IoT
 
Iot for smart agriculture
Iot for smart agricultureIot for smart agriculture
Iot for smart agriculture
 
Design and implementation of real time security guard robot using GSM/CDMA ne...
Design and implementation of real time security guard robot using GSM/CDMA ne...Design and implementation of real time security guard robot using GSM/CDMA ne...
Design and implementation of real time security guard robot using GSM/CDMA ne...
 
01 Mcu Day 2009 (Aec Intro) 8 6 Editado
01   Mcu Day 2009 (Aec Intro) 8 6   Editado01   Mcu Day 2009 (Aec Intro) 8 6   Editado
01 Mcu Day 2009 (Aec Intro) 8 6 Editado
 

Mehr von Future Insights

The Human Body in the IoT. Tim Cannon + Ryan O'Shea
The Human Body in the IoT. Tim Cannon + Ryan O'SheaThe Human Body in the IoT. Tim Cannon + Ryan O'Shea
The Human Body in the IoT. Tim Cannon + Ryan O'SheaFuture Insights
 
Pretty pictures - Brandon Satrom
Pretty pictures - Brandon SatromPretty pictures - Brandon Satrom
Pretty pictures - Brandon SatromFuture Insights
 
Putting real time into practice - Saul Diez-Guerra
Putting real time into practice - Saul Diez-GuerraPutting real time into practice - Saul Diez-Guerra
Putting real time into practice - Saul Diez-GuerraFuture Insights
 
Surviving the enterprise storm - @RianVDM
Surviving the enterprise storm - @RianVDMSurviving the enterprise storm - @RianVDM
Surviving the enterprise storm - @RianVDMFuture Insights
 
Exploring Open Date with BigQuery: Jenny Tong
Exploring Open Date with BigQuery: Jenny TongExploring Open Date with BigQuery: Jenny Tong
Exploring Open Date with BigQuery: Jenny TongFuture Insights
 
A Universal Theory of Everything, Christopher Murphy
A Universal Theory of Everything, Christopher MurphyA Universal Theory of Everything, Christopher Murphy
A Universal Theory of Everything, Christopher MurphyFuture Insights
 
Horizon Interactive Awards, Mike Sauce & Jeff Jahn
Horizon Interactive Awards, Mike Sauce & Jeff JahnHorizon Interactive Awards, Mike Sauce & Jeff Jahn
Horizon Interactive Awards, Mike Sauce & Jeff JahnFuture Insights
 
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...Future Insights
 
Front End Development Transformation at Scale, Damon Deaner
Front End Development Transformation at Scale, Damon DeanerFront End Development Transformation at Scale, Damon Deaner
Front End Development Transformation at Scale, Damon DeanerFuture Insights
 
Structuring Data from Unstructured Things. Sean Lorenz
Structuring Data from Unstructured Things. Sean LorenzStructuring Data from Unstructured Things. Sean Lorenz
Structuring Data from Unstructured Things. Sean LorenzFuture Insights
 
Cinematic UX, Brad Weaver
Cinematic UX, Brad WeaverCinematic UX, Brad Weaver
Cinematic UX, Brad WeaverFuture Insights
 
The Future is Modular, Jonathan Snook
The Future is Modular, Jonathan SnookThe Future is Modular, Jonathan Snook
The Future is Modular, Jonathan SnookFuture Insights
 
Designing an Enterprise CSS Framework is Hard, Stephanie Rewis
Designing an Enterprise CSS Framework is Hard, Stephanie RewisDesigning an Enterprise CSS Framework is Hard, Stephanie Rewis
Designing an Enterprise CSS Framework is Hard, Stephanie RewisFuture Insights
 
Accessibility Is More Than What Lies In The Code, Jennison Asuncion
Accessibility Is More Than What Lies In The Code, Jennison AsuncionAccessibility Is More Than What Lies In The Code, Jennison Asuncion
Accessibility Is More Than What Lies In The Code, Jennison AsuncionFuture Insights
 
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...Future Insights
 
Designing for Dyslexia, Andrew Zusman
Designing for Dyslexia, Andrew ZusmanDesigning for Dyslexia, Andrew Zusman
Designing for Dyslexia, Andrew ZusmanFuture Insights
 
Beyond Measure, Erika Hall
Beyond Measure, Erika HallBeyond Measure, Erika Hall
Beyond Measure, Erika HallFuture Insights
 
Real Artists Ship, Haraldur Thorleifsson
Real Artists Ship, Haraldur ThorleifssonReal Artists Ship, Haraldur Thorleifsson
Real Artists Ship, Haraldur ThorleifssonFuture Insights
 
Ok Computer. Peter Gasston
Ok Computer. Peter GasstonOk Computer. Peter Gasston
Ok Computer. Peter GasstonFuture Insights
 
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi KayaDigital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi KayaFuture Insights
 

Mehr von Future Insights (20)

The Human Body in the IoT. Tim Cannon + Ryan O'Shea
The Human Body in the IoT. Tim Cannon + Ryan O'SheaThe Human Body in the IoT. Tim Cannon + Ryan O'Shea
The Human Body in the IoT. Tim Cannon + Ryan O'Shea
 
Pretty pictures - Brandon Satrom
Pretty pictures - Brandon SatromPretty pictures - Brandon Satrom
Pretty pictures - Brandon Satrom
 
Putting real time into practice - Saul Diez-Guerra
Putting real time into practice - Saul Diez-GuerraPutting real time into practice - Saul Diez-Guerra
Putting real time into practice - Saul Diez-Guerra
 
Surviving the enterprise storm - @RianVDM
Surviving the enterprise storm - @RianVDMSurviving the enterprise storm - @RianVDM
Surviving the enterprise storm - @RianVDM
 
Exploring Open Date with BigQuery: Jenny Tong
Exploring Open Date with BigQuery: Jenny TongExploring Open Date with BigQuery: Jenny Tong
Exploring Open Date with BigQuery: Jenny Tong
 
A Universal Theory of Everything, Christopher Murphy
A Universal Theory of Everything, Christopher MurphyA Universal Theory of Everything, Christopher Murphy
A Universal Theory of Everything, Christopher Murphy
 
Horizon Interactive Awards, Mike Sauce & Jeff Jahn
Horizon Interactive Awards, Mike Sauce & Jeff JahnHorizon Interactive Awards, Mike Sauce & Jeff Jahn
Horizon Interactive Awards, Mike Sauce & Jeff Jahn
 
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
 
Front End Development Transformation at Scale, Damon Deaner
Front End Development Transformation at Scale, Damon DeanerFront End Development Transformation at Scale, Damon Deaner
Front End Development Transformation at Scale, Damon Deaner
 
Structuring Data from Unstructured Things. Sean Lorenz
Structuring Data from Unstructured Things. Sean LorenzStructuring Data from Unstructured Things. Sean Lorenz
Structuring Data from Unstructured Things. Sean Lorenz
 
Cinematic UX, Brad Weaver
Cinematic UX, Brad WeaverCinematic UX, Brad Weaver
Cinematic UX, Brad Weaver
 
The Future is Modular, Jonathan Snook
The Future is Modular, Jonathan SnookThe Future is Modular, Jonathan Snook
The Future is Modular, Jonathan Snook
 
Designing an Enterprise CSS Framework is Hard, Stephanie Rewis
Designing an Enterprise CSS Framework is Hard, Stephanie RewisDesigning an Enterprise CSS Framework is Hard, Stephanie Rewis
Designing an Enterprise CSS Framework is Hard, Stephanie Rewis
 
Accessibility Is More Than What Lies In The Code, Jennison Asuncion
Accessibility Is More Than What Lies In The Code, Jennison AsuncionAccessibility Is More Than What Lies In The Code, Jennison Asuncion
Accessibility Is More Than What Lies In The Code, Jennison Asuncion
 
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
 
Designing for Dyslexia, Andrew Zusman
Designing for Dyslexia, Andrew ZusmanDesigning for Dyslexia, Andrew Zusman
Designing for Dyslexia, Andrew Zusman
 
Beyond Measure, Erika Hall
Beyond Measure, Erika HallBeyond Measure, Erika Hall
Beyond Measure, Erika Hall
 
Real Artists Ship, Haraldur Thorleifsson
Real Artists Ship, Haraldur ThorleifssonReal Artists Ship, Haraldur Thorleifsson
Real Artists Ship, Haraldur Thorleifsson
 
Ok Computer. Peter Gasston
Ok Computer. Peter GasstonOk Computer. Peter Gasston
Ok Computer. Peter Gasston
 
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi KayaDigital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
 

Kürzlich hochgeladen

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 

Kürzlich hochgeladen (20)

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Microcontrollers (Rex St. John)

  • 2. Rex St. JohnRex St. John Internet of Things Evangelist at Intel
  • 3. Our goal today is to understand what is going on here
  • 5. By 2020, there will be 50 billionBy 2020, there will be 50 billion computers on earthcomputers on earth Moore's Law: They will keep getting smaller, cheaper and faster
  • 6. Many of these devices willMany of these devices will lacklack useruser interfacesinterfaces Often communicating via low-energy wireless protocols
  • 7. They will rely on sensors to understandThey will rely on sensors to understand their environmenttheir environment Heat, temperature, sound, light, smoke, steam, LiDAR...
  • 8. And form "the edge" of large internetAnd form "the edge" of large internet connected systems...connected systems...
  • 9. These computers will often take theThese computers will often take the form ofform of MicrocontrollersMicrocontrollers Small computers specializing in real-time operations
  • 10. Increasingly we are using webIncreasingly we are using web development tools and techniques todevelopment tools and techniques to program these devicesprogram these devices GitHub, Containers, Node.js etc
  • 11. "Hybrid" developers will be needed who"Hybrid" developers will be needed who are capable of understanding theseare capable of understanding these systemssystems Are you up for the task?
  • 12. Full-Stack Developer, n: Person who isFull-Stack Developer, n: Person who is comfortable programming both frontcomfortable programming both front and back-end systemsand back-end systems Full-Stack Developer, n: Person who isFull-Stack Developer, n: Person who is paid once to do the work of four peoplepaid once to do the work of four people (actual definition) (technical definition) Now that we can run Linux on our IoT devices, full-stack developer takes on a whole new meaning!
  • 13. Example ProjectsExample Projects What can we do with microcontrollers?
  • 16. Smart Chicken CoopSmart Chicken Coop Smart chicken tender
  • 18. A Microcontroller (MCU) is aA Microcontroller (MCU) is a smallsmall computercomputer with awith a processorprocessor,, memorymemory,, andand programmable input/outputprogrammable input/output peripherals.peripherals. They specialize in real-time behavior They are used everywhere (automotive, industrial etc) They are contained on an integrated circuit
  • 19. MicroprocessorMicroprocessor MicrocontrollerMicrocontroller Microprocessor Plus other stuff* On integrated circuits (IC) Often on a PCB* Programmable device Accepts digital IO Processes data Provides results as output *Other stuff may vary *Printed Circuit Board
  • 21. Example UsesExample Uses Home appliances Industrial Automotive Drones Everything, really Anywhere you need cheap, highly reliable, event- driven computers
  • 22. Sensors attached to PCB boards are the "user interface" for microcontrollers, lets learn how that works
  • 24. LibMRAALibMRAA FirmataFirmata Firmata is a protocol for communicating with microcontrollers from software on a computer (based on MIDI). LibMRAA is a C/C++ library with bindings to javascript & python to interface with the IO on Galileo, Edison etc. We can now talk to our microcontrollers without writing assembly language!
  • 26. Digital and Analog SensorsDigital and Analog Sensors Communication for basic data
  • 27. Digital I/ODigital I/O GPIO: General purpose input / output High or Low depending on voltage level (1 or 0) Frequently come in "ports" of 8 (a byte) Can alternate as analog pins (but not both!) Good for LEDs, buttons, buzzers, relays
  • 28. Example: LED with MRAAExample: LED with MRAA var m = require('mraa'); //require mar //write the mraa version to the console console.log('MRAA Version: ' + m.getVersion()); //LED hooked up to digital pin 13 (or built in pin on Galileo Gen1 & Gen2) var myLed = new m.Gpio(13); myLed.dir(m.DIR_OUT); //set the gpio direction to output var ledState = true; //Boolean to hold the state of Led periodicActivity(); //call the periodicActivity function function periodicActivity() { //if ledState is true then write a '1' (high) otherwise write a '0' (low) myLed.write(ledState?1:0); ledState = !ledState; //invert the ledState //call the indicated function after 1 second (1000 milliseconds) setTimeout(periodicActivity,1000); }
  • 29. Analog I/OAnalog I/O GPIO pins for digital can often be used for analog Good for sensing light, temperature, sound etc We must translate digital signals to analog signals (PWM)
  • 30. Pulse Width ModulationPulse Width Modulation Pulse Width Modulation, or PWM, is a technique for getting analog results with digital means. Digital control is used to create a square wave, a signal switched between on and off. Useful for servos (robotics, drones), audio and more Let us turn a jaggy thing into a squiggly thing
  • 31. Example: 3-Axis AccelerometerExample: 3-Axis Accelerometer Has a ground wire, power wire and 3-analog wires
  • 32. // "ADXL335" var five = require("johnny-five"); var Edison = require("edison-io"); var board = new five.Board({ io: new Edison() }); board.on("ready", function() { var accelerometer = new five.Accelerometer({ controller: "ADXL335", pins: ["A0", "A1", "A2"] }); accelerometer.on("change", function() { console.log(" x : ", this.x); console.log(" y : ", this.y); console.log(" z : ", this.z); }); }); Johnny-Five SyntaxJohnny-Five Syntax
  • 34. "Serial" aka "Time Division Multiplexed""Serial" aka "Time Division Multiplexed" Data is sent one chunk at a time based on a clock signal Errors and noise occur when sending data via wire requiring safeguards.
  • 35. : Inter-integrated circuit : Serial peripheral communication (SCI): Universal asynchronous receiver/ transmitter I²C​ SPI UART Want more? Read this. Common Serial CommunicationsCommon Serial Communications
  • 37. // How to write to the Seeed LCD Screen // NOTE: You *MUST* plug the LCD into an I2C slot or this will not work! var Cylon = require('cylon'); function writeToScreen(screen, message) { screen.setCursor(0,0); screen.write(message); } Cylon .robot({ name: 'LCD'}) .connection('edison', { adaptor: 'intel-iot' }) .device('screen', { driver: 'upm-jhd1313m1', connection: 'edison' }) .on('ready', function(my) { writeToScreen(my.screen, "Ready!"); }).start(); Cylon SyntaxCylon Syntax
  • 38. SPISPI “ A master sends a clock signal, and upon each clock pulse it shifts one bit out to the slave, and one bit in, coming from the slave. Signal names are therefore SCK for clock, MOSI for Master Out Slave In, and MISO for Master In Slave Out. I²CI²C “ SCL and SDA. SCL is the clock line. It is used to synchronize all data transfers over the I2C bus. SDA is the data line. The SCL & SDA lines are connected to all devices on the I2C bus. Common Synchronous ProtocolsCommon Synchronous Protocols
  • 39. SPISPI Faster, 1-20MHz Requires 3+ physical lines Less worry about "noise" All lines are unidirectional Chip-select lines required I²CI²C Slower, 100 - 400MHz 2 lines only, easier to wire Noise an issue All lines are bi-directional For chaining devices Common Synchronous Protocols ComparedCommon Synchronous Protocols Compared Many microcontrollers support both protocols.
  • 40. (or SCI) uses two wires (TX / RX) to transmit data(or SCI) uses two wires (TX / RX) to transmit data asynchronously at an agreed-upon baud rateasynchronously at an agreed-upon baud rate UARTUART Uses start and stop bits for primitive error correction Buad Rate: Transmission speed (9600, 115200 etc) Long history, common on PCs before USB
  • 41. UART NotesUART Notes UART is a hardware module, not a protocol Can run in a Slow: 9 - 56 kHz (vs. 1 - 20 MHz for SPI) Used for sending ASCII characters Also: Keyboard, LCD monitor data synchronous mode called USART
  • 42. Test Time: ATmega32U4Xadow Main Board with Lets find: SPI, UART, I2C, Analog I/O
  • 43. Test Time: Find GPIO, Analog, PWM, UART, SPI
  • 44. Test Time: Find SPI, UART, I2C, USB, PWM, GPIO, Clock lines