Typical Microcontroller Purposes

Slides:



Advertisements
Similar presentations
Jordan Barry Victor Brzeski
Advertisements

Lizard Labs Peripheral Reflex System
Chapter 10 Input/Output Organization. Connections between a CPU and an I/O device Types of bus (Figure 10.1) –Address bus –Data bus –Control bus.
1/1/ / faculty of Electrical Engineering eindhoven university of technology Processor support devices Part 1:Interrupts and shared memory dr.ir. A.C. Verschueren.
Robotics Club, Snt Council2 The 3 Schools of Robotics: Mechanical Design – Types of motors – Material selection –
MICRO-CONTROLLER: A microcontroller is the brain of the robot: These are: 1. Integrated Circuits (ICs) 2. Programmable.
IO Controller Module Arbitrates IO from the CCP Physically separable from CCP –Can be used as independent data logger or used in future projects. Implemented.
Design and Implementation of a Virtual Reality Glove Device Final presentation – winter 2001/2 By:Amos Mosseri, Shy Shalom, Instructors:Michael.
Programmable System on Chip Fully Configurable Mixed Signal Array Allows for Completely Customizable System Designs Capable of Internal MCU.
ASPPRATECH.
Microcontroller based system design
Chapter 17 Microprocessor Fundamentals William Kleitz Digital Electronics with VHDL, Quartus® II Version Copyright ©2006 by Pearson Education, Inc. Upper.
BLDC MOTOR SPEED CONTROL USING EMBEDDED PROCESSOR
Microprocessor and Microcontroller Based Systems Instructor: Eng.Moayed N. EL Mobaied The Islamic University of Gaza Faculty of Engineering Electrical.
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
Microcontrollers, Basics Fundamentals of Designing with Microcontrollers 16 January 2012 Jonathan A. Titus.
Cortex-M3 Debugging System
Microprocessor Block Diagram
Critical Design Review 27 February 2007 Black Box Car System (BBCS) ctrl + z: Benjamin Baker, Lisa Furnish, Chris Klepac, Benjamin Mauser, Zachary Miers.
©Alex Doboli Chapter 3: Hardware and Software Subsystems of Mixed-Signal Architectures (Part II) Alex Doboli, Ph.D. Department of Electrical and Computer.
Department of Electronic & Electrical Engineering Embedded system Aims: Introduction to: Hardware. Software Ideas for projects ? Robotics/Control/Sensors.
Using the Cypress PSoC Processor January 15, 2011 Lloyd Moore President/Owner, CyberData Corporation.
Arduino Josh Villbrandt February 4, Digital Circuits Analog versus digital – What’s the difference? – How to represent an analog signal in a computer?
1 SERIAL PORT INTERFACE FOR MICROCONTROLLER EMBEDDED INTO INTEGRATED POWER METER Mr. Borisav Jovanović, Prof.dr Predrag Petković, Prof.dr. Milunka Damnjanović,
Micro processor and Micro Controllers
Microcontroller Presented by Hasnain Heickal (07), Sabbir Ahmed(08) and Zakia Afroze Abedin(19)
(More) Interfacing concepts. Introduction Overview of I/O operations Programmed I/O – Standard I/O – Memory Mapped I/O Device synchronization Readings:
Sales Training 3/15/2013 Owner : JOCA Cypress Confidential TI UCD90160 vs. Cypress PSoC 3 Power Supervision Applications More Rails on a One-chip Solution.
Autonomous Helicopter James LydenEE 496Harris Okazaki.
Dr Mohamed Menacer College of Computer Science and Engineering Taibah University CE-321: Computer.
Microprocessors For a microprocessor to give a working microcomputer system, which can be used for control tasks, additional chips are necessary, e.g.
ATtiny23131 A SEMINAR ON AVR MICROCONTROLLER ATtiny2313.
L/O/G/O Input Output Chapter 4 CS.216 Computer Architecture and Organization.
TI MSP430 MICROCONTROLLERS BY ADITYA PATHAK. THE MSP FAMILY Ultra-low power; mixed signal processors Widely used in battery operated applications Uses.
Apollo Guidance Computer Using a Programmable System on a Chip Shane Whalen Advisor: Dr.Andrezj Rucinski.
THE EMBEDDED SYSTEMDESIGN PROCESS. W HAT IS A PS O C M IXED S IGNAL D EVICE ? P rogrammable S ystem o n C hip PSoC combines: the familiarity of a microcontroller.
Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower than CPU.
Lecture 7: Overview Microprocessors / microcontrollers.
ECE445 – SPRING CSW Corey S Wilner – Cypress FAE January 26, 2016 UIUC ECE445 Project Ideas.
بسم الله الرحمن الرحيم MEMORY AND I/O.
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
PSoC Overview. 2 Cypress Confidential An Example Design Scenario.
HOME AUTOMATION USING PC DONE BY RAJESHKUMAR S SRI HARSHA D.
Components of a typical full-featured microcontroller.
MICROCONTROLLER INTERFACING WITH STEPPER MOTOR MADE BY: Pruthvirajsinh Jadeja ( ) COLLEGE:DIET BRANCH:EC.
Networked Embedded Systems Sachin Katti EE107 Spring 2016 Lecture 3 Microcontrollers.
Networked Embedded Systems Pengyu Zhang EE107 Spring 2016 Lecture 8 Serial Buses.
The World Leader in High Performance Signal Processing Solutions Linux Industrial I/O Subsystem Open Platform Solutions Michael Hennerich.
SUBMITTED BY EDGEFX TEAM PORTABLE CODED WIRELESS MESSAGE COMMUNICATION BETWEEN TWO PARTIES SECRETLY WITH LCD DISPLAY.
Case Study #1 Microcontroller System. What is a microcontroller? A microcontroller can be considered a self-contained system with a processor, memory.
Lizard Labs Peripheral Reflex System
Cypress Roadmap: Platform PSoC®
Popular Microcontrollers and their Selection by Lachit Dutta
Microcontrollers, Basics Fundamentals of Designing with Microcontrollers 16 January 2012 Jonathan A. Titus.
ABSTRACT The controller continuously polls the temperature with certain regular time intervals and displays over the 7_segment display The temperature.
Microcontrollers & GPIO
SCADA for Remote Industrial Plant
Cypress Roadmap: CapSense® Controllers
SUBMITTED BY EDGEFX TEAM
UNIT – Microcontroller.
Introduction to Microprocessors and Microcontrollers
Journey: Introduction to Embedded Systems
Cypress Roadmap: CapSense® Controllers
Wireless Embedded Systems
Exploring Application Specific Programmable Logic Devices
ADSP 21065L.
Presentation transcript:

