Вы находитесь на странице: 1из 33

MICROCONTROLAD

OR HSC08
Aluno : Denis Glauco Barros Carvalho

Evoluo da Famlia
HCS08
A famlia HCS08 uma evoluo do

microcontrolador HC908Q.
Entre os aspectos a considerar a respeito
dessa evoluo se encontram:
Cdigo objeto compatvel com as famlias
HC05 e HC08;
Extenso da memria disponvel;
Alta velocidade de relgio (clock). O
HCS08QG8 possui clock de 8MHz.
Cinco modos de operao, sendo trs
modos STOP, um WAIT e o modo RUN.

MC9S08QG8
O microcontrolador HCS08QG8 desenvolvido pela

Motorola (Freescale), sendo uma evoluo da famlia


HC08, pertencendo a famlia QG, da serie HCS08. A
codificao do microcontrolador MC9S08QG08 possui
o seguinte significado: MC = status no mercado:
FullyQuallified, 9 = Memria Flash, S08 = ncleo , QG
= Famlia e 8 = 8KByte de memria.
Esse sistema microcontrolado baseado na
arquitetura Von Neumann e possui um conjunto de
instrues CISC (Complex Instruction Set Computer),
dando seguimento ao modelo tradicional da
Freescale.
3

MC9S08QG8
O HCS08QG8 tem um barramento comum compartilhado

entre memria e perifricos (barramento de dados), um


barramento de endereos e um barramento de controle.
Alm disso, conta com uma estrutura interna repleta de
dispositivos que distribuem suas funes. Essa estrutura
acopla no chip os seguintes mdulos:
Unidade Central de Processamento (UCP): Responsvel

pela execuo das instrues nos programas;


Memria interna: O microcontrolador possui trs tipos de
memria, Flash (onde se armazena o programa), ROM (que
contm a BIOS de ativao interna) e RAM (usada para
armazenar valores e variveis ao longo da execuo do
programa);
4

MC9S08QG8
Portas de Entrada e Sada (E/S ou I/O): A

partir dessas estruturas, o microcontrolador


pode se relacionar com o meio externo. Elas
que fornecem os dados vindos do ambiente
para serem processados pelo microcontrolador
e retornam o valor obtido ao meio. Algumas
portas podem ser configuradas para receberem
tanto sinais digitais quanto analgicos;
Oscilador interno: Gera os pulsos de relgio
(clock) do microcontrolador. Fundamental para
o processamento das instrues;
5

MC9S08QG8
Temporizadores: O HCS08QG8 possui dois

temporizadores (timers) independentes entre si. Um de


8 bits (MTIM) e outro de 16 bits (TPM), que podem ser
programados a partir do relgio (oscilador interno) ou
de uma fonte externa. O TPM capaz de gerar sinal
PWM. Alm dos temporizadores, ainda a um sistema de
interrupo de tempo real (RTI) independente;
Conversores Analgico-Digital (A/D): H um
conversor de ADC que pode operar no modo 8 bits ou
10 bits. So capazes de fazer a leitura de nveis de
tenso e associ-los a valores digitais (binrios). Os
nveis de tenso so naturalmente sinais analgicos,
que podem vir de um sensor;
6

MC9S08QG8
Co de Guarda (Watchdog): Tambm

chamado de COP (Computer Operating Properly


ou Computador Operando Corretamente) pela
Motorola (Freescale), usa um temporizador para
observar a normalidade do comportamento da
UCP. De forma que, caso o programa entre em
ciclo errado, e no retorne mais ao programa
principal antes de um tempo pr-programado ,
ele fora um reincio (reset).
Mdulos de Espera e Parada: Possuem a
funo de deixar o programa em modos de
Espera (Wait) ou em algum dos trs modos de
Parada (Stop1, Stop2 ou Stop3). Nesses modos, 7

MC9S08QG8
Registradores: Guardam valores de 8 bits, possibilitando,

atravs deles, o funcionamento desejado de cada funo do


