Fast and Effective Embedded Systems Design

Size: px
Start display at page:

Download "Fast and Effective Embedded Systems Design"

Transcription

1 Fast and Effective Embedded Systems Design Applying the ARM mbed Rob Toulson Tim Wilmshurst AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD чч*?? &Ш& PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO % ELSEVIER Newnes is an imprint of Elsevier Newnes

2 Contents Introduction Acknowledgements xv xix PART I: Essentials of Embedded Systems, using the mbed Chapter 1: Embedded Systems, Microcontrollers and ARM Introducing Embedded Systems What is an Embedded System? An Example Embedded System Microprocessors and Microcontrollers Some Computer Essentials The Microcontroller Development Processes in Embedded Systems Programming Languages: What is so Special about C/C++? The Development Cycle The World of ARM A Little History Some Technical Detail: What does this RISC Word Mean? The Cortex Core 14 Chapter Review 15 Quiz 15 References 16 Chapter 2: Introducing the mbed Introducing the mbed The mbed Architecture The LPC1768 Microcontroller Getting Started with the mbed: A Tutorial 22 Step 1. Connecting the mbed to the PC 22 Step 2. Creating an mbed Account 23 v

3 vi Contents Step 3. Running a Program 23 Step 4. Compiling the Program 24 Step 5. Downloading the Program Binary Code 25 Step 6. Modifying the Program Code The Development Environment The mbed Compiler and API Using C/C++ 26 Chapter Review 26 Quiz 27 References 27 Chapter 3: Digital Input and Output Starting to Program Thinking about the First Program Understanding the mbed API Exploring the while Loop Voltages as Logic Values Digital Output on the mbed Using LEDs Using mbed External Pins Using Digital Inputs Connecting Switches to a Digital System The Digitalln API Using if to Respond to a Switch Input Interfacing Simple Opto Devices Opto Reflective and Transmissive Sensors Connecting an Opto-Sensor to the mbed Seven-Segment Displays Connecting a Seven-segment Display to the mbed Switching Larger DC Loads Applying Transistor Switching Switching a Motor with the mbed Switching Multiple Seven-Segment Displays Mini-Project: Letter Counter 53 Chapter Review 53 Quiz 53 References 55

4 Contents v/7 Chapter 4: Analog Output Introducing Data Conversion The Digital-to-Analog Converter Analog Outputs on the mbed Creating Constant Output Voltages Sawtooth Waveforms Testing the DAC Resolution Generating a Sine Wave Another Form of Analog Output: Pulse Width Modulation Pulse Width Modulation on the mbed Using the mbed PWM Sources Some Trial PWM Outputs Speed Control of a Small Motor Generating PWM in Software Servo Control Outputting to a Piezo Transducer 72 Chapter Review 74 Quiz 75 Reference 75 Chapter 5: Analog Input Analog-to-Digital Conversion The Analog-to-Digital Converter Range, Resolution and Quantization Sampling Frequency Analog Input with the mbed Combining Analog Input and Output Controlling LED Brightness by Variable Voltage Controlling LED Brightness by PWM Controlling PWM Frequency Processing Data from Analog Inputs Displaying Values on the Computer Screen Scaling ADC Outputs to Recognized Units Applying Averaging to Reduce Noise Some Simple Analog Sensors The Light-Dependent Resistor Integrated Circuit Temperature Sensor 89

5 viii Contents 5.5 Exploring Data Conversion Timing Estimating Conversion Time and Applying Nyquist Mini-Project: Two-Dimensional Light Tracking 92 Chapter Review 92 uiz Q 93 References 93 Chapter 6: Further Programming Techniques The Benefits of Considered Program Design and Structure Functions Program Design Using Flowcharts to Define Code Structure Pseudocode Working with Functions on the mbed Implementing a Seven-Segment Display Counter Function Reuse A More Complex Program Using Functions Using Multiple Files in C/C Overview of the C/C++ Program Compilation Process The C/C++ Preprocessor and Preprocessor Directives The mfndef Directive Using mbed Objects Globally Modular Program Example 109 Chapter Review 113 Quiz 113 Chapter 7: Starting with Serial Communication Introducing Synchronous Serial Communication Serial Peripheral Interface Introducing SPI SPI on the mbed Setting up an mbed SPI Master Creating a SPI Data Link Intelligent Instrumentation and a SPI Accelerometer Introducing the ADXL345 Accelerometer Developing a Simple ADXL345 Program Evaluating SPI 129

6 Contents ix 7.5 The Inter-Integrated Circuit Bus Introducing the I 2 C Bus I 2 C on the mbed Setting up an I 2 C Data Link Communicating with an I C Temperature Sensor Using the SRF08 Ultrasonic Range Finder Evaluating I 2 C Asynchronous Serial Data Communication Introducing Asynchronous Serial Data Applying Asynchronous Communication on the mbed Applying Synchronous Communication with the Host Computer Mini-Project: Multi-Node I 2 C Bus 144 Chapter Review 144 Quiz 145 References 145 Chapter 8: Liquid Crystal Displays Display Technologies Introducing Liquid Crystal Technology Liquid Crystal Character Displays Using the PC1602F LCD Introducing the PC1602F Display Connecting the PCI602F to the mbed Using Modular Coding to Interface the LCD Initializing the Display Sending Display Data to the LCD The Complete LCD.cpp Definition Utilizing the LCD Functions Adding Data to a Specified Location Using the mbed TextLCD Library Displaying Analog Input Data on the LCD More Advanced LCDs Color LCDs Controlling a SPI LCD Mobile Phone Display Mini-Project: Digital Spirit Level 166 Chapter Review 167 Quiz 167 References 167

