Getting the O in I/O to work on a typical microcontroller

Size: px
Start display at page:

Download "Getting the O in I/O to work on a typical microcontroller"

Transcription

1 Getting the O in I/O to work on a typical microcontroller Ideas of how to send output signals to the radio controlled car. The theory behind the LED controller used in the Familiarization Lab Agenda Processors need to send out control signals (high / low 1 / 0 true / false) General Purpose Input / Output lines (GPIO lines) on Blackfin chip (16) FLASH memory chip has additional I/O ports connected to Ez-Lite KIT LED s What do we need to have happen to make the FLASH memory work on a microcontroller as we want. (In this example turning the board LED s on and off) What new Blackfin assembly language instructions do we need to learn in order to operate the LEDs? Blackfin BF533 I/O 2 Radio controlled car IN PRINCIPLE we could Connect the signal line that controls the LED1 output directly to the turn-to-right signal line of radio transmitter Connect the signal that controls the LED2 directly up to the go-forward signal line of radio transmitter Connect LED3 control to the turn-to-left signal line of radio transmitter IN PRINCIPLE means we might start off this way while we initially explore ideas to control the car. However we may (or may not) finish the project a different way. We WILL use LEDs as a VIRTUAL CAR CONTROLLER in Lab1 and 2. Meaning LED1 on means virtual car going forward etc Blackfin BF533 I/O 3 Programmable Flags (input Lab) Most micro-controllers have General Purpose Input or Output lines capable of generating true or false values Blackfin 533 has 16 GPIO lines Blackfin BF533 I/O 4

2 Where are the GPIO pins found on the board? (Shared with video PPI controller) GPIO lines are very useful They are used to sent control signals to many of the peripherals that are found on the Blackfin Evaluation Board. Video Control GPIO PF0 to PF7 Audio Control SPI interface (LAB. 4) Input -- Buttons GPIO PF8, 9, 10, 11 Output GPIO PF1, PF5, PF6, PF7 SPI interface LCD control line-- PF5 SPI interface Haptic Control line PF6 GPIO Pins are FUNCTIONALITY MULTIPLEXED pins can perform different functions at different times. (Same on ARM boards used in MPG) Blackfin BF533 I/O 5 Blackfin BF533 I/O 6 Additional I/O pins available Blackfin BF533 I/O 7 Used to control LED on board Controlled using special additional parallel port interface attached to flash memory chip CAR CONTROL PROJECT LED configuration LEDs used to INDICATE direction radio-controlled car will move. Not currently used to control the car (but could be done if needed a quick fix ). VIRTUAL CAR INTERFACE BACK / DONE LED 4 LEFT -- LED 3 FORWARD LED 2 BACK LED 1 CONTROL TURN CAR POWER SUPPLY ON LED 5 Blackfin BF533 I/O 8

3 BLACKFIN FLASH MEMORY UNIT Major task of this unit is to store the code need to boot (start) the processor 2 PSD4256G6V From STMicroElectronics The FLASH part we need during Lab. 1 Additional I/O pins 8 ports of 8 GPIO pins Blackfin BF533 I/O 9 LEDs connected to FLASH port LEFT FORWARD RIGHT BACK / DONE CAR POWER These pins are controlling other things on the board DON T CHANGE PB6_A, PB7_A BEHAVIOUR WHEN YOU CODE THE LED OPERATION (Remember ROW and RAW Use AND / OR instructions) Airplane falls from sky syndrome Blackfin BF533 I/O 10 4 Steps to activating LEDs 1. Get the FLASH memory to work correctly (set many FLASH registers) Write the code for InitFlashASM( ) 2. Get the FLASH I/O Port to work correctly as output for pins PB5 PB0, leaving other pins unchanged Write the code for InitFlashPortASM( ) 3. Write the value we want to LEDs WriteFlashLEDASM( int value) 4. Read back the value the LEDs show int ReadFlashLEDASM( ) for testing Blackfin BF533 I/O 11 BF533 FLASH MEMORY UNIT Controlled through EBIU External Bus Interface Unit EBIU are common on most processors (although often by different name) ASK ME ABOUT WAIL_INT and JIT_Knowledge FLASH OTHER PINS USED FOR SPECIAL CONTROL PURPOSES WAIL_INT! SDRAM CONTROLLER Blackfin BF533 I/O 12

4 Key information about EBIU Three busses come into the EBIU from the Blackfin processor core Forwards data to SDRAM and FLASH How does EBIUineterface logic KNOW whether which data values have to be send to FLASH unit (I/O) and which data values to the SDRAM units (memory store)????? (Control logic question on quiz / exams) SDRAM and FLASH In later laboratories We will build a stand-alone microcontroller system, which means we will need to understand how to program the flash memory so that the processor knows what to do when powered-up. Common practice on processors for the boot process to read start up code from FLASH We will need to process large data arrays too large to fit into the internal fast Blackfin L1 memory so they must be placed in SDRAM. Common practice on processors E-UNIT run out of memory problems In this laboratory, we need to program the extra FLASH chip I/O pins which are connected to the LED s control the lights now (virtual car video display), perhaps used to control real car later. Blackfin BF533 I/O 13 Blackfin BF533 I/O 14 What we (should) already know must happen! When the processor powers up it must read its boot program from the FLASH memory. See micro-controller lecture The processor does not know what sort of FLASH it will be connected to When processor powers up, it will assume that it is connected to slowest FLASH in existence. (common practice) The first part of the program the processor reads in (boot code) will change the processor memory control logic to read FLASH more efficiently (faster). Blackfin BF533 I/O 15 Controlling FLASH operation The EBIU control registers we need to worry about in Lab. 1 Blackfin EBIU (like most microcontroller peripherals) has a GLOBAL control register and one or more specific control registers COFFEEPOT and SPI interfaces have only 1 control register Blackfin BF533 I/O 16

