Microcontroladores. 1 Microprocessadores x Microcontroladores Microprocessadores: Microcontroladores: 2 Microcontrolador x DSP



Documentos relacionados
Arquitetura de Computadores. Prof. João Bosco Jr.

Projeto de Sistemas Embarcados

Conjunto de Instruções e Modelos de Arquiteturas

Introdução à Organização de Computadores. Aula 8

Conjunto de Instruções e Modelos de Arquiteturas

Microcontrolador PIC 16F877

Introdução aos microcontroladores Microcontroladores e microprocessadores Tecnologia em Manutenção Industrial

Palestra de Tecnologia. Assunto: Microcontroladores.

Sistemas Embarcados:

Microcontrolador 8051:

1.1 Noções básicas sobre interrupções em Microcontroladores

6. Estrutura do Programa em Assembly

Microcontroladores PIC

Introdução ao PIC. Guilherme Luiz Moritz 1. 6 de novembro de DAELT - Universidade Tecnológica Federal do Paraná

C:\seminario\guiao_aluno\trab6\trab6.asm

INTRODUÇÃO: MICROCONTROLADORES

Cerne. Conhecimento para o Desenvolvimento. Cerne Tecnologia e Treinamento

Objetivos MICROCONTROLADORES HARDWARE. Microcontroladores I. Prof. Mauricio. Micro-I Prof. Mauricio 1. Microcontroladores PIC. Requisitos de Hardware

Professor: Vlademir de Oliveira Disciplina: Microcontroladores e DSP. Memórias de Dados e de Programa

Placa McLab1 Upgrade PIC16F84A p/ PIC16F62x

Interrupção Externa. Capítulo 1. Noções básicas sobre interrupções em Microcontroladores PIC

Microcontrolador 8051

Marcelo Fernandes Valter Rodrigues de Jesus Junior. Thermal Control

Eder Terceiro. Programação C com o PIC16F628a. Eder Terceiro. 31 de Outubro de 2016

Sequencial Supermáquina (TEMPORIZAÇÃO SIMPLES)

PIC. PeripheralInterface Controller. Prof. EngºespLuiz Antonio Vargas Pinto Prof. Vargas

ENGENHARIA DE SISTEMAS MICROPROCESSADOS

BANKSEL ADCON1 clrf ADCON1 bsf ADCON1,ADFM ; seta AD para VCC, GND e entradas analogicas, setando o bit ADFM configura como justificado a direita

1.1. Microprocessadores e microcontroladores Sistemas genéricos e sistemas dedicados. 2. Microcontrolador PIC:

OMPLAB é um programa para PC, que roda sobre a

Cerne. Conhecimento para o Desenvolvimento. Cerne Tecnologia e Treinamento. Apostila de BASIC para PIC16F628A

Arquitetura do Disciplina de Microcontroladores. Prof. Ronnier Prof. Rubão

ARQUITETURA DE PROCESSAMENTO

Programa Trainee 2012 Módulo 4 Microcontroladores AVR

SISTEMAS MICROCONTROLADOS

5. Conjunto de Instruções do MCU PIC

Aula 10 Microcontrolador Intel 8051 Parte 1

Cerne. Conhecimento para o Desenvolvimento. Cerne Tecnologia e Treinamento

MSP430 - Arquitertura

Microcontroladores. Prof. Nivaldo T. Schiefler Jr. M.Eng Homepage:

07/06/2015. Outras características importantes em Microprocessadores/Microcontroladores SEL-433 APLICAÇÕES DE MICROPROCESSADORES I

Curso de Microcontroladores PIC 16F84A

Aula 4. Engenharia de Sistemas Embarcados. Prof. Abel Guilhermino Tópico: Arquitetura de um microcontrolador 8051

SEL-433 Aplicação de Microprocessadores I. Prof: Adilson Gonzaga

14/3/2016. Prof. Evandro L. L. Rodrigues

Objetivos MICROCONTROLADORES HARDWARE. Aula 03: Periféricos. Prof. Mauricio. MICRO I Prof. Mauricio 1. Arquitetura de um Microcontrolador

Sistemas Microcontrolados

Estrutura Básica de um Computador

Cerne. Conhecimento para o Desenvolvimento. Cerne Tecnologia e Treinamento

