Decoding Barcodes Various approaches. Decoding barcodes There are a number of ways of decoding the barcodes –The data can be polled –The data can be read.

Slides:



Advertisements
Similar presentations
Interrupts How to do 2 things at the same time. Need for interrupts Computers often have to deal with asynchronous events. That is to say events that.
Advertisements

Jordan Barry Victor Brzeski
The 8051 Microcontroller and Embedded Systems
Dr A Sahu Dept of Computer Science & Engineering IIT Guwahati.
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
Slide 1 Freescale Semiconductor. Freescale™ and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are.
Timers in Hardware ECE152. Overview Why are timers important – Watchdog – Task switching – Accurate time of day Can use polling or interrupts.
Debouncing Switches Mechanical switches are one of the most common interfaces to a uC. Switch inputs are asynchronous to the uC and are not electrically.
1 Lecture 6 Performance Measurement and Improvement.
6-1 I/O Methods I/O – Transfer of data between memory of the system and the I/O device Most devices operate asynchronously from the CPU Most methods involve.
7-1 Digital Serial Input/Output Two basic approaches  Synchronous shared common clock signal all devices synchronised with the shared clock signal data.
Timers and Interrupts Shivendu Bhushan Summer Camp ‘13.
Renesas Electronics America Inc. © 2011 Renesas Electronics America Inc. All rights reserved. RX210 Multi-Function Pin Controller (MPC) Ver
The Processor Data Path & Control Chapter 5 Part 1 - Introduction and Single Clock Cycle Design N. Guydosh 2/29/04.
ASPPRATECH.
Computer Architecture Lecture 12 Fasih ur Rehman.
Timers and Interrupts Shivendu Bhushan Sonu Agarwal.
Micro-operations Are the functional, or atomic, operations of a processor. A single micro-operation generally involves a transfer between registers, transfer.
LSU 10/22/2004Serial I/O1 Programming Unit, Lecture 5.
Slides created by: Professor Ian G. Harris Test and Debugging  Controllability and observability are required Controllability Ability to control sources.
Modified OSI Architecture for Low-Power Wireless Networks
LabVIEW Program and Data Flow Review LabVIEW Robotics Fundamentals.
System Clocks.
Agenda Principal Consultant, SharePoint Development Team Lead John Ramminger Linked In:
Teachers Name : Suman Sarker Telecommunication Technology Subject Name : Microcontroller & Embedded System Subject Code : 6871 Semester : 7th Department.
3-1 Digital I/O A group of I/O pins is called a PORT  A port is where data enters/leaves the system. Digital I/O pins are usually grouped into 8,16 or.
MCU: Interrupts and Timers Ganesh Pitchiah. What’s an MCU ?
Project Specific Success Criteria 1)An ability to quantify the position of the glove relative to the processing unit. 2)An ability to combine finger press.
ECE 447 Fall 2009 Lecture 10: TI MSP430 Timers and Capture Modes.
Senior Project Presentation: Designers: Shreya Prasad & Heather Smith Advisor: Dr. Vinod Prasad May 6th, 2003 Internal Hardware Design of a Microcontroller.
ECE 447: Lecture 8 Timer System (1). ECE 447: 68HC11 Timer System 1.Generating delays - imposing a specific delay between two points in the program by.
Example. SBUF Register SCON Register(1) SCON Register(2)
8279 KEYBOARD AND DISPLAY INTERFACING
Timer Timer is a device, which counts the input at regular interval (δT) using clock pulses at its input. The counts increment on each pulse and store.
1 Lecture on Lab 6 Lab 7 Lab 8. 2 Lab 6: Open Loop Controller As you learned in lab 5, there are two kinds of control systems: open loop and closed loop.
Accessing I/O Devices Processor Memory BUS I/O Device 1 I/O Device 2.
ATtiny23131 A SEMINAR ON AVR MICROCONTROLLER ATtiny2313.
Timers and Interrupts Anurag Dwivedi. Let Us Revise.
CE Operating Systems Lecture 2 Low level hardware support for operating systems.
80386DX functional Block Diagram PIN Description Register set Flags Physical address space Data types.
12/16/  List the elements of 8255A Programmable Peripheral Interface (PPI)  Explain its various operating modes  Develop a simple program to.
8279 KEYBOARD AND DISPLAY INTERFACING
CE Operating Systems Lecture 2 Low level hardware support for operating systems.
Apollo Guidance Computer Using a Programmable System on a Chip Shane Whalen Advisor: Dr.Andrezj Rucinski.
CIT 673 Created by Suriyong1 Micro controller hardware architechture.
TIMERS AND INTERRUPTS AVI SINGH KEVIN JOSE PIYUSH AWASTHI.
Teaching Digital Logic courses with Altera Technology
PULSE WIDITH MODULATION EE 587 Presented by Viswanadha Kakarlapudi.
MODULE 5 INTEL TODAY WE ARE GOING TO DISCUSS ABOUT, FEATURES OF 8086 LOGICAL PIN DIAGRAM INTERNAL ARCHITECTURE REGISTERS AND FLAGS OPERATING MODES.
Chapter Microcontroller
8255:Programmable Peripheral Interface
Seth Schwiethale James Crosetto James Ellison.  square pulse of ms, repeats every 20 ms  It is the same for both steering and acceleration 
Processor Organization and Architecture Module III.
Aditya Dayal M. Tech, VLSI Design ITM University, Gwalior.
IC 4017 Pin Configuration And Application
One more PIC18F252 example and revision for exam B222L Branislav Vuksanovic, UoP, ECE.
Digital Sound Projection ECE 477 Group 6 Software Narrative Steve Anderson Mike Goldfarb Shao-Fu Shih Josh Smith.
Microcontrollers, Basics Tips and Tricks with PIC MCUs
Lecture 8: TI MSP430 Interrupts, ISRs
CS501 Advanced Computer Architecture
Code review: GPIO, timer, and ISR
CS4101 Introduction to Embedded Systems Lab 1: General Purpose IO
Interrupt Source: under
National Tsing Hua University CS4101 Introduction to Embedded Systems Lab 2: Timer and Clock Prof. Chung-Ta King Department of Computer Science National.
National Tsing Hua University CS4101 Introduction to Embedded Systems Lab 3: Interrupt Prof. Chung-Ta King Department of Computer Science National Tsing.
eV-TEK Andrew Phillips Ben Laskowski Rob Swanson Shannon Abrell
CS4101 Introduction to Embedded Systems Lab 2: Basic IO and Timer
The Programmable Peripheral Interface (8255A)
Presentation transcript:

Decoding Barcodes Various approaches

Decoding barcodes There are a number of ways of decoding the barcodes –The data can be polled –The data can be read on interrupt –The data can be sampled

Polling Repeatedly test the port B bit for state change, then –Store time value for the change Requires Port B set up and clock running Locks up the board, or risks data lose through multiple polling Data will require a lot of filtering

Port B Registers

Minos code to program port B

Program port B at low level

Timer Registers

Timer code

Interrupt driven code 2 possible sources for the interrupt –The bar code wand pin – Port B –The timer – Timer 2 The timer is only really needed if you require a time out to abort the read Requires some careful setting up of the various peripherals and care with the order of the code

Interrupt driven code Uses the resources of the board very well Once implemented properly it is a very elegant and simple solution Will allow other activities to take place on the board Can generate noisy data Can be difficult to debug

Interrupt Code

Coding using sampling This is an alternative interrupt driven method Rather than use the Port B interrupts it uses the timer to sample the Port B input Can use various settings for the timer The data read is just a count of 0s or 1s

Coding using sampling Allows flexibility in that sample rate is easy to change Only 1 source of interrupt – so is fairly simple Data read is very simple and easy to organise

Sampling Code