7 x Contents Chapter 9: Interrupts, Timers and Tasks Time and Tasks in Embedded Systems Timers and Interrupts Tasks Event-Triggered and Time-Triggered Tasks Responding to Event-Triggered Events Polling Introducing Interrupts Simple Interrupts on the mbed Getting Deeper into Interrupts Interrupts on the LPC Testing Interrupt Latency Disabling Interrupts Interrupts from Analog Inputs Conclusion on Interrupts An Introduction to Timers The Digital Counter Using the Counter as a Timer Timers on the mbed Using the mbed Timer Using Multiple mbed Timers Testing the Timer Duration Using the mbed Timeout A Simple Timeout Application Further Use of Timeout Timeout used to Test Reaction Time Using the mbed Ticker Using Ticker for a Metronome Reflecting on Multi-Tasking in the Metronome Program The Real Time Clock Switch Debouncing Mini-Projects A Self-Contained Metronome Accelerometer Threshold Interrupt 198 Chapter Review 199 Quiz 199

8 Contents xi Chapter 10: Memory and Data Management A Memory Review Memory Function Types Essential Electronic Memory Types Using Data Files with the mbed Reviewing some Useful C/C++ Library Functions Defining the mbed Local File System Opening and Closing Files Writing and Reading File Data Example mbed Data File Access File Access String File Access Using Formatted Data Using External Memory with the mbed Introducing Pointers Mini-Project: Accelerometer Data Logging on Exceeding Threshold 214 Chapter Review 215 Quiz 216 References 216 PART II: Moving to Advanced and Specialist Applications Chapter 11: An Introduction to Digital Signal Processing What is a Digital Signal Processor? Digital Filtering Example An mbed DSP Example Input and Output of Digital Data Signal Reconstruction Adding a Digital Low-Pass Filter Adding a Push-Button Activation Digital High-Pass Filter Delay/Echo Effect Working with Wave Audio Files The Wave Information Header Reading the Wave File Header with the mbed Reading and Outputting Mono Wave Data Summary on DSP 239

9 xii Contents 11.7 Mini-Project: Stereo Wave Player Basic Stereo Wave Player Stereo Wave Player with PC Interface Portable Stereo Wave Player with Mobile Phone Display Interface 241 Chapter Review 241 Quiz 241 References 242 Chapter 12: Advanced Serial Communications Introducing Advanced Serial Communication Protocols Bluetooth Serial Communication Introducing Bluetooth Interfacing the RN-41 and RN-42 Bluetooth Modules Sending mbed Data over Bluetooth Receiving Bluetooth Data from a Host Terminal Application Communicating between Two mbeds on Bluetooth Introducing USB Using the mbed to Emulate a USB Mouse Sending USB MIDI Data from an mbed Introducing Ethernet Ethernet Overview Implementing Simple mbed Ethernet Communications Ethernet Communication between mbeds Local Network and Internet Communications with the mbed Using the mbed as an HTTP Client Using the mbed as an HTTP File Server Using Remote Procedure Calls to Modify mbed Outputs Controlling the mbed using a Remote JavaScript Interface 267 Chapter Review 270 Quiz 271 References 271 Chapter 13: An Introduction to Control Systems 273 I3.l Control Systems Closed and Open Loop Control Systems Closed Loop Cruise Control Example Proportional Control 276

10 Contents xiii Proportional Integral Derivative Control Closed Loop Digital Compass Example Using the HMC6352 Digital Compass Implementing a 360 Degree Rotation Servo Implementing a Closed Loop Control Algorithm Communicating Control Data over the Controller Area Network The Controller Area Network CAN on the mbed 289 Chapter Review 294 Quiz 294 References 295 Chapter 14: Letting Co of the mbed Libraries Introduction Control Register Concepts Digital Input/Output mbed Digital Input/Output Control Registers A Digital Output Application Adding a Second Digital Output Digital Inputs Getting Deeper into the Control Registers Pin Select and Pin Mode Registers Power Control and Clock Select Registers Using the DAC mbed DAC Control Registers A DAC Application Using the ADC mbed ADC Control Registers An ADC Application Changing ADC Conversion Speed A Conclusion on using the Control Registers 318 Chapter Review 319 Quiz 319 Reference 319 Chapter 15: Extension Projects Where do We Go from Here? Pololu Robot for mbed 321

11 xiv Contents 15.3 Advanced Audio Projects The Internet of Things Introducing the mbed LPCl 1U From mbed to Manufacture Closing Thoughts 329 References 329 Appendix A: Some Number Systems 337 Appendix B: Some С Essentials 339 Appendix C: mbed Technical Data 359 Appendix D: Parts List 365 Appendix E: The Tera Term Terminal Emulator 369 Index 373

8051 MICROCONTROLLER COURSE

8051 MICROCONTROLLER COURSE 8051 MICROCONTROLLER COURSE Objective: 1. Familiarization with different types of Microcontroller 2. To know 8051 microcontroller in detail 3. Programming and Interfacing 8051 microcontroller Prerequisites:

More information

Microcontrollers in Practice

Microcontrollers in Practice M. Mitescu I. Susnea Microcontrollers in Practice With 117 Figures, 34 Tables and CD-Rom 4y Springer Contents Resources of Microcontrollers, 1 1.1 In this Chapter 1 1.2 Microcontroller Architectures 1

More information

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC6504 - Microprocessor & Microcontroller Year/Sem : II/IV

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC6504 - Microprocessor & Microcontroller Year/Sem : II/IV DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC6504 - Microprocessor & Microcontroller Year/Sem : II/IV UNIT I THE 8086 MICROPROCESSOR 1. What is the purpose of segment registers

More information

Rapid System Prototyping with FPGAs