microcontrolador.
Mdulo Low Voltage Detector (LVI): Este mdulo
possibilita gerar interrupo quando os nveis de tenso de
alimentao ficam abaixo do pr-determinado.
Unidade Lgica Aritmtica (ULA): Dispositivo capaz de
realizar operaes matemticas (somas, subtraes),
comparativas (verificao de igualdade ou desigualdade) e
lgicas (verdadeiro ou falso). Principal unidade depois da
CPU.
Ambiente de integrao: Meio que integra as mais
diversas unidades internas do microcontrolador, atravs de
seus barramentos.
8

Caractersticas internas
da CPU
A CPU a mais importante unidade interna do

microcontrolador, pois a responsvel por


processar os dados do programa e execut-lo.
O microcontrolador possui cinco registradores
especiais dentro do ambiente da CPU, so
eles o Acumulador A, o Contador de Programa
PC (Program Counter), o registrador indexado
H:X, o apontador de pilha SP (Stack Pointer) e
o registrador de sinalizadores CCR (Condition
Code Register).
9

Caractersticas internas
da CPU

10

Caractersticas internas
da CPU
Acumulador A:
Registrador de 8 bits. Armazena dados
temporrios para operaes aritmticas e
movimentao de dados e comparaes. Como
est conectado diretamente na sada da ULA, a
utilizao do Acumulador aumenta a velocidade
de execuo dos clculos, em comparao aos
quando estes so feitos em uma posio da
memria RAM, por exemplo.

11

Caractersticas internas
da CPU
Contador de Programa PC:
Esse contador binrio indica a posio do endereo
da prxima instruo a ser executada pelo
programa. O PC varia sua contagem de acordo
com o tamanho do espao ocupado por cada
instruo e do local da memria por ela designado
para a instruo seguinte. Graas a ele o
microcontrolador no se perde ao longo da
execuo do programa.
Ele no pode ser alterado diretamente pelo
programador, assim, no existe nenhuma
instruo de escrita nesse Registrador.
12

Caractersticas internas
da CPU
Registrador de ndice H:X:
Esse elemento da CPU um registrador de 16 bits
que na realidade so dois registradores distintos (H
e X) de 8 bits.
Assim, o Registrador X armazena os valores baixos
(menos significativos) e o Registrador H os valores
altos (mais significativos).
Alm disso, esse Registrador de ndice indexado
possui a funo de ponteiro, ou seja, quando um
valor guardado nesse Registrador, possvel
utilizar instrues em H:X que realizem modificaes
ou leitura nesta posio de memria.
13

Caractersticas internas
da CPU
Apontador de Pilha SP (Stack-Pointer):
Esse elemento um registrador de 16 bits
capaz de armazenar endereos e valores na
memria RAM e depois recuper-los. Trata-se de
um registrador chamado Stack Pointer (SP) que
aponta para o topo da pilha. A pilha uma
estrutura de dados do tipo LIFO ( Last In First
Out) ou seja, o ltimo dado colocado na pilha
ser o primeiro a ser retirado.

14

Caractersticas internas
da CPU
Registrador de Sinalizadores CCR (Condition

Code Register):
Esse registrador de 8 bits possui valores que

so utilizados pelas instrues para direcionar


a atividade do microcontrolador. Esses valores
so chamados sinalizadores ou flags
(bandeiras). Servem para indicar o
microcontrolador de uma determinada condio
alcanada pelas instrues do programa. Cada
sinalizador possui uma funo especfica.
15

Caractersticas internas
da CPU
Tabela dos sinalizadores.

16

Caractersticas internas
da CPU
Funo de cada sinalizador:
C Sinalizador de transporte/emprstimo
(carry/borrow)
Z Sinalizador de Zero
N Sinalizador de negativo
I Sinalizador de Interrupo
H Indicador de Meio-transporte
V Sinalizador de Estouro

17

Mapa de memria do MC9S08QG8

18

Mapa de memria do MC9S08QG8


Registradores de pgina direta (0x0000

0x005F): Endereos que contm


registradores usados comumente ao longo do
programa, que normalmente sofrem
alteraes no decorrer da execuo. Por isso,
esto localizados em valores de endereos
baixos, onde qualquer instruo em Assembly
tem acesso.

19

Mapa de memria do MC9S08QG8