5 Init_LED_GPIOInterface( ) -- Run once code Get the FLASH memory to work correctly Careful -- May be many processes (threads) running on the Blackfin evaluation board (e.g. Audio). All these processes (threads) may want to use the flash memory for other purposes meaning InitFlashCPP( ) may have already been called by another thread before your code uses it (or perhaps your code is run more than once) Set the Bank control register Reset value the way the processor powers up Will probably work as is but not efficient slow reads by default (common practice for hardware) FROM MANUAL Init_LED_GPIOInterface( ) { /* Concept only */ If FLASH memory already configured return without changing those other initializatiosn -- How can we know if already configured? -- Perhaps something changed during other initialization! Else { Configure Memory Bank control register for Lab. 1 THEN configure the Global control registers (turns on the FLASH) } This is an example of design using pseudo code } Blackfin BF533 I/O 17 Default Control Configuration Slow (15 cycles for each read and write operation) Blackfin BF533 I/O 18 Memory control access speed (default slow) Diagram often appears in quiz DEFAULT (Power up) Processor sends out address and waits 15 cycles before sending a do a read operation command to memory. The processor waits another 15 cycles before the actual read occurs. Blackfin BF533 I/O 19 Set General Control Register Reset value (Processor power up state) leaves CLKOUT disabled is that important? (Meaning do WE have to turn peripheral on (set bit 0) to 1)?) RAW and ROW What parts of the register (which bits) register must we know Unanswered at this time. We don t know what bits are critical NOT to change. SO CHANGE USING AND and OR instructions when setting All Banks enabled Blackfin BF533 I/O 20

6 Init_LED_GPIOInterface( ) InitFlashPortCPP( ) Get the Port to work correctly as output for pins PB5 PB0, leaving other pins unchanged. (Set as Output to control the lights) Get the Port to work correctly as output for pins PB5 PB0, leaving other pin behaviour (6 and 7) unchanged. (Use AND and OR instructions) C++ and ASM WARNING These are BYTE registers -- HDWK Documentation says the Flash Direction register allows you to choose whether the pin works as an in pin or works as an out pin (common practice) ASK ME ABOUT THE IMPORTANCE OF -- HDWK CHANGE INTERFACING FROM ASM TO CPP CODE WARNING STARTS AT 0 BOTH BIT AND LED NAMES Name of OUR part BITS LED 5 Leftmost on Blackfin panel LED 4 LED 3 LED 2 LED 1 LED0 Rightmost Used during Write and Read operations Write 1 to a bit -- turn on Write 0 to a bit -- turn off All informa from th evaluat kit hardwa manua Blackfin BF533 I/O 21 Blackfin BF533 I/O 22 Key issues -- Init_LED_GPIOInterface() FUNCTION MUST DO -- Set direction to 1 (output) on lower 6 pins connected to LEDs, leaving other direction values unchanged NEED TO REVIEW ENCM369 OR assembly code instruction needed 8 bit values (byte) READ, USE OR, WRITE (ROW) Direction registers common on most I/O peripherals (devices) Read EBIU direction register into processor core data register (makes a copy) (HOW?) Set another processor data register to 0x3F (b ). Need to know basic binary and hexadecimal patterns for common numbers decimal confusing when used to show on and off values no calculators allowed in exams and quizzes Perform OR operation on the two data registers (HOW?) Write modified copy back into direction register (HOW?) PROBLEM to solve How do we do byte read and writes to Blackfin memory using C++ and do OR s? Blackfin BF533 I/O 23 CHANGE INTERFACING FROM ASM TO CPP CODE Write_LED_GPIOInterface( ) FUNCTION MUST DO -- Write 1 (on) or 0 (off) to the Port to activate LEDs connected to pins PB5 PB0, leaving other pins on that port unchanged in value. (common practice) BITS LED 5 Leftmost LED 4 LED 3 LED 2 LED 1 LED0 ROW and RAW needed CHANGE INTERFACING FROM ASM TO CPP CODE Blackfin BF533 I/O 24

7 Key issues Write_LED_GPIOInterface( input_value) FUNCTION MUST DO -- Write 1 (on) or 0 (off) to the Port to activate LEDs connected to pins PB5 PB0, leaving other pins unchanged. HOW TO DO THIS OPERATION 1. Read 8-bit BYTE LED data register into 32-bit processor data register (makes a copy in R1) 2. Keep top 2 bits (AND operation) of copied value (8 bit) in 32-bit register 3. Keep bottom 6 bits of in-par 32-bit in_value (R0) that is passed into the subroutine 4. OR operation on two processor data registers (R0, R1) 5. Write modified 32-bit copy back into LED data register 8-bit byte operation needed PROBLEM TO SOLVE : How to do byte (8) operations using word (32) sized register operations (Use all, rather than some, register bits often easier) EXAMPLE NOT YET BEING DONE IN HIGH LEVEL C++ Oips Blackfin BF533 I/O 25 PPP: We have reduced the number of things we STILL need to learn how to do How do we put a 32-bit value (long int) into a register (data Rn or pointer Pn)? How do we put an 8 or 32-bit value into memory? How do we handle byte operations (8-bit)? How do we do AND and OR operations on Blackfin? Do these both in ASM and CPP? How similar is Blackfin to MIPS when handling these issues (ENCM369)? Meaning can we use ENCM369 ideas with the Blackfin? (Can we remember how to do the equivalent operations on MIPS?) Blackfin BF533 I/O 26 Agenda tackled Processors need to send out control signals General purpose input / output GPIO on processor Not enough GPIO lines FLASH memory chip has additional I/O ports connected to Ez-Lite KIT LED s What do we need to have happen to make the FLASH memory work as we want? What new Blackfin assembly language instructions do we need to learn? Blackfin BF533 I/O 27

