Microcontroller Crash Course. Sam Fladung 7/30/2013
|
|
- Brendan Lang
- 7 years ago
- Views:
Transcription
1 Microcontroller Crash Course Sam Fladung 7/30/2013
2 What is a Microcontoller Processor + Peripherals Peripherals can include: Analog to Digital Converters (ADCs) Timers Serial Ports (UARTS) Synchronous Serial Ports (SPI/I2C) Pulse Width Modulation (PWM)
3 Course Outline Compile / Run a basic program Blink an LED (with sleep) Use timers to allow multitasking Functions State Machines and switch statement Other Peripherals
4 What this course will not cover In depth knowledge of C Program design / rules Multithreading RTOS Macros Microcontroller architectures
5 Basic Microcontroller Concepts Bit -> 1 or 0 (on/off) Byte (8 bits) -> 0:255 or -128:127 Register: A block of memory Special Function Register (sfr): A register that maps to some specific function Port (an SFR that connects to io pins) Endianness
6 Examples of Microcontrollers Atmel AVR (Arduino is based off these) Microchip PIC ST Micro STM32 Texas Instruments MSP430 Basic Stamp Many others
7 Related Technologies Digital Signal Processors (DSPs) Field Programmable Gate Arrays (FPGAs) Programmable Logic Controllers (PLCs) Embedded Computers (Raspberry PI, BeagleBone etc)
8 Programming Languages C by far the most common Provides good hardware access and bit manipulations Much better portability than Assembler Assembler Unique for each type of microcontroller Should generally only be used when speed/space optimization have a strong premium
9 Arduino Based on an AVR Microcontroller Onboard programmer Defined pinout Shields -> Expansion boards that plug into standard pinout Custom IDE/ Libraries with abstraction
10 Physical Setup Connecting up the boards to the computer USB Cable provides both signal and power to the board. Expansion cards may require additional power
11 IDE Setup
12 Basic c Intro Comments Any text after // is a comment Any text between /* and */ is a comment Assignment X=5; // x now contains the value 5 Comparisons 5==5; // True 5==4; // False 5<6; // True 5<5; // False 6>=6; // True 6>=7; // False
13 If statements in c Branching if (condition) do something ; else if(condition) do something ; else do something else ; By Default only the line after an if/else is included. For multiple lines, surround with curly brackets{ I recommend always including the brackets
14 A Note on Optimization Premature optimization is the root of all evil (or at least most of it) in programming. Donald Knuth Focus on making code understandable rather than worrying about optimizing IF you find a section is ACTUALLY slowing down your program to an unacceptable extent, then you can optimize.
15 Blinking an LED Board setup Port assignment: LED is Digital Port 13
16 Blinking an LED Source Code int led = 13; void setup() { pinmode(led, OUTPUT); // initialize the digital pin as an output. void loop() { digitalwrite(led, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalwrite(led, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second
17 Exercise 1 Type EX 1 code into your IDE, verify that it compiles and download to your Arduino Bonus Make the LED blink twice as fast Have LED be on for 1 second, but off for 10ms Send the message SOS in Morse code over the LED ( ) Pick a pattern and make the LED follow it
18 Using timers to avoid sleep Previous example works, BUT: Entire program blocks during sleep Can t do anything else while blinking the LED Use timers to know when to turn the LEDs on/ off
19 millis() function millis(): Returns the number of milliseconds since the Arduino board began running the current program. This number will overflow (go back to zero), after approximately 50 days.
20 LED blink with timers source const int ledpin = 13; // the number of the LED pin int ledstate = LOW; long previousmillis = 0; long interval = 1000; // ledstate used to set the LED // will store last time LED was updated // interval at which to blink (milliseconds) void setup() { pinmode(ledpin, OUTPUT); // set the digital pin as output:
21 LED blink with timers source (contd) void loop() { unsigned long currentmillis = millis(); if(currentmillis - previousmillis > interval) { previousmillis = currentmillis; if (ledstate == LOW) ledstate = HIGH; else ledstate = LOW; digitalwrite(ledpin, ledstate);
22 Exercise 2 Type EX 2 code into your IDE, verify that it compiles and download to your Arduino Bonus Make the LED blink twice as fast Have LED be on for 1 second, but off for 10ms Send the message SOS in Morse code over the LED ( ) Pick a pattern and make the LED follow it
23 Creating functions Functions are portions of code that accept some number of argument and return a value They may or may not affect the underlying program state Functions allow code to be reused in multiple sections without copy and paste Functions allow code to be broken into multiple smaller chunks
24 Anatomy of a function int foo(int bar){ Return Type Function Name Argument Type Argument Name Special keyword void Scope Persistent (static variables)
25 Data Hiding / Encapsulation Limit which parts of the code can access variables Promotes clearer code Prevents unintended coupling Use static vars in a function rather than globals when the variable: is persistent Is only used in that function
26 Breaking the LED blink into a function void led_blink(void){ static int ledstate = LOW; // ledstate used to set the LED static long previousmillis = 0; // will store last time LED was updated unsigned long currentmillis = millis(); if(currentmillis - previousmillis > interval) { previousmillis = currentmillis; if (ledstate == LOW) ledstate = HIGH; else ledstate = LOW; digitalwrite(ledpin, ledstate);
27 Breaking the LED blink into a function (contd) const int ledpin = 13; // the number of the LED pin long interval = 1000; // interval at which to blink (milliseconds) void setup() { pinmode(ledpin, OUTPUT); void loop() { led_blink();
28 Exercise 3 Type EX 3 code into your IDE, verify that it compiles and download to your Arduino Bonus Make the LED blink twice as fast Have LED be on for 1 second, but off for 10ms Send the message SOS in Morse code over the LED ( ) Pick a pattern and make the LED follow it
29 State Machine A state machine is used to perform different actions depending on the state of the system. State machines allow for effectively concurrent operations
30 Anatomy of a state machine States: Transitions State actions
31 Implementing a State machine with Switch Statements State variable Enums Switch statement switch(state_var){ case STATE_1: Do state actions Check if state should change state_var= NEW_STATE Case STATE_2
32 Implementing Different LED Blinks as State Diagram State Machine Time Expired Fast Blink Slow Blink Time Expired
33 LED State Machine Source Code const int ledpin = 13; // the number of the LED pin // Variables will change: int ledstate = LOW; // ledstate used to set the LED long previousmillis = 0; // will store last time LED was updated long previousmillisstate = 0; // will store last time State changed // the follow variables is a long because the time, measured in miliseconds, // will quickly become a bigger number than can be stored in an int. long interval = 1000; // interval at which to blink (milliseconds) long state_interval = 5000; // interval at which to blink (milliseconds) typedef enum {FAST, SLOW state_t; state_t state = SLOW; void setup() { // set the digital pin as output: pinmode(ledpin, OUTPUT);
34 LED State Machine Source Code(contd) void loop() { unsigned long currentmillis = millis(); switch(state){ case FAST: interval=200; if(currentmillis - previousmillisstate > state_interval) { previousmillisstate=currentmillis; state=slow; break; case SLOW: interval=1000; if(currentmillis - previousmillisstate > state_interval) { previousmillisstate=currentmillis; state=fast; break; if(currentmillis - previousmillis > interval) { previousmillis = currentmillis; if (ledstate == LOW) ledstate = HIGH; else ledstate = LOW; previousmillis=currentmillis; digitalwrite(ledpin, ledstate);
35 Exercise 4 Type EX 4 code into your IDE, verify that it compiles and download to your Arduino Bonus Rewrite state machine code to use functions Make the LED blink twice as fast Have LED be on for 1 second, but off for 10ms Send the message SOS in Morse code over the LED ( ) Pick a pattern and make the LED follow it
36 Expanding Your IO Options Serial Digital Input Analog Input
37 Serial Write void setup() { Serial.begin(9600); // initialize serial communication at 9600 bits per second: pinmode(pushbutton, INPUT); // make the pushbutton's pin an input: void loop() { // read the input pin: static int i = 0; Serial.println(i); i++ delay(1); // delay in between reads for stability
38 Serial Read int incomingbyte = 0; // for incoming serial data void setup() { Serial.begin(9600); // opens serial port, sets data rate to 9600 bps void loop() { // send data only when you receive data: if (Serial.available() > 0) { // read the incoming byte: incomingbyte = Serial.read(); // say what you got: Serial.print("I received: "); Serial.println(incomingByte, DEC);
39 Digital Inputs int pushbutton = 2; // digital pin 2 has a pushbutton attached to it. //Give it a name: void setup() { Serial.begin(9600); // initialize serial communication at 9600 bits per //second: pinmode(pushbutton, INPUT); // make the pushbutton's pin an //input: void loop() { int buttonstate = digitalread(pushbutton); // read the input pin: Serial.println(buttonState); // print out the state of the button: delay(1); // delay in between reads for stability
40 Analog Input void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); // the loop routine runs over and over again forever: void loop() { // read the input on analog pin 0: int sensorvalue = analogread(a0); // print out the value you read: Serial.println(sensorValue); delay(1); // delay in between reads for stability
41 Exercise 5 Type EX 5 code into your IDE, verify that it compiles and download to your Arduino Bonus Have the serial port send a character instead of decimal Have the LED turn on/off with each character received Have the LED turn on when N and off when F Have the Arudino print a countdown to the serial port, switching the LED state each second. Stop the countdown and start the LED blinking fast when it reaches 0. Reset countdown when R is received. If you have an analog or digital peripheral, send its value to the serial port
42 Further References Many of the examples come from:
Arduino Lesson 1. Blink
Arduino Lesson 1. Blink Created by Simon Monk Last updated on 2015-01-15 09:45:38 PM EST Guide Contents Guide Contents Overview Parts Part Qty The 'L' LED Loading the 'Blink' Example Saving a Copy of 'Blink'
More informationMicrocontroller 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 informationLab 6 Introduction to Serial and Wireless Communication
University of Pennsylvania Department of Electrical and Systems Engineering ESE 111 Intro to Elec/Comp/Sys Engineering Lab 6 Introduction to Serial and Wireless Communication Introduction: Up to this point,
More informationArduino 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 informationKeil C51 Cross Compiler
Keil C51 Cross Compiler ANSI C Compiler Generates fast compact code for the 8051 and it s derivatives Advantages of C over Assembler Do not need to know the microcontroller instruction set Register allocation
More informationBasic Pulse Width Modulation
EAS 199 Fall 211 Basic Pulse Width Modulation Gerald Recktenwald v: September 16, 211 gerry@me.pdx.edu 1 Basic PWM Properties Pulse Width Modulation or PWM is a technique for supplying electrical power
More informationConnecting Arduino to Processing a
Connecting Arduino to Processing a learn.sparkfun.com tutorial Available online at: http://sfe.io/t69 Contents Introduction From Arduino......to Processing From Processing......to Arduino Shaking Hands
More informationC 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 informationSoft 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 information2.0 Command and Data Handling Subsystem
2.0 Command and Data Handling Subsystem The Command and Data Handling Subsystem is the brain of the whole autonomous CubeSat. The C&DH system consists of an Onboard Computer, OBC, which controls the operation
More informationControlling a Dot Matrix LED Display with a Microcontroller
Controlling a Dot Matrix LED Display with a Microcontroller By Matt Stabile and programming will be explained in general terms as well to allow for adaptation to any comparable microcontroller or LED matrix.
More informationArduino Internet Connectivity: Maintenance Manual Julian Ryan Draft No. 7 April 24, 2015
Arduino Internet Connectivity: Maintenance Manual Julian Ryan Draft No. 7 April 24, 2015 CEN 4935 Senior Software Engineering Project Instructor: Dr. Janusz Zalewski Software Engineering Program Florida
More informationLecture 7: Programming for the Arduino
Lecture 7: Programming for the Arduino - The hardware - The programming environment - Binary world, from Assembler to C - - Programming C for the Arduino: more - Programming style Lect7-Page1 The hardware
More informationChapter 13. PIC Family Microcontroller
Chapter 13 PIC Family Microcontroller Lesson 01 PIC Characteristics and Examples PIC microcontroller characteristics Power-on reset Brown out reset Simplified instruction set High speed execution Up to
More informationArduino Wifi shield And reciever. 5V adapter. Connecting wifi module on shield: Make sure the wifi unit is connected the following way on the shield:
the following parts are needed to test the unit: Arduino UNO R3 Arduino Wifi shield And reciever 5V adapter Connecting wifi module on shield: Make sure the wifi unit is connected the following way on the
More informationEmbedded Programming in C/C++: Lesson-1: Programming Elements and Programming in C
Embedded Programming in C/C++: Lesson-1: Programming Elements and Programming in C 1 An essential part of any embedded system design Programming 2 Programming in Assembly or HLL Processor and memory-sensitive
More informationSending Data from a computer to a microcontroller using a UART (Universal Asynchronous Receiver/Transmitter)
Sending Data from a computer to a microcontroller using a UART (Universal Asynchronous Receiver/Transmitter) Eric Bell 04/05/2013 Abstract: Serial communication is the main method used for communication
More informationSKP16C62P Tutorial 1 Software Development Process using HEW. Renesas Technology America Inc.
SKP16C62P Tutorial 1 Software Development Process using HEW Renesas Technology America Inc. 1 Overview The following tutorial is a brief introduction on how to develop and debug programs using HEW (Highperformance
More informationAn Introduction to MPLAB Integrated Development Environment
An Introduction to MPLAB Integrated Development Environment 2004 Microchip Technology Incorporated An introduction to MPLAB Integrated Development Environment Slide 1 This seminar is an introduction to
More informationisppac-powr1220at8 I 2 C Hardware Verification Utility User s Guide
November 2005 Introduction Application Note AN6067 The isppac -POWR1220AT8 device from Lattice is a full-featured second-generation Power Manager chip. As part of its feature set, this device supports
More informationSoftware Manual RS232 Laser Merge Module. Document # SU-256521-09 Rev A
Laser Merge Module Document # SU-256521-09 Rev A The information presented in this document is proprietary to Spectral Applied Research Inc. and cannot be used for any purpose other than that for which
More informationMeshBee Open Source ZigBee RF Module CookBook
MeshBee Open Source ZigBee RF Module CookBook 2014 Seeed Technology Inc. www.seeedstudio.com 1 Doc Version Date Author Remark v0.1 2014/05/07 Created 2 Table of contents Table of contents Chapter 1: Getting
More informationUsing 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 informationEric Mitchell April 2, 2012 Application Note: Control of a 180 Servo Motor with Arduino UNO Development Board
Eric Mitchell April 2, 2012 Application Note: Control of a 180 Servo Motor with Arduino UNO Development Board Abstract This application note is a tutorial of how to use an Arduino UNO microcontroller to
More informationMicrocontroller Code Example Explanation and Words of Wisdom For Senior Design
Microcontroller Code Example Explanation and Words of Wisdom For Senior Design For use with the following equipment: PIC16F877 QikStart Development Board ICD2 Debugger MPLAB Environment examplemain.c and
More informationProgramming the Arduino
Summer University 2015: Programming the Arduino Alexander Neidhardt (FESG) neidhardt@fs.wettzell.de SU-Arduino-Prog-Page1 Programming the Arduino - The hardware - The programming environment - Binary world,
More informationArduino Lesson 5. The Serial Monitor
Arduino Lesson 5. The Serial Monitor Created by Simon Monk Last updated on 2013-06-22 08:00:27 PM EDT Guide Contents Guide Contents Overview The Serial Monitor Arduino Code Other Things to Do 2 3 4 7 10
More informationMicrocontroller Based Low Cost Portable PC Mouse and Keyboard Tester
Leonardo Journal of Sciences ISSN 1583-0233 Issue 20, January-June 2012 p. 31-36 Microcontroller Based Low Cost Portable PC Mouse and Keyboard Tester Ganesh Sunil NHIVEKAR *, and Ravidra Ramchandra MUDHOLKAR
More informationUsing Xbee 802.15.4 in Serial Communication
Using Xbee 802.15.4 in Serial Communication Jason Grimes April 2, 2010 Abstract Instances where wireless serial communication is required to connect devices, Xbee RF modules are effective in linking Universal
More informationAndroid, Bluetooth and MIAC
Android, Bluetooth and MIAC by Ben Rowland, June 2012 Abstract Discover how easy it is to use TCP network communications to link together high level systems. This article demonstrates techniques to pass
More information8051 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 informationDEPARTMENT 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 informationLab 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 informationeztcp Technical Document Modbus/TCP of eztcp Caution: Specifications of this document may be changed without prior notice for improvement.
eztcp Technical Document Modbus/TCP of eztcp Version 1.3 Caution: Specifications of this document may be changed without prior notice for improvement. Sollae Systems Co., Ltd. http://www.sollae.co.kr Contents
More informationData 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 informationArduino Lesson 13. DC Motors. Created by Simon Monk
Arduino Lesson 13. DC Motors Created by Simon Monk Guide Contents Guide Contents Overview Parts Part Qty Breadboard Layout Arduino Code Transistors Other Things to Do 2 3 4 4 4 6 7 9 11 Adafruit Industries
More informationAn Introduction To Simple Scheduling (Primarily targeted at Arduino Platform)
An Introduction To Simple Scheduling (Primarily targeted at Arduino Platform) I'm late I'm late For a very important date. No time to say "Hello, Goodbye". I'm late, I'm late, I'm late. (White Rabbit in
More informationComputer Architectures
Implementing the door lock with Arduino Gábor Horváth 2015. március 9. Budapest associate professor BUTE Dept. Of Networked Systems and Services ghorvath@hit.bme.hu Outline Aim of the lecture: To show
More informationTheory 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 informationRN-131-PICTAIL & RN-171-PICTAIL Evaluation Boards
RN-131-PICTAIL & RN-171-PICTAIL Evaluation Boards 2012 Roving Networks. All rights reserved. Version 1.0 9/7/2012 USER MANUAL OVERVIEW The RN-131 and RN-171 WiFly radio modules are complete, standalone
More informationAccurate 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 informationMicrotronics 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 informationHow To Port A Program To Dynamic C (C) (C-Based) (Program) (For A Non Portable Program) (Un Portable) (Permanent) (Non Portable) C-Based (Programs) (Powerpoint)
TN203 Porting a Program to Dynamic C Introduction Dynamic C has a number of improvements and differences compared to many other C compiler systems. This application note gives instructions and suggestions
More informationArduino Due Back. Warning: Unlike other Arduino boards, the Arduino Due board runs at 3.3V. The maximum. Overview
R Arduino Due Arduino Due Front Arduino Due Back Overview The Arduino Due is a microcontroller board based on the Atmel SAM3X8E ARM Cortex-M3 CPU (datasheet). It is the first Arduino board based on a 32-bit
More informationTable 1 below is a complete list of MPTH commands with descriptions. Table 1 : MPTH Commands. Command Name Code Setting Value Description
MPTH: Commands Table 1 below is a complete list of MPTH commands with descriptions. Note: Commands are three bytes long, Command Start Byte (default is 128), Command Code, Setting value. Table 1 : MPTH
More informationDigitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai 2007. Jens Onno Krah
(DSF) Soft Core Prozessor NIOS II Stand Mai 2007 Jens Onno Krah Cologne University of Applied Sciences www.fh-koeln.de jens_onno.krah@fh-koeln.de NIOS II 1 1 What is Nios II? Altera s Second Generation
More informationINTRODUCTION TO SERIAL ARM
INTRODUCTION TO SERIAL ARM A robot manipulator consists of links connected by joints. The links of the manipulator can be considered to form a kinematic chain. The business end of the kinematic chain of
More informationETEC 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 informationDevelop 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 informationTimer 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 informationTutorial 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 informationDebouncing Switches. Mechanical switches are one of the most common interfaces to a uc.
Mechanical switches are one of the most common interfaces to a uc. Switch inputs are asynchronous to the uc and are not electrically clean. Asynchronous inputs can be handled with a synchronizer (2 FF's).
More informationQuick Installation. A Series of Intelligent Bar Code Reader with NeuroFuzzy Decoding. Quick Installation
Quick Installation A Series of Intelligent Bar Code Reader with NeuroFuzzy Decoding This chapter intends to get your new FuzzyScan scanner working with your existing system within minutes. General instructions
More informationDesigning VM2 Application Boards
Designing VM2 Application Boards This document lists some things to consider when designing a custom application board for the VM2 embedded controller. It is intended to complement the VM2 Datasheet. A
More informationA 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 informationPOCKET 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 informationWeb Site: www.parallax.com Forums: forums.parallax.com Sales: sales@parallax.com Technical: support@parallax.com
Web Site: www.parallax.com Forums: forums.parallax.com Sales: sales@parallax.com Technical: support@parallax.com Office: (916) 624-8333 Fax: (916) 624-8003 Sales: (888) 512-1024 Tech Support: (888) 997-8267
More informationC4DI Arduino tutorial 4 Things beginning with the letter i
C4DI Arduino tutorial 4 Things beginning with the letter i If you haven t completed the first three tutorials, it might be wise to do that before attempting this one. This tutorial assumes you are using
More informationwww.dragino.com Yun Shield Quick Start Guide VERSION: 1.0 Version Description Date 1.0 Release 2014-Jul-08 Yun Shield Quick Start Guide 1 / 14
Yun Shield Quick Start Guide VERSION: 1.0 Version Description Date 1.0 Release 2014-Jul-08 Yun Shield Quick Start Guide 1 / 14 Index: 1 Introduction... 3 1.1 About this quick start guide... 3 1.2 What
More informationFreescale 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 informationA 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 informationUPS PIco. to be used with. Raspberry Pi B+, A+, B, and A. HAT Compliant. Raspberry Pi is a trademark of the Raspberry Pi Foundation
UPS PIco Uninterruptible Power Supply with Peripherals and I 2 C control Interface to be used with Raspberry Pi B+, A+, B, and A HAT Compliant Raspberry Pi is a trademark of the Raspberry Pi Foundation
More informationIntroduction to Arduino
Introduction to Arduino // Basic Arduino reference sheet: Installation: Arduino: http://www.arduino.cc/en/guide/homepage Fritzing: http://fritzing.org/download/ Support: Arduino: http://www.arduino.cc,
More informationPalaparthi.Jagadeesh Chand. Associate Professor in ECE Department, Nimra Institute of Science & Technology, Vijayawada, A.P.
Patient Monitoring Using Embedded Palaparthi.Jagadeesh Chand Associate Professor in ECE Department, Nimra Institute of Science & Technology, Vijayawada, A.P Abstract The aim of this project is to inform
More informationApplication Note: AN00141 xcore-xa - Application Development
Application Note: AN00141 xcore-xa - Application Development This application note shows how to create a simple example which targets the XMOS xcore-xa device and demonstrates how to build and run this
More informationMSP-EXP430G2 LaunchPad Workshop
MSP-EXP430G2 LaunchPad Workshop Meet the LaunchPad Lab 1 : Blink LaunchPad LEDs By Adrian Fernandez Meet the LaunchPad MSP430 MCU Value Line LaunchPad only $4.30 A look inside the box Complete LaunchPad
More informationBluetooth + USB 16 Servo Controller [RKI-1005 & RKI-1205]
Bluetooth + USB 16 Servo Controller [RKI-1005 & RKI-1205] Users Manual Robokits India info@robokits.co.in http://www.robokitsworld.com Page 1 Bluetooth + USB 16 Servo Controller is used to control up to
More informationLecture 22: C Programming 4 Embedded Systems
Lecture 22: C Programming 4 Embedded Systems Today s Goals Basic C programming process Variables and constants in C Pointers to access addresses Using a High Level Language High-level languages More human
More informationSMARTCARD XPRO. Preface. SMART ARM-based Microcontrollers USER GUIDE
SMART ARM-based Microcontrollers SMARTCARD XPRO USER GUIDE Preface Atmel SMARTCARD Xplained Pro is an extension board to the Atmel Xplained Pro evaluation platform. Atmel SMARTCARD Xplained Pro is designed
More informationPrograming the Microprocessor in C Microprocessor System Design and Interfacing ECE 362
PURDUE UNIVERSITY Programing the Microprocessor in C Microprocessor System Design and Interfacing ECE 362 Course Staff 1/31/2012 1 Introduction This tutorial is made to help the student use C language
More informationModel 5511 Filler Controller User s Manual Version 1.1 October 2011
Thompson Scale Company WEIGHING SYSTEMS & PACKAGING MACHINERY CONTROLS 2758 Bingle Road Houston, Texas 77055 Phone: 713/932-9071 Fax: 713/932-9379 www.thompsonscale.com Model 5511 Filler Controller User
More informationChapter 12. Development Tools for Microcontroller Applications
Chapter 12 Development Tools for Microcontroller Applications Lesson 01 Software Development Process and Development Tools Step 1: Development Phases Analysis Design Implementation Phase 1 Phase 2 Phase
More informationFLYPORT Wi-Fi 802.11G
FLYPORT Wi-Fi 802.11G System on module 802.11g WIFI - Infrastructure mode - softap mode - Ad hoc mode Microchip PIC 24F 16 bit processor Microchip MRF24WG0MA/MB - Native WiFi 802.11g transceiver - PCB
More informationThe BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications
The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications Joshua Ellul jellul@imperial.ac.uk Overview Brief introduction to Body Sensor Networks BSN Hardware
More informationYour Multimeter. The Arduino Uno 10/1/2012. Using Your Arduino, Breadboard and Multimeter. EAS 199A Fall 2012. Work in teams of two!
Using Your Arduino, Breadboard and Multimeter Work in teams of two! EAS 199A Fall 2012 pincer clips good for working with breadboard wiring (push these onto probes) Your Multimeter probes leads Turn knob
More informationEXPERIMENT 2 TRAFFIC LIGHT CONTROL SYSTEM FOR AN INTERSECTION USING S7-300 PLC
YEDITEPE UNIVERSITY ENGINEERING & ARCHITECTURE FACULTY INDUSTRIAL ELECTRONICS LABORATORY EE 432 INDUSTRIAL ELECTRONICS EXPERIMENT 2 TRAFFIC LIGHT CONTROL SYSTEM FOR AN INTERSECTION USING S7-300 PLC Introduction:
More informationUsing the CoreSight ITM for debug and testing in RTX applications
Using the CoreSight ITM for debug and testing in RTX applications Outline This document outlines a basic scheme for detecting runtime errors during development of an RTX application and an approach to
More informationMicrocontroller-based experiments for a control systems course in electrical engineering technology
Microcontroller-based experiments for a control systems course in electrical engineering technology Albert Lozano-Nieto Penn State University, Wilkes-Barre Campus, Lehman, PA, USA E-mail: AXL17@psu.edu
More informationAN1229. Class B Safety Software Library for PIC MCUs and dspic DSCs OVERVIEW OF THE IEC 60730 STANDARD INTRODUCTION
Class B Safety Software Library for PIC MCUs and dspic DSCs AN1229 Authors: Veena Kudva & Adrian Aur Microchip Technology Inc. OVERVIEW OF THE IEC 60730 STANDARD INTRODUCTION This application note describes
More informationSimple Cooperative Scheduler for Arduino ARM & AVR. Aka «SCoop»
Simple Cooperative Scheduler for Arduino ARM & AVR Aka «SCoop» Introduction Yet another library This library aims to provide a light and simple environment for creating powerful multi-threaded programs
More informationIntro to Intel Galileo - IoT Apps GERARDO CARMONA
Intro to Intel Galileo - IoT Apps GERARDO CARMONA IRVING LLAMAS Welcome! Campus Party Guadalajara 2015 Introduction In this course we will focus on how to get started with the Intel Galileo Gen 2 development
More informationAVR151: Setup and Use of the SPI. Introduction. Features. Atmel AVR 8-bit Microcontroller APPLICATION NOTE
Atmel AVR 8-bit Microcontroller AVR151: Setup and Use of the SPI APPLICATION NOTE Introduction This application note describes how to set up and use the on-chip Serial Peripheral Interface (SPI) of the
More informationHello, and welcome to this presentation of the STM32L4 reset and clock controller.
Hello, and welcome to this presentation of the STM32L4 reset and clock controller. 1 The STM32L4 reset and clock controller manages system and peripheral clocks. STM32L4 devices embed three internal oscillators,
More informationZX-NUNCHUK (#8000339)
ZX-NUNCHUK documentation 1 ZX-NUNCHUK (#8000339) Wii-Nunchuk interface board 1. Features l Interface with Wii Nunchuk remote control directly. Modification the remote control is not required. l Two-wire
More informationHow to read this guide
How to read this guide The following shows the symbols used in this Quick start guide with descriptions and examples. Symbol Description Example P oint Reference Caution [ ] This symbol explains information
More informationWelcome 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 informationMODULE BOUSSOLE ÉLECTRONIQUE CMPS03 Référence : 0660-3
MODULE BOUSSOLE ÉLECTRONIQUE CMPS03 Référence : 0660-3 CMPS03 Magnetic Compass. Voltage : 5v only required Current : 20mA Typ. Resolution : 0.1 Degree Accuracy : 3-4 degrees approx. after calibration Output
More informationBuilding a Basic Communication Network using XBee DigiMesh. Keywords: XBee, Networking, Zigbee, Digimesh, Mesh, Python, Smart Home
Building a Basic Communication Network using XBee DigiMesh Jennifer Byford April 5, 2013 Keywords: XBee, Networking, Zigbee, Digimesh, Mesh, Python, Smart Home Abstract: Using Digi International s in-house
More informationEARTH PEOPLE TECHNOLOGY SERIAL GRAPH TOOL FOR THE ARDUINO UNO USER MANUAL
EARTH PEOPLE TECHNOLOGY SERIAL GRAPH TOOL FOR THE ARDUINO UNO USER MANUAL The Serial Graph Tool for the Arduino Uno provides a simple interface for graphing data to the PC from the Uno. It can graph up
More informationFlowKit in-circuit debug system
FlowKit in-circuit debug system www.matrixmultimedia.com HP299 Contents About this document 3 Board layout 3 General information 4 Detailed operation 4 Circuit diagram 7 2 Copyright About this document
More information#include <Gamer.h> Gamer gamer; void setup() { gamer.begin(); } void loop() {
#include Gamer gamer; void setup() { gamer.begin(); void loop() { Gamer Keywords Inputs Board Pin Out Library Instead of trying to find out which input is plugged into which pin, you can use
More informationLab 2.0 Thermal Camera Interface
Lab 2.0 Thermal Camera Interface Lab 1 - Camera directional-stand (recap) The goal of the lab 1 series was to use a PS2 joystick to control the movement of a pan-tilt module. To this end, you implemented
More informationA+ 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 informationTURBO PROGRAMMER USB, MMC, SIM DEVELOPMENT KIT
TURBO PROGRAMMER USB, MMC, SIM DEVELOPMENT KIT HARDWARE GUIDE This document is part of Turbo Programmer documentation. For Developer Documentation, Applications and Examples, see http:/// PRELIMINARY (C)
More informationFFT Frequency Detection on the dspic
FFT Frequency Detection on the dspic by Jac Kersing Nov 2012 Abstract In this article Jac explains how he solved a practical challenge using powerful dspic devices and Fast Fourier Transform algorithms.
More informationAVR Butterfly Training. Atmel Norway, AVR Applications Group
AVR Butterfly Training Atmel Norway, AVR Applications Group 1 Table of Contents INTRODUCTION...3 GETTING STARTED...4 REQUIRED SOFTWARE AND HARDWARE...4 SETTING UP THE HARDWARE...4 SETTING UP THE SOFTWARE...5
More informationApplication Note: AN00121 Using XMOS TCP/IP Library for UDP-based Networking
Application Note: AN00121 Using XMOS TCP/IP Library for UDP-based Networking This application note demonstrates the use of XMOS TCP/IP stack on an XMOS multicore micro controller to communicate on an ethernet-based
More information2011, The McGraw-Hill Companies, Inc. Chapter 5
Chapter 5 5.1 Processor Memory Organization The memory structure for a PLC processor consists of several areas, some of these having specific roles. With rack-based memory structures addresses are derived
More informationMicrocontrollers 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 informationRadio sensor powered by a mini solar cell the EnOcean STM 110 now functions with even less light
Radio sensor powered by a mini solar cell the EnOcean STM 110 now functions with even less light In this issue, we would like to present the EnOcean radio sensor module STM 110 in more detail. The module
More information