ARDUINO. Profº. Engº. Robson Dias Ramalho

Família 8051 (introdução) 2011/1

Hardware Parte I. Fábio Rodrigues de la Rocha

Prof. Adilson Gonzaga

Microprocessadores e Microcontroladores. Professor Lucas Araujo do Nascimento

Sistemas Digitais e Microcontrolados

SEL-433 APLICAÇÕES DE MICROPROCESSADORES I

Microprocessadores. São máquinas elétricas onde podemos armazenar instruções lógicas, aritméticas e de tomada de decisão;

Introdução aos Microcontroladores PIC

Jadsonlee da Silva Sá

Aplicações Avançadas de Microprocessadores. Professor: Marco Shawn Meireles Machado

Sistemas Digitais e Microcontrolados

Organização de Memórias

AULA2 Introdução a Microcontrolador. Disciplina: Aplicações Avançadas de Microprocessadores (AAM)

9/3/2009. Aula 4. Engenharia de Sistemas Embarcados. Cenário: Sistema de Controle de LEDs

Sistemas Microcontrolados. Período Aula 4. 1 Saulo O. D. Luiz

Servo-Motor. por. Nuno Monteiro & Gabriel Dinis Eng. Electrotécnica, UTAD Junho de nuno_monteiro@portugalmail.com gabrieldinis@portugalmail.

Sistemas Microcontrolados

PIC16F628a. Pinagem do PIC16F628a:

AULA1 Introdução a Microprocessadores gerais. Disciplina: Aplicações Avançadas de Microprocessadores (AAM)

Família de Microcontroladores AVR

FACULDADE LEÃO SAMPAIO

Microcontroladores e Microprocessadores

V1 5V +V. (14)Vdd (6)RB0 PIC 16F628A. (16) Clk-out. C1 33pF. C2 33pF. Figura 1 Circuito pisca-pisca.

Circuito Eletrônico. Entendendo o circuito eletrônico na robótica. domingo, 28 de agosto de 11

Microcontrolador PIC: Conceitos Básicos

Microcontroladores: Programação em C

SEL 0415 INTROD. À ORGANIZAÇÃO DE COMPUTADORES

Prof. Adilson Gonzaga

Placa de desenvolvimento USB AFSmartBoard utiliza PIC18F4550 da Microchip, microcontrolador com o Flash 32kb, 2048 bytes de memória RAM

Interrupção. Prof. Adilson Gonzaga

Arquitetura do Microcontrolador Atmega 328

MICROCONTROLADORES PIC PRIMEIROS PASSOS

OMódulo Comparador Analógico consiste em um conjunto

Microprocessadores I. Aula 6 Arquitetura do Microprocessador Pinagem e Diagrama de Temporização

SEL-614 MICROPROCESSADORES E APLICAÇÕES. Adilson Gonzaga

1.ARQUITETURA INTERNA DE UM MICROPROCESSADOR

Laboratório de Hardware

Disc.: Sistemas Microprocessados Curso Técnico em Eletrônica

Microcontroladores PIC16 - XM 116 -

Modelo de Von Neumann

Sistemas Microcontrolados

Cerne Tecnologia e Treinamento (21) (11) MSN: Skipe: cerne-tec

01. Identifique o conjunto de portas de entrada A e o conjunto de portas B na figura abaixo.

EEC2104 Microprocessadores

SEL0338 Tópicos Especiais em Sistemas Digitais

4.3 - DMA & Chipset. CEFET-RS Curso de Eletrônica. Profs. Roberta Nobre & Sandro Silva. e

Construção de Robôs Jogadores de Futebol (2ª Parte)

DOUGLAS DAL POZZO DIEGO VITTI

Manual do Usuário. McMaster Desenvolvimento de Sistemas com Microcontroladores PIC

Transcrição:

1 Microprocessadores x Microcontroladores 1.1 - Microprocessadores: 1.2 - Microcontroladores: 2 Microcontrolador x DSP 3 Fabricantes e Famílias 4 Microchip 5 Microcontrolador PIC 16F84 5.1 Principais Características 5.2 Descrição Geral 5.3 Arquitetura 5.4 Pinagem 5.5 Memória 5.6 Registradores 5.7 Set de Instruções 5.8 Projeto de Hardware simples para teste 5.9 Exemplo de Programação 6 Motorola/Freescale 7 MC68HC908QT1 7.1 Descrição Geral 7.2 Diagrama em Blocos 7.3 Pinagem 7.4 Memória 7.5 Registradores 7.6 Set de Instruções 7.7 Projeto de Hardware simples para teste 7.8 Exemplo de Programação 1