Getting the O in I/O to work on a typical microcontroller

Getting the O in I/O to work on a typical microcontroller Getting the O in I/O to work on a typical microcontroller Ideas of how to send output signals to the radio controlled car. The theory behind the LED controller used in the Familiarization Lab Agenda Processors

More information

Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto

Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto Discussion of the capabilities of the Analog Devices ADSP-5333 Evaluation Board used in this course M. Smith, ECE

More information

Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto

Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto Discussion of the capabilities of the Analog Devices ADSP-5333 Evaluation Board used in this course M. Smith, ECE

More information

Microcontroller Not just a case of you say tomarto and I say tomayto

Microcontroller Not just a case of you say tomarto and I say tomayto Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto M. Smith, ECE University of Calgary, Canada Information taken from Analog Devices On-line Manuals with permission

More information

Laboratory 1 Manual V1.2 1 st September 2007 Developing a Blackfin GPIO interface using an automated embedded testing environment

Laboratory 1 Manual V1.2 1 st September 2007 Developing a Blackfin GPIO interface using an automated embedded testing environment Laboratory 1 Manual V1.2 1 st September 2007 Developing a Blackfin GPIO interface using an automated embedded testing environment These pages are cut-and-paste from the Lab. 1 web-pages. I have not spent

More information

ENCM511 Assignment 1 Version 16 September 2012

ENCM511 Assignment 1 Version 16 September 2012 ENCM511 Assignment 1 Version 16 September 2012 This is an individual assignment, essentially a take home quiz. This means the purpose behind this assignment is for YOU to show the skills learnt during

More information

Building a COFFEE POT simulation on CCESS for Blackfin BF533

Building a COFFEE POT simulation on CCESS for Blackfin BF533 Building a COFFEE POT simulation on CCESS 2.6.0 for Blackfin BF533 Last lecture covered some detailed ideas Let step back and do something simpler to get an introduction of ideas needed for Lab0 and Assignment

More information

Laboratory: Introduction to Mechatronics. Instructor TA: Edgar Martinez Soberanes Lab 2. PIC and Programming

Laboratory: Introduction to Mechatronics. Instructor TA: Edgar Martinez Soberanes Lab 2. PIC and Programming Laboratory: Introduction to Mechatronics Instructor TA: Edgar Martinez Soberanes (eem370@mail.usask.ca) 2015-01-12 Lab 2. PIC and Programming Lab Sessions Lab 1. Introduction Read manual and become familiar

More information

Graduate Institute of Electronics Engineering, NTU 9/16/2004

Graduate Institute of Electronics Engineering, NTU 9/16/2004 / 9/16/2004 ACCESS IC LAB Overview of DSP Processor Current Status of NTU DSP Laboratory (E1-304) Course outline of Programmable DSP Lab Lab handout and final project DSP processor is a specially designed

More information

A look at interrupts Dispatch_Tasks ( )

A look at interrupts Dispatch_Tasks ( ) SHOWS WHERE S FIT IN A look at interrupts Dispatch_Tasks ( ) What are interrupts and why are they needed in an embedded system? Equally as important how are these ideas handled on the Blackfin Assignment

More information

Automated Testing Environment

Automated Testing Environment Automated Testing Environment Concepts required for testing embedded systems adopted in this course (quizzes, assignments and laboratories) 1 To be tackled today Why test, and what kinds of tests are there?

More information

Blackfin ADSP-BF533 External Bus Interface Unit (EBIU)

Blackfin ADSP-BF533 External Bus Interface Unit (EBIU) The World Leader in High Performance Signal Processing Solutions Blackfin ADSP-BF533 External Bus Interface Unit (EBIU) Support Email: china.dsp@analog.com ADSP-BF533 Block Diagram Core Timer 64 L1 Instruction

More information

By the end of Class. Outline. Homework 5. C8051F020 Block Diagram (pg 18) Pseudo-code for Lab 1-2 due as part of prelab

By the end of Class. Outline. Homework 5. C8051F020 Block Diagram (pg 18) Pseudo-code for Lab 1-2 due as part of prelab By the end of Class Pseudo-code for Lab 1-2 due as part of prelab Homework #5 on website due before next class Outline Introduce Lab 1-2 Counting Timers on C8051 Interrupts Laboratory Worksheet #05 Copy

More information

If we can just send 1 signal correctly over the SPI MOSI line, then Lab 4 will work!!!

If we can just send 1 signal correctly over the SPI MOSI line, then Lab 4 will work!!! If we can just send 1 signal correctly over the SPI MOSI line, then Lab 4 will work!!! Design and implementation details on the way to a valid SPI-LCD interface driver Slides 3 to 13 are old versions of

More information

Working with the Compute Block

Working with the Compute Block Tackled today Working with the Compute Block M. R. Smith, ECE University of Calgary Canada Problems with using I-ALU as an integer processor TigerSHARC processor architecture What features are available

More information

EE 354 Fall 2015 Lecture 1 Architecture and Introduction

EE 354 Fall 2015 Lecture 1 Architecture and Introduction EE 354 Fall 2015 Lecture 1 Architecture and Introduction Note: Much of these notes are taken from the book: The definitive Guide to ARM Cortex M3 and Cortex M4 Processors by Joseph Yiu, third edition,

More information

All these things are discussed today QUICK REVIEW QUIZ 1 / Midterm

All these things are discussed today QUICK REVIEW QUIZ 1 / Midterm All these things are discussed today QUICK REVIEW QUIZ 1 / Midterm VIP (Very Important Points) from Micro controller v Microprocessor lecture Microcontroller MUST be able to talk to many devices and receive

More information

Laboratory IV LCD Framebuffer

