Microcontroller Overview

Size: px
Start display at page:

Download "Microcontroller Overview"

Transcription

1 Microcontroller Overview Microprocessors/Microcontrollers/DSP Microcontroller components Bus Memory CPU Peripherals Programming

2 Microcontrollers vs. µproc. and DSP Microprocessors High-speed information processing High-speed standard digital I/O and communication Large memory space Flexible architecture (e.g. DMA, PIC, IDE, etc.) Microcontrollers General purpose parallel and serial I/O Special functions (ADC, timers, drivers) High-speed flexible interrupts Small amount of RAM, ROM Low power Cheap! DSP - Digital signal processors Fast recursive signal processing Fast multiply and accumulate Some include floating point Usually this is a single-chip solution!

3 Typical Bus-Oriented Microcomputer The real world Microcontroller Functions Microprocessor Functions Peripheral Devices CPU Memory Input/Output

4 Embedded Controllers Power supply Signal conditioners Sensors Single board computer Power drivers Actuators Other computers/ devices User interface Choice of microprocessor or microcontroller Driven by cost, power, reliability in application Size becoming less of a factor in choice

5 State Machines Useful abstraction for systems with discrete states States are engaged based on events sensed in the world To set up a state machine: Define the events Define the states Determine order of transition between states Set the initial state of the state machine Example: let us consider a wristwatch MODE SET TICK event

6 State Machine: Wristwatch timekeeping SET setting Show_time hour minute MODE MODE Show_date SET MODE month SET MODE day SET MODE MODE SET Tick_event

7 State Machines: Logic Control Fill sensor Dispenser controller Dispenser on Embedded Computer Motor Rotation sensor Init Bottle sensor bottle_sensed (includes I/O interface circuits) Rotate (dispenser_off, motor_rotate) Fill (motor_stop, dispenser_on) dispensing bottle_full End Error (Alarm) rotating

8 State Machine Programming Example enum State {Rotate, Fill, Error}; enum Event {bottle_sensed, bottle_full, dispensing, rotating}; void motor_stop(); void motor_rotate(); void dispenser_on(); void dispenser_off(); void Alarm(); Static State s = Rotate;... void Transition(Event e) { switch(s) { case Rotate: switch(e) { case bottle_sensed: s = Fill; motor_stop(); dispenser_on(); break; case dispensing: s = Error; Alarm(); break; } break; case Fill: switch(e) { case bottle_full: s = Rotate; dispenser_off(); motor_rotate(); break; case rotating: s = Error; Alarm(); break; } break; case Error: sleep(); break; } }

9 PIC 16F877 Features PIC16F877 microcontroller Up to 20 MHz operation 8k x 14 words FLASH program memory 368 bytes internal SRAM, 256 bytes data EEPROM 33 TTL digital I/O lines total 10-bit multiplexed analog input module (8 channels) 2 Capture/Compare/PWM modules 3 timers 14 interrupt sources Serial communications: MSSP/USART Parallel communications: PSP

10 PIC 16F pin DIP Most port pins are multiplexed with alternate functional options Timing inputs and outputs Compare inputs and outputs Interrupt inputs Parallel I/O control

11 The PIC Prototype Board Runs at 4 MHz It also accepts the PIC16C74 Crystal Oscillator Power regulator U5 +B U6 GND + C3 1uF XTAL MHZ C1 33pF C uF Vin C2 33pF U2 Gnd V2 5V +V Vout PORTE C4 0.1uF PORTCPC0 PC1 PC2 PC3 PORTC PA0 PA1 PA2 PA3 PA4 PA5 PORTA PD0 PD1 V3 5V +V MCLR' RA0 RA1 RA2 RA3 RA4 RA5 RE0 RE1 RE2 Vdd Vss OSC1 OSC2 RC0 RC1 RC2 RC3 RD0 RD1 R1 4.7k U1 RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 Vdd Vss RD7 RD6 RD5 RD4 RC7 RC6 RC5 RC4 RD3 RD2 PIC16F877 PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0 PD7 PORTD PD6 PD5 PD4 PORTD PD3 PD2 V1 5V +V PC7 PC6 PC5 PC4 PORTA PA0 PA1 PA2 PA3 PA4 PA5 PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PORTB PORTB I/O Ports PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 PORTC PORTD PD0 PD1 PD2 PD3 PD4 PD5 PD6 PD7 PORTD PORTD

12 The PIC prototype board Printed-circuit board size = 5.35 by 3.66 Socketed PIC16F877 Voltage regulator Header area Mounting Prototype area holes

13 Electrical Characteristics Power 5 V, 1 A regulator on board < 2 ma typical (@ 4 MHz clock) Microcontroller has a sleep mode < 1 ma typical standby current Digital I/O current limit High sink/source current: 25 ma Don t push it!

14 Reset Mechanisms The MCLR (master clear) pin Watchdog timer Power-on reset Brown-out reset T PWRT = 28 ms (min), 72 ms (typical) T OST = 0 for RC oscillator 1024 T OSC otherwise 5V 4.5V 4V 3V 2.1V 1.5V V DD Initial rise time must exceed 0.05V/ms T PWRT T OST Time (optional)

15 Beware of Current Transients! Ensure that power suppyy has adequate current capability Overcurrent will pull down voltage Use bypass capacitors across subsystems servo current (150 sweep) Current, 50mA/div Time, 50ms/div

16 PIC Instruction Set RISC CPU Only 35 instructions to learn Anyway, we are going to use a C compiler!

17 C Compiler C Compiler / assembler from Custom Computer Services, Inc. (CCS) Go from C program to.hex file (Intel hex format), to be programmed into the microcontroller Integrated with MPLAB Integrated Development Environment (IDE) Execute and debug program Step through program, set breakpoints, etc. You can invoke PCM from MPLAB: Create a new project Select CCS as the LANGUAGE TOOL SUITE Select.HEX file; click on NODE PROPERTIES; then select PCM as compiler To compile, just BUILD the project

