Generating PWM on LPCXpresso - LPC1769
|
|
- Marian Holmes
- 5 years ago
- Views:
Transcription
1 2012 Generating PWM on LPCXpresso - LPC1769 Author: Manoj
2 PWM Pulse Width Modulation, or PWM, is a well known technique used in power controlling delivering the preferred amount of power to the load. It outputs the analog results with digital means. Digital control is used to create a square wave, a signal switched between on and off. This onoff pattern can simulate voltages in between full on (3.3 Volts) and off (0 Volts) by changing the portion of the time the signal spends on versus the time that the signal spends off. The duration of "on time" is called the pulse width. The longer the ON period compared to the OFF period, the higher the power supplied to the load is. To get varying analog values, you change, or modulate, that pulse width. If you repeat this onoff pattern fast enough with an LED for example, the result is as if the signal is a steady voltage between 0 and 3.3v controlling the brightness of the LED. RGB LED RGB led is nothing but three primary color LEDs namely Red, Green, Blue are cascaded in a single package. This LED's are widely used to obtain the desired colors by the additive mixing of these colors. Figure: RGB LED Figure: RGB LED pin out The RGB LEDs are available either in common anode or common cathode mode If these three LEDs share the same positive (anode) terminal, which means that this RGB LED has a "common anode" connection. To control each color, simply connect its cathode pin to ground (through a resistor as a current limiter), and it will light up. 1
3 Demo: Controlling the Brightness of the RGB LED with PWM outputs from the controller For this demo, we are connecting a tri-color RGB LED to the microcontroller with PWM ("virtual analog") outputs to control the brightness of each color, the PWM values are continuously varied using simple looping statements within the coding hence you can see the different colors at the output. Figure: Schematic Code: /* ============================================================================ Name : main.c Author : Vinayak R Version : 1.0 Copyright : Copyright (C) Description : main definition ============================================================================ */ #ifdef USE_CMSIS #include "LPC17xx.h" #endif #include <cr_section_macros.h> #include <NXP/crp.h> // Variable to store CRP value in. Will be placed automatically // by the linker when "Enable Code Read Protect" selected. // See crp.h header for more information CRP const unsigned int CRP_WORD = CRP_NO_CRP ; // TODO: insert other include files here // TODO: insert other definitions and declarations here // Control whether debug printf are displayed via semihosting to the // debugger console window #define SEMIHOSTING_CONSOLE TRUE 2
4 #ifdef SEMIHOSTING_CONSOLE #include <stdio.h> #define DBG printf #else #define DBG(x...) #endif #define PCPWM1 (1 << 6) #define PCLK_PWM1_BY8 ((1 << 13) (1 << 12)) #define PCLK_PWM1_BY4 ~(PCLK_PWM1_BY8) #define PCLK_PWM1 ((0 << 13) (1 << 12)) #define PCLK_PWM1_BY2 ((1 << 13) (0 << 12)) #define LER0_EN 1 << 0 #define LER1_EN 1 << 1 #define LER2_EN 1 << 2 #define LER3_EN 1 << 3 #define LER4_EN 1 << 4 #define LER5_EN 1 << 5 #define LER6_EN 1 << 6 #define PWMENA1 1 << 9 #define PWMENA2 1 << 10 #define PWMENA3 1 << 11 #define PWMENA4 1 << 12 #define PWMENA5 1 << 13 #define PWMENA6 1 << 14 #define TCR_CNT_EN 0x #define TCR_RESET 0x #define TCR_PWM_EN 0x #define INITPWMVAL 0 #define ENDPWMVAL #define STEP 400 // Function Declaration void InitPWM(); void SetPWM(int,char); void delay(int); int main(void) int i, j, k; int iter = 0; // TODO: insert code here InitPWM(); for(i = INITPWMVAL;i <= ENDPWMVAL; i += STEP) for(j = INITPWMVAL;j <= ENDPWMVAL; j += STEP) for(k = INITPWMVAL;k <= ENDPWMVAL; k += STEP) SetPWM(i,'R'); SetPWM(j,'G'); SetPWM(k,'B'); delay(5); DBG("PWM value i = %d, j = %d, k = %d\n", i, j, k); for(k = ENDPWMVAL ;k >= INITPWMVAL ; k -= STEP) SetPWM(i,'R'); 3
5 return 0 ; SetPWM(j,'G'); SetPWM(k,'B'); delay(5); DBG("PWM value i = %d, j = %d, k = %d\n", i, j, k); void InitPWM() //enable PWM1 Power LPC_SC ->PCON = PCPWM1; //PWM peripheral clk = PCLK LPC_SC ->PCLKSEL0 &= (PCLK_PWM1_BY4); //Put P0.26 in Hi-Z so it can be shorted to PWM1.2 (P2.2) // LPC_PINCON->PINMODE1 &= ~(0x3<<20); // LPC_PINCON->PINMODE1 = 0x2<<20; // LPC_GPIO0->FIODIR &= ~(1<<26); //Pin select LPC_PINCON->PINSEL4 = (0x1<<0) (0x1<<2) (0x1<<4); // count frequency:fpclk LPC_PWM1->PR = 0x00; //reset on MR0 LPC_PWM1->MCR = 1 << 1; // set PWM cycle LPC_PWM1->MR0 = ENDPWMVAL; //LEDs default to OFF LPC_PWM1->MR1 = 0; LPC_PWM1->MR2 = 0; LPC_PWM1->MR3 = 0; //Load Shadow register content LPC_PWM1->LER = LER0_EN LER1_EN LER2_EN LER3_EN; //Enable PWM outputs LPC_PWM1->PCR = PWMENA1 PWMENA2 PWMENA3 PWMENA4; //Enable PWM Timer LPC_PWM1->TCR = TCR_CNT_EN TCR_PWM_EN; void SetPWM(int PWMval, char rgb) if(rgb == 'R') LPC_PWM1->MR1 = PWMval; else if(rgb == 'G') LPC_PWM1->MR2 = PWMval; else if(rgb == 'B') LPC_PWM1->MR3 = PWMval; 4
6 LPC_PWM1->LER = LER0_EN LER1_EN LER2_EN LER3_EN; void delay(int val) int j,i; for(j = 0; j < val; j++) for(i = 0 ; i < 10000; i++); Demo Application: RGB LED is connected to the LPCXpresso LPC1769 board The RGB LED is put into the casing ball for the clear visibility in the color variations. 5
7 The color variations; the color is continuously changing 6
8 7
9 8
analogwrite(); The analogwrite function writes an analog value (PWM wave) to a PWM-enabled pin.
analogwrite(); The analogwrite function writes an analog value (PWM wave) to a PWM-enabled pin. Syntax analogwrite(pin, value); For example: analogwrite(2, 255); or analogwrite(13, 0); Note: Capitalization
More informationInternational Journal of Advance Research in Engineering, Science & Technology
Impact Factor (SJIF): 5.301 International Journal of Advance Research in Engineering, Science & Technology e-issn: 2393-9877, p-issn: 2394-2444 Volume 5, Issue 9, September-2018 Development of RGB LED
More informationFUNCTIONS For controlling the Arduino board and performing computations.
d i g i t a l R e a d ( ) [Digital I/O] Reads the value from a specified digital pin, either HIGH or LOW. digitalread(pin) pin: the number of the digital pin you want to read HIGH or LOW Sets pin 13 to
More informationLab 01 Arduino 程式設計實驗. Essential Arduino Programming and Digital Signal Process
Lab 01 Arduino 程式設計實驗 Essential Arduino Programming and Digital Signal Process Arduino Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's
More informationTaking the LPC800 into the delta quadrant :)
Taking the LPC800 into the delta quadrant :) Background One of our boys received a Revell model of the starship Voyager (from Star Trek) as a gift. It sat on his shelf for a least a year crying out for
More informationIntroduction to uvision and ARM Cortex M3
Introduction to uvision and ARM Cortex M3 COE718: Embedded System Design Lab 1 1. Objectives The purpose of this lab is to introduce students to the Keil uvision IDE, the ARM Cortex M3 architecture, and
More informationARM HOW-TO GUIDE Interfacing Switch with LPC2148 ARM
ARM HOW-TO GUIDE Interfacing Switch with LPC48 ARM Contents at a Glance ARM7 LPC48 Primer Board... 3 Switch... 3 Interfacing Switch... 4 Interfacing Switch with LPC48... 5 Pin Assignment with LPC48...
More informationExperiment 3. Interrupts. Hazem Selmi, Ahmad Khayyat
Experiment 3 Interrupts Hazem Selmi, Ahmad Khayyat Version 162, 24 February 2017 Table of Contents 1. Objectives........................................................................................
More informationC:\Users\jacob\Documents\MtSAC\ELEC74 Mt SAC - chipkit\homework Sheets.docx
ELEC 74 Worksheet 1 Logic Gate Review 1. Draw the truth table and schematic symbol for: a. An AND gate b. An OR gate c. An XOR gate d. A NOT gate ELEC74 Worksheet 2 (Number Systems) 1. Convert the following
More informationBASIC ARDUINO WORKSHOP. Mr. Aldwin and Mr. Bernardo
BASIC ARDUINO WORKSHOP Mr. Aldwin and Mr. Bernardo 1 BASIC ARDUINO WORKSHOP Course Goals Introduce Arduino Hardware and Understand Input Software and Output Create simple project 2 Arduino Open-source
More informationExperiment 1. Development Platform. Ahmad Khayyat, Hazem Selmi, Saleh AlSaleh
Experiment 1 Development Platform Ahmad Khayyat, Hazem Selmi, Saleh AlSaleh Version 162, 13 February 2017 Table of Contents 1. Objectives........................................................................................
More informationMore Fun with Timer Interrupts
More Fun with Timer Interrupts Chords Objective: Play a musical chord each time you press a button: Button RC0 RC1 RC2 Timer Timer0 Timer1 Timer3 RB0 A3 C4 E4 RB1 B3 D4 F4 RB2 C4 E4 G4 Calculations: Assume
More informationF²MC-8FX FAMILY MB95200H/210H SERIES HOW TO USE DBG PIN 8-BIT MICROCONTROLLER APPLICATION NOTE
Fujitsu Microelectronics (Shanghai) Co., Ltd. Application Note MCU-AN-500009-E-10 F²MC-8FX FAMILY 8-BIT MICROCONTROLLER MB95200H/210H SERIES HOW TO USE DBG PIN APPLICATION NOTE Revision History Revision
More informationTANGIBLE MEDIA & PHYSICAL COMPUTING INTRODUCTION TO ARDUINO
TANGIBLE MEDIA & PHYSICAL COMPUTING INTRODUCTION TO ARDUINO AGENDA ARDUINO HARDWARE THE IDE & SETUP BASIC PROGRAMMING CONCEPTS DEBUGGING & HELLO WORLD INPUTS AND OUTPUTS DEMOS ARDUINO HISTORY IN 2003 HERNANDO
More information6 GPIO 84. Date: 29/09/2016 Name: ID: This laboratory session discusses about writing program to interact with GPIO of Reapberry Pi.
6 GPIO 84 Date: 29/09/2016 Name: ID: Name: ID: 6 GPIO This laboratory session discusses about writing program to interact with GPIO of Reapberry Pi. GPIO programming with Assembly Code:block installation
More informationGrove - Buzzer. Introduction. Features
Grove - Buzzer Introduction The Grove - Buzzer module has a piezo buzzer as the main component. The piezo can be connected to digital outputs, and will emit a tone when the output is HIGH. Alternatively,
More informationLecture 2: C Programming Basic
ECE342 Introduction to Embedded Systems Lecture 2: C Programming Basic Ying Tang Electrical and Computer Engineering Rowan University 1 Facts about C C was developed in 1972 in order to write the UNIX
More informationSystems Programming. Lecture 4 Z16 Architecture and Programming
Systems Programming www.atomicrhubarb.com/systems Lecture 4 Z16 Architecture and Programming Section Topic Where in the books Zilog Zilog Zilog Zilog UM197 (ZNEO Z16F Series Flash Microcontroller Contest
More informationEECS 373 Midterm 2 Fall 2018
EECS 373 Midterm 2 Fall 2018 Name: unique name: Sign the honor code: I have neither given nor received aid on this exam nor observed anyone else doing so. Nor did I discuss this exam with anyone after
More informationCOEN-4720 Embedded Systems Design Lecture 4 Interrupts (Part 1) Cristinel Ababei Dept. of Electrical and Computer Engineering Marquette University
COEN-4720 Embedded Systems Design Lecture 4 Interrupts (Part 1) Cristinel Ababei Dept. of Electrical and Computer Engineering Marquette University Outline Introduction NVIC and Interrupt Control Interrupt
More informationProcedure: Determine the polarity of the LED. Use the following image to help:
Section 2: Lab Activity Section 2.1 Getting started: LED Blink Purpose: To understand how to upload a program to the Arduino and to understand the function of each line of code in a simple program. This
More informationMCU: Interrupts and Timers. Ganesh Pitchiah
MCU: Interrupts and Timers Ganesh Pitchiah What s an MCU? Frequency = 8 MHz Time Period = 1/f = 0.125 us Code for Switching LED int a; voltage while(1) { a = PINA.0; input) If (a==1) PORTA.1=1; else PORTA.1=0;
More informationAdapted from a lab originally written by Simon Hastings and Bill Ashmanskas
Physics 364 Arduino Lab 1 Adapted from a lab originally written by Simon Hastings and Bill Ashmanskas Vithayathil/Kroll Introduction Last revised: 2014-11-12 This lab introduces you to an electronic development
More informationThe Three Attributes of an Identifier
The Three Attributes of an Identifier Identifiers have three essential attributes: storage duration scope linkage Identifier Attributes 1 Storage Duration storage duration Identifier Attributes 2 determines
More informationF²MC-8FX FAMILY MB95200H/210H SERIES HOW TO USE DBG PIN 8-BIT MICROCONTROLLER APPLICATION NOTE
Fujitsu Microelectronics (Shanghai) Co., Ltd Application Note MCU-AN-500009-E-10 F²MC-8FX FAMILY 8-BIT MICROCONTROLLER MB95200H/210H SERIES HOW TO USE DBG PIN APPLICATION NOTE Revision History Revision
More informationDecision Making and Loops
Decision Making and Loops Goals of this section Continue looking at decision structures - switch control structures -if-else-if control structures Introduce looping -while loop -do-while loop -simple for
More informationMicrocontroller Introduction
Microcontroller Introduction Embedded Systems 2-1 Data Formats for the Renesas Microcontroller Byte Word 8 bits signed & unsigned unsigned range 0 to 255 unsigned char a; 16 bits signed & unsigned unsigned
More information// file2.c. // file1.c #include <stdio.h> int A1 = 42; // 1.1 static int B1; // 1.2. int A2 = 12; // 2.1 int B2; // 2.2. extern int A2; // 1.
Instructions: This homework assignment focuses primarily on issues arising when compiling and linking C programs that consist of multiple source files. The answers to the following questions can be determined
More informationSX1509 I/O Expander Breakout Hookup Guide
Page 1 of 16 SX1509 I/O Expander Breakout Hookup Guide Introduction Is your Arduino running low on GPIO? Looking to control the brightness of 16 LEDs individually? Maybe blink or breathe a few autonomously?
More informationDEV-1 HamStack Development Board
Sierra Radio Systems DEV-1 HamStack Development Board Reference Manual Version 1.0 Contents Introduction Hardware Compiler overview Program structure Code examples Sample projects For more information,
More informationI Introduction to Real-time Applications By Prawat Nagvajara
Electrical and Computer Engineering I Introduction to Real-time Applications By Prawat Nagvajara Synopsis This note is an introduction to a series of nine design exercises on design, implementation and
More informationCS240: Programming in C
CS240: Programming in C Lecture 5: Functions. Scope of variables. Program structure. Cristina Nita-Rotaru Lecture 5/ Fall 2013 1 Functions: Explicit declaration Declaration, definition, use, order matters.
More informationIntroduction To Arduino
Introduction To Arduino What is Arduino? Hardware Boards / microcontrollers Shields Software Arduino IDE Simplified C Community Tutorials Forums Sample projects Arduino Uno Power: 5v (7-12v input) Digital
More informationARM HOW-TO GUIDE Interfacing I2C-7SEG with LPC2148 ARM
ARM HOW-TO GUIDE Interfacing I2C-7SEG with LPC2148 ARM Contents at a Glance ARM7 LPC2148 Primer Board... 3 I2C (Inter Integrated Circuit)... 3 Seven Segment Display... 4 Interfacing I2C - Seven Segment
More informationMICROPROCESSORS A (17.383) Fall Lecture Outline
MICROPROCESSORS A (17.383) Fall 2010 Lecture Outline Class # 04 September 28, 2010 Dohn Bowden 1 Today s Lecture Syllabus review Microcontroller Hardware and/or Interface Programming/Software Lab Homework
More informationPhotoresistor, Transistor, and LED s
PH-1 Photoresistor, Transistor, and LD s Purpose: To introduce photoresistors, LD s, FT s, and transistors used as power switching devices To become familiar with the capability of the Atmega 128 to measure
More informationARM HOW-TO GUIDE Interfacing Stepper Motor with LPC2148
ARM HOW-TO GUIDE Interfacing Stepper Motor with LPC2148 Contents at a Glance ARM7 LPC2148 Slicker Board... 3 Stepper Motor... 3 Interfacing Stepper Motor... 4 Interfacing Stepper Motor with LPC2148...
More informationAMCAT Automata Coding Sample Questions And Answers
1) Find the syntax error in the below code without modifying the logic. #include int main() float x = 1.1; switch (x) case 1: printf( Choice is 1 ); default: printf( Invalid choice ); return
More informationWALT: definition and decomposition of complex problems in terms of functional and non-functional requirements
Item 1: The Clock is Ticking Monday, 15 October 2018 12:19 PM EXPLORE WALT: definition and decomposition of complex problems in terms of functional and non-functional requirements - Defined how each component
More informationKeyboards. The PS/2 Protocol
Keyboards The PS/2 Protocol Debugging Always start from a known working state; stop in a working state. If it breaks, what changed? Take a simple small step, check it carefully, then take another small
More informationCompiler Theory. (GCC the GNU Compiler Collection) Sandro Spina 2009
Compiler Theory (GCC the GNU Compiler Collection) Sandro Spina 2009 GCC Probably the most used compiler. Not only a native compiler but it can also cross-compile any program, producing executables for
More informationARM HOW-TO GUIDE Interfacing Buzzer with LPC2148 ARM
ARM HOW-TO GUIDE Interfacing Buzzer with LPC2148 ARM Contents at a Glance ARM7 LPC2148 Primer Board... 3 Buzzer... 3 Interfacing Buzzer... 4 Interfacing Buzzer with LPC2148... 5 Pin Assignment with LPC2148...
More informationISL RGB Sensor Tutorial By: Sabrina Jones
ISL 25129 RGB Sensor Tutorial By: Sabrina Jones Overview The ISL29125 RGB sensor is a breakout board made to record the light intensity of the general red, green, and blue spectrums of visible light, that
More informationMore Arduino Programming
Introductory Medical Device Prototyping Arduino Part 2, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota More Arduino Programming Digital I/O (Read/Write) Analog
More informationArduino Part 2. Introductory Medical Device Prototyping
Introductory Medical Device Prototyping Arduino Part 2, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota More Arduino Programming Digital I/O (Read/Write) Analog
More information#include <stdio.h> int main() { char s[] = Hsjodi, *p; for (p = s + 5; p >= s; p--) --*p; puts(s); return 0;
1. Short answer questions: (a) Compare the typical contents of a module s header file to the contents of a module s implementation file. Which of these files defines the interface between a module and
More informationMICROPROCESSORS A (17.383) Fall Lecture Outline
MICROPROCESSORS A (17.383) Fall 2010 Lecture Outline Class # 03 September 21, 2010 Dohn Bowden 1 Today s Lecture Syllabus review Microcontroller Hardware and/or Interface Programming/Software Lab Homework
More informationC:\Users\Jacob Christ\Documents\MtSAC\ELEC74 Mt SAC - chipkit\homework Sheets.docx
ELEC 74 Worksheet 1 Logic Gate Review 1. Draw the truth table and schematic symbol for: a. An AND gate b. An OR gate c. An XOR gate d. A NOT gate ELEC74 Worksheet 2 (Number Systems) 1. Convert the following
More informationArduino Uno Microcontroller Overview
Innovation Fellows Program Arduino Uno Microcontroller Overview, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota Arduino Uno Power & Interface Reset Button USB
More informationNote. The above image and many others are courtesy of - this is a wonderful resource for designing circuits.
Robotics and Electronics Unit 2. Arduino Objectives. Students will understand the basic characteristics of an Arduino Uno microcontroller. understand the basic structure of an Arduino program. know how
More informationARM HOW-TO GUIDE Interfacing 7SEG with LPC2148 ARM
ARM HOW-TO GUIDE Interfacing 7SEG with LPC2148 ARM Contents at a Glance ARM7 LPC2148 Slicker Board... 3 Seven Segment Display... 3 Interfacing Seven Segment Display... 4 Interfacing Seven Segment with
More informationArduino Prof. Dr. Magdy M. Abdelhameed
Course Code: MDP 454, Course Name:, Second Semester 2014 Arduino What is Arduino? Microcontroller Platform Okay but what s a Microcontroller? Tiny, self-contained computers in an IC Often contain peripherals
More informationModifiers. int foo(int x) { static int y=0; /* value of y is saved */ y = x + y + 7; /* across invocations of foo */ return y; }
Modifiers unsigned. For example unsigned int would have a range of [0..2 32 1] on a 32-bit int machine. const Constant or read-only. Same as final in Java. static Similar to static in Java but not the
More informationLPC4088 Timer Interrupts CM0506 Small Embedded Systems
LPC4088 Timer Interrupts CM0506 Small Embedded Systems Dr Alun Moon Seminar 5 Here the module begins to separate from EN0572. The programming structure will make extensive use of interrupts to handle events,
More informationIntroduction. How to obtain the Board. About the Board. Contact Preet
SJOne Board Introduction Getting Started Basic IO Serial Communication Libraries Internal Component Libraries External Components Debugging a crash FreeRTOS Services Command Line Interface Adding Additional
More informationCOMsW Introduction to Computer Programming in C
OMsW 1003-1 Introduction to omputer Programming in Lecture 9 Spring 2011 Instructor: Michele Merler http://www1.cs.columbia.edu/~mmerler/comsw1003-1.html 1 Are omputers Smarter than Humans? Link http://latimesblogs.latimes.com/technology/2011/02/ibms-watson-on-jeopardy-computer-takes-big-leadover-humans-in-round-2.html
More informationAN-8205 AMC Library Hall Interface Summary AMC Introduction
www.fairchildsemi.com AMC Library Hall Interface Summary The FCM8531 is an application-specific parallel-core processor for motor control that consists of an Advanced Motor Controller (AMC) processor and
More informationRobotics/Electronics Review for the Final Exam
Robotics/Electronics Review for the Final Exam Unit 1 Review. 1. The battery is 12V, R1 is 400 ohms, and the current through R1 is 20 ma. How many ohms is R2? ohms What is the voltage drop across R1? V
More informationA Fast Review of C Essentials Part I
A Fast Review of C Essentials Part I Structural Programming by Z. Cihan TAYSI Outline Program development C Essentials Functions Variables & constants Names Formatting Comments Preprocessor Data types
More informationIntroduction to Microcontrollers Using Arduino. PhilRobotics
Introduction to Microcontrollers Using Arduino PhilRobotics Objectives Know what is a microcontroller Learn the capabilities of a microcontroller Understand how microcontroller execute instructions Objectives
More informationScope. Scope. Region of a program in which a defined object is visible. Defined Objects. Two types of regions. Variables Functions
Scope & Repetition Scope Scope Region of a program in which a defined object is visible Defined Objects Variables Functions Two types of regions Blocks Not in a block 2 tj Scope Program Prototype Blocks
More informationStenBOT Robot Kit. Stensat Group LLC, Copyright 2018
StenBOT Robot Kit 1 Stensat Group LLC, Copyright 2018 Legal Stuff Stensat Group LLC assumes no responsibility and/or liability for the use of the kit and documentation. There is a 90 day warranty for the
More informationUniversity of Texas at El Paso Electrical and Computer Engineering Department. EE 3176 Laboratory for Microprocessors I.
University of Texas at El Paso Electrical and Computer Engineering Department EE 3176 Laboratory for Microprocessors I Fall 2016 LAB 04 Timer Interrupts Goals: Learn about Timer Interrupts. Learn how to
More informationThe Arduino Briefing. The Arduino Briefing
Mr. Yee Choon Seng Email : csyee@simtech.a-star.edu.sg Design Project resources http://guppy.mpe.nus.edu.sg/me3design.html One-Stop robotics shop A-Main Objectives Pte Ltd, Block 1 Rochor Road, #02-608,
More informationGoal: We want to build an autonomous vehicle (robot)
Goal: We want to build an autonomous vehicle (robot) This means it will have to think for itself, its going to need a brain Our robot s brain will be a tiny computer called a microcontroller Specifically
More informationDT-ROBOT Line Follower
DT-ROBOT Line Follower Trademarks & Copyright AT, IBM, and PC are trademarks of International Business Machines Corp. Pentium is a registered trademark of Intel Corporation. Windows is a registered trademark
More informationFunctions. Cedric Saule
Cedric Saule cedric.saule@uni-bielefeld.de or procedures? In algorithmic (and some programming languages), we use two kinds of unconditional branchings : Procedures : execute computations and do not return
More informationPrograms. Function main. C Refresher. CSCI 4061 Introduction to Operating Systems
Programs CSCI 4061 Introduction to Operating Systems C Program Structure Libraries and header files Compiling and building programs Executing and debugging Instructor: Abhishek Chandra Assume familiarity
More informationDigital Pins and Constants
Lesson Lesson : Digital Pins and Constants Digital Pins and Constants The Big Idea: This lesson is the first step toward learning to connect the Arduino to its surrounding world. You will connect lights
More informationDigital Design through. Arduino
Digital Design through 1 Arduino G V V Sharma Contents 1 Display Control through Hardware 2 1.1 Powering the Display.................................. 2 1.2 Controlling the Display.................................
More informationBLM2031 Structured Programming. Zeyneb KURT
BLM2031 Structured Programming Zeyneb KURT 1 Contact Contact info office : D-219 e-mail zeynebkurt@gmail.com, zeyneb@ce.yildiz.edu.tr When to contact e-mail first, take an appointment What to expect help
More informationBasic C Programming (2) Bin Li Assistant Professor Dept. of Electrical, Computer and Biomedical Engineering University of Rhode Island
Basic C Programming (2) Bin Li Assistant Professor Dept. of Electrical, Computer and Biomedical Engineering University of Rhode Island Data Types Basic Types Enumerated types The type void Derived types
More informationC Programming Language
C Programming Language Arrays & Pointers I Dr. Manar Mohaisen Office: F208 Email: manar.subhi@kut.ac.kr Department of EECE Review of Precedent Class Explain How to Create Simple Functions Department of
More informationSILICA TUSA Silica Tusa Board
Silica Tusa Board Quick Start Guide 1 Contents 1 General Description... 3 2 Development Environments... 4 2.1 LPCXpresso... 4 2.1.1 Requirements... 4 2.1.2 Software Installation... 4 2.1.3 Hardware Installation...
More informationMicrocontrollers and Interfacing week 8 exercises
2 HARDWARE DEBOUNCING Microcontrollers and Interfacing week 8 exercises 1 More digital input When using a switch for digital input we always need a pull-up resistor. For convenience, the microcontroller
More informationARM HOW-TO GUIDE Interfacing GPS with LPC2148 ARM
ARM HOW-TO GUIDE Interfacing GPS with LPC2148 ARM Contents at a Glance ARM7 LPC2148 Primer Board... 3 GPS (Global Positioning Systems)... 3 Interfacing GPS... 4 Interfacing GPS with LPC2148... 5 Pin Assignment
More informationK191 3 Channel RGB LED Controller
K191 3 Channel RGB LED Controller 1 Introduction. This kit has been designed to function as a versatile LED control module. The LED controller provides 3 high current channels to create light effects for
More informationEC 413 Computer Organization
EC 413 Computer Organization C/C++ Language Review Prof. Michel A. Kinsy Programming Languages There are many programming languages available: Pascal, C, C++, Java, Ada, Perl and Python All of these languages
More informationException Namespaces C Interoperability Templates. More C++ David Chisnall. March 17, 2011
More C++ David Chisnall March 17, 2011 Exceptions A more fashionable goto Provides a second way of sending an error condition up the stack until it can be handled Lets intervening stack frames ignore errors
More informationArduino and Matlab for prototyping and manufacturing
Arduino and Matlab for prototyping and manufacturing Enrique Chacón Tanarro 11th - 15th December 2017 UBORA First Design School - Nairobi Enrique Chacón Tanarro e.chacon@upm.es Index 1. Arduino 2. Arduino
More information(Embedded) Systems Programming Overview
System Programming Issues EE 357 Unit 10a (Embedded) Systems Programming Overview Embedded systems programming g have different design requirements than general purpose computers like PC s I/O Electro-mechanical
More informationPart 1: Introduction to the C Language
Part 1: Introduction to the C Language 1 Dennis Ritchie originally developed C at Bell Labs to write the UNIX operating system, 1974. C was designed to provide low level access to the hardware, which an
More informationIntroduction To Embedded Systems Development
Introduction To Embedded Systems Development Rohit Ramesh Contents 1 Introduction 3 1.1 Resources............................................... 3 2 GPIO 4 2.1 Prequisites..............................................
More informationSymbols, Compilation Units, and Pre-Processing
Symbols, Compilation Units, and Pre-Processing Antonio Carzaniga Faculty of Informatics University of Lugano December 21, 2006 Outline Compilation process Symbols: compilation units and linking The C pre-processor
More informationPACKAGE CONTENTES...1 SYSTEM REQUIREMENT...1 DEVELOPMENT BOARD DETAILS...1. MCU Interface Sockets...2. LCD interface header...6
TABLE OF CONTENTS PACKAGE CONTENTES...1 SYSTEM REQUIREMENT...1 DEVELOPMENT BOARD DETAILS...1 MCU Interface Sockets...2 LCD interface header...6 Dip switch setting...8 Jumper setting...8 AUXCLK Input...10
More informationC introduction: part 1
What is C? C is a compiled language that gives the programmer maximum control and efficiency 1. 1 https://computer.howstuffworks.com/c1.htm 2 / 26 3 / 26 Outline Basic file structure Main function Compilation
More informationAN2618 Application note
Application note etpu host interface Introduction The etpu is the new generation of Time Processing Unit (TPU). Besides the hardware enhancement, significant improvements have been made to the accompanying
More informationCOP 3223 Introduction to Programming with C - Study Union - Fall 2017
COP 3223 Introduction to Programming with C - Study Union - Fall 2017 Chris Marsh and Matthew Villegas Contents 1 Code Tracing 2 2 Pass by Value Functions 4 3 Statically Allocated Arrays 5 3.1 One Dimensional.................................
More informationECGR 4101/5101, Fall 2016: Lab 1 First Embedded Systems Project Learning Objectives:
ECGR 4101/5101, Fall 2016: Lab 1 First Embedded Systems Project Learning Objectives: This lab will introduce basic embedded systems programming concepts by familiarizing the user with an embedded programming
More informationOPERATIONAL AMPLIFIER
Fujitsu Semiconductor (Shanghai) Co., Ltd. Application Note MCU-AN-500080-E-10 F²MC-8FX FAMILY 8-BIT MICROCONTROLLER MB95F430 SERIES OPERATIONAL AMPLIFIER APPLICATION NOTE Revision History Revision History
More informationPage 1. Agenda. Programming Languages. C Compilation Process
EE 472 Embedded Systems Dr. Shwetak Patel Assistant Professor Computer Science & Engineering Electrical Engineering Agenda Announcements C programming intro + pointers Shwetak N. Patel - EE 472 2 Programming
More informationInterrupts, timers and counters
Interrupts, timers and counters Posted on May 10, 2008, by Ibrahim KAMAL, in Micro-controllers, tagged Most microcontrollers come with a set of ADD-ONs called peripherals, to enhance the functioning of
More informationOPERATIONAL AMPLIFIER
Fujitsu Semiconductor (Shanghai) Co., Ltd. Application Note MCU-AN-500080-E-10 F²MC-8FX FAMILY 8-BIT MICROCONTROLLER MB95F430 SERIES OPERATIONAL AMPLIFIER APPLICATION NOTE Revision History Revision History
More informationAdvanced Debugging I. Equipment Required. Preliminary Discussion. Basic System Bring-up. Hardware Bring-up, Section Plan
Advanced Debugging I Hardware Bring-up, Section Plan Equipment Required 192 car Logic analyzer with mini probes, cable PC scope with probes, M-F breadboard wire, USB cable Voltmeter Laptop with mouse,
More informationVariation of Pointers
Variation of Pointers A pointer is a variable whose value is the address of another variable, i.e., direct address of the memory location. Like any variable or constant, you must declare a pointer before
More informationAN OVERVIEW OF C, PART 3. CSE 130: Introduction to Programming in C Stony Brook University
AN OVERVIEW OF C, PART 3 CSE 130: Introduction to Programming in C Stony Brook University FANCIER OUTPUT FORMATTING Recall that you can insert a text field width value into a printf() format specifier:
More informationChapter 7 Functions. Now consider a more advanced example:
Chapter 7 Functions 7.1 Chapter Overview Functions are logical groupings of code, a series of steps, that are given a name. Functions are especially useful when these series of steps will need to be done
More information8:1 Serial Port Expander
8:1 Serial Port Expander V 1.3 This is an evolving document check back for updates. Features Expand a single UART (RX / TX) serial port into 8 additional serial ports On-board LEDs indicate which channel
More informationFigure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick
TOOLSTICK C8051F931 DAUGHTER CARD USER S GUIDE 1. Handling Recommendations To enable development, the ToolStick Base Adapter and daughter cards are distributed without any protective plastics. To prevent
More informationDAVE 3 Hands on / Quick Start Tutorial. Presentation Tutorial Start 1 v1.1: Creating a simple Project using PWM and Count Apps
DAVE Hands on / Quick Start Tutorial Presentation Tutorial Start v.: Creating a simple Project using PWM and Count Apps Project Changing the brightness of an LED with the PWM App PWMSP00 Interrupt on timer
More information