1 - Microprocessadores x Microcontroladores 1.1 Microprocessadores: Exemplo Z-80 8 bits 8086 16 bits Pentium 32 bits Aplicação Utilização como CPU em microcomputadores de uso geral ou específicos. 2

1.1 Microprocessadores: Arquitetura Interna Registradores Uso Geral Uso Específico PC,SP,IR ALU Controle 3

1.1 Microprocessadores: Arquitetura Microcomputador Teclado Vídeo Mem RAM Mem PROM Circuitos de Interface B. dados CPU B. endereço B. Controle Microprocessador 4

1.1 Microprocessadores: 5

1.1 Microprocessadores: 6

1.1 Microprocessadores: 7

1.1 Microprocessadores: 8

1.2 Microcontroladores Exemplos Microchip PIC 16F84/ 16F877 Motorola MC68HC908QT1 Intel 8031 / 8051 Aplicação Utilização como CPU em sistemas embutidos, embarcados - sistemas dedicados. 9

1.2 Microcontroladores Arquitetura Interna Controle A/D ALU D/A Mem. Programa Mem. Dados RAM I/O Digital Mem. Dados E 2 PROM Controle Interrupção Watch Dog Timer 10

1.2 Microcontroladores - Características: A/D D/A I/O serial USB Ambiente de Programação Linguagens disponíveis Emulador Gravador / Programador Possibilidade de gravação na placa aplicativa 11

1.2 Microcontroladores Arquitetura de Sistemas Circuito V/F Circuito Robô 12

2 Microcontrolador x DSP 2.1 Principais Características dos Microcontroladores Memória de programa Flash / EPROM / E2PROM Memória de dados volátil RAM Memória de dados não volátil E2PROM RISC e CISC set de instruções Timers / Contadores Interrupções PWM I/O Digital A/D D/A 2.2 Principais Características dos DSP s Características similares aos microcontroladores porem com arquitetura voltada para processamento de sinais tipicamente implementação de filtros ativos e implementação de algoritmos de controles em poucas instruções. 13

3 - Fabricantes e Principais Famílias Intel 8051, MCS 51, MCS 96 Phillips LPC700, LPC900, LPC2000 Texas TMS370, MSP430 Motorola 68HCXX, 683XX, MPC500 Microchip PIC12CXXX, PIC16FXXX 14

4 Microchip Empresa Empresa dedicada a desenvolver microcontroladores MCU de 8-bit e memórias. As PICs combinam alta performance, baixo custo e reduzido tamanho, acarretando em ótima relação custo benefício. A Microchip fabrica mais de 100 milhões de PICs por ano, especialmente para periféricos de computadores, automação de escritórios, sistema de controle de automóveis, sistemas de segurança e aplicações em telecomunicações. Produtos - PICmicro Microcontrollers - dspic Digital Signal Controllers - Analog & Interface Products - Serial EEPROMS - Pb-Free Information - Battery Management - Radio Frequency Devices - KEELOQ Authentication Products 15

4 Microchip Familia de microcontroladores PIC: PIC 16FXXX 16

5 Microcontrolador PIC 16F84 5.1 - principais caracteristicas 17

5 Microcontrolador PIC 16F84 5.2 - Descrição geral Arquitetura RISC 8 níveis de STACK Barras de instrução e dados separados. Instrução 14-bit, Dados 8-bit A família PIC16CXX utiliza a arquitetura Harvard, onde programa e dados são acessados de memórias diferentes por barramentos diferentes. Utiliza PIPELINE (FETCH junto com execução) um ciclo de máquina para cada instrução. 16F84 Memória para Programa 1K x 14-bit Memória RAM 68 Bytes Memória EEPROM 64 Bytes Acesso direto e indireto a memória. Todos os registradores (incluindo PC) são mapeados na RAM. 4 formas de CLOCK, RC, LP, XTAL, HS HICH SPEED CRISTAL. Memória FLASH permite que o dispositivo seja usado para protótipo e produção. É possível programar sem remover da aplicação. (?) Baixo custo, baixo consumo, alta performance, flexibilidade de I/O Aplicável em controle de velocidade de motores, transmissor e receptor de freqüências, códigos de segurança, etc. Software MACRO-ASSEMBLER, C E FUZZY LOGIC 18

