Carregar apresentação
A apresentação está carregando. Por favor, espere
1
AULA3 – Introdução a Microcontrolador
Disciplina: Aplicações Avançadas de Microprocessadores (AAM) Profa. Ana T. Y. Watanabe
2
“Bem-aventurado o homem que acha sabedoria, e o homem que adquire conhecimento;”
Provérbios 3:13
3
Tópicos da aula: Perguntas Microcontroladores Contínuo
Descrição do HCS08/JM60 MC9S08QG e MC9S08JM60 (Mapa de memória) MC9S08JM60 e JM128 (Mapa de Memória) Tabela Flexis JM60/128 Perguntas
4
Família de Microcontroladores 32-bit ColdFire ® V1
ColdFire: Microprocessador que deriva da arquitetura da família Motorola
5
Descrição do HCS08/JM60 MODELO DE PROGRAMAÇÃO:
Compatível com as famílias anteriores de 8 bits; O modelo de programação conserva a estrutura das primeiras famílias de microcontroladores de 8 bits. O núcleo da CPU possui possui 5 registradores especiais: Acumulador (A) de 8 bits; Contador de programa (PC) de 16 bits; Registrador de Índice(H:X) de 16 bits; Apontador de Pilha(SP) de 16 bits; Registrador de Condição do processador(CCR) de 8 bits.
6
Descrição do HCS08/JM60 MODOS DE ENDEREÇAMENTO:
Modo Implícito: Não há operandos na instrução (operandos em registradores internos);
7
Descrição do HCS08/JM60 MODOS DE ENDEREÇAMENTO:
2) Modo Relativo: Range de 8 bits com sinal;
8
Descrição do HCS08/JM60 MODOS DE ENDEREÇAMENTO:
3) Modo Imediato: Os operandos imediatos devem ser precedidos do caracter #. Obs.: Em operando de 16 bits, a parte alta do operando é localizado na parte inferior da memória e a parte inferior situa-se na parte superior da memória (método big endian). LDHX #$ ;$00B0 12 STHX $00B ;$00B1 34
9
Descrição do HCS08/JM60 MODOS DE ENDEREÇAMENTO:
4) Modo Direto: Operando na faixa de endereço: 0x0000–0x00FF, são mais eficientes e rápidos.
10
Descrição do HCS08/JM60 MODOS DE ENDEREÇAMENTO:
5) Modo Estendido: Operando na faixa até 0x00100 – 0xFFFF (64 Kbytes).
11
Descrição do HCS08/JM60 MODOS DE ENDEREÇAMENTO:
6) Modo Indexado a H:X (16 bits) com 5 variações e 2 indexado ao SP como referência de base. A indexação pelo SP facilita o acesso indexado aos valores armazenados na pilha e melhora dramaticamente a eficiência em linguagem C.
12
Descrição do HCS08/JM60 MODOS DE ENDEREÇAMENTO:
13
Descrição do HCS08/JM60 MODOS DE ENDEREÇAMENTO:
14
Descrição do HCS08/JM60 MODOS DE ENDEREÇAMENTO:
15
Descrição do HCS08/JM60 MODOS DE ENDEREÇAMENTO:
16
Descrição do HCS08/JM60 MODOS DE ENDEREÇAMENTO:
17
Descrição do JM60 Mapa de Memória
A memória On-chip na série MC9S08JM60 consiste de: RAM, flash, os registradores de controle/status e E/S. Os registradores estão divididos em 3 grupos: • Direct-page registers (0x0000 through 0x00AF) • High-page registers (0x1800 through 0x185F) • Nonvolatile registers (0xFFB0 through 0xFFBF)
18
Descrição do JM60 Mapas de Memória
• Direct-page registers (0x0000 through 0x00AF) Estes registradores estão localizados nas primeiras 176 posições do mapa de memória, portanto são acessados com instruções de modo direto. • High-page registers (0x1800 through 0x185F) Os registradores de alta de página são usados com muito menos frequência (estão localizados acima 0x1800 no mapa de memória).Os registradores e variáveis mais usados ficam no espaço da página direta. • Nonvolatile registers (0xFFB0 through 0xFFBF) A área de registradores não voláteis consiste de um bloco de 16 posições em memória flash para controle de segurança e opções de proteção bloco.
19
Descrição do JM60 Distribuição de módulos do microcontrolador HCS família JM60
20
Conceito Flexis A Freescale se tornou a primeira empresa que desenvolveu máquinas de 8 bits que podem migrar para máquinas de 32 bits. Tem a filosofia de consumir a menor quantidade de tempo, energia e desenvolvimento mais curto. Tudo emoldurado na estratégia denominada Controller Continuum. A estratégia Controller Continuum visa a gradual migração da 8 bits para arquiteturas mais poderosas ColdFire ®, assim versões do V2 a V4. A V1 versão pode ser chamado de "elo perdido", o que não é tão poderoso quanto versões posteriores, mas permite a migração gradual para máquinas mais complexas.
21
Conceito Flexis As aplicações nesta família podem migrar, com algumas modificações da família ColdFire V1 ® de 32 bits para HCS08 e vice-versa. A coisa interessante da migração, é o poder de expansão que podem ter projetos em 8 bits para arquiteturas de 32 bits num custo muito reduzido. Nas migrações são considerados três aspectos: o esquema de utilização dos módulos, o mecanismo de interrupção, a distribuição de E/S, o mecanismo do relógio, entre outros.
22
Conceito Flexis Pela figura abaixo pode-se concluir como periféricos Freescale são comuns num único pino para depuração e, tanto quanto possível as atribuições do mesmo pino para Máquinas de 8 e 32 bits. A diferença reside no acoplamento de núcleos diferentes.
23
Conceito Flexis O consumo é outro aspecto crucial para a tecnologia ao
migrar 8-32 bits. Neste aspecto a Freescale foi bastante cuidadosa e tem surpreendido com o mínimo diferencial de consumo entre máquinas FLEXIS . Embora a arquitetura de 8 bits, em média, consome 22mA, arquiteturas de 32 bits consumirá em média 60,9 mA. Estes dados foram retirados na máxima performance um funcionamento do relógio de 48MHz.
24
CUIDADOS na MIGRAÇÃO O usuário deve tomar certas precauções ao migrar projetos com tecnologia FLEXIS . Como já visto, a arquitetura do núcleo das máquinas são muito diferentes, embora tenham mantido muitas das características de periféricos do microcontrolador. Algumas destas precauções estão listadas abaixo: 1) Incompatibilidade de instruções de baixo nível: Devido à grande diferença entre seus núcleos, não é aconselhável inserir como instruções de linhas de código de programa assembly. Se um programa exige a inclusão de instruções de baixo nível, o usuário deve fazer a conversão para a nova montadora. Mas na medida do possível,recomendamos eliminar código de baixo nível e substituí-lo com as instruções em C / C + +. Por exemplo: Ao invés de usar a instrução do HCS08: Asm: BSET 0 , PTADD Melhor usar: PTADD0 = 1;
25
CUIDADOS na MIGRAÇÃO 2) Processos de exceções e vetorização de interrupções de periféricos: Os vetores de interrupções de ambas as máquinas não são diretamente compatíveis, porque o número de interrupções não são iguais. Outra alternativa é consultar o arquivo que está redefinindo o nome, e o número do microcontrolador a ser utilizado (PEJ: MCF51JM128.h), o qual está localizado na pasta Include do projeto. Por exemplo, o vetor da interrupção do módulo RTC na máquina MC9S08JM60 é 29, cujo equivalente em MCF51JM128 é de 91.
26
CUIDADOS na MIGRAÇÃO 3) Mapas de memória compatíveis:
Observar que ao compartilhar os endereços da memória, as declarações absolutas não funcionam. Os locais e tamanhos diferentes tipos de memória são controlados pelo LINKER. Um exemplo de uma declaração inadequada para uma variável na memória é: int 0x400 = 1; Neste caso, ambas as arquiteturas iriam interpretá-los diferentes por ser do tipo absoluto. Uma solução seria usar uma declaração como: int var = 1;
27
CUIDADOS na MIGRAÇÃO Mas há uma relação entre a localização dos registros de configuração de memória de periféricos controlada pela seguinte relação: Registo periférica endereço de 8 bits = Endereço do registrador de 32 bits periféricos + 0xFFFF8000 Por exemplo: Para S08JM60: TPM1SC = 0x0020 Para 51JM128: TPM1SC = 0xFFFF x0020 =0xFFFF8020
28
CUIDADOS na MIGRAÇÃO O compilador CodeWarrior permite diretiva:
# pragma : seleciona uma opção do compilador. Por exemplo: # Pragma warn_absolute on / / gerar um relatório de todos os / / declarações absolutos / / encontrados; # Pragma relatório check_asm / / gerar um relatório de todas / / as instruções em formato de / / assembly;
29
CUIDADOS na MIGRAÇÃO 4) Tempo de Execução diferente:
Por motivos óbvios, a máquina de 32 bits é mais veloz que a máquina de 8 bits. Portanto, é necessário ter em conta as definições de velocidade, devido a atrasos e temporizações no interior dos programas.
30
MC9S08QG e MC9S08JM60 Mapa de memória
31
JM60/JM128 Mapa de Memória
32
Tabela Flexis JM60/128
33
Tabela Flexis JM60/128
34
Tabela Flexis JM60/128
35
Família de Microcontroladores 32-bit ColdFire ® V1
Devido à saturação das capacidades e desempenho das máquinas e 8 16 bits, para algumas aplicações, as empresas Atmel, Freescale, Renesas, a STMicroelectronics, a Oki, incluindo outros estão desenvolvendo soluções em 32-bit de baixo custo e baixo consumo.
36
Família de Microcontroladores 32-bit ColdFire ® V1
37
Perguntas: 1)O que são modos de endereçamento. Cite algumas
Perguntas: 1)O que são modos de endereçamento? Cite algumas. 2) O que é Controller Continuum? 3) Por que não é possível escrever em Assembly para o JM60 e usar também no JM128? O que se deve fazer? 4) Por que os fabricantes estão desenvolvendo soluções em 32-bit de baixo custo e baixo consumo? 5) Quais os cuidados que devem ser tomados ao migrar de 8 para 32 bits na familia JM? 6) O JM128 é mais veloz que o JM60? Teste isto através de um programa.
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.