Memria RAM (Ramdom Acess Memory -

0x0060 0x25F): Esse tipo de memria


utilizado para alocar constantes e variveis.
Esta memria voltil. Ela rpida e garante
acesso aleatrio s informaes (ou seja,
acesso no-sequencial, no preciso
percorrer todas as posies de memria para
acessar determinado valor). Observe que a
RAM desse microcontrolador est localizada a
partir do endereo 0x0060, e o Apontador da
Pilha esto localizados no endereo 0x00FF,
para baixo. Assim, a pilha se utiliza da
20

Mapa de memria do MC9S08QG8


Registradores de pgina alta(0x1800

0x184F): So registradores que no tem seus


valores alterados to frequentemente ao
longo do programa, por isso esto alocados
em endereos altos (0x1800). Normalmente,
s so acessados nas configuraes iniciais
dos programas.
Memria FLASH (0xE000 0xFFAF):
Nessa memria, armazenado o programa
embarcado no microcontrolador. Como este
tipo de memria no-voltil, os dados do
21
programa no se perdem quando a fonte

Mapa de memria do MC9S08QG8


Registradores no-volteis( 0xFFB0

0xFFBF): Contm informaes necessrias


para o correto funcionamento do
microcontrolador, seus dados no podem ser
acessados tampouco alterados pelo
programador.
rea de vetores de interrupo(0xFFC0
0xFFFF): ltima regio da memria, contm os
endereos visitados quando surge determinado
tipo de interrupo. Sero melhor estudados
posteriormente.
22

Pinagem, conexes e caractersticas


gerais do MC9S08QG8
Muitos pinos do microcontrolador possuem
pinos com funes multiplexadas (ou seja, h
vrias funes na mesma porta, mas ele utiliza
apenas uma por vez, conforme habilitado pelo
software), conforme descritos na Figura.

23

Pinagem, conexes e caractersticas


gerais do MC9S08QG8

24

Linguagem de programao

As linguagens mais populares para

programao de microcontroladores so:


Assembly: a linguagem nativa que tem uma abordagem

direta ao seu ncleo. Muito importante conhecer mesmo


com o melhor compilador em outras linguagens, pois
possibilita desenvolver cdigos com melhor eficincia, ou
seja, mais rpido, melhor utilizao dos recursos e menor
consumo de memria.
C: Por excelncia, a linguagem da engenharia por causa

de sua estrutura, portabilidade e reutilizao de recursos de


processamento. Os compiladores dessa linguagem esto
cada vez mais otimizadas.
25

Linguagem de programao

26

Conceito Flexis
A Freescalese tornoua primeira empresa

quedesenvolveumquinasde8
bitsquepodem migrarparamquinasde 32
bits.
Tem afilosofia deconsumira menor
quantidade detempo,
energiaedesenvolvimento mais curto.
Tudo emoldurado naestratgia
denominadaControllerContinuum. A
estratgia ControllerContinuumvisaa
gradual migrao da8 bitspara
arquiteturasmais poderosasColdFire, assim27

Conceito Flexis
A V1versopodeser chamado de"elo perdido", o

queno to poderoso quanto verses posteriores,


maspermite amigraogradualparamquinas mais
complexas.
As aplicaes
nestafamliapodemmigrar,comalgumas
modificaes dafamliaColdFireV1de32bitspara
HCS08 evice-versa.
A coisainteressante da migrao, opoder de
expansoquepodemterprojetosem 8
bitsparaarquiteturas de 32 bits num customuito
reduzido.
28

Conceito Flexis
Nas

migraessoconsideradostrsaspectos:o
esquemade utilizao dos
mdulos,omecanismo deinterrupo, a
distribuiodeE/S, o mecanismo do relgio,
entreoutros.

29

Conceito Flexis

30

CUIDADOS na MIGRAO
Incompatibilidadedeinstruesde baixo nvel
Processos de excees e

vetorizaodeinterrupesdeperifricos
Mapasde memriacompatveis
Tempo de Execuo diferente

31

Placa de desenvolvimento
mc9s08qg8 8 mcu placa de
demonstrao

32

Obrigado.

33

Вам также может понравиться