ucontrol 01 intro msp430

54
MICROPROCESSADORES E MICROCONTROLADORES

Upload: eduardo-goncalves

Post on 16-Sep-2015

252 views

Category:

Documents


2 download

DESCRIPTION

Introdução ao microcontrolador MSP430

TRANSCRIPT

  • MICROPROCESSADORES E

    MICROCONTROLADORES

  • MICROCONTROLADORES

    Microprocessador + memria + relgio + ...

  • MICROCONTROLADORES

    Microprocessador + memria + relgio + ...

    Computer on a chip

  • MICROCONTROLADORESQuantos produtos na sua casa

    possuem "computer chips"?

  • MICROCONTROLADORESQuantos produtos na sua casa

    possuem "computer chips"?

  • MICROCONTROLADORESQuantos produtos na sua casa

    possuem "computer chips"?

  • MICROCONTROLADORESQuantos produtos na sua casa

    possuem "computer chips"?

  • MICROCONTROLADORESQuantos produtos na sua casa

    possuem "computer chips"?

  • MICROCONTROLADORESQuantos produtos na sua casa

    possuem "computer chips"? Electronic control units:

    Mdulos de controle

    automotivo

    !

    Airbag

    Portas, janelas, assentos e

    luzes

    Motor

    Transmisso

    Freios

  • MICROCONTROLADORESQuantos produtos na sua casa

    possuem "computer chips"? Electronic control units:

    Mdulos de controle

    automotivo

    !

    Airbag

    Portas, janelas, assentos e

    luzes

    Motor

    Transmisso

    Freios

    Sistemas embarcados

    "Invisveis"

  • MICROCONTROLADORESExemplo: escova eltrica que pausa a cada 30s, para que o usurio passe a escovar outra rea

  • MICROCONTROLADORESExemplo: escova eltrica que pausa a cada 30s, para que o usurio passe a escovar outra rea

  • MICROCONTROLADORESExemplo: escova eltrica que pausa a cada 30s, para que o usurio passe a escovar outra rea

    Contador digital

  • MICROCONTROLADORESExemplo: escova eltrica que pausa a cada 30s, para que o usurio passe a escovar outra rea

  • MICROCONTROLADORESExemplo: "dado" digital

  • MICROCONTROLADORESComo desenvolver sistemas embarcados?

  • MICROCONTROLADORESComo desenvolver sistemas embarcados?

    Computadores completos - hardware e software facilmente disponveis

  • MICROCONTROLADORESComo desenvolver sistemas embarcados?

    Computadores completos - hardware e software facilmente disponveis

  • MICROCONTROLADORESComo desenvolver sistemas embarcados?

    ASICs - application-specific integrated circuits

    CIs feitos sob medida para a aplicao

  • MICROCONTROLADORESComo desenvolver sistemas embarcados?

    FPGAs - portas lgicas e flip-flops conectados por linguagem de hardware

    (VHDL etc.)

  • MICROCONTROLADORESComo desenvolver sistemas embarcados?

    Microcontroladores

  • MICROCONTROLADORESComo desenvolver sistemas embarcados?

    Microcontroladores

    No utiliza sistema operacional, somente um software especfico para a aplicao

    !Ou ento utiliza-se um RTOS

    (real-time operating system),

    geralmente menor que um kilobyte

  • MICROCONTROLADORESComo desenvolver sistemas embarcados?

    Microcontroladores

    O programa do usurio carrega o RTOS, diferente de sistemas operacionais de computadores, onde o programa

    chamado atravs do SO

  • MICROCONTROLADORESComo desenvolver sistemas embarcados?

    Microcontroladores

    Processador digital (unidade lgico-aritmtica, registradores,

    decodificador de instruesetc.)

    Memria RAM (random-access),

    para dados

    Barramentos de dados e de endereos

    Memria ROM (read-only), para o

    programa

    Entradas e sadas digitais

    Relgio, para sincronismo do sistema

  • MICROCONTROLADORESComo desenvolver sistemas embarcados?

    Microcontroladores

    Memria no-voltil para dados permanentes, como nmeros de

    srie e endereos de rede Interfaces de

    comunicao: SPI, I2C, RS-232, USB,

    CAN, ethernet etc.

    Temporizadores, para contar tempo em si, a durao de transies,

    gerar sinais peridicos etc.

    Entradas e sadas analgicas

    Watchdog timer, para reiniciar o

    sistema em caso de falha

    Relgio em "tempo real" (hora, dia, ms, ano)

  • MICROCONTROLADORES

  • MICROCONTROLADORES"Pilhas de bacos"

  • MICROCONTROLADORES

    Rodovias de vrias faixas

    O barramento de endereos pode ter mais bits do que o de dados

  • MICROCONTROLADORESProcessadores so

    caracterizados pelo tamanho dos dados que ele pode processar (8 bits etc.)

  • MEMRIARAM (random-access memory): voltil,

    perde o contedo quando acaba a energia

  • MEMRIA

    Esttica - mantm os dados mesmo quando o clock foi parado. Precisa

    de 6 transistores

    RAM (random-access memory): voltil, perde o contedo quando acaba a energia

  • MEMRIA

    Dinmica - precisa ser atualizada regularmente. Precisa de 1 transistor,

    ocupando menos espao

    RAM (random-access memory): voltil, perde o contedo quando acaba a energia

  • MEMRIAROM (read-only memory): no-voltil, mantm o contedo quando acaba a energia. A escrita bem mais lenta do que para a memria RAM

  • MEMRIAROM (read-only memory): no-voltil, mantm o contedo quando acaba a energia. A escrita bem mais lenta do que para a memria RAM

    Masked ROM - dados so escritos durante a manufatura do CI, utilizando

    uma mscara fotolitogrfica.

  • MEMRIAROM (read-only memory): no-voltil, mantm o contedo quando acaba a energia. A escrita bem mais lenta do que para a memria RAM

    EPROM (electrically programmable ROM) - programvel eletricamente, apagada com luz

    ultravioleta por cerca de 10 minutos

  • MEMRIAROM (read-only memory): no-voltil, mantm o contedo quando acaba a energia. A escrita bem mais lenta do que para a memria RAM

    OTP (one-time programmable memory) - EPROM sem a "janela" para luz ultravioleta

  • MEMRIAROM (read-only memory): no-voltil, mantm o contedo quando acaba a energia. A escrita bem mais lenta do que para a memria RAM

    Flash - permite a leitura e escrita eletricamente, assim como a EEPROM. A memria flash s pode ser apagada em blocos, e a EEPROM, byte a byte.

  • MEMRIAOs MSP430 com a letra F no seu part number

    vm com memria flash.

    Microcontroladores usam memria flash do tipo NOR, que permite acesso aleatrio. Flash NAND s pode ser acessada em blocos.

  • ARQUITETURAS PARA MEMRIA

  • ARQUITETURAS PARA MEMRIA

    PICs, Intel 8051, ARM9

    Permite leitura simultnea de dados e do programa

    Permite barramentos de dados e programa separadamente otimizados

    Guarda dados constantes (look-up tables etc.) na memria de

    programa, o que requer instrues especficas

  • ARQUITETURAS PARA MEMRIA

    MSP430, Freescale HCS08, ARM7

    Tambm conhecida como arquitetura Princeton

    Mais simples que a arquitetura Harvard

    Menos eficiente

  • SOFTWARE

  • SOFTWARE

    Microcontroladores no possuem sistema operacional

    CPU passa boa parte do tempo interagindo com perifricos

  • SOFTWARELinguagens de programao disponveis:

    Linguagem de mquina: opcodes (0001110101010111010011010101 - obsoleto!)

  • SOFTWARELinguagens de programao disponveis:

    Assembly: opcodes traduzidos para o ingls

    Depende do processador

    Algumas operaes no existem em C (rotao bit-a-bit, por exemplo)

  • SOFTWARELinguagens de programao disponveis:

    C: hoje em dia, a compilao para Assembly bastante eficiente

    Permite o uso de funes, estruturas, converso de tipos de variveis etc.

  • SOFTWARELinguagens de programao disponveis:

    C++: C orientado a objetos

    Microcontroladores geralmente trabalham com uma verso simplificada, que mesmo assim pode

    gerar cdigo ineficiente (Embedded C++)

  • SOFTWARELinguagens de programao disponveis:

    BASIC: disponvel para alguns processadores

  • MSP430

    Processador de 16 bits

    Arquitetura von Neumann

    Aplicaes de baixo consumo de energia

    Barramento de dados e de memria de 16 bits

    Registradores de 16 bits

  • MSP430

    Registradores podem ser usados para variveis locais, parmetros para sub-rotinas, endereos

    etc.

    Processador do MSP430 permite aritmtica diretamente com valores da memria

    CPU pequena e eficiente, muitos registradores

  • MSP430

    Vrios modos de baixo consumo (liga/desliga perifricos, retorno rpido/devagar ao modo de

    consumo completo)

    Facilmente colocado em modo de baixo consumo, atravs de bits no registrador de estado

    (status register)

  • MSP430

    Vrias opes de clocks: cristal de 32 KHz, DCO (digitally controlled oscillator), cristal externo etc.

    Vrios perifricos, sendo que alguns podem funcionar sem a CPU

    Alguns MSP430 possuem hardware analgico para aplicaes especficas

  • MSP430

    A letra aps o nome MSP430 indica o tipo de memria: F para flash, C para ROM

    A segunda letra indica MSPs para aplicaes especficas: E para eletricidade, W para gua e G para sinais que requerem um estgio de ganho

  • MSP430MSP430x1xx: amplo conjunto

    MSP430F2xx: CPU pode trabalhar em 16MHz (o dobro dos anteriores), no necessita de cristal

    para o clock de baixa frequncia, oferece resistores de pull-up e pull-down, oferece vrias

    entradas analgicas

    MSP430x3xx: obsoleto