Laboratory IV LCD Framebuffer Introduction Laboratory IV In this laboratory you will explore different ways of creating video images. There are four projects. In the first one you will create an image on the fly using PAL macros to

More information

The World Leader in High Performance Signal Processing Solutions. DSP Processors

The World Leader in High Performance Signal Processing Solutions. DSP Processors The World Leader in High Performance Signal Processing Solutions DSP Processors NDA required until November 11, 2008 Analog Devices Processors Broad Choice of DSPs Blackfin Media Enabled, 16/32- bit fixed

More information

I2C and SPI Foundation

I2C and SPI Foundation Revision 30 September 2010 Release I2C and SPI Foundation 17 March 2018 changed ref: command f to x Introduction I2C (I squared C) and SPI (Serial peripheral Interface) are two main ways that microcontrollers

More information

Lecture 5: Computing Platforms. Asbjørn Djupdal ARM Norway, IDI NTNU 2013 TDT

Lecture 5: Computing Platforms. Asbjørn Djupdal ARM Norway, IDI NTNU 2013 TDT 1 Lecture 5: Computing Platforms Asbjørn Djupdal ARM Norway, IDI NTNU 2013 2 Lecture overview Bus based systems Timing diagrams Bus protocols Various busses Basic I/O devices RAM Custom logic FPGA Debug

More information

Lab Experiment 9: LCD Display

Lab Experiment 9: LCD Display Lab Experiment 9: LCD Display 1 Introduction Liquid Crystal Displays (LCDs) provide an effective way for processors to communicate with the outside world. The LPC2148 board used in the lab is equipped

More information

A First Look at Microprocessors

A First Look at Microprocessors A First Look at Microprocessors using the The General Prototype Computer (GPC) model Part 4 Ports CPU Ecosystem All CPUs need RAM, ROM, a clock source and reset circuit, and power. Power Supply 1 Vio Vcore

More information

Programming the CME11E9-EVBU, Keypad, and LCD

Programming the CME11E9-EVBU, Keypad, and LCD EE3306 Programming the CME11E9-EVBU, Keypad, and LCD The purpose of this lab is to become familiar with the Motorola 68HC11 Lab Trainer kit, related software (Buffalo monitor, TExaS simulator) and learn

More information

ECE2049 E17 Lecture 4 MSP430 Architecture & Intro to Digital I/O

ECE2049 E17 Lecture 4 MSP430 Architecture & Intro to Digital I/O ECE2049-E17 Lecture 4 1 ECE2049 E17 Lecture 4 MSP430 Architecture & Intro to Digital I/O Administrivia Homework 1: Due today by 7pm o Either place in box in ECE office or give to me o Office hours tonight!

More information

8051 Microcontrollers

8051 Microcontrollers 8051 Microcontrollers Richa Upadhyay Prabhu NMIMS s MPSTME richa.upadhyay@nmims.edu March 8, 2016 Controller vs Processor Controller vs Processor Introduction to 8051 Micro-controller In 1981,Intel corporation

More information

Programming the CME11E9-EVBU, Keypad, and LCD

Programming the CME11E9-EVBU, Keypad, and LCD EE-3306 Programming the CME11E9-EVBU, Keypad, and LCD The purpose of this lab is to become familiar with the Motorola 68HC11 Lab Trainer kit, related software (Buffalo monitor, TExaS simulator) and learn

More information

ADSP-BF533 EZ-KIT Lite Evaluation System Manual

ADSP-BF533 EZ-KIT Lite Evaluation System Manual ADSP-BF5 EZ-KIT Lite Evaluation System Manual Revision., July 0 Part Number 8-00070-0 Analog Devices, Inc. One Technology Way Norwood, Mass. 006-906 a Copyright Information 0 Analog Devices, Inc., ALL

More information

Before Class Install SDCC Instructions in Installing_SiLabs-SDCC- Drivers document. Solutions to Number Systems Worksheet. Announcements.

Before Class Install SDCC Instructions in Installing_SiLabs-SDCC- Drivers document. Solutions to Number Systems Worksheet. Announcements. August 15, 2016 Before Class Install SDCC Instructions in Installing_SiLabs-SDCC- Drivers document Install SiLabs Instructions in Installing_SiLabs-SDCC- Drivers document Install SecureCRT On LMS, also

More information

University of Florida EEL 4744 Spring 2011 Dr. Eric M. Schwartz Department of Electrical & Computer Engineering 31 March Apr-11 1:29 PM

University of Florida EEL 4744 Spring 2011 Dr. Eric M. Schwartz Department of Electrical & Computer Engineering 31 March Apr-11 1:29 PM University of Florida EE 4744 Spring 2011 Dr. Eric M. Schwartz Page 1/15 Exam 2 Go Gators! Instructions: Turn off cell phones beepers and other noise making devices. Show all work on the front of the test

More information

Syllabus for Bachelor of Technology. Computer Engineering. Subject Code: 01CE0501. Subject Name: Microprocessor Fundamentals & Programming

Syllabus for Bachelor of Technology. Computer Engineering. Subject Code: 01CE0501. Subject Name: Microprocessor Fundamentals & Programming Subject Code: 01CE0501 Subject Name: Microprocessor Fundamentals & Programming B.Tech. Year - III Objective: The objective of the course is to expose to the students to the architecture and instruction

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

GRAPHICS LCD INTERFACING WITH 8051

GRAPHICS LCD INTERFACING WITH 8051 GRAPHICS LCD INTERFACING WITH 8051 It may require some graphics image to be displayed in 8051 based products through a monochrome bitmap LCD. This is considered to be a complex task because of its bus

More information

Exam 1. Date: February 23, 2016