5 Microcontrolador PIC 16F84 5.3 - Arquitetura 19

5 Microcontrolador PIC 16F84 5.4 - Pinagem 20

5 Microcontrolador PIC 16F84 5.5 - Memoria PC de 13-bit porém memória de apenas 1K (0-3FF) RESET-PC = 0H INTERRUPÇÃO-PC = 04H 0H GO TO 100 ; Vá para 100 (end. Interrupção) 04H ;Início INT. 100H ;Início do programa. O PIC16CXX não possui STACK POINTER e sim um stack de 8 níveis. O operador deve gerenciar um máximo de 8 CALL s ou INT s. Memória de Dados: 2 Bancos selecionados por RP1 (sempre em 0) e RP0 Memória RAM 0CH e 4FH. 21

5 Microcontrolador PIC 16F84 5.5 - Memoria Memória de dados com SFR e RAM de uso geral no PIC16F84 22

5 Microcontrolador PIC 16F84 5.5 - Memoria Mapa de memória dos SFR do PIC16F84 23

5 Microcontrolador PIC 16F84 5.6 - Registradores Status 24

5 Microcontrolador PIC 16F84 5.6 - Registradores Option 25

5 Microcontrolador PIC 16F84 5.6 - Registradores Intcon 26

5 Microcontrolador PIC 16F84 5.6 - Registradores fusiveis 27

5 Microcontrolador PIC 16F84 5.7 Set de instruções 28

5 Microcontrolador PIC 16F84 5.7 Set de instruções 29

5.8 Exemplo de HARDWARE para teste 30

5.8 Exemplo de HARDWARE para teste 31

5.8 Exemplo de HARDWARE para teste 32

5.9 Exemplo de SOFTWARE 5.9.1 Rotina de tempo ;======================================================================== ; Progrma exemplo 1 para o livro "Microntroladores PIC" ; ; Objetivo: Estudar rotina de tempo baseada em software ; Funcionamento: Pisca o led 7 a cada 250ms ; Agosto/97 ;======================================================================== 16F84 list p=16f84 radix dec ;processador 16F84 ;define padrao DECIMAL para valores sem ;identificação include <P16F84.INC> 16F84 ;Anexa o arquivo que contem as definições do ;... ; Tabela de definições de RAM e constantes. W equ 0 ;referencia a W Led7 equ 7 ;led 7 esta em RB7 tempo equ 0CH ;variavel tempo RAM 0CH. (primeira posição) X equ 0DH Y equ 0EH ;----------------------Memoria de Programa--------------------------------- org 0 ;define inicio do trecho a seguir em 000 goto inicio ;desvia para o programa principal onde inicia pelo ;ajuste dos registros de controle. ;Este desvio tem por objetivo deixar o endereço ;004 para a rotina de interrupção. ;...INICIO DA ROTINA DE INTERRUPCAO... org 4 nop retfie ;primeira instrucao da interrupcao ;retorna da interrupcao 33

5.9 Exemplo de SOFTWARE 5.9.1 Rotina de tempo (Cont.) ;...INICIO DO PROGRAMA... inicio: movlw B 00000000 ;W=0 movwf INTCON ;este endereco eh o primeiro apos a interrupcao ;INTCON=0. Nenhuma interr habilitada bsf STATUS,RP0 ;seleciona banco 1 para option e tris movlw B 11011111 ; movwf OPTION_REG ;Registro OPTION ajusta timer 0 clock interno e ;prescaler para watchdog (nao usamos) movlw B 11111111 ;W=255 movwf TRISA ;TRISA=ffH. PORTA toda entrada movlw B 00000000 ;W=0 movwf TRISB ;TRISB=0. PORTB toda saida bcf STATUS,RP0 ;volto ao banco 0. Padrao do reset ;... principal: ;inicio do programa principal bcf PORTB,Led7 ;fazendo PORTB pino 7 = 0 acendo o Led 7 call ms250 ;espera 250ms bsf PORTB,Led7 ;fazendo PORTB pino 7 = 1 apaga o Led 7 call ms250 ;espera 250ms goto principal 34