Rapid System Prototyping with FPGAs Rapid System Prototyping with FPGAs By R.C. Coferand Benjamin F. Harding AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO Newnes is an imprint of

More information

RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition

RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition A Tutorial Approach James O. Hamblen Georgia Institute of Technology Michael D. Furman Georgia Institute of Technology KLUWER ACADEMIC PUBLISHERS Boston

More information

Embedded Systems Design Course Applying the mbed microcontroller

Embedded Systems Design Course Applying the mbed microcontroller Embedded Systems Design Course Applying the mbed microcontroller Serial communications with SPI These course notes are written by R.Toulson (Anglia Ruskin University) and T.Wilmshurst (University of Derby).

More information

A Practical Approach to Education of Embedded Systems Engineering

A Practical Approach to Education of Embedded Systems Engineering A Practical Approach to Education of Embedded Systems Engineering Özgür Yürür Department of Electrical Engineering University of South Florida Tampa, Florida, 33620 oyurur@mail.usf.edu Wilfrido Moreno

More information

Embedded Systems on ARM Cortex-M3 (4weeks/45hrs)

Embedded Systems on ARM Cortex-M3 (4weeks/45hrs) Embedded Systems on ARM Cortex-M3 (4weeks/45hrs) Course & Kit Contents LEARN HOW TO: Use of Keil Real View for ARM Use ARM Cortex-M3 MCU for professional embedded application development Understanding

More information

C Programming. for Embedded Microcontrollers. Warwick A. Smith. Postbus 11. Elektor International Media BV. 6114ZG Susteren The Netherlands

C Programming. for Embedded Microcontrollers. Warwick A. Smith. Postbus 11. Elektor International Media BV. 6114ZG Susteren The Netherlands C Programming for Embedded Microcontrollers Warwick A. Smith Elektor International Media BV Postbus 11 6114ZG Susteren The Netherlands 3 the Table of Contents Introduction 11 Target Audience 11 What is

More information

Lab Experiment 1: The LPC 2148 Education Board

Lab Experiment 1: The LPC 2148 Education Board Lab Experiment 1: The LPC 2148 Education Board 1 Introduction The aim of this course ECE 425L is to help you understand and utilize the functionalities of ARM7TDMI LPC2148 microcontroller. To do that,

More information

Pulse width modulation

Pulse width modulation Pulse width modulation DRAFT VERSION - This is part of a course slide set, currently under development at: http://mbed.org/cookbook/course-notes We welcome your feedback in the comments section of the

More information

1. Learn about the 555 timer integrated circuit and applications 2. Apply the 555 timer to build an infrared (IR) transmitter and receiver

1. Learn about the 555 timer integrated circuit and applications 2. Apply the 555 timer to build an infrared (IR) transmitter and receiver Electronics Exercise 2: The 555 Timer and its Applications Mechatronics Instructional Laboratory Woodruff School of Mechanical Engineering Georgia Institute of Technology Lab Director: I. Charles Ume,

More information

Android based Alcohol detection system using Bluetooth technology

Android based Alcohol detection system using Bluetooth technology For more Project details visit: http://www.projectsof8051.com/android-based-alcohol-detection-system-usingbluetooth-technology/ Code 1435 Project Title Android based Alcohol detection system using Bluetooth

More information

Signal Processing in So.ware and Electric Field Sensing

Signal Processing in So.ware and Electric Field Sensing Signal Processing in So.ware and Electric Field Sensing CSE 466: So.ware for Embedded Systems Winter 2009 B. Mayton University of Washington CSE & Intel Research SeaMle CSE

More information

Microtronics technologies Mobile: 99707 90092

Microtronics technologies Mobile: 99707 90092 For more Project details visit: http://www.projectsof8051.com/rfid-based-attendance-management-system/ Code Project Title 1500 RFid Based Attendance System Synopsis for RFid Based Attendance System 1.

More information

MECE 102 Mechatronics Engineering Orientation

MECE 102 Mechatronics Engineering Orientation MECE 102 Mechatronics Engineering Orientation Mechatronic System Components Associate Prof. Dr. of Mechatronics Engineering Çankaya University Compulsory Course in Mechatronics Engineering Credits (2/0/2)

More information

Theory and Practice of Tangible User Interfaces. Thursday Week 2: Digital Input and Output. week. Digital Input and Output. RGB LEDs fade with PWM

Theory and Practice of Tangible User Interfaces. Thursday Week 2: Digital Input and Output. week. Digital Input and Output. RGB LEDs fade with PWM week 02 Digital Input and Output RGB LEDs fade with PWM 1 Microcontrollers Output Transducers actuators (e.g., motors, buzzers) Arduino Input Transducers sensors (e.g., switches, levers, sliders, etc.)

More information

ETEC 421 - Digital Controls PIC Lab 10 Pulse Width Modulation

ETEC 421 - Digital Controls PIC Lab 10 Pulse Width Modulation ETEC 421 - Digital Controls PIC Lab 10 Pulse Width Modulation Program Definition: Write a program to control the speed of a dc motor using pulse width modulation. Discussion: The speed of a dc motor is

More information

AUTOMATIC NIGHT LAMP WITH MORNING ALARM USING MICROPROCESSOR

AUTOMATIC NIGHT LAMP WITH MORNING ALARM USING MICROPROCESSOR AUTOMATIC NIGHT LAMP WITH MORNING ALARM USING MICROPROCESSOR INTRODUCTION This Project "Automatic Night Lamp with Morning Alarm" was developed using Microprocessor. It is the Heart of the system. The sensors

More information

Analog Representations of Sound

Analog Representations of Sound Analog Representations of Sound Magnified phonograph grooves, viewed from above: The shape of the grooves encodes the continuously varying audio signal. Analog to Digital Recording Chain ADC Microphone

More information