Exam 1. Date: February 23, 2016 Exam 1 Date: February 23, 2016 UT EID: Printed Name: Last, First Your signature is your promise that you have not cheated and will not cheat on this exam, nor will you help others to cheat on this exam:

More information

EECS 373 Practice Midterm / Homework #3 Fall 2014

EECS 373 Practice Midterm / Homework #3 Fall 2014 Exam #: EECS 373 Practice Midterm / Homework #3 Fall 2014 Name: Uniquename: Sign the honor code: I have neither given nor received aid on this exam nor observed anyone else doing so. Scores: Problem #

More information

Table of Contents. ENCM511 Assignment 1 Marking Scheme Want to drive the real car on the A301 track later in the term. It can be arranged, but

Table of Contents. ENCM511 Assignment 1 Marking Scheme Want to drive the real car on the A301 track later in the term. It can be arranged, but Assignment 1 V3 Final 1 st October 2013 P age 1 Assignment 1 V3 Final 1 st October 2013 P age 2 YOUR NAME LAB. Section Table of Contents ENCM511 Assignment 1 V2 We shall drive a virtual car during this

More information

Physics 364, Fall 2012, Lab #9 (Introduction to microprocessor programming with the Arduino) Lab for Monday, November 5

Physics 364, Fall 2012, Lab #9 (Introduction to microprocessor programming with the Arduino) Lab for Monday, November 5 Physics 364, Fall 2012, Lab #9 (Introduction to microprocessor programming with the Arduino) Lab for Monday, November 5 Up until this point we have been working with discrete digital components. Every

More information

The QR code here provides a shortcut to go to the course webpage.

The QR code here provides a shortcut to go to the course webpage. Welcome to this MSc Lab Experiment. All my teaching materials for this Lab-based module are also available on the webpage: www.ee.ic.ac.uk/pcheung/teaching/msc_experiment/ The QR code here provides a shortcut

More information

EMBEDDED SYSTEM FOR VIDEO AND SIGNAL PROCESSING

EMBEDDED SYSTEM FOR VIDEO AND SIGNAL PROCESSING EMBEDDED SYSTEM FOR VIDEO AND SIGNAL PROCESSING Slavy Georgiev Mihov 1, Dimitar Stoykov Dimitrov 2, Krasimir Angelov Stoyanov 3, Doycho Dimitrov Doychev 4 1, 4 Faculty of Electronic Engineering and Technologies,

More information

address ALU the operation opcode ACC Acc memory address

address ALU the operation opcode ACC Acc memory address In this lecture, we will look at how storage (or memory) works with processor in a computer system. This is in preparation for the next lecture, in which we will examine how a microprocessor actually works

More information

ME 475 Lab2 Introduction of PIC and Programming. Instructor: Zhen Wang

ME 475 Lab2 Introduction of PIC and Programming. Instructor: Zhen Wang ME 475 Lab2 Introduction of PIC and Programming Instructor: Zhen Wang 2013.1.25 Outline Lecture Introduction of PIC microcontroller Programming cycle Read CH5 Programming guidelines Read CH6 Sample program

More information

Product Technical Brief S3C2412 Rev 2.2, Apr. 2006

Product Technical Brief S3C2412 Rev 2.2, Apr. 2006 Product Technical Brief S3C2412 Rev 2.2, Apr. 2006 Overview SAMSUNG's S3C2412 is a Derivative product of S3C2410A. S3C2412 is designed to provide hand-held devices and general applications with cost-effective,

More information

Designing with ALTERA SoC Hardware

Designing with ALTERA SoC Hardware Designing with ALTERA SoC Hardware Course Description This course provides all theoretical and practical know-how to design ALTERA SoC devices under Quartus II software. The course combines 60% theory

More information

In this lecture, we will look at how storage (or memory) works with processor in a computer system. This is in preparation for the next lecture, in

In this lecture, we will look at how storage (or memory) works with processor in a computer system. This is in preparation for the next lecture, in In this lecture, we will look at how storage (or memory) works with processor in a computer system. This is in preparation for the next lecture, in which we will examine how a microprocessor actually works

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

ECE2049: Embedded Computing in Engineering Design A Term Fall Lecture #9: Exam Review w/ Solutions

ECE2049: Embedded Computing in Engineering Design A Term Fall Lecture #9: Exam Review w/ Solutions ECE2049: Embedded Computing in Engineering Design A Term Fall 2018 Lecture #9: Exam Review w/ Solutions Reading for Today: Review all reading and notes, Davies Ch 1, 2, 4,7, MSP430 User's Guide Ch 6.1,

More information

Lecture (01) Introducing Embedded Systems and the Microcontrollers By: Dr. Ahmed ElShafee

Lecture (01) Introducing Embedded Systems and the Microcontrollers By: Dr. Ahmed ElShafee Lecture (01) Introducing Embedded Systems and the Microcontrollers By: Dr. Ahmed ElShafee ١ Agenda What is microprocessor system? What is Microcontroller/embedded system? Definition of Embedded Systems

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

A Quickie Introduction to the Windows Based 68K Assembler EASy68K

A Quickie Introduction to the Windows Based 68K Assembler EASy68K A Quickie Introduction to the Windows Based 68K Assembler EASy68K You now have a number of options to assemble your code for your microcontroller. One option, of course, is to assemble it by hand, using

More information

Embedded Systems Laboratory Manual ARM 9 TDMI

Embedded Systems Laboratory Manual ARM 9 TDMI Embedded Systems Laboratory Manual ARM 9 TDMI 1. Laboratory Rules a) Laboratory assessment: Presence during the laboratory is mandatory. One time unexcused absence is allowed within the semester. Students

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 # 03 September 21, 2010 Dohn Bowden 1 Today s Lecture Syllabus review Microcontroller Hardware and/or Interface Programming/Software Lab Homework

More information

Lab 5: LCD and A/D: Digital Voltmeter

