Lecture 1   microcontroller overview
Upcoming SlideShare
Loading in...5
×
 

Lecture 1 microcontroller overview

on

  • 698 views

1 Microcontroller overview ...

1 Microcontroller overview
1.1 Industrial automation systems overview
1.2 Microcontroller architecture
1.3 The pedagogical robot
1.4 Digital Inputs/Outputs
1.5 Embedded C Language

Statistics

Views

Total Views
698
Views on SlideShare
698
Embed Views
0

Actions

Likes
0
Downloads
36
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Lecture 1   microcontroller overview Lecture 1 microcontroller overview Presentation Transcript

  • Microcontroller Lab. Eng.Khaled Tamizi Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 1 PPU IUT Cachan Mechanical Department Mechatronic
  • 1 Microcontroller overview Microcontroller in an industrial system Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 2 PTC Khadoury IUT Cachan
  • 1.1 Industrial automation systems overview 1.2 Microcontroller architecture 1 Microcontroller overview Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 3 1.3 The pedagogical robot 1.4 Digital Inputs/Outputs 1.5 Embedded C Language
  • 1.1 Industrial automation systems overview Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 4
  • 1.1 Industrial automation systems overview Energy Commands Pre- actuators Actuators Energy other microcontrollers other systems Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 5 User Operative part Informations Command Part Sensors Human- Machine Interface Interface
  • Energy Commands Pre- Actuators Actuators Energy Actuators Electric Actuators : Motors other microcontrollers other systems 1.1 Industrial automation systems overview Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 6 Command Part User Operative part Informations Sensors Human- Machine Interface Interface Command Part Pneumatic or hydraulic actuators : cylinders
  • Energy Commands Pre- Actuators Actuators Energy 1.1 Industrial automation systems overview other microcontrollers other systems Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 7 User Operative part Informations Sensors Human- Machine Interface Interface Command Part
  • Energy Commands Pre- Actuators Actuators Energy Pre-Actuators Motor drives / inverters 1.1 Industrial automation systems overview other microcontrollers other systems Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 8 User Operative part Informations Sensors Human- Machine Interface Interface Command Part electropneumatic or electrohydraulic valves
  • Energy Commands Pre- Actuators Actuators Energy 1.1 Industrial automation systems overview other microcontrollers other systems Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 9 User Operative part Informations Sensors Human- Machine Interface Interface Command Part
  • Energy Commands Pre- Actuators Actuators Energy other microcontrollers other systems Sensors optical detectorinductive detector contact detector 1.1 Industrial automation systems overview Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 10 User Operative part Informations Sensors Human- Machine Interface Interface Command Part optical detectorinductive detector Optical encoder (for motor axes) detector Camera
  • Energy Commands Pre- Actuators Actuators Energy 1.1 Industrial automation systems overview other microcontrollers other systems Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 11 User Operative part Informations Sensors Human- Machine Interface Interface Command Part
  • Energy Commands Pre- Actuators Actuators Energy other microcontrollers other systems Human-Machine Interface 1.1 Industrial automation systems overview Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 12 User Operative part Informations Sensors Human- Machine Interface Interface Command Part Touch screens Lights and buttons
  • 1.1 Industrial automation systems overview Which device for command part ? Few systems : for example Factory Automation Low development cost Quick and safe development PLC (programmable logic controller) Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 13 Many systems : for example Automotive Brake system Cheap and small device (programmable logic controller) Microcontroller
  • 1.1 Industrial automation systems overview Microcontroller applications Automotive : safety, comfort, motor control… Embedded control : inverter, PLC (!), hover, wash machine Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 14 Automotive : safety, comfort, motor control… Multimedia devices : phones, PDA, …
  • 1.2 Microcontroller architecture Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 15
  • Commands 1.2 Microcontroller architecture Output communication peripherals Central Processing Unit (CPU) other command parts Program memory (Flash) Data memory (RAM) Databus control signals control signals Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 16 information Output peripherals inputs peripherals User Commands User information internal peripherals Databus control signals control signals control signals control signals
  • Commands Output Central Processing Unit (CPU) Digital Outputs communication peripheralsother command parts Program memory (Flash) Data memory (RAM) Databus 1.2 Microcontroller architecture Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 17 Information User Commands User Information Output peripherals Input peripherals Internal peripherals Digital Inputs Fast counting Inputs Timers Internal clock PWM Outputs (Pulse Width Modulation) Analog to digital converter Databus
  • Commands 1.2 Microcontroller architecture Output communication peripherals Central Processing Unit (CPU) other command parts Program memory (Flash) Data memory (RAM) Databus control signals control signals CPU Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 18 information Output peripherals inputs peripherals User Commands User information internal peripherals Databus control signals control signals control signals control signals
  • Commands 1.2 Microcontroller architecture Output communication peripherals Central Processing Unit (CPU) other command parts Program memory (Flash) Data memory (RAM) Databus control signals control signals CPU Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 19 information Output peripherals inputs peripherals User Commands User information internal peripherals Databus control signals control signals control signals control signals
  • Commands 1.2 Microcontroller architecture Output communication peripherals Central Processing Unit (CPU) other command parts Program memory (Flash) Data memory (RAM) Databus control signals control signals Program Memory Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 20 information Output peripherals inputs peripherals User Commands User information internal peripherals Databus control signals control signals control signals control signals
  • Commands 1.2 Microcontroller architecture Output communication peripherals Central Processing Unit (CPU) other command parts Data memory (RAM) Databus control signals control signals Program Memory Program memory (Flash) Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 21 information Output peripherals inputs peripherals User Commands User information internal peripherals Databus control signals control signals control signals control signals
  • Commands 1.2 Microcontroller architecture Output communication peripherals Central Processing Unit (CPU) other command parts Program memory (Flash) Data memory (RAM) Databus control signals control signals Data Memory Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 22 information Output peripherals inputs peripherals User Commands User information internal peripherals Databus control signals control signals control signals control signals
  • Commands 1.2 Microcontroller architecture Output communication peripherals Central Processing Unit (CPU) other command parts Databus control signals Data Memory Program memory (Flash) Data memory (RAM) control signals Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 23 information Output peripherals inputs peripherals User Commands User information internal peripherals Databus control signals control signals control signals control signals
  • Commands 1.2 Microcontroller architecture Output communication peripherals Central Processing Unit (CPU) other command parts Program memory (Flash) Data memory (RAM) Databus control signals control signals Data bus Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 24 information Output peripherals inputs peripherals User Commands User information internal peripherals Databus control signals control signals control signals control signals
  • Commands 1.2 Microcontroller architecture Output communication peripherals Central Processing Unit (CPU) other command parts Databus control signals Data bus Program memory (Flash) Data memory (RAM) control signals Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 25 information Output peripherals inputs peripherals User Commands User information internal peripherals Databus control signals control signals control signals control signals
  • 1.2 Microcontroller architecture semiconductors manufacturers 8 bits microcontrollers - Microchip - Freescale (ex. Motorola) - Cypress (µC and PSoC) - Nec, Toshiba, ST, Philips,… 16 bits microcontrollers - Renesas (ex. Mitsubishi / Hitachi) 5% 37% 27% 31% 4 bits 8 bits 16 bits 32 bits 2004 : 12 Milliards $ Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 26 - Renesas (ex. Mitsubishi / Hitachi) - Microchip (µC and Digital Signal Controller) - Infineon (ex. Siemens) - Atmel, Freescale, Intel, Texas Instruments, Toshiba… 32 bits microcontrollers - Atmel (Arm core) - Infineon (TriCore : Risc, Cisc & DSP) - Freescale (Arm, PowerPC or Coldfire 68000 core) - Renesas, Nec, Texas Instruments, Toshiba… source IC Insights
  • 1.3 The pedagogical robot Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 27 1.3 The pedagogical robot
  • 1.3 The pedagogical robot Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 28
  • 1.3 The pedagogical robot Pulse width modulation control dataUltrasonic Lead battery Microcontroller Synoptic Optical sensors Analog and digital sensors data Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 29 dataUltrasonic sensor Microcontroller board Power electronic board Optical encoders Line Obstacle Angular positions Buttons LCD
  • jack & Commands Energy I2C PWM Outputs Digital communication peripherals 1.3 The pedagogical robot Chopper + Motors ultrasonic telemeter UART Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 30 LCD Display jack & buttons line info Micro- controller Digital Input Analog to digital converter Digital outputs Fast counting Inputs Analog to digital converter Infrared sensors Motors encoders position info Potentio- meter
  • 1.3 The pedagogical robot Speed & position control The robot follows the line The robot starts and stops Obstacle detection Shortcut detection THE RACE AnalogtoDigitalConverter BasicStateMachine Developmenttools DigitalInputs/Outputs Timers/Counters PulseWidthModulation CommunicationPeripherals Interrupts Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 31 AnalogtoDigitalConverter BasicStateMachine Developmenttools DigitalInputs/Outputs Timers/Counters PulseWidthModulation CommunicationPeripherals Interrupts
  • 1.4 Digital inputs / outputs Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 32
  • 1.4 Digital inputs / outputs communication peripherals Databus control signals Program memory (Flash) Data memory (RAM) control signals Central Processing Unit (CPU) Output control signals VCC = 5V Example of device plugged on a digital input : a pushbutton Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 33 internal peripherals Databus control signals control signals control signals Output peripherals inputs peripherals control signals control signals VCC = 5V GND 4,7kOhms BPx 5 V i=0 A VR=0 VVR=5 V i=1 mA 0 V pushbutton pressed : logic level 0 pushbutton not pressed : logic level 1 RB3
  • 1.4 Digital inputs / outputs VCC = 5V Central Processing Unit (CPU) Other peripherals Example of device plugged on a digital input : a pushbutton Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 34 8-bitdatabus Enable reading PORTB VCC = 5V GND 4,7kOhms BPx RB3 Tri-state buffer
  • 1.4 Digital inputs / outputs communication peripherals Databus control signals Program memory (Flash) Data memory (RAM) control signals Central Processing Unit (CPU) control signals Example of device plugged on a digital output : a led RA6Output 01 Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 35 internal peripherals Databus control signals control signals control signals inputs peripherals control signals control signals GND Logic level 0 : the led is OFF Logic level 1 : the led is ON RA6Output peripherals 680Ohms 0 VA6=0V i = 0 mA 1 VA6=5V i = 6 mA
  • 1.4 Digital inputs / outputs Central Processing Unit (CPU) Other peripherals Example of device plugged on a digital output : a led RA6 latch Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 36 8-bitdatabus writing on PORTA GND RA6 680Ohms
  • 1.4 Digital inputs / outputs communication peripherals Databus control signals Program memory (Flash) Data memory (RAM) control signals Central Processing Unit (CPU) Example of device plugged on digital in/outputs : LCD display Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 37 internal peripherals Databus control signals control signals Input / Output peripherals control signals Parallel Port 4 RD0-RD3
  • 1.4 Digital inputs / outputs Central Processing Unit (CPU) Other peripherals latch Tri-state buffer Example of device plugged on digital in/outputs : LCD display Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 38 8-bitdatabus writing on PORTD reading PORTD Tri-state buffer RD0 En En selecting input or output mode
  • 1.4 Digital inputs / outputs Generic Input / output pin schematic Tri-state buffer to select input or output mode selecting output latch Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 39 selecting mode circuit Tri-state buffer for input reading
  • 2nd step, configure RB3 as an input TRISB x x x 1 x x xx 1.4 Digital inputs / outputs How to program input reading (for example the state of a pushbutton bp0 plugged on RB3) 1st step, define a variable to store the state of the pushbutton char bp0; Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 40 RB3 is configured as an input char bp0; TRISB = TRISB | 0b00001000; 3rd step, read the value of RB3 and store it in bp0 bp0 = PORTBbits.RB3; or bp0 = PORTB & 0b00001000;
  • 1st step, configure RA6 as an output TRISA 0 x x x x x xx 1.4 Digital inputs / outputs How to program output writing (for example switching on a led plugged on RA6) Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 41 RA6 is configured as an output TRISA = TRISA & 0b10111111; 2nd step, write a value of RA6 PORTAbits.RA6 = 1; or PORTA = PORTA | 0b01000000;
  • 1st step, configure RA6 as an output TRISA 0 x x x x x xx 1.4 Digital inputs / outputs How to program output writing (for example switching off a led plugged on RA6) Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 42 RA6 is configured as an output TRISA = TRISA & 0b10111111; 2nd step, write a value of RA6 PORTAbits.RA6 = 0; or PORTA = PORTA & 0b10111111;
  • 1.5 Embedded program flow chart Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 43
  • Peripherals configuration variables definition and initialization 1.5 Flow chart Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 44 Inputs reading Treatment Outputs writing
  • Variables definition and initializations peripherirals configuration while (1) { Inputs reading main(){ 1.5 Flow chart Project Pedagogy approach of Microcontroller – Palestinian Robotic Cup 45 Inputs reading treatments Outputs writing } }