18 Development Cycle Design hardware architecture Define State Machine (or any other abstraction that represents the operation you want to accomplish) Iterative design: Write code using C language We use CCS s PCM C compiler Don t need to use assembly language Compile your code Program firmware into the microcontroller We use Microchip s MPLAB Test your code in the prototype board Include complete circuitry Repeat as many times as required

19 PCM Compiler Subset of ANSI C It has typedef, float, struct, etc. int is 8 bits, char is 8 bits, long is 16 bits. Otherwise it looks exactly like C Some C I/O is supported printf, putc, getc, gets, puts Built in Math Functions - sqrt, sin, cos Special functions for dealing with the microcontroller set_timer0, set_pwm1_duty, etc.

20 What Does a Program Look Like? #include <16F877.H> // include file include and other pre-compiler #device PIC16F877 *=16 ADC=10 // set device type #fuses HS,NOWDT,NOPROTECT statements // set fuses for programming #use delay(clock= ) // 4 MHz clock speed #use rs232(baud=9600, xmit=pin_a3, rcv=pin_a2) // set serial I/O lines #define INTR_PER_SECOND 15 // ( /(4*256*256)) byte seconds; byte int_count; // A running seconds counter // Number of interrupts left before a second has elapsed #int_rtcc // Following function is clock_isr() { // RTCC (timer0) overflow interrupt (255->0) if(--int_count==0) { ++seconds; Interrupt service routine int_count=intr_per_second; // Interrupts occur approx. 15 times/sec } } main() { Main program body do { printf( Press any key to begin.\n\r ); byte start; int_count=ints_per_second; set_rtcc(0); setup_counters(rtcc_internal, RTCC_DIV_256); enable_interrupts(rtcc_zero); enable_interrupts(global); getc(); start = seconds; printf( Press any key to stop.\n\r ); getc(); printf( %u seconds.\n\r,seconds-start); } while (TRUE); }

21 Digital I/O Ports 16F877 Ports A, B, C, D, E Accessed through 8-bit registers Least significant bit = b0 Most significant bit = b7 MSb LSb b7 b6 b5 b4 b3 b2 b1 b0 Byte Mnemonics for registers are listed in include files E.g., Port B is called PORTB Or use #byte pre-compiler directive #byte PORTB 6 // sets PORTB to the address 06h

22 Digital I/O Ports Setup the port s data direction register TRISA, TRISB, TRISC, TRISD, TRISE 1=input; 0=output for each bit For example: #byte B_Port = 6 set_tris_b(0); B_Port = 0; Some port pins have additional functionality I/O may be overridden by other register bits

23 Bitwise Operations Operators & (AND) (OR) ^ (XOR) ~ (NOT) << (LEFT SHIFT) >> (RIGHT SHIFT) &=, =, ^=, <<=, >>= To read a single bit, use AND mask if(portb & 04) puts( pin 2 high!\n ); To write a single bit, use OR mask PORTB = PORTB 1;

24 Timers 3 timers: Timer0: 8-bit timer/counter with 8-bit prescaler Timer1: 16-bit timer/counter with prescaler Timer2: 8-bit timer/counter with 8-bit period register, prescaler and postscaler Four basic functions: timing input waveforms (input capture) generating timed output waveforms (output compare) generating PWM signals counting pulses

25 Timers Master clock set by external crystal 20 MHz max, we typically set to 4 MHz Programmable timer prescaler Divides clock down by binary fraction Useful for real world timing in seconds, minutes.. 4 MHz clock 4 Overflow at 256 counts Prescaler (counter) 3.9 khz clock 1 µs 2 µs 4 µs 8 µs 16 µs 32 µs Hz overflow 64 µs 128 µs 256 µs

26 Timer 0 Timer or counter Control register is OPTION_REG 8-bit prescaler Divide by 2 up to 256

27 Timer 1 16 bit timer Acts as a timer or a counter 0 = timer 1 = counter

28 Timer 2 8 bit timer PWM clock Prescale options 1/1, ¼, 1/16 PR2, period register Postscaler options 1/1 to 1/16

PIC16F87X. 28/40-pin 8-Bit CMOS FLASH Microcontrollers. Devices Included in this Data Sheet: Pin Diagram PDIP. Microcontroller Core Features:

PIC16F87X. 28/40-pin 8-Bit CMOS FLASH Microcontrollers. Devices Included in this Data Sheet: Pin Diagram PDIP. Microcontroller Core Features: PIC16F7X 2/40-pin -Bit CMOS FLASH Microcontrollers Devices Included in this Data Sheet: PIC16F7 PIC16F74 PIC16F76 PIC16F77 Microcontroller Core Features: High-performance RISC CPU Only 5 single word instructions

More information

PIC Microcontroller Introduction

PIC Microcontroller Introduction PIC Microcontroller Introduction The real name of this microcontroller is PICmicro (Peripheral Interface Controller), but it is better known as PIC. Its first ancestor was designed in 1975 by General Instruments.

More information

Embedded Systems. PIC16F84A Internal Architecture. Eng. Anis Nazer First Semester

Embedded Systems. PIC16F84A Internal Architecture. Eng. Anis Nazer First Semester Embedded Systems PIC16F84A Internal Architecture Eng. Anis Nazer First Semester 2017-2018 Review Computer system basic components? CPU? Memory? I/O? buses? Instruction? Program? Instruction set? CISC,

More information

Lecture (03) PIC16F84 (2)

Lecture (03) PIC16F84 (2) Lecture (03) PIC16F84 (2) By: Dr. Ahmed ElShafee ١ PIC16F84 has a RISC architecture, or Harvard architecture in another word ٢ PIC16F84 belongs to a class of 8 bit microcontrollers of RISC architecture.

More information

ME 515 Mechatronics. A microprocessor

