Principles of Computers 9th Lecture

Slides:



Advertisements
Similar presentations
COMPUTER BASICS Module Review.
Advertisements

ECP2036 Microprocessor and Interfacing
History of Microprocessors and Microcontrollers Lecture 1.1.
A Brief History of Microprocessors Module M13.1 Sections 1.1, 9.1.
Purdue University - RHIT Department How Technology Affects Us u Knowledge –Knowledge Explosion - Knowledge is doubling every 18 months to 2 years u Careers.
Anatomy of a Game CTIN 463 John Hight
Introduction to Computers CSC 1401: Introduction to Programming with Java Lecture 1 Wanda M. Kunkle.
Memory; Sequential & Clocked Circuits; Finite State Machines COS 116: 3/25/2008 Sanjeev Arora.
History of Microprocessors and Microcontrollers Lecture 1.1.
1 CS402 PPP # 1 Computer Architecture Evolution. 2 John Von Neuman original concept.
Presented By Chandra Shekar Reddy.Y 11/5/20081Computer Architecture & Design.
Chapter 1 Sections 1.1 – 1.3 Dr. Iyad F. Jafar Introduction.
1 KEYBOARD. 2 Structure  Is standard input device Arrangement of keys IC Integrated Circuit.
Computer performance.
SECTION 4B CPUs Used in Personal Computers. This lesson introduces: A Look Inside the Processor Microcomputer Processors Parallel Processing Extending.
GRAP 3175 Computer Applications for Drafting Unit IV Computer Classifications.
Processing Devices.
Computer Architecture and Organization
BLOCK DIAGRAM OF COMPUTER
Digital Systems Design L01 Introduction.1 Digital Systems Design Lecture 01: Introduction Adapted from: Mary Jane Irwin ( )
How circuits acquire memory: Sequential & Clocked Circuits. COS 116, Spring 2011 Sanjeev Arora.
Introduction to Humanities Computing Spring 1999 Lecture Three.
Computer Organization & Assembly Language
Inside a Mouse The main goal of any mouse is to translate the motion of your hand into signals that the computer can use. Almost all mice today do the.
History of Computers 1950 to Present. IBM 701 Digital Computer Corp.
Introduction Chapter 1. 1 History of Computers Development of computers began with many early inventions: The abacus helped early societies perform computations.
Computer Architecture and Organization Introduction.
Pre-Pentium Intel Processors /
Mohammad Amin Kuhail M.Sc. (York, UK) University of Palestine Faculty of Engineering and Urban planning Software Engineering Department Digital Logic Design.
Autonomous Helicopter James LydenEE 496Harris Okazaki.
Microprocessor & Interfacing Techniques. HISTORY OF MICROPROCESSORS  Computers are accessible to ever-increasing sectors of the world's population. 
The History of the Computer By: Ben Bredeson. Fun Facts The computer was invented by many people. The computer was invented by many people. Each part.
Computer Organization & Assembly Language © by DR. M. Amer.
A Brief History of Microprocessors Lecture L11.0 Sections 1.1, 9.1.
©Richard L. Goldman 1 Microprocessors (Animated Presentation) ©Richard L. Goldman April 25, 2002.
Generations of Computers
History of Computers The Computer Industry: History, Careers, and Ethics 1.
BMOW is a Custom CPU Design Like your PC’s Pentium, but much simpler Closest cousin is the MOS 6502 used in the Apple II, C-64, and Atari VCS =
Visual Communications
CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Principles of Computers 14 th Lecture Pavel Ježek, Ph.D.
CSIE30300 Computer Architecture Unit 01: Introduction Hsin-Chou Chi [Adapted from material by and
CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Principles of Computers 11 th Lecture Pavel Ježek, Ph.D.
CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Principles of Computers 19 th Lecture Pavel Ježek, Ph.D.
Information Age “An in depth look at the exciting history of the Calculator and Computer”
Evolution of the Computer. Zeroth Generation- Mechanical 1.Blaise Pascal –Mechanical calculator only perform Von Leibiniz –Mechanical.
CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Principles of Computers 12 th Lecture Pavel Ježek, Ph.D.
Done By: Huraiz AlGaoud. The mouse Mouse: It is a handheld pointing device that lets you select or move items on your screen. Mouse pad: provides a smooth.
10/15: Lecture Topics Input/Output –Types of I/O Devices –How devices communicate with the rest of the system communicating with the processor communicating.
UNDERSTANDING COMPUTERS From the Beginning: History of the Computer.
TV Remote As A Wireless Mouse For PC.
Spring 2008 Mark Fontenot CSE Honors Principles of Computer Science I Note Set 11.
HISTORY OF COMPUTER TECHNOLOGY By: Parveer Grewal.
Microprocessors (Animated Presentation)
Kućna računala s početka 80-ih Home PCs - the beginning of the 1980s
HISTORY OF COMPUTER AND DEVELOPMENT BY: OMAR MAZHAR
Principles of Computers 18th Lecture
Principles of Computers 16th Lecture
A Brief History of PCs Lisa Smith September 15, 1999.
Introduction to Computers and the internet
Computer Applications
Binary Code  
برجاء ان لا تستخدم عجلة الفأرة فضلاً إستخدم الزر الأيسر للفأرة
ECEG-3202 Computer Architecture and Organization
8051 Supplement.
کاربرد کامپیوتر.
ECEG-3202 Computer Architecture and Organization
History of Computers - Long, Long Ago
History of Computers.
财务管理案例教学法 研究及示例 ——王遐昌 2006/11/10.
Principles of Computers 14th Lecture
Presentation transcript:

Principles of Computers 9th Lecture Pavel Ježek, Ph.D. pavel.jezek@d3s.mff.cuni.cz

Inside RS-232 Ball & Wheel Mouse

Inside RS-232 Ball & Wheel Mouse (higher contrast for lecture)

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 0 1 1 1 1 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 0 0 1 1 1 1 1 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 0 0 0 1 1 1 1 1 1 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 0 0 0 0 1 1 1 0 1 1 1 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 0 0 0 0 0 1 1 1 0 0 1 1 1 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 0 0 0 0 0 0 1 1 1 0 0 0 1 1 1 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 1 1 1 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 1 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 1 1 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 1 1 1 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 0 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 0 0 0 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 1 0 0 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 0 0 0 0 0 sensor 2 current value sensor 2 value history

Opto-mechanical Axis Sensors sensor 1 current value sensor 1 value history 0 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 sensor 2 current value sensor 2 value history

ball & wheel mouse logic registers (packet data) RS-232 Mouse Structure RS-232 data out RS-232 bus interface X axis Y axis ball & wheel mouse logic “magic” done via wiring registers (packet data) byte1 byte2 byte3 byte4 wheel Middle Button Right Button Left Button

RS-232 Mouse Firmware – Using GPIO Registers DATA OUT GPIO(0) X sensor 1 X sensor 2 Y sensor 1 Y sensor 2 W sensor 1 W sensor 2 RS-232 data out RS-232 bus interface X axis Y axis ball & wheel mouse logic “magic” done via wiring registers (packet data) byte1 byte2 byte3 byte4 wheel Middle Button GPIO(1) Middle Btn Right Btn Left Btn Right Button Left Button

RS-232 Mouse Firmware – Two Distinct Algorithms GPIO(2) DATA OUT GPIO(0) X sensor 1 X sensor 2 Y sensor 1 Y sensor 2 W sensor 1 W sensor 2 data (bit) transmit algorithm (B) RS-232 data out RS-232 bus interface X axis Y axis ball & wheel mouse logic gathering (measuring) input changes & calculating deltas algorithm (A) registers (packet data) byte1 byte2 byte3 byte4 wheel Middle Button GPIO(1) Middle Btn Right Btn Left Btn Right Button Left Button

gathering (measuring) input changes & calculating deltas algorithm (A) RS-232 Mouse Firmware – Implementing Algorithm B (Specific for RS-232 Bus, BUT NOT Specific for Ball Mouse – Would Work for Optical Mouse As Well) GPIO(2) DATA OUT GPIO(0) X sensor 1 X sensor 2 Y sensor 1 Y sensor 2 W sensor 1 W sensor 2 RS-232 data out RS-232 bus interface byteId bitId X axis Y axis ball & wheel mouse logic gathering (measuring) input changes & calculating deltas algorithm (A) registers (packet data) byte1 byte2 byte3 byte4 wheel Middle Button GPIO(1) Middle Btn Right Btn Left Btn Right Button Left Button

ball & wheel mouse logic registers (packet data) Ball Mouse Firmware – Implementing Algorithm A (part 2) (IS NOT RS-232 Specific!) GPIO(2) DATA OUT GPIO(0) X sensor 1 X sensor 2 Y sensor 1 Y sensor 2 W sensor 1 W sensor 2 data (bit) transmit algorithm (B) RS-232 data out RS-232 bus interface X axis Y axis ball & wheel mouse logic registers (packet data) byte1 byte2 byte3 byte4 wheel Middle Button current change data x y w buttons GPIO(1) Middle Btn Right Btn Left Btn Right Button Left Button

ball & wheel mouse logic registers (packet data) Ball Mouse Firmware – Implementing Algorithm A (parts 1 & 2) (IS NOT RS-232 Specific!) GPIO(2) DATA OUT GPIO(0) X sensor 1 X sensor 2 Y sensor 1 Y sensor 2 W sensor 1 W sensor 2 data (bit) transmit algorithm (B) RS-232 data out RS-232 bus interface X axis Y axis ball & wheel mouse logic oldX oldY oldW newX newY newW registers (packet data) byte1 byte2 byte3 byte4 wheel Middle Button current change data x y w buttons GPIO(1) Middle Btn Right Btn Left Btn Right Button Left Button prevPacketButtons

RS-232 Mouse Firmware Structure (All Together) GPIO(2) DATA OUT GPIO(0) X sensor 1 X sensor 2 Y sensor 1 Y sensor 2 W sensor 1 W sensor 2 RS-232 data out RS-232 bus interface byteId bitId X axis Y axis ball & wheel mouse logic oldX oldY oldW newX newY newW registers (packet data) byte1 byte2 byte3 byte4 wheel Middle Button current change data x y w buttons GPIO(1) Middle Btn Right Btn Left Btn Right Button Left Button prevPacketButtons

RS-232 Mouse Firmware Algorithms GPIO(2) DATA OUT GPIO(0) X sensor 1 X sensor 2 Y sensor 1 Y sensor 2 W sensor 1 W sensor 2 data (bit) transmit algorithm RS-232 data out RS-232 bus interface byteId bitId X axis Y axis ball & wheel mouse logic oldX oldY oldW newX newY newW gathering (measuring) input changes & calculating deltas algorithm registers (packet data) byte1 byte2 byte3 byte4 wheel Middle Button current change data x y w buttons GPIO(1) Middle Btn Right Btn Left Btn Right Button Left Button prevPacketButtons

History UNIVAC (1951)

History UNIVAC (1951) Altair 8800 (1974) Intel 8080

History UNIVAC (1951) Altair 8800 (1974) Intel 8080 Apple I (1976) MOS 6502

History UNIVAC (1951) Altair 8800 (1974) Intel 8080 Apple I (1976) Apple II (1977) MOS 6502

History UNIVAC (1951) Altair 8800 (1974) Intel 8080 Apple I (1976) Apple II (1977) MOS 6502 MOS 6502 Atari 2600 (1977) Atari 800 (1979)

History UNIVAC (1951) Altair 8800 (1974) Intel 8080 Apple I (1976) Apple II (1977) MOS 6502 MOS 6502 Atari 2600 (1977) Atari 800 (1979) Atari 800XE (1985)

History UNIVAC (1951) Altair 8800 (1974) Commodore 6502 ZX Spectrum Zilog Z80 Intel 8080 Tesla PMD 85 8080 Apple I (1976) Apple II (1977) MOS 6502 MOS 6502 Atari 2600 (1977) Atari 800 (1979) Atari 800XE (1985)

History UNIVAC (1951) Altair 8800 (1974) Commodore 6502 ZX Spectrum Zilog Z80 Intel 8080 Tesla PMD 85 8080 Apple I (1976) Apple II (1977) MOS 6502 MOS 6502 Atari 2600 (1977) Atari 800 (1979) Atari 800XE (1985) IBM PC (1981) Intel 8088

History UNIVAC (1951) Altair 8800 (1974) Commodore 6502 ZX Spectrum Zilog Z80 Intel 8080 Tesla PMD 85 8080 Apple I (1976) Apple II (1977) MOS 6502 MOS 6502 Atari 2600 (1977) Atari 800 (1979) Atari 800XE (1985) IBM PC (1981) PC 2015 Intel 8088 Intel i3/i5/i7