Lab 5: LCD and A/D: Digital Voltmeter Page 1/5 OBJECTIVES Learn how to use C (as an alternative to Assembly) in your programs. Learn how to control and interface an LCD panel to a microprocessor. Learn how to use analog-to-digital conversion

More information

Diploma in Embedded Systems

Diploma in Embedded Systems Diploma in Embedded Systems Duration: 5 Months[5 days a week,3 hours a day, Total 300 hours] Module 1: 8051 Microcontroller in Assemble Language Characteristics of Embedded System Overview of 8051 Family

More information

Lab. 2 Overview. Echo Switches to LED to test LEDs and Switches. How would you handle a more complex set of embedded tests

Lab. 2 Overview. Echo Switches to LED to test LEDs and Switches. How would you handle a more complex set of embedded tests Lab. 2 Overview Echo Switches to LED to test LEDs and Switches volatile unsigned char GPIOvalue; // In embedded systems ALL Global variable must be // made volatile (change-able) to reflect they are //

More information

E3940 Microprocessor Systems Laboratory. Introduction to the Z80

E3940 Microprocessor Systems Laboratory. Introduction to the Z80 E3940 Microprocessor Systems Laboratory Introduction to the Z80 Andrew T. Campbell comet.columbia.edu/~campbell campbell@comet.columbia.edu E3940 Microprocessor Systems Laboratory Page 1 Z80 Laboratory

More information

WATCHDOG TIMER ISR DEVELOPMENT TDD APPROACH

WATCHDOG TIMER ISR DEVELOPMENT TDD APPROACH WATCHDOG TIMER ISR DEVELOPMENT TDD APPROACH Through the use of user stories You can use a very similar approach when testing your CORE_TIMER ISR during Assignment 2 When developing the coffeepot Water

More information

Lab 5: LCD and A/D: Digital Voltmeter

Lab 5: LCD and A/D: Digital Voltmeter Page 1/5 OBJECTIVES Learn how to use C (as an alternative to Assembly) in your programs. Learn how to control and interface an LCD panel to a microprocessor. Learn how to use analog-to-digital conversion

More information

Topic 3. ARM Cortex M3(i) Memory Management and Access. Department of Electronics Academic Year 14/15. (ver )

Topic 3. ARM Cortex M3(i) Memory Management and Access. Department of Electronics Academic Year 14/15. (ver ) Topic 3 ARM Cortex M3(i) Memory Management and Access Department of Electronics Academic Year 14/15 (ver 25-10-2014) Index 3.1. Memory maps 3.2. Memory expansion 3.3. Memory management & Data alignment

More information

Time now to look at how main causes the three LaunchPad LEDs to flash in sequence.

Time now to look at how main causes the three LaunchPad LEDs to flash in sequence. Time now to look at how main causes the three LaunchPad LEDs to flash in sequence. Here is main again (Figure 1). Figure 1 main listing from Lab2 I ve already covered the #include statements and the basic

More information

University of Florida EEL 4744 Spring 2014 Dr. Eric M. Schwartz Department of Electrical & Computer Engineering 1 April Apr-14 9:03 AM

University of Florida EEL 4744 Spring 2014 Dr. Eric M. Schwartz Department of Electrical & Computer Engineering 1 April Apr-14 9:03 AM Page 1/15 Exam 2 Instructions: Turn off cell phones beepers and other noise making devices. BEAT UCONN! Show all work on the front of the test papers. If you need more room make a clearly indicated note

More information

ECE251: Thursday November 8

ECE251: Thursday November 8 ECE251: Thursday November 8 Universal Asynchronous Receiver & Transmitter Text Chapter 22, Sections 22.1.1-22.1.4-read carefully TM4C Data Sheet Section 14-no need to read this A key topic but not a lab

More information

ADSP-BF533 EZ-KIT Lite Evaluation System Manual

ADSP-BF533 EZ-KIT Lite Evaluation System Manual ADSP-BF5 EZ-KIT Lite Evaluation System Manual Revision., April 00 Part Number 8-00070-0 Analog Devices, Inc. One Technology Way Norwood, Mass. 006-906 a Copyright Information 00 Analog Devices, Inc., ALL

More information

Name EGR 2131 Lab #6 Number Representation and Arithmetic Circuits

Name EGR 2131 Lab #6 Number Representation and Arithmetic Circuits Name EGR 2131 Lab #6 Number Representation and Arithmetic Circuits Equipment and Components Quartus software and Altera DE2-115 board PART 1: Number Representation in Microsoft Calculator. First, let s

More information

Basic I/O Interface

Basic I/O Interface Basic I/O Interface - 8255 11 3 THE PROGRAMMABLE PERIPHERAL 82C55 programmable peripheral interface (PPI) is a popular, low-cost interface component found in many applications. The PPI has 24 pins for

More information

Product Technical Brief S3C2413 Rev 2.2, Apr. 2006

Product Technical Brief S3C2413 Rev 2.2, Apr. 2006 Product Technical Brief Rev 2.2, Apr. 2006 Overview SAMSUNG's is a Derivative product of S3C2410A. is designed to provide hand-held devices and general applications with cost-effective, low-power, and

More information

Embedded and Ambient Systems Laboratory

Embedded and Ambient Systems Laboratory Budapest University of Technology and Economics Faculty of Electrical Engineering and Informatics Department of Automation and Applied Informatics Embedded and control systems specialization Embedded and

More information

An introduction to Digital Signal Processors (DSP) Using the C55xx family

An introduction to Digital Signal Processors (DSP) Using the C55xx family An introduction to Digital Signal Processors (DSP) Using the C55xx family Group status (~2 minutes each) 5 groups stand up What processor(s) you are using Wireless? If so, what technologies/chips are you