Programmable System-on-Chip (PSoC) General Overview Embedded Architectures EE446

Typical Microcontroller Purposes The purpose for uC’s is to interface multiple types of hardware. Digital Input/Outputs: Switches Relays LEDs Digital Communications: I2C, SPI Analog Input/Outputs Computer uC Thermal Gyro Acceleration

Example of Hardware Interfacing

Regular Microcontroller Caveats What if you need more Analog Inputs? What if you need more Interrupts? Advanced projects: more PWMs needed? Use external circuitry Buy a larger microcontroller

What is a Programmable System-on-Chip (PSoC)? A customizable microcontroller that includes flexible analog and digital logic blocks. Analog blocks: High-resolution inputs (up to 20-bit) 4 Digital-to-Analog Converters Digital logic blocks (UDBs): A wide mix of digital peripherals can be implemented into a single chip. Up to 4 voltage domains Almost all pins can be flexible in terms of being digital or analog.

What is a Programmable System-on-Chip (PSoC)? (Powered by ARM Core) Provides above features plus ARM processor benefits: Up to 67Mhz Flash: Up to 256kb SRAM: Up to 65kb Up to 70 I/O pins

General Overview of PSoC Features

Cypress PSoC IDE API

Cypress PSoC IDE (Block Configuration) Read up some of these options

