Introduction to Microcontrollers: Arduino Tutorial - Romanian LHCb
Introduction to Microcontrollers: Arduino Tutorial. Introduction. What is a microcontroller? ? Small computers integrated in a single chip:.
4x3 Matrix 12-Key Keypad Tutorial: Arduino
15 déc. 2014 If you currently use an Arduino IDE older than version 1.0.5 you can still install the library manually. Arduino provides instructions to do so ...
THE MOST COMPLETE STARTER KIT TUTORIAL FOR UNO
This tutorial is designed for beginners. You will learn all the basic information about how to use Arduino controller board sensors and components.
Acces PDF Using Arduino To Teach Digital Signal Processing
12 Best Arduino Courses & Tutorials - (Updated 2020) (DRO) using an Arduino and a digital caliper Arduino Programming Tutorial 07: digitalRead() and.
Site To Download Using Arduino To Teach Digital Signal Processing
il y a 2 jours In the Arduino Button tutorial you are going to learn about inter- ... digital caliper Arduino Programming Tutorial 07: digitalRead() and.
Acces PDF Using Arduino To Teach Digital Signal Processing
9 févr. 2022 ers) Arduino Lesson 2 -. digitalRead & digital- ... Arduino Tutorial 5: Understanding and ... In the Arduino Button tuto-.
Spoken Tutorial
The Spoken Tutorial Project Team conducts workshops on Arduino and other FLOSS using spoken tutorials and gives certificates to those.
Using ESP32-CAM with Arduino IDE Tutorial
Using ESP32-CAM with Arduino IDE. Tutorial. Copyright© 2020 OLIMEX Ltd Go to arduino.cc and download latest revision for your OS. ... Run Arduino.
RFID RC522 Arduino Quick Start Guide Tutorial
In this tutorial we will be using the MFRC522 13.56Mhz IC by MIFARE as described at Arduino provides instructions to do so that can be found at.
Arduino MPU 6050 - Best IMU Sensor Tutorial - DIY Hacking
24 déc. 2016 I shall also give a short tutorial for interfacing arduino with the best IMU sensor available. IMU sensors like the. MPU 6050 are used in self ...
1. Horia Hulubei National Institute for R&D in Physics and Nuclear Engineering
2. University POLITEHNICA of Bucharest
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 1 Introduction to Microcontrollers: Arduino TutorialIntroduction
Microcontrollers Architecture
Arduino environment
Arduino boards
Sensors interface
Application control
Arduino UNO board
Coding example
Applications
Bibliography
OUTLINE
2 Introduction to Microcontrollers: Arduino TutorialIntroduction
What is a microcontroller?
Small computers integrated in a single chip:
CPU, RAM, EEPROM and other
Peripherals in the same package.
Excellent for embedded applications;
Low cost and low power consumption;
(ATMEGA328P ~ 1.5 $)Can work up to tens of MHz as clock frequency;
Can work with low frequency also, few MHz.
Standalone devices;
most of them only need power and a clock source to run. | vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 3 Introduction to Microcontrollers: Arduino TutorialIntroduction
What are they used for?
Data control;
Data Acquisition Systems;
Power control and monitoring;
Motor control applications;
Smartphones;
Automotive industry;
Nuclear instrumentation;
Space applications.
oIn general are used in applications where high processing resources are not required, hence a general purpose microcontroller is considered suitable due the low power consumption and without any peripheral and external memories; oAlso, the cost may be an important factor. microcontrollers/ | vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 4 Introduction to Microcontrollers: Arduino TutorialIntroduction
Famous microcontroller manufacturers:
Microchip;
Atmel (now is part of Microchip);
Intel;
Analog Devices;
MAXIM Integrated;
RenesasElectronics.
A detailed list can be found at:
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 5 Introduction to Microcontrollers: Arduino TutorialMicrocontrollers Architecture
CPUMEMORY
RAMEEPROM
CLOCKSOURCE
A/DCONVERTER
I/O PINS
D/ACONVERTER
PWMBLOCKS
I/O PERIPHERALSCOMMUNICATION
INTERFACES
SPIUART
I2C USB WI-FI USART SPIWATCHDOG
TIMERSimplified Architecture
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 6 Introduction to Microcontrollers: Arduino TutorialArduino environment
Opensource-sourceelectronicsdevelopment
board,basedoneasy-to-usehardwareand softwareinterface;Veryeasytouseanditshasabroadrangeof
librariesandexamplecodes;ArduinolanguageismerelyC/C++;
IthasembeddedanU(S)ARTmonitorinorderto
UsingProcessingsoftware(embeddedinthe
latestArduinocompilerversion)datacanbe displayed,GUIscanbemade;Moreat:https://www.arduino.cc/.
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 7 Introduction to Microcontrollers: Arduino TutorialArduino Boards
Arduino UNO
Arduino Mega 2560
Arduino LilyPadArduino BTArduino NANO
Arduino Due
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 8 Introduction to Microcontrollers: Arduino TutorialArduino UNO Board
In circuit Serial
programmingAnalog inputs
10-bit within the range 0 ʹVref(max. 5 V)Power Supply Distribution
(can be used to power up peripherals)USB Port
Input voltage
(7-12 V recommended)ATMEGA328P
Microcontroller
Hardware I2C
A4 => SDA
A5 => SCL
USB-UART bridge
16 MHz quartz oscillator
Direct connection to
the hardware UART blockHardware SPI block:
13=> SCLK
12=> MISO
11=> MOSI
10=> SS
Digital I/O PINS
Pulse Width Modulation
(PWM) included (~) | vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 9 Introduction to Microcontrollers: Arduino TutorialSensor interface
Analog or digital?
electricalsignal; values; logic.Sine waves are analog,
because the amplitude can vary between minimum and a maximum valueSquare waves are digital,
because the amplitude can vary only between 2 values, 0 or 1 logic 0 1 min max | vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 10 Introduction to Microcontrollers: Arduino TutorialSensor interface
Classification
LIGHTSENSORS
TEMPERATURE
SENSORS
HUMIDITY
SENSORS
BAROMETRIC
SENSORS
MEMSSENSORS
VOLTAGE &
CURRENT
SENSORS
ACCOUSTIC
SENSORS
PROXIMITY
SENSORS
HEALTH CARE
SENSORS
AIR QUALITY
SENSORS
MEMS => Microelectromechanical systems.
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 11 Introduction to Microcontrollers: Arduino TutorialApplication control
RELAYS
MOTORS
TRANSISTORS,SMART HOUSE
AUTOVEHICLES
COMPLEX DAQ
SYSTEMSROBOTS
DRONS & UAV
(UNMANNEDAERIAL
VEHICLE)
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 12 Introduction to Microcontrollers: Arduino Tutorial8-bit RISC architecture microcontroller;
32 KB In-System Self-Programmable Flash program
memory;1 KB EEPROM, 2 KB SRAM ;
6 PWM channels;
8 x 10-bit resolution ADC inputs;
UART, SPI, I2C;
On chip analog comparator;
3 Timers: 2 x 8-bit and 1 x 16-bit;
Up to 23 Programmable I/O lines;
Write/erase cycles: Up to 10.000 for Flash/ 100.000 for EEPROM; Speed Grade: 0 -4 MHz @ 1.8 -5.5 V, 0 ʹ10 MHz @2.7 ʹ5.5 V, 0 ʹ20 MHz @ 4.5 ʹ5.5 V;
Power consumption: 0.2 mA in Active Mode @ 1
MHz, 1.8 V and 25 °C.
Full datasheet
ATMEGA328P
Microcontroller
Arduino UNO Board
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 13 Introduction to Microcontrollers: Arduino TutorialFull datasheet
ATMEGA328P
Architecture
Arduino UNO Board
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 14 Introduction to Microcontrollers: Arduino TutorialGeneral purpose Input/Output(GPIO)
DDRRegisters
PIN Registers
D A T A B U S Pin PORTRegisters
Are the interface of logic
software with external hardware;Can be programmable as
Input or Output;
Can read or write digital
signals; logic 0 = 0 V and logic 1 = Vcc;Are controller by 3 registers:
DDR (Data Direction
Register);
PORT (load data when
the pin is set as output);PIN (load data when the
pin is set as input). | vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 15 Introduction to Microcontrollers: Arduino TutorialTimers / Counters
andbetriggeredby:Aclocksource:Timer;
Anexternalevent:Counter.
Utilities:
Timedomainmeasurements;
CreatePWMwaveforms.
HC-SR04ultrasonicdistancesensor,it
returnsthedistancemeasurement basedonechotimeofanultrasonic pulse. | vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 16 Introduction to Microcontrollers: Arduino TutorialInterrupts
Are used to break a routine of an program or
entire program flow in order to handle a specific event.Are triggered by:
Input pin state change (rise/fall/toggle);
Serial communication (USART, SPI, I2C);
ADC state registers;
Analog comparator;
Timers or Counters.
Main loop {}
instruction1 instruction2 instruction3 instruction4 instruction5 instruction6 | vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html|ISR {}
instructionISR => Interrupt Service Routine
Trigger Interrupt
17 Introduction to Microcontrollers: Arduino TutorialInternal Analog Comparator
V1 V2OUTPUT
OUTPUT1 for V1 > V2
0 for V1 < V2
ANI0=>V1;
ANI1=>V2;
namedACObit;V2canbetiedtotheoutputoftheADC
multiplixer,hencecanbetiedtoanyofthe analoginputs;Asageneralinformationisgoodtoknowthat
anycomparatorisan1-bitADC;ACO => Analog Comparator Output;
ACSR => Analog Comparator and Status Register.
Utilities:
Compare 2 analog voltages;
Trigger a Timer/Counter1
Input Capture function;
Trigger an Interrupt (rise, fall,
toggle).More information at page 234 | vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 18 Introduction to Microcontrollers: Arduino TutorialAnalog to Digital Converter
(ADC)10-bit resolution => 0 ʹVref=> 0-1023;
Successive-approximation (SAR)
architecture;1 ADC with up to 8 multiplexed input
channels => they share the sampling rate; one channel is dedicated for internal temperature monitoring;Vref canbe:
Vcc from power source;(not very
recomended because the power supply can be noisy)1.1 V internal voltage reference;
External, from an external voltage
reference.More about ADC
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 19 Introduction to Microcontrollers: Arduino TutorialPulse width modulation
(PWM)A square signal can be generated with a
variable duty cycle;ATMEGA328P has six 8-bit PWM channels;
Can be used for:
To control DC-DC converters;
To control the speed for motors;
To control the luminosity of Ledsor
lamps;To generate an analog voltage direct
proportional with duty cycle value.Duty cycle = ܖܗ܂
25 % Duty Cycle
OFFOFFOFFONON
0 V VCCTonToff
T | vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 20 Introduction to Microcontrollers: Arduino TutorialPulse width modulation
(PWM)PWMcanbeusedtogenerateastable
DCsignalifitspassedtoalowpass
filter,RCpassiveintegrator;An8bitPWMsignalwillemulatean
8-bitDAC(DigitaltoAnalog
Converter).
Source
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html|Read more
21Introduction to Microcontrollers: Arduino Tutorial
Communication interfaces
~USART~MostcommonisusedUART=>Universal
AsynchronousReceiver/Transmitter;
rate);Normally is defines as:
One start bit;
8 data bits;
1 stop bit.
TX TXRX RXUART1UART2
More at:
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 22Introduction to Microcontrollers: Arduino Tutorial
Communication interfaces
~SPI~Stands for Serial Peripheral Interface, and its
describes a serial communication used in embedded systems;Support multiple slaves communications, but
only one at time;Can perform full duplex;
One to many communication.
SCLK MOSI MISO SS1 SCLK MOSI MISO SS1 SCLK MOSI MISO SS2MASTER
SS2SLAVE1
SLAVE2
SCLK => Serial Clock;
MOSI => Master Output Slave Input;
MISO => Master Input Slave Output;
SS => Select Slave.
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html|Read more about SPI
23Introduction to Microcontrollers: Arduino Tutorial
Communication interfaces
~I2C~ Stands for Inter-Integrated Circuit, also know as Two Wire Interface (TWI); Serial protocol which allows multiples masters and slaves on the same bus, up to128; (many to many communication)
Normally each device has an unique 7-bit or 10-bit address in the I2C bus; Being used in variety of digital sensors, can reach speeds up to 400 kbps. (Arduino UNO) SDA SCLSCL=> Serial Clock Line;
SDA=>Serial Data Line.
Master1
Master2
Slave1
Slave2
Slave3
Slave4
| vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html|Read more about I2C
24Introduction to Microcontrollers: Arduino Tutorial
Coding example
~blinking a led~First of all, the latest version of
Arduino compiler must be installed
from: https://www.arduino.cc/;Run the compiler and go to
File=>Examples=>Basics=>Blink ;
A new windows with the related
software should appear on your screen;Compile the code and upload it on the
board; (The board new to be connected to the PC already)Change the delay value, and observe
what happen. | vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 25Introduction to Microcontrollers: Arduino Tutorial
Coding example
~blinking a led~Delay value = 1000 ms
Simulation was made with
the online simulator available at: https://circuits.io | vlad-mihai.placinta@cern.ch | www.nipne.ro/dpp/Collab/LHCb/upgrade.html| 26Introduction to Microcontrollers: Arduino Tutorialquotesdbs_dbs49.pdfusesText_49
[PDF] are counter powers growing in influence
[PDF] areas generales de la genetica
[PDF] aren'ice cergy tarif
[PDF] aren'ice cergy-pontoise
[PDF] arena aix
[PDF] arena lyon
[PDF] arena toulouse 1er degré
[PDF] arena toulouse blagnac
[PDF] arena toulouse premier degré
[PDF] arena versailles authentification
[PDF] arep rennes
[PDF] argument contre l'aide humanitaire
[PDF] argument d'expérience
[PDF] argument logique