More information

EECS150 - Digital Design Lecture 17 Memory 2

EECS150 - Digital Design Lecture 17 Memory 2 EECS150 - Digital Design Lecture 17 Memory 2 October 22, 2002 John Wawrzynek Fall 2002 EECS150 Lec17-mem2 Page 1 SDRAM Recap General Characteristics Optimized for high density and therefore low cost/bit

More information

Generating Rectify( ) Test driven development approach to TigerSHARC

Generating Rectify( ) Test driven development approach to TigerSHARC Generating Rectify( ) Test driven development approach to TigerSHARC assembly code production Assembly code examples Part 1 of 3 Concepts Concepts of C++ stubs Forcing the test to fail test of test Generating

More information

Programming with Arrays Intro to Pointers CS 16: Solving Problems with Computers I Lecture #11

Programming with Arrays Intro to Pointers CS 16: Solving Problems with Computers I Lecture #11 Programming with Arrays Intro to Pointers CS 16: Solving Problems with Computers I Lecture #11 Ziad Matni Dept. of Computer Science, UCSB Thursday, 5/17 in this classroom Starts at 2:00 PM **SHARP** Please

More information

Because of the diverse requirements of the UT satellite projects, a general purpose flight software running on a mature, reliable operating system

Because of the diverse requirements of the UT satellite projects, a general purpose flight software running on a mature, reliable operating system Jahshan Bhatti Because of the diverse requirements of the UT satellite projects, a general purpose flight software running on a mature, reliable operating system was needed. Originally a fork of the Linux

More information

Microcontroller Systems. ELET 3232 Topic 11: General Memory Interfacing

Microcontroller Systems. ELET 3232 Topic 11: General Memory Interfacing Microcontroller Systems ELET 3232 Topic 11: General Memory Interfacing 1 Objectives To become familiar with the concepts of memory expansion and the data and address bus To design embedded systems circuits

More information

ECE2049-E18 Lecture 6 Notes 1. ECE2049: Embedded Computing in Engineering Design E Term Lecture #6: Exam Review

ECE2049-E18 Lecture 6 Notes 1. ECE2049: Embedded Computing in Engineering Design E Term Lecture #6: Exam Review ECE2049-E18 Lecture 6 Notes 1 ECE2049: Embedded Computing in Engineering Design E Term 2018 Lecture #6: Exam Review Administrivia Exam 1: Next Tuesday (6/5) HW4: Short assignment, due Tuesday Lab 1: Due

More information