PSoC Pin Routing

PSoC Main Program Code ISR Flag Main loop ISR Flag

API’s for the PSoC Blocks

API’s for the PSoC Blocks

Universal Digital Blocks A UDB is a combination of uncommitted logic (PLDs), structured logic (datapath), and a flexible routing scheme. The largest PSoC contains up to 24 general-purpose digital logic subsystems (UDBs) PLD: Implements state machines and simple combinational logic. Datapath: Dynamically configurable ALU Contains Input/Output FIFOs Connects to the CPU/DMA and other UDB’s

Top-level UDB Block Diagram

Top-level UDB Routing Diagram

Extensive Uses of UDBs Examples of possible hardware configurations on a single (and largest) PSoC chip: 12 UARTs or 28 PWMs For a normal microcontroller, this configuration is impossible without resorting to additional external hardware, such as: Daisy-chain or bus-connected peripherals: Microcontrollers I2C/SPI-connected hardware for UART, PWM, etc.

Extensive Uses of UDBs Technology Mapping Summary

Extensive Uses of UDBs Technology Mapping Summary

PSoC Top-Level Analog Routing Diagram

PSoC Analog Routing Analog Local Bus Analog Global Bus Analog Mux Bus 4 on left side, 4 on right side Connects to analog resource blocks only No access to GPIO’s Analog Global Bus Connects I/O to analog resource blocks on same side Connects to GPIO on their respective quadrant 8 routes on left side, 8 routes on right side Analog Mux Bus Connects the buses to the ‘outside’ world Can connect to all GPIO’s and all analog resource blocks

PSoC Die Quadrants Analog Routing Global Bus The analog global bus has eight routes on each side, AGL[7:0] on the left, and AGR[7:0] on the right. Within each side, the bus is divided into two groups, AGR[3:0] and AGR[7:4] for the right side, and AGL[3:0] and AGL[7:4] for the left side. The lower four globals on each side are routed to the GPIO on the lower half of the die and the upper four globals on each side are routed to the GPIO on the upper half of the die. All eight analog globals on each side get routed to ARBs on the same side

Detailed Analog Routing

Interrupts

Why have interrupts? An external event that needs immediate attention. An ‘emergency’ switch A long-running timer PSoC-5 supports 16 system interrupts and 32 from peripherals. Tail Chaining (Back-to-Back) Late Arrival (Lower  Higher) Reprioritize Interrupts Same Priority? Fixed Function  DMA  UDB

Interrupts “Have any of you taken EE445?” Reason why you need interrupts for the hardware Some modules that are used needs immediate attention in real time.

Interrupt Usage Sonar UART: Servo Hardware: Motor Encoders: Send a command every 20msec. Motor Encoders:

Interrupt Vector Table

How Interrupts Work

Interrupt Setup and ISR

Tail Chaining Interrupts

Late Arrival Interrupts

Polling vs Interrupting Signals can happen too fast for the CPU to read or process!

Example PSoC Project Firmware Overview I/O Communications Inputs From Sensors Outputs To Devices

Raw Sensor Data Collection to the Host PC Digital: I2C used in Gyroscopes, Accelerometers, Magnetometers (IMU), and Temperature Sensor UART from Sonar @ 9600bps (8N1) For this particular usage, very inefficient. Requires interrupts and additional code complexity. Very slow data updates. ADC Settings and Inputs: 14-bits @ 70,000 Samples Per Second (currently) Vcc = 5 Volt (Reference) Raw value range: 0v  5v 0  16384

PSoC Data Output Raw ADC Values: 85 updates/sec over Serial UART @ 115200bps (8N1) Servo Position Infrared Gyro X-Axis Gyro Y-Axis Gyro Z-Axis Sonar (analog)

Host PC Application GUI