Professional Documents
Culture Documents
Agenda
1. Microprocessor-based Embedded Systems 2. Microcontrollers 3. Skybot Robot
Computers
When you hear the word computer, you always think of a desktop computer:
Embedded Computers
Every electronic or electromechanical system has a computer (or many) embedded in it:
It is stored in non-volatile memory (Flash, ROM) At most they have a simple operating system, but in most cases the have no OS at all A embedded system is a real time computer
Continually react to changes in the systems environment
Reliability is a must
In most embedded systems a software crash is simply not allowed, e.g. ABS brake system or DVD player
Microprocessor-based Digital Systems
A Little History
One of the first embedded systems was the Apollo Guidance Computer, started in 1962:
James Benefer, Designing an optimal wireless SoC, EET October 11th 2004
Microprocessor-based Digital Systems
10
Multiprocessing:
A general purpose processor together with a DSP, and also there might be custom co-processors (e.g. MPEG-4)
Plenty of peripherals:
General-purpose (Timers, INTC, UART) as well as specific ones (HDD, Memory Card, Wireless, USB) Platform-based design
Microprocessor-based Digital Systems
11
The average middle-class American household has about 40 to 50 microprocessors in it Another 10 microprocessors are in every PC The Mercedes S-class has 65
Microprocessor-based Digital Systems
12
Bluetooth RF System-on-Chip: Product Design Challenges and Tradeoffs Andreas Sibrai and Vjekoslav Matic, TechOnLine Jan. 28, 2004
Microprocessor-based Digital Systems
13
14
15
16
The best solution is not the most complex, is the one that optimizes the tradeoff between all the different design metrics
Microprocessor-based Digital Systems
17
Design Metrics
Cost
Unit cost: The cost of manufacturing each unit (just the component and assembly costs) NRE (Non-Recurring Engineering Cost): The one-time cost of designing the system (includes prototyping)
Performance
Most important: Ability to work in real time Time to give a response to the user (e.g. navigation system)
Physical Constraints
Size Power
18
19
Microcontrollers
20
Definition
A microcontroller is an integrated circuit or chip that includes the three functional units of a computer:
Central Processing Unit Memory Input/Output and/or peripherals
21
Definition
Microcontrollers are usually designed for specific applications
Price and power consumption are important Each application has different needs
22
23
Components of a Microcontroller
24
Components of a Microcontroller
Memory unit
Store the program instructions and temporal data Program memory is not usually bigger than 16 K-words of nonvolatile memory Data memory, typically SRAM, is not usually bigger than 5 Kilobytes
25
Components of a Microcontroller
Buses
There are two types of buses: address and data
Address bus contains the position to be read or write Data bus contains the data to be read or write
Input/Output units
Also known as ports There are three types of ports:
Input Output Bidirectionals
26
Components of a Microcontroller
Timer
Provides a time reference for timing, counting, etc. It is basically a counter
A register which value is incremented each clock cycle Take the value before and after a task to calculate the execution time of the task
Communications
Peripherals to communicate with the outside world Parallel, serial, USB, CAN, Ethernet, etc.
Microprocessor-based Digital Systems
27
Components of a Microcontroller
Watchdog
Internal timer Helps to detect if
If the microcontroller is stopped The program is not working correctly
28
Microcontrollers Vendors
29
Microcontrollers Shapes
30
Sistema Skybot
31
Skybot Descripcin
Sistema abierto para el desarrollo completo de robots Software multiplataforma Estructura metacrilato con dos motores de CC Sensores:
2 sensores de contacto Hasta 4 fotodetectores 1 LDR 1 Rele
Electrnica:
CPU: Skypic (Microcontrolador PIC) Tarjeta de potencia: Sky293 (L293)
Microprocessor-based Digital Systems
32
Skybot Descripcin
Sensores de luz
Sensores de contacto
Sensores de infrarrojos
33
Skybot Ejemplos
Sigue lneas
Mogolln
34
35
36
37
38
La Skypic aade a este circuito: Conversor TTL->RS232 LED de pruebas Pulsador de pruebas Conexin ICD2 Bus I2C
39
Skypic Interfaces
40
41
Sky293 Interfaces
42
Software
Para programar el Skybot necesitamos las siguientes herramientas:
SDCC: Compilador de C para microcontroladores PIC GPUTILS: Utilidades para microcontroladores PIC Pydownloader: Descarga de programas a la Skypic Skybot-test: Programa de diagnsticos para Skybot
43
44
Conexin al PC
45
Programas
Programmers Notepad: Editor - Compilador
46
Programas
Pydownloader: Descarga Skybot-test: Prueba del robot
47
Manuales y referencias
Descripcin del robot Skybot
http://www.iearobotics.com/wiki/index.php?title=Skybot
Manuales de programacin
http://www.iearobotics.com/wiki/index.php?title=Taller_Skybot:Sesion4:Programaci%C3%B3n_del_Skybot http://www.iearobotics.com/wiki/index.php?title=Programaci%C3%B3n_del_PIC16_en_C
Manual de la Skypic
http://www.iearobotics.com/wiki/index.php?title=Skypic
Manual de la Sky293
http://www.iearobotics.com/proyectos/sky293/sky293.html
Microprocessor-based Digital Systems
48