Real Time Development of MC Applications using the PC Master Software Visualization Tool. 1. Introduction. 2. Development of Motor Control.

Real Time Development of MC Applications using the PC Master Software Visualization Tool. 1. Introduction. 2. Development of Motor Control. Freescale Semiconductor Application Note AN1948 Rev. 1, 11/2005 Real Time Development of MC Applications using the PC Master Software Visualization Tool The PC Master Software Visualization Tool Simplifies

More information

System Design Issues in Embedded Processing

System Design Issues in Embedded Processing System Design Issues in Embedded Processing 9/16/10 Jacob Borgeson 1 Agenda What does TI do? From MCU to MPU to DSP: What are some trends? Design Challenges Tools to Help 2 TI - the complete system The

More information

Lesson 16 Analog-to-Digital Converter (ADC)

Lesson 16 Analog-to-Digital Converter (ADC) Lesson 16 Analog-to-Digital Converter (ADC) 1. Overview In this lesson, the Analog-to-Digital Converter (ADC) of the Cortex-M3 is introduced. For detailed description of the features and controlling options

More information

PCM Encoding and Decoding:

PCM Encoding and Decoding: PCM Encoding and Decoding: Aim: Introduction to PCM encoding and decoding. Introduction: PCM Encoding: The input to the PCM ENCODER module is an analog message. This must be constrained to a defined bandwidth

More information

Chapter 1 Lesson 3 Hardware Elements in the Embedded Systems. 2008 Chapter-1L03: "Embedded Systems - ", Raj Kamal, Publs.: McGraw-Hill Education

Chapter 1 Lesson 3 Hardware Elements in the Embedded Systems. 2008 Chapter-1L03: Embedded Systems - , Raj Kamal, Publs.: McGraw-Hill Education Chapter 1 Lesson 3 Hardware Elements in the Embedded Systems 1 Typical Embedded System Hardware units 2 Basic Circuit Elements at the System 3 (i) Power Source 1. System own supply with separate supply

More information

Digital to Analog Converter. Raghu Tumati

Digital to Analog Converter. Raghu Tumati Digital to Analog Converter Raghu Tumati May 11, 2006 Contents 1) Introduction............................... 3 2) DAC types................................... 4 3) DAC Presented.............................

More information

DESIGN AND IMPLEMENTATION OF ONLINE PATIENT MONITORING SYSTEM

DESIGN AND IMPLEMENTATION OF ONLINE PATIENT MONITORING SYSTEM DESIGN AND IMPLEMENTATION OF ONLINE PATIENT MONITORING SYSTEM Harsha G S Department of Electronics & Communication Channabasaveshwara Institute of Technology, Gubbi, 572216, India ABSTRACT Patient s condition

More information

Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill

Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill Objectives: Analyze the operation of sequential logic circuits. Understand the operation of digital counters.

More information

Raspberry Pi. Hans- Petter Halvorsen, M.Sc.

Raspberry Pi. Hans- Petter Halvorsen, M.Sc. Raspberry Pi Hans- Petter Halvorsen, M.Sc. Raspberry Pi 2 https://www.raspberrypi.org https://dev.windows.com/iot Hans- Petter Halvorsen, M.Sc. Raspberry Pi 2 - Overview The Raspberry Pi 2 is a low cost,

More information

Data Acquisition Module with I2C interface «I2C-FLEXEL» User s Guide

Data Acquisition Module with I2C interface «I2C-FLEXEL» User s Guide Data Acquisition Module with I2C interface «I2C-FLEXEL» User s Guide Sensors LCD Real Time Clock/ Calendar DC Motors Buzzer LED dimming Relay control I2C-FLEXEL PS2 Keyboards Servo Motors IR Remote Control

More information

Computer and Set of Robots