5.9 Exemplo de SOFTWARE 5.9.1 Rotina de tempo (Cont.) ;...Rotina de tempo de 250ms... ms250: ; -0 CALL para a rotina leva 2us. movlw 250 ; +1 movwf tempo ; +1 total 1 = 4us ms250a: movlw 248 ; +1 movwf X ; +1 total 2 = 2us ms250b: nop ; 1 decfsz X ; 1 248x4us + (1us nop + 2us quando decfsz da 0) goto ms250b ; 2 da um tempo total 3 = 995us decfsz tempo ; 1 1us pq tempo > 0 + 2us goto da um total 4 = 3us goto ms250a ; 2 250x(total 2 + total 3 + total 4) + 2us quando ; tempo = 0 = total 5 = 250.002us return ;delay = total 1 + total 5 + 2us return = 250.008us END ;fim do program fonte Sobre a rotina de tempo: 4 + 250*(2 + 248*4 + 1 + 2 + 1 + 2) + 2 + 2 = 250.0008us 35

5.9 Exemplo de SOFTWARE 5.9.2 Rotina de deslocamento ;========================================================================= ; Progrma exemplo 2 para o livro "Microntroladores PIC" ; ; Objetivo: Estudar instrucoes de deslocamento ; Funcionamento: Pisca os leds 7 a 0, neta ordem, e repete. ; OS LEDS ASCENDEM EM 0. VER ESQUEMA ; Agosto/97 ;========================================================================= 16F84 list p=16f84 radix dec ;processador 16F84 ;define padrao DECIMAL para valores sem ;identificação include <P16F84.INC> ;Anexa o arquivo que contem as definições do 16F84 ;... ; Tabela de definições de RAM e constantes. W equ 0 ;referencia a W tempo equ 0CH ;variavel tempo RAM 0CH. (primeira posição) DT1 equ 0DH ;variavel auxiliar para tempo X equ 0EH Y equ 0FH ;----------------------Memoria de Programa--------------------------------- org 0 ;define inicio do trecho a seguir em 000 goto inicio ;desvia para o programa principal. ;...INICIO DA ROTINA DE INTERRUPCAO... org 4 nop retfie ;primeira instrucao da interrupcao ;retorna da interrupcao 36

5.9 Exemplo de SOFTWARE 5.9.2 Rotina de deslocamento (Cont.) ;...INICIO DO PROGRAMA... inicio: movlw B 00000000 ;W=0 movwf INTCON ;este endereco eh o primeiro apos a interrupcao ;INTCON=0. Nenhuma interr habilitada clrf PORTA ;inicializa portas A e B. clrf PORTB bsf STATUS,RP0 ;seleciona banco 1 para option e tris movlw B 11011111 ; movwf OPTION_REG ;Registro OPTION ajusta timer 0 clock interno e ;prescaler para watchdog (nao usamos) movlw B 11111111 ;W=255 movwf TRISA ;TRISA=ffH. PORTA toda entrada movlw B 00000000 ;W=0 movwf TRISB ;TRISB=0. PORTB toda saida bcf STATUS,RP0 ;volto ao banco 0. Padrao do reset ;... principal: ;inicio do programa principal movlw 255 ;W=11111111 movwf X ;X = W = 11111111 bcf STATUS,C ;bit Carry = 0 repete: rrf X ;desloca o valor em X para a direita. ;o bit 0 vai ao Carry e o Carry vai ao bit 7. btfss STATUS,C ;se C = 1 pula prox inst. goto principal ;Quando Carry = 0 acabou de deslocar 8 vezes. ;reinicia 37