ME 515 Mechatronics. A microprocessor ME 515 Mechatronics Microcontroller Based Control of Mechanical Systems Asanga Ratnaweera Department of Faculty of Engineering University of Peradeniya Tel: 081239 (3627) Email: asangar@pdn.ac.lk A microprocessor

More information

Computer Hardware Requirements for ERTSs: Microprocessors & Microcontrollers

Computer Hardware Requirements for ERTSs: Microprocessors & Microcontrollers Lecture (4) Computer Hardware Requirements for ERTSs: Microprocessors & Microcontrollers Prof. Kasim M. Al-Aubidy Philadelphia University-Jordan DERTS-MSc, 2015 Prof. Kasim Al-Aubidy 1 Lecture Outline:

More information

ME 6405 Introduction to Mechatronics

ME 6405 Introduction to Mechatronics ME 6405 Introduction to Mechatronics Fall 2006 Instructor: Professor Charles Ume Microchip PIC Manufacturer Information: Company: Website: http://www.microchip.com Reasons for success: Became the hobbyist's

More information

Reprinted by permission of T&L Publications Inc. Copyright 2001 USB MICROCONTROLLERS FOR THE MASSES

Reprinted by permission of T&L Publications Inc. Copyright 2001 USB MICROCONTROLLERS FOR THE MASSES Reprinted by permission of T&L Publications Inc. Copyright 2001 USB MICROCONTROLLERS FOR THE MASSES By Don L. Powrie Microcontroller, Flash programmer, and high speed USB-to-PC interface all in one tidy

More information

Lecture (04) PIC 16F84A programming I

Lecture (04) PIC 16F84A programming I Lecture (04) PIC 16F84A programming I Dr. Ahmed M. ElShafee ١ Agenda Introduction to PIC16F84A programming using C language Preprocessors and, Compiler directives Constants Variables and data types Pointers

More information

MicroProcessor. MicroProcessor. MicroProcessor. MicroProcessor

MicroProcessor. MicroProcessor. MicroProcessor. MicroProcessor 1 2 A microprocessor is a single, very-large-scale-integration (VLSI) chip that contains many digital circuits that perform arithmetic, logic, communication, and control functions. When a microprocessor

More information