acret Ameya Centre for Robotics & Embedded Technology Syllabus for Diploma in Embedded Systems (Total Eight Modules-4 Months -320 Hrs.

acret Ameya Centre for Robotics & Embedded Technology Syllabus for Diploma in Embedded Systems (Total Eight Modules-4 Months -320 Hrs. acret Ameya Centre for Robotics & Embedded Technology Syllabus for Diploma in Embedded Systems (Total Eight Modules-4 Months -320 Hrs.) Module 0 Introduction Introduction to Embedded Systems, Real Time

More information

MICROPROCESSOR BASED SYSTEM DESIGN

MICROPROCESSOR BASED SYSTEM DESIGN MICROPROCESSOR BASED SYSTEM DESIGN Lecture 5 Xmega 128 B1: Architecture MUHAMMAD AMIR YOUSAF VON NEUMAN ARCHITECTURE CPU Memory Execution unit ALU Registers Both data and instructions at the same system

More information

LAB #1: The CSM12C32 Module and PBMCUSLK Project Board

LAB #1: The CSM12C32 Module and PBMCUSLK Project Board CS/EE 5780/6780 Handout #1 Spring 2007 Myers LAB #1: The CSM12C32 Module and PBMCUSLK Project Board Lab writeup is due to your TA at the beginning of your next scheduled lab. Don t put this off to the

More information

Lab Objectives. 2. Preparations. 3. Signing in. 4. Examining the Host Environment. 5. Part A: Introduction to AVR Studio. 5.

Lab Objectives. 2. Preparations. 3. Signing in. 4. Examining the Host Environment. 5. Part A: Introduction to AVR Studio. 5. Lab 0 1. Objectives Learn how to use AVR studio, an Integrated Development Environment (IDE) for developing AVR applications in Windows environments, to debug and run an AVR assembly program. Understand

More information

1. Internal Architecture of 8085 Microprocessor

1. Internal Architecture of 8085 Microprocessor 1. Internal Architecture of 8085 Microprocessor Control Unit Generates signals within up to carry out the instruction, which has been decoded. In reality causes certain connections between blocks of the

More information

Real Time Embedded Systems. Lecture 10 January 31, 2012 Interrupts

Real Time Embedded Systems.  Lecture 10 January 31, 2012 Interrupts Interrupts Real Time Embedded Systems www.atomicrhubarb.com/embedded Lecture 10 January 31, 2012 Interrupts Section Topic Where in the books Catsoulis chapter 1 (pg 10-12) Simon chapter4 Zilog UM197 (ZNEO

More information

DEPARTMENT OF ECE QUESTION BANK SUBJECT: MICROPROCESSOR AND MICROCONTROLLER UNIT-1 PART-A (2 MARKS)

DEPARTMENT OF ECE QUESTION BANK SUBJECT: MICROPROCESSOR AND MICROCONTROLLER UNIT-1 PART-A (2 MARKS) DEPARTMENT OF ECE QUESTION BANK SUBJECT: MICROPROCESSOR AND MICROCONTROLLER CODE: EC6504 UNIT-1 1. How many memory locations are available in 8086 microprocessor? 2. What are the flags available in 8086

More information

FiO Lite Datasheet FEATURES SAMPLE APPLICATIONS. FiO Lite

FiO Lite Datasheet FEATURES SAMPLE APPLICATIONS. FiO Lite FiO Lite Datasheet FEATURES Built-in RapidSTM native-support bootloader. ARM -bits Cortex TM M Processor (STMF0R) - 0MIPS maximum speed - 0 KBytes SRAM - 5 GPIO - channels -bit, µs ADC - USART, SPI, I

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

STM32F100RB processor GPIO notes rev 2

STM32F100RB processor GPIO notes rev 2 STM32F100RB processor GPIO notes rev 2 ST Microelectronics company ARM based processors are considered microcontrollers because in addition to the CPU and memory they include timer functions and extensive

More information

E85 Lab 8: Assembly Language

E85 Lab 8: Assembly Language E85 Lab 8: Assembly Language E85 Spring 2016 Due: 4/6/16 Overview: This lab is focused on assembly programming. Assembly language serves as a bridge between the machine code we will need to understand

More information

Contents. Slide Set 1. About these slides. Outline of Slide Set 1. Typographical conventions: Italics. Typographical conventions. About these slides

Contents. Slide Set 1. About these slides. Outline of Slide Set 1. Typographical conventions: Italics. Typographical conventions. About these slides Slide Set 1 for ENCM 369 Winter 2014 Lecture Section 01 Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary Winter Term, 2014 ENCM 369 W14 Section

More information

CENG 336 INT. TO EMBEDDED SYSTEMS DEVELOPMENT. Spring 2006

CENG 336 INT. TO EMBEDDED SYSTEMS DEVELOPMENT. Spring 2006 CENG 336 INT. TO EMBEDDED SYSTEMS DEVELOPMENT Spring 2006 Recitation 01 21.02.2006 CEng336 1 OUTLINE LAB & Recitation Program PIC Architecture Overview PIC Instruction Set PIC Assembly Code Structure 21.02.2006

More information

COMP2121 Introductory Experiment

COMP2121 Introductory Experiment COMP2121 Introductory Experiment Objectives: In this introductory experiment, you will: Learn how to use AVR studio, an Integrated Development Environment (IDE) for developing AVR applications in Windows

More information

Computer Principles and Components 1

Computer Principles and Components 1 Computer Principles and Components 1 Course Map This module provides an overview of the hardware and software environment being used throughout the course. Introduction Computer Principles and Components

More information

AGH University of Science and Technology Cracow Department of Electronics

AGH University of Science and Technology Cracow Department of Electronics AGH University of Science and Technology Cracow Department of Electronics Microcontroller Lab Tutorial 1 Microcontrollers programming in C Author: Paweł Russek http://www.fpga.agh.edu.pl/ml ver. 3.10.16

More information

ECE 471 Embedded Systems Lecture 2

ECE 471 Embedded Systems Lecture 2 ECE 471 Embedded Systems Lecture 2 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 7 September 2018 Announcements Reminder: The class notes are posted to the website. HW#1 will

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

Real Time Embedded Systems. Lecture 1 January 17, 2012

Real Time Embedded Systems.  Lecture 1 January 17, 2012 Low-Power & Reset Real Time Embedded Systems www.atomicrhubarb.com/embedded Lecture 1 January 17, 2012 Topic Section Topic Where in the books Catsoulis chapter/page Simon chapter/page Zilog UM197 (ZNEO

More information

EE324: Microcontrollers and Interfacing. Office Hours: Mon, Wed, to 11.30am. Microcontrollers and Interfacing

EE324: Microcontrollers and Interfacing. Office Hours: Mon, Wed, to 11.30am. Microcontrollers and Interfacing EE324: Microcontrollers and Interfacing Instructor s Name: Mohammad Jahangir Ikram Office No. & Email: 9-317A jikram@lums.edu.pk Office Hours: Mon, Wed, 10.00 to 11.30am Category: Junior TA for the Course:

More information

EE 231 Fall Lab 2: Decoders and Multiplexers. Introduction

EE 231 Fall Lab 2: Decoders and Multiplexers. Introduction Lab 2: Decoders and Multiplexers Introduction Decoders and multiplexers are important combinational circuits in many logic designs. Decoders convert n inputs to a maximum of unique 2 n outputs. A special

More information

Chapter 1 Microprocessor architecture ECE 3120 Dr. Mohamed Mahmoud http://iweb.tntech.edu/mmahmoud/ mmahmoud@tntech.edu Outline 1.1 Computer hardware organization 1.1.1 Number System 1.1.2 Computer hardware

More information

SPI (Serial & Peripheral Interface)

SPI (Serial & Peripheral Interface) SPI (Serial & Peripheral Interface) What is SPI SPI is a high-speed, full-duplex bus that uses a minimum of 3 wires to exchange data. The popularity of this bus rose when SD cards (and its variants ie:

More information

Introduction to Lab. 3

Introduction to Lab. 3 Solving a Lab 1 Issue Introduction to Lab. 3 Also includes Solving a Lab. 1 issues Using the graphics LCD with your assignment 1 Rediscuss the Watchdog timer for Assignment 2 Many people have said My Enable

More information

Description of the Simulator

Description of the Simulator Description of the Simulator The simulator includes a small sub-set of the full instruction set normally found with this style of processor. It includes advanced instructions such as CALL, RET, INT and

More information

Microcontroller & Interfacing

Microcontroller & Interfacing Course Title Course Code Microcontroller & Interfacing EC406 Lecture : 3 Course Credit Practical : 1 Tutorial : 0 Total : 4 Course Objective At the end of the course the students will be able to Understand

More information

I2C interface Tutorial

I2C interface Tutorial UG108: Praxis II January 2013 Asian Institute of Technology Undergraduate Program Handout: I2C interface Instructor: Chaiyaporn Silawatchananai, Matthew N. Dailey I2C interface Tutorial Introduction: In

More information