Computer and Set of Robots Lesson 11:DESIGN PROCESS EXAMPLES Mobile-Phone, Mobile- Computer and Set of Robots 1 Mobile Phone 2 Mobile phone SoC (System-on-Chip) Hardware units Microcontroller or ASIP (Application Specific Instruction

More information

A 5 Degree Feedback Control Robotic Arm (Haptic Arm)

A 5 Degree Feedback Control Robotic Arm (Haptic Arm) A 5 Degree Feedback Control Robotic Arm (Haptic Arm) 1 Prof. Sheetal Nirve, 2 Mr.Abhilash Patil, 3 Mr.Shailesh Patil, 4 Mr.Vishal Raut Abstract: Haptics is the science of applying touch sensation and control

More information

MP3 Player CSEE 4840 SPRING 2010 PROJECT DESIGN. zl2211@columbia.edu. ml3088@columbia.edu

MP3 Player CSEE 4840 SPRING 2010 PROJECT DESIGN. zl2211@columbia.edu. ml3088@columbia.edu MP3 Player CSEE 4840 SPRING 2010 PROJECT DESIGN Zheng Lai Zhao Liu Meng Li Quan Yuan zl2215@columbia.edu zl2211@columbia.edu ml3088@columbia.edu qy2123@columbia.edu I. Overview Architecture The purpose

More information

STEPPER MOTOR SPEED AND POSITION CONTROL

STEPPER MOTOR SPEED AND POSITION CONTROL STEPPER MOTOR SPEED AND POSITION CONTROL Group 8: Subash Anigandla Hemanth Rachakonda Bala Subramanyam Yannam Sri Divya Krovvidi Instructor: Dr. Jens - Peter Kaps ECE 511 Microprocessors Fall Semester

More information

Note monitors controlled by analog signals CRT monitors are controlled by analog voltage. i. e. the level of analog signal delivered through the

Note monitors controlled by analog signals CRT monitors are controlled by analog voltage. i. e. the level of analog signal delivered through the DVI Interface The outline: The reasons for digital interface of a monitor the transfer from VGA to DVI. DVI v. analog interface. The principles of LCD control through DVI interface. The link between DVI

More information

Single Phase Two-Channel Interleaved PFC Operating in CrM

Single Phase Two-Channel Interleaved PFC Operating in CrM Freescale Semiconductor Application Note Document Number: AN4836 Rev. 0, 12/2013 Single Phase Two-Channel Interleaved PFC Operating in CrM Using the MC56F82xxx Family of Digital Signal Controllers by Freescale

More information

Accurate Measurement of the Mains Electricity Frequency

Accurate Measurement of the Mains Electricity Frequency Accurate Measurement of the Mains Electricity Frequency Dogan Ibrahim Near East University, Faculty of Engineering, Lefkosa, TRNC dogan@neu.edu.tr Abstract The frequency of the mains electricity supply

More information

1/22/16. You Tube Video. https://www.youtube.com/watch?v=ympzipfabyw. Definitions. Duty Cycle: on-time per period (specified in per cent)

1/22/16. You Tube Video. https://www.youtube.com/watch?v=ympzipfabyw. Definitions. Duty Cycle: on-time per period (specified in per cent) Definition Pulse Width Modulation (PWM) is simply a way of getting the micro-controller to manage pulsing a pin on and off at a set period and duty cycle. The LPC11U24 has four timers with four match registers

More information

A Master-Slave DSP Board for Digital Control

A Master-Slave DSP Board for Digital Control A Master-Slave DSP Board for Digital Control ROSA, F. E. 1 ; CARRARA, A. R. S. 2 ; SOUZA, A.H. 3 (1) M.Sc. candidate e-mail fabio_e_rosa@zipmail.com.br (2) Professor, Ph.D. e-mail dee2arsc@dcc.fej.udesc.br

More information

DAC Digital To Analog Converter

DAC Digital To Analog Converter DAC Digital To Analog Converter DAC Digital To Analog Converter Highlights XMC4000 provides two digital to analog converters. Each can output one analog value. Additional multiple analog waves can be generated

More information

Atmel Norway 2005. XMEGA Introduction

Atmel Norway 2005. XMEGA Introduction Atmel Norway 005 XMEGA Introduction XMEGA XMEGA targets Leadership on Peripheral Performance Leadership in Low Power Consumption Extending AVR market reach XMEGA AVR family 44-100 pin packages 16K 51K

More information

APPLICATION NOTE. Atmel AVR443: Sensor-based Control of Three Phase Brushless DC Motor. Atmel AVR 8-bit Microcontrollers. Features.

APPLICATION NOTE. Atmel AVR443: Sensor-based Control of Three Phase Brushless DC Motor. Atmel AVR 8-bit Microcontrollers. Features. APPLICATION NOTE Features Atmel AVR443: Sensor-based Control of Three Phase Brushless DC Motor Less than 5µs response time on Hall sensor output change Theoretical maximum of 1600k RPM Over-current sensing

More information

Single Phase Two-Channel Interleaved PFC Operating in CrM Using the MC56F82xxx Family of Digital Signal Controllers

Single Phase Two-Channel Interleaved PFC Operating in CrM Using the MC56F82xxx Family of Digital Signal Controllers Freescale Semiconductor Application Note Document Number: AN4836 Rev. 1, 07/2014 Single Phase Two-Channel Interleaved PFC Operating in CrM Using the MC56F82xxx Family of Digital Signal Controllers by Freescale

More information

Department of Electrical and Computer Engineering Ben-Gurion University of the Negev. LAB 1 - Introduction to USRP

Department of Electrical and Computer Engineering Ben-Gurion University of the Negev. LAB 1 - Introduction to USRP Department of Electrical and Computer Engineering Ben-Gurion University of the Negev LAB 1 - Introduction to USRP - 1-1 Introduction In this lab you will use software reconfigurable RF hardware from National

More information

Soft processors for microcontroller programming education

Soft processors for microcontroller programming education Soft processors for microcontroller programming education Charles Goetzman Computer Science University of Wisconsin La Crosse goetzman.char@uwlax.edu Jeff Fancher Electronics Western Technical College

More information

DS1104 R&D Controller Board

DS1104 R&D Controller Board DS1104 R&D Controller Board Cost-effective system for controller development Highlights Single-board system with real-time hardware and comprehensive I/O Cost-effective PCI hardware for use in PCs Application

More information

Self-Evaluation Configuration for Remote Data Logging Systems

Self-Evaluation Configuration for Remote Data Logging Systems IEEE International Workshop on Intelligent Data Acquisition and Advanced Computing Systems: Technology and Applications 6-8 September 2007, Dortmund, Germany Self-Evaluation Configuration for Remote Data

More information

Microcontroller to Sensor Interfacing Techniques

Microcontroller to Sensor Interfacing Techniques to Sensor Interfacing Techniques Document Revision: 1.01 Date: 3rd February, 2006 16301 Blue Ridge Road, Missouri City, Texas 77489 Telephone: 1-713-283-9970 Fax: 1-281-416-2806 E-mail: info@bipom.com

More information

Simple SDR Receiver. Looking for some hardware to learn about SDR? This project may be just what you need to explore this hot topic!

Simple SDR Receiver. Looking for some hardware to learn about SDR? This project may be just what you need to explore this hot topic! Michael Hightower, KF6SJ 13620 White Rock Station Rd, Poway, CA 92064; kf6sj@arrl.net Simple SDR Receiver Looking for some hardware to learn about SDR? This project may be just what you need to explore

More information

AN3252 Application note

AN3252 Application note Application note Building a wave generator using STM8L-DISCOVERY Application overview This application note provides a short description of how to use the STM8L-DISCOVERY as a basic wave generator for

More information

AND8336. Design Examples of On Board Dual Supply Voltage Logic Translators. Prepared by: Jim Lepkowski ON Semiconductor. http://onsemi.

AND8336. Design Examples of On Board Dual Supply Voltage Logic Translators. Prepared by: Jim Lepkowski ON Semiconductor. http://onsemi. Design Examples of On Board Dual Supply Voltage Logic Translators Prepared by: Jim Lepkowski ON Semiconductor Introduction Logic translators can be used to connect ICs together that are located on the

More information

Managing Data in Motion

Managing Data in Motion Managing Data in Motion Data Integration Best Practice Techniques and Technologies April Reeve ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY

More information

Tutorial for MPLAB Starter Kit for PIC18F

Tutorial for MPLAB Starter Kit for PIC18F Tutorial for MPLAB Starter Kit for PIC18F 2006 Microchip Technology Incorporated. All Rights Reserved. WebSeminar Title Slide 1 Welcome to the tutorial for the MPLAB Starter Kit for PIC18F. My name is

More information

A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 1 Introducing Hardware

A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 1 Introducing Hardware A+ Guide to Managing and Maintaining Your PC, 7e Chapter 1 Introducing Hardware Objectives Learn that a computer requires both hardware and software to work Learn about the many different hardware components

More information

Computer Automation Techniques. Arthur Carroll

Computer Automation Techniques. Arthur Carroll Computer Automation Techniques Arthur Carroll 1 Three Types of Computers Micro-Controller Single Board Computer Desktop Computer 2 The Micro-Controller Small inexpensive DIP or surface mount chips Roughly

More information

Design of an Insulin Pump. Purpose of an Insulin Pump:

Design of an Insulin Pump. Purpose of an Insulin Pump: Design of an Insulin Pump Purpose of an Insulin Pump: Insulin is a hormone central to regulating carbohydrate and fat metabolism in the body. It is secreted regularly within the body and aids in converting

More information

Introduction to Data Acquisition

Introduction to Data Acquisition Introduction to Data Acquisition Overview This tutorial is part of the National Instruments Measurement Fundamentals series. Each tutorial in this series, will teach you a specific topic of common measurement

More information

Freescale Semiconductor, I

Freescale Semiconductor, I nc. Application Note 6/2002 8-Bit Software Development Kit By Jiri Ryba Introduction 8-Bit SDK Overview This application note describes the features and advantages of the 8-bit SDK (software development

More information

Welcome to the tutorial for the MPLAB Starter Kit for dspic DSCs

Welcome to the tutorial for the MPLAB Starter Kit for dspic DSCs Welcome to the tutorial for the MPLAB Starter Kit for dspic DSCs Welcome to this tutorial on Microchip s MPLAB Starter Kit for dspic Digital Signal Controllers, or DSCs. The starter kit is an all-in-one

More information

Application Report. 1 Introduction. 2 Resolution of an A-D Converter. 2.1 Signal-to-Noise Ratio (SNR) Harman Grewal... ABSTRACT

Application Report. 1 Introduction. 2 Resolution of an A-D Converter. 2.1 Signal-to-Noise Ratio (SNR) Harman Grewal... ABSTRACT Application Report SLAA323 JULY 2006 Oversampling the ADC12 for Higher Resolution Harman Grewal... ABSTRACT This application report describes the theory of oversampling to achieve resolutions greater than

More information

FRC WPI Robotics Library Overview

FRC WPI Robotics Library Overview FRC WPI Robotics Library Overview Contents 1.1 Introduction 1.2 RobotDrive 1.3 Sensors 1.4 Actuators 1.5 I/O 1.6 Driver Station 1.7 Compressor 1.8 Camera 1.9 Utilities 1.10 Conclusion Introduction In this

More information

Microcontroller Programming Beginning with Arduino. Charlie Mooney

Microcontroller Programming Beginning with Arduino. Charlie Mooney Microcontroller Programming Beginning with Arduino Charlie Mooney Microcontrollers Tiny, self contained computers in an IC Often contain peripherals Different packages availible Vast array of size and

More information

STM32L. Ultra-low-power Cortex -M3 devices

STM32L. Ultra-low-power Cortex -M3 devices STM32L Ultra-low-power Cortex -M3 devices STM32L press release STM32L 32- to 128-Kbyte products are entering full production 2 nd half March 2011 Part of industry s largest ARM Cortex -M 32-bit microcontroller

More information

PROJECT PRESENTATION ON CELLPHONE OPERATED ROBOTIC ASSISTANT

PROJECT PRESENTATION ON CELLPHONE OPERATED ROBOTIC ASSISTANT PROJECT PRESENTATION ON CELLPHONE OPERATED ROBOTIC ASSISTANT ELECTRONICS ENGINEERING DEPARTMENT SVNIT, SURAT-395007, INDIA Prepared by: Anurag Gupta (U05EC401) Dhrumeel Bakshi (U05EC326) Dileep Dhakal

More information

How to design and implement firmware for embedded systems

How to design and implement firmware for embedded systems How to design and implement firmware for embedded systems Last changes: 17.06.2010 Author: Rico Möckel The very beginning: What should I avoid when implementing firmware for embedded systems? Writing code

More information

Reconfigurable System-on-Chip Design

Reconfigurable System-on-Chip Design Reconfigurable System-on-Chip Design MITCHELL MYJAK Senior Research Engineer Pacific Northwest National Laboratory PNNL-SA-93202 31 January 2013 1 About Me Biography BSEE, University of Portland, 2002

More information

Design of Strong-motion Monitoring System for Dam-reservoir D s e i s gn of Stro r ng-mo m tion Monito t ri r ng Syst s em

Design of Strong-motion Monitoring System for Dam-reservoir D s e i s gn of Stro r ng-mo m tion Monito t ri r ng Syst s em Design of Strong-motion Monitoring System for Dam-reservo eservoir Li Caihua Li Xiaojun Institute of Engineering Mechanics, China Earthquake Administration China Harbin 150080 Abstract: One strong-motion

More information

HT46R14A Single Phase AC Induction Motor Frequency Converter Application

HT46R14A Single Phase AC Induction Motor Frequency Converter Application HT46R14A Single Phase AC Induction Motor Frequency Converter Application D/N:HA0095E Introductions Initially the main reason for using frequency conversion technology was for speed control, however to

More information

A Surveillance Robot with Climbing Capabilities for Home Security

A Surveillance Robot with Climbing Capabilities for Home Security Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 2, Issue. 11, November 2013,

More information

Computer Organization and Components

Computer Organization and Components Computer Organization and Components IS1500, fall 2015 Lecture 5: I/O Systems, part I Associate Professor, KTH Royal Institute of Technology Assistant Research Engineer, University of California, Berkeley

More information

AN2680 Application note

AN2680 Application note Application note Fan speed controller based on STDS75 or STLM75 digital temperature sensor and ST72651AR6 MCU Introduction This application note describes the method of defining the system for regulating

More information

Develop a Dallas 1-Wire Master Using the Z8F1680 Series of MCUs

Develop a Dallas 1-Wire Master Using the Z8F1680 Series of MCUs Develop a Dallas 1-Wire Master Using the Z8F1680 Series of MCUs AN033101-0412 Abstract This describes how to interface the Dallas 1-Wire bus with Zilog s Z8F1680 Series of MCUs as master devices. The Z8F0880,

More information

Von der Hardware zur Software in FPGAs mit Embedded Prozessoren. Alexander Hahn Senior Field Application Engineer Lattice Semiconductor

Von der Hardware zur Software in FPGAs mit Embedded Prozessoren. Alexander Hahn Senior Field Application Engineer Lattice Semiconductor Von der Hardware zur Software in FPGAs mit Embedded Prozessoren Alexander Hahn Senior Field Application Engineer Lattice Semiconductor AGENDA Overview Mico32 Embedded Processor Development Tool Chain HW/SW

More information

Interfacing Analog to Digital Data Converters

Interfacing Analog to Digital Data Converters Converters In most of the cases, the PIO 8255 is used for interfacing the analog to digital converters with microprocessor. We have already studied 8255 interfacing with 8086 as an I/O port, in previous

More information

Timer A (0 and 1) and PWM EE3376

Timer A (0 and 1) and PWM EE3376 Timer A (0 and 1) and PWM EE3376 General Peripheral Programming Model Each peripheral has a range of addresses in the memory map peripheral has base address (i.e. 0x00A0) each register used in the peripheral

More information

SAMPLE CHAPTERS UNESCO EOLSS DIGITAL INSTRUMENTS. García J. and García D.F. University of Oviedo, Spain

SAMPLE CHAPTERS UNESCO EOLSS DIGITAL INSTRUMENTS. García J. and García D.F. University of Oviedo, Spain DIGITAL INSTRUMENTS García J. and García D.F. University of Oviedo, Spain Keywords: analog-to-digital conversion, digital-to-analog conversion, data-acquisition systems, signal acquisition, signal conditioning,

More information

Metrics and Methods for Security Risk Management

Metrics and Methods for Security Risk Management Metrics and Methods for Security Risk Management Carl S. Young ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO Syngress is an imprint of

More information

POCKET SCOPE 2. The idea 2. Design criteria 3

POCKET SCOPE 2. The idea 2. Design criteria 3 POCKET SCOPE 2 The idea 2 Design criteria 3 Microcontroller requirements 3 The microcontroller must have speed. 3 The microcontroller must have RAM. 3 The microcontroller must have secure Flash. 3 The

More information

GPS & GSM BASED REAL-TIME VEHICLE TRACKING SYSTEM.

GPS & GSM BASED REAL-TIME VEHICLE TRACKING SYSTEM. GPS & GSM BASED REAL-TIME VEHICLE TRACKING SYSTEM. Introduction: The Proposed design is cost-effective, reliable and has the function of accurate tracking. When large object or vehicles were spread out

More information

Pulse Width Modulation

Pulse Width Modulation Pulse Width Modulation Pulse width modulation (PWM) is a powerful technique for controlling analog circuits with a microprocessor's digital outputs. PWM is employed in a wide variety of applications, ranging

More information

Risk Analysis and the Security Survey

Risk Analysis and the Security Survey Risk Analysis and the Security Survey Fourth Edition James F. Broder Eugene Tucker ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEWYORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO Butterworth-Heinemann

More information

Final Design Report 19 April 2011. Project Name: utouch

Final Design Report 19 April 2011. Project Name: utouch EEL 4924 Electrical Engineering Design (Senior Design) Final Design Report 19 April 2011 Project Name: utouch Team Members: Name: Issam Bouter Name: Constantine Metropulos Email: sambouter@gmail.com Email:

More information

Bi-directional Power System for Laptop Computers

Bi-directional Power System for Laptop Computers Bi-directional Power System for Laptop Computers Terry L. Cleveland Staff Applications Engineer Microchip Technology Inc. Terry.Cleveland@Microchip.com Abstract- Today the typical laptop computer uses

More information

1.1 Silicon on Insulator a brief Introduction

1.1 Silicon on Insulator a brief Introduction Table of Contents Preface Acknowledgements Chapter 1: Overview 1.1 Silicon on Insulator a brief Introduction 1.2 Circuits and SOI 1.3 Technology and SOI Chapter 2: SOI Materials 2.1 Silicon on Heteroepitaxial

More information

INTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE

INTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE INTRODUCTION TO DIGITAL SYSTEMS 1 DESCRIPTION AND DESIGN OF DIGITAL SYSTEMS FORMAL BASIS: SWITCHING ALGEBRA IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE COURSE EMPHASIS:

More information

AVR131: Using the AVR s High-speed PWM. Introduction. Features. AVR 8-bit Microcontrollers APPLICATION NOTE

AVR131: Using the AVR s High-speed PWM. Introduction. Features. AVR 8-bit Microcontrollers APPLICATION NOTE AVR 8-bit Microcontrollers AVR131: Using the AVR s High-speed PWM APPLICATION NOTE Introduction This application note is an introduction to the use of the high-speed Pulse Width Modulator (PWM) available

More information

C8051F020 Utilization in an Embedded Digital Design Project Course. Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia

C8051F020 Utilization in an Embedded Digital Design Project Course. Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia C8051F020 Utilization in an Embedded Digital Design Project Course Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia Abstract In this paper, the utilization of the C8051F020 in an

More information

PHY-2464 Physical Basis of Music

PHY-2464 Physical Basis of Music PHY-2464 Physical Basis of Music Presentation 26 Sound Reproduction and Synthesis: Digital Reproduction Adapted in substantial part from Sam Matteson s Unit 4 Session 40 & 41 Sam Trickey April 18, 2005

More information

W a d i a D i g i t a l

W a d i a D i g i t a l Wadia Decoding Computer Overview A Definition What is a Decoding Computer? The Wadia Decoding Computer is a small form factor digital-to-analog converter with digital pre-amplifier capabilities. It is

More information

Analog signals are those which are naturally occurring. Any analog signal can be converted to a digital signal.

Analog signals are those which are naturally occurring. Any analog signal can be converted to a digital signal. 3.3 Analog to Digital Conversion (ADC) Analog signals are those which are naturally occurring. Any analog signal can be converted to a digital signal. 1 3.3 Analog to Digital Conversion (ADC) WCB/McGraw-Hill

More information

NETWORK ENABLED EQUIPMENT MONITOR

NETWORK ENABLED EQUIPMENT MONITOR NETWORK ENABLED EQUIPMENT MONITOR Remotely Monitor Sensors over the Internet Connect Sensors to the Web to Remotely Monitor Equipment, Processes or Other Applications A Complete, Easy to Deploy, Stand-Alone

More information

The I2C Bus. NXP Semiconductors: UM10204 I2C-bus specification and user manual. 14.10.2010 HAW - Arduino 1

The I2C Bus. NXP Semiconductors: UM10204 I2C-bus specification and user manual. 14.10.2010 HAW - Arduino 1 The I2C Bus Introduction The I2C-bus is a de facto world standard that is now implemented in over 1000 different ICs manufactured by more than 50 companies. Additionally, the versatile I2C-bus is used

More information

Micro-Step Driving for Stepper Motors: A Case Study

Micro-Step Driving for Stepper Motors: A Case Study Micro-Step Driving for Stepper Motors: A Case Study N. Sedaghati-Mokhtari Graduate Student, School of ECE, University of Tehran, Tehran, Iran n.sedaghati @ece.ut.ac.ir Abstract: In this paper, a case study

More information

Room Temperature based Fan Speed Control System using Pulse Width Modulation Technique

Room Temperature based Fan Speed Control System using Pulse Width Modulation Technique Room Temperature based Fan Speed Control System using Pulse Width Modulation Technique Vaibhav Bhatia Department of Electrical and Electronics Engg., Bhagwan Parshuram Institute of Technology, New Delhi-110089,

More information

Open Source Toolkit. Penetration Tester's. Jeremy Faircloth. Third Edition. Fryer, Neil. Technical Editor SYNGRESS. Syngrcss is an imprint of Elsevier

Open Source Toolkit. Penetration Tester's. Jeremy Faircloth. Third Edition. Fryer, Neil. Technical Editor SYNGRESS. Syngrcss is an imprint of Elsevier Penetration Tester's Open Source Toolkit Third Edition Jeremy Faircloth Neil Fryer, Technical Editor AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS. SAN DIEGO SAN FRANCISCO. SINGAPORE SYDNEY

More information

Java Embedded Applications

Java Embedded Applications TM a One-Stop Shop for Java Embedded Applications GeeseWare offer brings Java in your constrained embedded systems. You develop and simulate your Java application on PC, and enjoy a seamless hardware validation.

More information

Lab 5 Getting started with analog-digital conversion

Lab 5 Getting started with analog-digital conversion Lab 5 Getting started with analog-digital conversion Achievements in this experiment Practical knowledge of coding of an analog signal into a train of digital codewords in binary format using pulse code

More information

Arduino project. Arduino board. Serial transmission

Arduino project. Arduino board. Serial transmission Arduino project Arduino is an open-source physical computing platform based on a simple microcontroller board, and a development environment for writing software for the board. Open source means that the

More information

Using Arduino Microcontrollers to Sense DC Motor Speed and Position

Using Arduino Microcontrollers to Sense DC Motor Speed and Position ECE480 Design Team 3 Using Arduino Microcontrollers to Sense DC Motor Speed and Position Tom Manner April 4, 2011 page 1 of 7 Table of Contents 1. Introduction ----------------------------------------------------------

More information

Motor Control using NXP s LPC2900

Motor Control using NXP s LPC2900 Motor Control using NXP s LPC2900 Agenda LPC2900 Overview and Development tools Control of BLDC Motors using the LPC2900 CPU Load of BLDCM and PMSM Enhancing performance LPC2900 Demo BLDC motor 2 LPC2900

More information