C and Embedded Systems. So Why Learn Assembly Language? C Compilation. PICC Lite C Compiler. PICC Lite C Optimization Results (Lab #13)

C and Embedded Systems. So Why Learn Assembly Language? C Compilation. PICC Lite C Compiler. PICC Lite C Optimization Results (Lab #13) C and Embedded Systems A µp-based system used in a device (i.e, a car engine) performing control and monitoring functions is referred to as an embedded system. The embedded system is invisible to the user

More information

Lesson 14. Title of the Experiment: Introduction to Microcontroller (Activity number of the GCE Advanced Level practical Guide 27)

Lesson 14. Title of the Experiment: Introduction to Microcontroller (Activity number of the GCE Advanced Level practical Guide 27) Lesson 14 Title of the Experiment: Introduction to Microcontroller (Activity number of the GCE Advanced Level practical Guide 27) Name and affiliation of the author: N W K Jayatissa Department of Physics,

More information

Lecture (02) PIC16F84 (I)

Lecture (02) PIC16F84 (I) Lecture (02) PIC16F84 (I) By: Dr. Ahmed ElShafee ١ Review of Memory Technologies The PIC 16 Series PIC 16F84A The PIC 16F84A Memory The Oscillator Instruction Cycle Power up and Reset Parallel ports Technical

More information

which means that writing to a port implies that the port pins are first read, then this value is modified and then written to the port data latch.

which means that writing to a port implies that the port pins are first read, then this value is modified and then written to the port data latch. Introduction to microprocessors Feisal Mohammed 3rd January 2001 Additional features 1 Input/Output Ports One of the features that differentiates a microcontroller from a microprocessor is the presence

More information

Bolt 18F2550 System Hardware Manual

Bolt 18F2550 System Hardware Manual 1 Bolt 18F2550 System Hardware Manual Index : 1. Overview 2. Technical specifications 3. Definition of pins in 18F2550 4. Block diagram 5. FLASH memory Bootloader programmer 6. Digital ports 6.1 Leds and

More information

VLSI Design Lab., Konkuk Univ. Yong Beom Cho LSI Design Lab

VLSI Design Lab., Konkuk Univ. Yong Beom Cho LSI Design Lab AVR Training Board-I V., Konkuk Univ. Yong Beom Cho ybcho@konkuk.ac.kr What is microcontroller A microcontroller is a small, low-cost computeron-a-chip which usually includes: An 8 or 16 bit microprocessor

More information

1 Introduction to Computers and Computer Terminology Programs Memory Processor Data Sheet Example Application...

1 Introduction to Computers and Computer Terminology Programs Memory Processor Data Sheet Example Application... Overview of the PIC 16F648A Processor: Part 1 EE 361L Lab 2.1 Last update: August 19, 2011 Abstract: This report is the first of a three part series that discusses the features of the PIC 16F684A processor,

More information

Mechatronics and Measurement. Lecturer:Dung-An Wang Lecture 6

Mechatronics and Measurement. Lecturer:Dung-An Wang Lecture 6 Mechatronics and Measurement Lecturer:Dung-An Wang Lecture 6 Lecture outline Reading:Ch7 of text Today s lecture: Microcontroller 2 7.1 MICROPROCESSORS Hardware solution: consists of a selection of specific

More information

NH-67, TRICHY MAIN ROAD, PULIYUR, C.F , KARUR DT. DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING COURSE MATERIAL

NH-67, TRICHY MAIN ROAD, PULIYUR, C.F , KARUR DT. DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING COURSE MATERIAL NH-67, TRICHY MAIN ROAD, PULIYUR, C.F. 639 114, KARUR DT. DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING COURSE MATERIAL Subject Name : Embedded System Class/Sem : BE (ECE) / VII Subject Code

More information

1 Introduction to Computers and Computer Terminology Programs Memory Processor Data Sheet... 4

1 Introduction to Computers and Computer Terminology Programs Memory Processor Data Sheet... 4 Overview of the PIC 16F648A Processor: Part 1 EE 361L Lab 2.1 Last update: August 1, 2016 Abstract: This report is the first of a three part series that discusses the features of the PIC 16F648A processor,

More information

AVR Training Board-I. VLSI Design Lab., Konkuk Univ. LSI Design Lab

AVR Training Board-I. VLSI Design Lab., Konkuk Univ. LSI Design Lab AVR Training Board-I V., Konkuk Univ. Tae Pyeong Kim What is microcontroller A microcontroller is a small, low-cost computeron-a-chip which usually includes: An 8 or 16 bit microprocessor (CPU). A small

More information

MT2 Introduction Embedded Systems. MT2.1 Mechatronic systems

MT2 Introduction Embedded Systems. MT2.1 Mechatronic systems MT2 Introduction Embedded Systems MT2.1 Mechatronic systems Mechatronics is the synergistic integration of mechanical engineering, with electronics and intelligent computer control in the design and manufacturing

More information

Table of Contents COMPANY PROFILE 1-1 SECTION 1. INTRODUCTION 1-1

Table of Contents COMPANY PROFILE 1-1 SECTION 1. INTRODUCTION 1-1 COMPANY PROFILE 1-1 SECTION 1. INTRODUCTION 1-1 Introduction... 1-2 Manual Objective... 1-3 Device Structure... 1-4 Development Support... 1-6 Device Varieties... 1-7 Style and Symbol Conventions... 1-12

More information

n/a PIC12F629-I/P (RC) n/a PIC12F629-I/SN (RC) n/a PIC12F675-I/P (RC) n/a PIC12F675-I/SN MICROCONTROLLER (RC)

n/a PIC12F629-I/P (RC) n/a PIC12F629-I/SN (RC) n/a PIC12F675-I/P (RC) n/a PIC12F675-I/SN MICROCONTROLLER (RC) DATA SHEET PIC Microcontrollers Order code Manufacturer code Description 73-36 n/a PICF69-I/P (RC) 73-364 n/a PICF69-I/SN (RC) 73-34 n/a PICF675-I/P (RC) 73-36 n/a PICF675-I/SN MICROCONTROLLER (RC) PIC

More information

AVR XMEGA TM. A New Reference for 8/16-bit Microcontrollers. Ingar Fredriksen AVR Product Marketing Director

AVR XMEGA TM. A New Reference for 8/16-bit Microcontrollers. Ingar Fredriksen AVR Product Marketing Director AVR XMEGA TM A New Reference for 8/16-bit Microcontrollers Ingar Fredriksen AVR Product Marketing Director Kristian Saether AVR Product Marketing Manager Atmel AVR Success Through Innovation First Flash

More information

Embedded Systems Lab Lab 1 Introduction to Microcontrollers Eng. Dalia A. Awad

Embedded Systems Lab Lab 1 Introduction to Microcontrollers Eng. Dalia A. Awad Embedded Systems Lab Lab 1 Introduction to Microcontrollers Eng. Dalia A. Awad Objectives To be familiar with microcontrollers, PIC18F4550 microcontroller. Tools PIC18F4550 Microcontroller, MPLAB software,

More information

Embedded System Design

Embedded System Design ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA ĐIỆN-ĐIỆN TỬ BỘ MÔN KỸ THUẬT ĐIỆN TỬ Embedded System Design : Microcontroller 1. Introduction to PIC microcontroller 2. PIC16F84 3. PIC16F877

More information

CHAPTER 6 CONCLUSION AND SCOPE FOR FUTURE WORK

CHAPTER 6 CONCLUSION AND SCOPE FOR FUTURE WORK 134 CHAPTER 6 CONCLUSION AND SCOPE FOR FUTURE WORK 6.1 CONCLUSION Many industrial processes such as assembly lines have to operate at different speeds for different products. Process control may demand

More information

Fig 1. Block diagram of a microcomputer

Fig 1. Block diagram of a microcomputer Computer: A computer is a multipurpose programmable machine that reads binary instructions from its memory, accepts binary data as input,processes the data according to those instructions and provides

More information

Embedded programming, AVR intro

Embedded programming, AVR intro Applied mechatronics, Lab project Embedded programming, AVR intro Sven Gestegård Robertz Department of Computer Science, Lund University 2017 Outline 1 Low-level programming Bitwise operators Masking and

More information

Introduction to Microcontroller Apps for Amateur Radio Projects Using the HamStack Platform.

Introduction to Microcontroller Apps for Amateur Radio Projects Using the HamStack Platform. Introduction to Microcontroller Apps for Amateur Radio Projects Using the HamStack Platform www.sierraradio.net www.hamstack.com Topics Introduction Hardware options Software development HamStack project

More information

Introduction to Embedded Systems

Introduction to Embedded Systems Stefan Kowalewski, 4. November 25 Introduction to Embedded Systems Part 2: Microcontrollers. Basics 2. Structure/elements 3. Digital I/O 4. Interrupts 5. Timers/Counters Introduction to Embedded Systems

More information

Embedded systems. Exercise session 3. Microcontroller Programming Lab Preparation

Embedded systems. Exercise session 3. Microcontroller Programming Lab Preparation Embedded systems Exercise session 3 Microcontroller Programming Lab Preparation Communications Contact Mail : michael.fonder@ulg.ac.be Office : 1.82a, Montefiore Website for the exercise sessions and the

More information

Introduction to Arduino. Wilson Wingston Sharon

Introduction to Arduino. Wilson Wingston Sharon Introduction to Arduino Wilson Wingston Sharon cto@workshopindia.com Physical computing Developing solutions that implement a software to interact with elements in the physical universe. 1. Sensors convert

More information

Microcontrollers. Principles and Applications. Ajit Pal +5 V 2K 8. 8 bit dip switch. P2 8 Reset switch Microcontroller AT89S52 100E +5 V. 2.

Microcontrollers. Principles and Applications. Ajit Pal +5 V 2K 8. 8 bit dip switch. P2 8 Reset switch Microcontroller AT89S52 100E +5 V. 2. Ajit Pal Microcontrollers Principles and Applications +5 V 2K 8 8 bit dip switch P2 8 Reset switch Microcontroller AT89S52 100E +5 V +5 V 2.2K 10 uf RST 7 Segment common anode LEDs P1(0-6) & P3(0-6) 7

More information

8051 Microcontroller

8051 Microcontroller 8051 Microcontroller The 8051, Motorola and PIC families are the 3 leading sellers in the microcontroller market. The 8051 microcontroller was originally developed by Intel in the late 1970 s. Today many

More information

Laboratory 10. Programming a PIC Microcontroller - Part II

Laboratory 10. Programming a PIC Microcontroller - Part II Laboratory 10 Programming a PIC Microcontroller - Part II Required Components: 1 PIC16F88 18P-DIP microcontroller 1 0.1 F capacitor 3 SPST microswitches or NO buttons 4 1k resistors 1 MAN 6910 or LTD-482EC

More information

EEE3410 Microcontroller Applications Department of Electrical Engineering Lecture 4 The 8051 Architecture

EEE3410 Microcontroller Applications Department of Electrical Engineering Lecture 4 The 8051 Architecture Department of Electrical Engineering Lecture 4 The 8051 Architecture 1 In this Lecture Overview General physical & operational features Block diagram Pin assignments Logic symbol Hardware description Pin

More information

Ali Karimpour Associate Professor Ferdowsi University of Mashhad

Ali Karimpour Associate Professor Ferdowsi University of Mashhad AUTOMATIC CONTROL SYSTEMS Ali Karimpour Associate Professor Ferdowsi University of Mashhad Main reference: Christopher T. Kilian, (2001), Modern Control Technology: Components and Systems Publisher: Delmar

More information

Display Real Time Clock (RTC) On LCD. Version 1.2. Aug Cytron Technologies Sdn. Bhd.

Display Real Time Clock (RTC) On LCD. Version 1.2. Aug Cytron Technologies Sdn. Bhd. Display Real Time Clock (RTC) On LCD PR12 Version 1.2 Aug 2008 Cytron Technologies Sdn. Bhd. Information contained in this publication regarding device applications and the like is intended through suggestion

More information

Flow Charts and Assembler Programs

Flow Charts and Assembler Programs Flow Charts and Assembler Programs Flow Charts: A flow chart is a graphical way to display how a program works (i.e. the algorithm). The purpose of a flow chart is to make the program easier to understand.

More information

Chapter 9. Input/Output (I/O) Ports and Interfacing. Updated: 3/13/12

Chapter 9. Input/Output (I/O) Ports and Interfacing. Updated: 3/13/12 Chapter 9 Input/Output (I/O) Ports and Interfacing Updated: 3/13/12 Basic Concepts in I/O Interfacing and PIC18 I/O Ports (1 of 2) I/O devices (or peripherals) such as LEDs and keyboards are essential

More information

EE6008-Microcontroller Based System Design Department Of EEE/ DCE

EE6008-Microcontroller Based System Design Department Of EEE/ DCE UNIT- II INTERRUPTS AND TIMERS PART A 1. What are the interrupts available in PIC? (Jan 14) Interrupt Source Enabled by Completion Status External interrupt from INT INTE = 1 INTF = 1 TMR0 interrupt T0IE

More information

Outline. Micriprocessor vs Microcontroller Introduction to PIC MCU PIC16F877 Hardware:

Outline. Micriprocessor vs Microcontroller Introduction to PIC MCU PIC16F877 Hardware: HCMIU - DEE Subject: ERTS RISC MCU Architecture PIC16F877 Hardware 1 Outline Micriprocessor vs Microcontroller Introduction to PIC MCU PIC16F877 Hardware: Program Memory Data memory organization: banks,

More information

AVR XMEGA Product Line Introduction AVR XMEGA TM. Product Introduction.

AVR XMEGA Product Line Introduction AVR XMEGA TM. Product Introduction. AVR XMEGA TM Product Introduction 32-bit AVR UC3 AVR Flash Microcontrollers The highest performance AVR in the world 8/16-bit AVR XMEGA Peripheral Performance 8-bit megaavr The world s most successful

More information

Lecture 14. Ali Karimpour Associate Professor Ferdowsi University of Mashhad

Lecture 14. Ali Karimpour Associate Professor Ferdowsi University of Mashhad Lecture 14 AUTOMATIC CONTROL SYSTEMS Ali Karimpour Associate Professor Ferdowsi University of Mashhad Lecture 4 The AVR Microcontroller Introduction to AVR CISC (Complex Instruction Set Computer) Put as

More information

SimPLC. User Manual.

SimPLC. User Manual. SimPLC User Manual www.dizzy.co.za Contents Introduction... 4 Overview Top... 5 Power Circuitry... 6 Microcontroller... 7 Real-Time Calendar and Clock (RTCC)... 7 Reset Button... 7 Oscillator Socket...

More information

Basic Components of Digital Computer

Basic Components of Digital Computer Digital Integrated Circuits & Microcontrollers Sl. Mihnea UDREA, mihnea@comm.pub.ro Conf. Mihai i STANCIU, ms@elcom.pub.ro 1 Basic Components of Digital Computer CPU (Central Processing Unit) Control and

More information

ELCT708 MicroLab Session #1 Introduction to Embedded Systems and Microcontrollers. Eng. Salma Hesham

ELCT708 MicroLab Session #1 Introduction to Embedded Systems and Microcontrollers. Eng. Salma Hesham ELCT708 MicroLab Session #1 Introduction to Embedded Systems and Microcontrollers What is common between these systems? What is common between these systems? Each consists of an internal smart computer

More information

ootbrobotics.com Electronics and Robotics LLC

ootbrobotics.com Electronics and Robotics LLC 2 Table of Contents... 2 Warning: READ BEFORE PROCEDING... 4 Be Careful with PORTB... 4 External Power Considerations... 4 Always Check Backpack Orientation... 4 Overview... 5 Why Xmega?... 5 Microcontroller

More information

Embedded Systems Module. 6EJ505. C Tutorial 3: using the ICD3 rev tjw

Embedded Systems Module. 6EJ505. C Tutorial 3: using the ICD3 rev tjw Embedded Systems Module. 6EJ505 C Tutorial 3: using the ICD3 rev. 27.9.16 tjw Images are reproduced from Reference 1. Microchip permits the use of its images for educational purposes. Main Learning Points

More information

Ali Karimpour Associate Professor Ferdowsi University of Mashhad

Ali Karimpour Associate Professor Ferdowsi University of Mashhad AUTOMATIC CONTROL SYSTEMS Ali Karimpour Associate Professor Ferdowsi University of Mashhad Main reference: Christopher T. Kilian, (2001), Modern Control Technology: Components and Systems Publisher: Delmar

More information

ET-PIC 24 WEB-V1. o Central Processing Unit (CPU) o System. o nanowatt Power Managed Modes. o Analog Features

ET-PIC 24 WEB-V1. o Central Processing Unit (CPU) o System. o nanowatt Power Managed Modes. o Analog Features ET-PIC 24 WEB-V1 ET-PIC 24 WEB-V1 is PIC Board Microcontroller from Microchip that uses 16 Bit No.PIC24FJ128GA008 Microcontroller for processing data and develops board. The remarkable specification of

More information

CENG-336 Introduction to Embedded Systems Development. Timers

CENG-336 Introduction to Embedded Systems Development. Timers CENG-336 Introduction to Embedded Systems Development Timers Definitions A counter counts (possibly asynchronous) input pulses from an external signal A timer counts pulses of a fixed, known frequency

More information

CN310 Microprocessor Systems Design

CN310 Microprocessor Systems Design CN310 Microprocessor Systems Design Microcontroller Nawin Somyat Department of Electrical and Computer Engineering Thammasat University Outline Course Contents 1 Introduction 2 Simple Computer 3 Microprocessor

More information

CHAPTER 1 - World of microcontrollers

CHAPTER 1 - World of microcontrollers CHAPTER 1 - World of microcontrollers One Time Programmable ROM (OTP ROM) One time programmable ROM enables you to download a program into it, but, as its name states, one time only. If an error is detected

More information

Arduino Uno R3 INTRODUCTION

Arduino Uno R3 INTRODUCTION Arduino Uno R3 INTRODUCTION Arduino is used for building different types of electronic circuits easily using of both a physical programmable circuit board usually microcontroller and piece of code running

More information

Laboratory 9. Programming a PIC Microcontroller - Part I

Laboratory 9. Programming a PIC Microcontroller - Part I Laboratory 9 Programming a PIC Microcontroller - Part I Required Components: 1 PIC16F84 (4MHz) or PIC16F84A (20MHz) or compatible (e.g., PIC16F88) microcontroller 1 4MHz microprocessor crystal (20 pf),

More information

Locktronics PICmicro getting started guide

Locktronics PICmicro getting started guide Page 2 getting started guide What you need to follow this course 2 Using the built-in programs 3 Create your own programs 4 Using Flowcode - your first program 5 A second program 7 A third program 8 Other

More information

DEVBOARD3 DATASHEET. 10Mbits Ethernet & SD card Development Board PIC18F67J60 MICROCHIP

DEVBOARD3 DATASHEET. 10Mbits Ethernet & SD card Development Board PIC18F67J60 MICROCHIP DEVBOARD3 DATASHEET 10Mbits Ethernet & SD card PIC18F67J60 MICROCHIP Version 1.0 - March 2009 DEVBOARD3 Version 1.0 March 2009 Page 1 of 7 The DEVBOARD3 is a proto-typing board used to quickly and easily

More information

Capacitive Touch Remote Control Reference Design User s Guide

Capacitive Touch Remote Control Reference Design User s Guide Capacitive Touch Remote Control Reference Design User s Guide Microchip Korea V0.8-page 1 Capacitive Touch Remote Control Reference Design User s Guide Table of Contents Chapter 1. Introduction 1.1 Introduction

More information

SH69P48A EVB. Application Notes for SH69P48A EVB SH69V48A JP2 J4(ICE_J4) S1 IDD TEST JP1 74HC273 JP4 JP3 74HC273 JP6 STKOVE JP7 SW1 J5(ICE_J5)

SH69P48A EVB. Application Notes for SH69P48A EVB SH69V48A JP2 J4(ICE_J4) S1 IDD TEST JP1 74HC273 JP4 JP3 74HC273 JP6 STKOVE JP7 SW1 J5(ICE_J5) SH69P48A EVB Application Notes for SH69P48A EVB The SH69P48A EVB is used to evaluate the SH69P48A chip's function for the development of application program. It contains of a SH69V48A chip to evaluate

More information

Development Hardware. Target Board and In-circuit Debugger

Development Hardware. Target Board and In-circuit Debugger Development Hardware Target Board and In-circuit Debugger Development Hardware :: Slide 1 of 32 Microchip PICDEM 2 Plus Target Board Development Hardware :: Slide 2 of 32 PICDEM 2 Plus Demo Board Development

More information

TDSDB Features. Description

TDSDB Features. Description TDSDB14550 Features Inexpensive development or project board providing quick start up solution. 5v Pic alternative to the 3.3v TDSDB146J50 Mini B USB socket to provide power and USB functionality. 40 pin

More information

Mercury System SB310

Mercury System SB310 Mercury System SB310 Ultrasonic Board - Product Datasheet Author Francesco Ficili Date 20/05/2018 Status Released Pag. 1 Revision History Version Date Author Changes 1.0 20/05/2018 Francesco Ficili Initial

More information

Hong Kong Institute of Vocational Education Digital Electronics & Microcontroller. 8. Microcontroller

Hong Kong Institute of Vocational Education Digital Electronics & Microcontroller. 8. Microcontroller 8. Microcontroller Textbook Programming Robot Controllers, Myke Predko, McGraw Hill. Reference PIC Robotics: A Beginner's Guide to Robotics Projects Using the PIC Micro, John Iovine, McGraw Hill. Embedded

More information

AVR- M16 development board Users Manual

AVR- M16 development board Users Manual AVR- M16 development board Users Manual All boards produced by Olimex are ROHS compliant Rev. C, January 2005 Copyright(c) 2009, OLIMEX Ltd, All rights reserved Page1 INTRODUCTION AVR-M16 is header board

More information

Breeze Board. Type B. User Manual.

Breeze Board. Type B. User Manual. Breeze Board Type B User Manual www.dizzy.co.za Contents Introduction... 3 Overview Top... 4 Overview Bottom... 5 Getting Started (USB Bootloader)... 6 Power Circuitry... 7 USB... 8 Microcontroller...

More information

USB-4303 Specifications

USB-4303 Specifications Specifications Document Revision 1.0, February, 2010 Copyright 2010, Measurement Computing Corporation Typical for 25 C unless otherwise specified. Specifications in italic text are guaranteed by design.

More information

3. The MC6802 MICROPROCESSOR

3. The MC6802 MICROPROCESSOR 3. The MC6802 MICROPROCESSOR This chapter provides hardware detail on the Motorola MC6802 microprocessor to enable the reader to use of this microprocessor. It is important to learn the operation and interfacing

More information

SH69P55A EVB. Application Note for SH69P55A EVB SH69P55A EVB SH69V55A

SH69P55A EVB. Application Note for SH69P55A EVB SH69P55A EVB SH69V55A Application Note for SH69P55A EVB SH69P55A EVB The SH69P55A EVB is used to evaluate the SH69P55A chip's function for the development of application program. It contains of a SH69V55A chip to evaluate the

More information

Microprocessors B Lab 1 Spring The PIC24HJ32GP202

Microprocessors B Lab 1 Spring The PIC24HJ32GP202 The PIC24HJ32GP202 Lab Report Objectives Materials See separate report form located on the course webpage. This form should be completed during the performance of this lab. 1) To familiarize the student

More information

Bachelor of Engineering in Computer and Electronic Engineering

Bachelor of Engineering in Computer and Electronic Engineering Bachelor of Engineering in Computer and Electronic Engineering Computer Engineering 1 Year 2 Semester 3 Autumn 08 Niall O Keeffe Instructions to Candidates: - 2 hours duration Answer 4 out of 6 questions.

More information

PIC 16F84A programming (II)

PIC 16F84A programming (II) Lecture (05) PIC 16F84A programming (II) Dr. Ahmed M. ElShafee ١ Introduction to 16F84 ٣ PIC16F84 belongs to a class of 8-bit microcontrollers of RISC architecture. Program memory (FLASH) EEPROM RAM PORTA

More information

Programming Microcontroller Assembly and C

Programming Microcontroller Assembly and C Programming Microcontroller Assembly and C Course Number CLO : 2 Week : 5-7 : TTH2D3 CLO#2 Student have the knowledge to create basic programming for microcontroller [C3] Understand how to program in Assembly

More information

DERTS Design Requirements (1): Microcontroller Architecture & Programming

DERTS Design Requirements (1): Microcontroller Architecture & Programming Lecture (5) DERTS Design Requirements (1): Microcontroller Architecture & Programming Prof. Kasim M. Al-Aubidy Philadelphia University 1 Lecture Outline: Features of microcomputers and microcontrollers.

More information

More PIC Programming. Serial and parallel data transfer External busses Analog to digital conversion

More PIC Programming. Serial and parallel data transfer External busses Analog to digital conversion More PIC Programming Serial and parallel data transfer External busses Analog to digital conversion Serial vs. Parallel Data Transfer MSD LSD b7 b6 b5 b4 b3 b2 b1 b0 Data Byte Serial Data Transfer Parallel

More information

Figure 1.1: Some embedded device. In this course we shall learn microcontroller and FPGA based embedded system.

Figure 1.1: Some embedded device. In this course we shall learn microcontroller and FPGA based embedded system. Course Code: EEE 4846 International Islamic University Chittagong (IIUC) Department of Electrical and Electronic Engineering (EEE) Course Title: Embedded System Sessional Exp. 1: Familiarization with necessary

More information

DEV-1 HamStack Development Board

DEV-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 information

The Freescale MC908JL16 Microcontroller

The Freescale MC908JL16 Microcontroller Ming Hsieh Department of Electrical Engineering EE 459Lx - Embedded Systems Design Laboratory The Freescale MC908JL16 Microcontroller by Allan G. Weber 1 Introduction The Freescale MC908JL16 (also called

More information

Interconnects, Memory, GPIO

Interconnects, Memory, GPIO Interconnects, Memory, GPIO Dr. Francesco Conti f.conti@unibo.it Slide contributions adapted from STMicroelectronics and from Dr. Michele Magno, others Processor vs. MCU Pipeline Harvard architecture Separate

More information

The Atmel ATmega168A Microcontroller

The Atmel ATmega168A Microcontroller Ming Hsieh Department of Electrical Engineering EE 459Lx - Embedded Systems Design Laboratory The Atmel ATmega168A Microcontroller by Allan G. Weber 1 Introduction The Atmel ATmega168A is one member of

More information

Microcontroller systems Lec 2 PIC18LF8722 Microcontroller s s core

Microcontroller systems Lec 2 PIC18LF8722 Microcontroller s s core TKT-3500 Microcontroller systems Lec 2 PIC18LF8722 Microcontroller s s core Erno Salminen Copyright notice Some figures by Robert Reese, from supplementary CD of the course book from PIC18F8722 Family

More information

Microcomputer System Design

Microcomputer System Design Microcomputer System Design COE305 Lab. What is a Microprocessor? A microprocessor is a multipurpose, clockdriven, register-based electronic device that reads binary instructions from a storage device

More information

ecog1kg Microcontroller Product Brief

ecog1kg Microcontroller Product Brief ecog1kg Microcontroller Product Brief The ecog1kg is a low-power microcontroller, based on a 16-bit Harvard architecture, with a 24-bit linear code address space (32Mbyte) and 16-bit linear data address

More information

Laboratory: Introduction to Mechatronics. Instructor TA: Edgar Martinez Soberanes Lab 1.

Laboratory: Introduction to Mechatronics. Instructor TA: Edgar Martinez Soberanes Lab 1. Laboratory: Introduction to Mechatronics Instructor TA: Edgar Martinez Soberanes (eem370@mail.usask.ca) 2017-01-12 Lab 1. Introduction Lab Sessions Lab 1. Introduction to the equipment and tools to be

More information

Laboratory: Introduction to Mechatronics

Laboratory: Introduction to Mechatronics Laboratory: Introduction to Mechatronics Instructor TA: Edgar Martinez Soberanes (eem370@mail.usask.ca) 2017-02-9 Lab 3. LED Control and Interruptions. Lab Sessions Lab 1. Introduction to the equipment

More information

Input/Output Ports and Interfacing

Input/Output Ports and Interfacing Input/Output Ports and Interfacing ELEC 330 Digital Systems Engineering Dr. Ron Hayne Images Courtesy of Ramesh Gaonkar and Delmar Learning Basic I/O Concepts Peripherals such as LEDs and keypads are essential

More information

PIC32&Overview& E155&

PIC32&Overview& E155& PIC32&Overview& E155& Outline PIC 32 Architecture MIPS M4K Core PIC 32 Peripherals PIC 32 Basic Operations Clock 2 Microcontroller Approximately $16B of microcontrollers were sold in 2011, and the market

More information

Computer Hardware Requirements for Real-Time Applications

Computer Hardware Requirements for Real-Time Applications Lecture (4) Computer Hardware Requirements for Real-Time Applications Prof. Kasim M. Al-Aubidy Computer Engineering Department Philadelphia University Real-Time Systems, Prof. Kasim Al-Aubidy 1 Lecture

More information

The Atmel ATmega328P Microcontroller

The Atmel ATmega328P Microcontroller Ming Hsieh Department of Electrical Engineering EE 459Lx - Embedded Systems Design Laboratory 1 Introduction The Atmel ATmega328P Microcontroller by Allan G. Weber This document is a short introduction

More information

Microcontrollers. Microcontroller

Microcontrollers. Microcontroller Microcontrollers Microcontroller A microprocessor on a single integrated circuit intended to operate as an embedded system. As well as a CPU, a microcontroller typically includes small amounts of RAM and

More information

Outlines. PIC Programming in C and Assembly. Krerk Piromsopa, Ph.D. Department of Computer Engineering Chulalongkorn University

Outlines. PIC Programming in C and Assembly. Krerk Piromsopa, Ph.D. Department of Computer Engineering Chulalongkorn University PIC ming in C and Assembly Outlines Microprocessor vs. MicroController PIC in depth PIC ming Assembly ming Krerk Piromsopa, Ph.D. Department of Computer Engineering Chulalongkorn University Embedded C

More information

MICROPROCESSORS A (17.383) Fall Lecture Outline

MICROPROCESSORS 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 information

SECURE DIGITAL ACCESS SYSTEM USING IBUTTON

SECURE DIGITAL ACCESS SYSTEM USING IBUTTON SECURE DIGITAL ACCESS SYSTEM USING IBUTTON Access control forms a vital link in a security chain. Here we describe a secure digital access system using ibutton that allows only authorised persons to access

More information

Introduction to the MC9S12 Hardware Subsystems

Introduction to the MC9S12 Hardware Subsystems Setting and clearing bits in C Using pointers in C o Program to count the number of negative numbers in an area of memory Introduction to the MC9S12 Hardware Subsystems o The MC9S12 timer subsystem Operators

More information

ECE Senior Project Status Report. for. Scalable Regulated Three Phase Rectifier. September 21, Prepared by: Tyler Budzianowski.

ECE Senior Project Status Report. for. Scalable Regulated Three Phase Rectifier. September 21, Prepared by: Tyler Budzianowski. ECE Senior Project Status Report for Scalable Regulated Three Phase Rectifier September 21, 2004 Prepared by: Tyler Budzianowski Tao Nguyen Sponsors: Dr. Herb Hess (University of Idaho) Dr. Richard Wall

More information

An Introduction to Designing Ham Radio Projects with PIC Microcontrollers. George Zafiropoulos KJ6VU

An Introduction to Designing Ham Radio Projects with PIC Microcontrollers. George Zafiropoulos KJ6VU An Introduction to Designing Ham Radio Projects with PIC Microcontrollers George Zafiropoulos KJ6VU Topics Ham radio applications Microcontroller basics Hardware design examples Implementing your design

More information

CMOS 16-bit Application Specific Controller

CMOS 16-bit Application Specific Controller CMOS 16-bit Application Specific Controller 16-bit RISC CPU Core S1C17 (Max. 48 MHz operation) 128K/96K-Byte Flash ROM and 4K + 2K-Byte RAM (2K-byte RAM is operable with separated power supply) Multiply

More information

Keywords Digital IC tester, Microcontroller AT89S52

Keywords Digital IC tester, Microcontroller AT89S52 Volume 6, Issue 1, January 2016 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Digital Integrated

More information