5.9 Exemplo de SOFTWARE 5.9.2 Rotina de deslocamento (Cont.) movf X,W ;W = valor em X que sera escrito no PortB. ;ver instrucao MOVF f,d. Se d=0 escreve em W. ;Como atribuimos a W o valor 0, o compilador ;enxerga a instrucao como MOVF X,0 escreve; movwf PORTB ;PORTB = W = X call ms250 ;espera 250 ms goto repete ;Se Carry = 1 ainda não deslocou 8 vezes ;efetua novo deslocamento ;...Rotina de tempo de 250ms... ms250: ; -0 CALL para a rotina leva 2us. movlw 250 ; +1 movwf tempo ; +1 total 1 = 4us ms250a: movlw 248 ; +1 movwf Y ; +1 total 2 = 2us ms250b: nop ; 1 decfsz Y ; 1 248x4us + (1us nop + 2us quando decfsz da 0) goto ms250b ; 2 da um tempo total 3 = 995us decfsz tempo ; 1 1us pq tempo > 0 + 2us goto da um total 4 = 3us goto ms250a ; 2 250x(total 2 + total 3 + total 4) + 2us quando ; tempo = 0 = total 5 = 250.002us return ;delay = total 1 + total 5 + 2us return = 250.008us END ;fim do program fonte 38

6 Motorola / Freescale A Freescale, empresa a qual pertence a Motorola, é uma uma gigante do mercado de semicondutores cuja a produção tem o foco em produtos que atendam as indústrias automotivas e de comunicação. A empresa produz uma enorme gama de famílias de chips, que incluem microcontroladores de 8 e 16-bit, microprocessadores, DSPs, memórias, sensores e muitos outros. Algumas Famílias de produtos: - HC08; - HCS12; - ColdFire; - PowerPC; - ARM; 39

7 MC68HC908QT1 7.1 Descrição Geral Tensões de operação: 5-V and 3-V (VDD) Oscilador interno ajustável In-system FLASH programming 128 bytes de RAM interna 48 bytes of user-defined vectors, located in FLASH 416 bytes of monitor read-only memory (ROM) 1536 bytes of FLASH program and erase routines, located in ROM TIM (timer interface module) de 2 canais de 16-bit 5 linhas bidirecionais de I/O e uma de apenas entrada: Duas compartilhadas com os canais do Timer Uma compartilhada com IRQ externo Alta capacidade de fornecimento de corrente em todos os pinos das portas Todas os pinos das portas podem ir para Three-state Power-on reset Pullups internos em IRQ e RST para reduzir o número de componente externos Registradores de I/O mapeados em memória MC68HC908QT1 está disponível nos seguintes pacotes: 8-pin PDIP 8-pin SOIC 8-pin dual flat no lead (DFN) package 40

7 MC68HC908QT1 7.2 Diagrama em Blocos 41

7 MC68HC908QT1 7.3 Pinagem 42

7 MC68HC908QT1 7.4 Memória 43

7 MC68HC908QT1 7.5 Registradores de Configuração Os Registradores podem habilitar ou desabilitar as seguintes opções: Stop mode recovery time (32 BUSCLKX4 cycles or 4096 BUSCLKX4 cycles) STOP instruction Computer operating properly module (COP) COP reset period (COPRS): 8176 BUSCLKX4 or 262,128 BUSCLKX4 Low-voltage inhibit (LVI) enable and trip voltage selection OSC option selection IRQ pin RST pin Auto wakeup timeout period 44

7 MC68HC908QT1 7.6 Set de Instruções 45

7.6 Set de Instruções (cont.) 46

7.6 Set de Instruções (cont.) 47

7.6 Set de Instruções (cont.) 48

7.6 Set de Instruções (cont.) 49

7.6 Set de Instruções (cont.) 50

7 MC68HC908QT1 7.7 Projeto simples de Hardware 51

7 MC68HC908QT1 7.8 Exemplo de Programa /*Arquivo Events.C*/ /*Including used modules for compilling procedure*/ #include "Cpu.h" #include "Events.h" #include "LED.h" #include "Timer.h" /*Include shared modules, which are used for whole project*/ #include "PE_Types.h" #include "PE_Error.h" #include "PE_Const.h" #include "IO_Map.h" /* ** =================================================================== ** Event : Timer_OnInterrupt (module Events) ** ** From bean : Timer [TimerInt] ** Description : ** When a timer interrupt occurs this event is called (only ** when the bean is enabled - "Enable" and the events are ** enabled - "EnableEvent"). ** Parameters : None ** Returns : Nothing ** =================================================================== */ void Timer_OnInterrupt(void) { if (PTA == 0) { PTA = 2; } else { PTA &= ~2; } } 52