Tecnologia dos Computadores

Сomentários

Transcrição

Tecnologia dos Computadores
Tecnologia dos Computadores
Licenciatura em
Engenharia Electrotécnica e de Computadores
Faculdade de Ciências e Tecnologia
Motorola 68HC11
Universidade de Coimbra
p.1
Tecnologia dos Computadores (Aulas Práticas)
2002 © J. Lobo/J. Dias
Motorola 68HC11
Micro-controlador de 8 bits com:
• 8 canais analógicos de entrada com resolução de 8 bits.
• 2 canais série independentes: SCI (assincrono) e SPI (sincrono)
• 1 contador (timer) de 16 bits com:
-
3 entradas de captura de eventos
-
5 saidas resultantes de comparação
-
função de interrupt em tempo real
• 1 contador de 8-bits (pulse accumulator)
• memória on-chip: ROM, EEPROM e RAM, espaço de endereçamento de 64Kbytes
• modo single-chip ou extended
• baixo consumo e boa imunidade ao ruido
• velocidade de BUS 2 MHz nominal, podendo ser reduzido até DC para baixo consumo
• modos de conservação de energia (WAIT e STOP)
• circuitos de monitorização e recuperação de falhas (COP watchdog system)
p.2
Tecnologia dos Computadores (Aulas Práticas)
2002 © J. Lobo/J. Dias
M68HC11 - Diagrama de Blocos
p.3
Tecnologia dos Computadores (Aulas Práticas)
2002 © J. Lobo/J. Dias
M68HC11 - estrutura de registos
p.4
Tecnologia dos Computadores (Aulas Práticas)
2002 © J. Lobo/J. Dias
M68HC11 - modos de endereçamento
° Immediate (IMM):
Machine Code
Label
Operation
Operand
Comments
CAT
EQU
7
CAT SAME AS 7
ORG
$1000
SET LOCATION COUNTER
EQU
*
ADDR(REGS) IS $1000
REGS
86 16
LDAA
#22
DECIMAL 22 Þ ACCA ($16)
C8 34
EORB
#$34
XOR ($34,ACCB) Þ ACCB
81 24
CMPA
#%100
100 RIGHT ALIGNED BINARY
86 07
LDAA
#CAT
7 => ACCA
CC 12 34
LDD
#$123
4
CC 00 07
LDD
#7
7 => ACCA:ACCB
86 12
LDAA
#@22
OCTAL
86 41
CE 10 00
LDAA
LDX
#’A
#REGS
ASCII
ADDR(REGS) => X
Operation
Operand
Comments
SUBD
CAT
FWD REF TO CAT
EQU
$12
DEFINE CAT=$12
SUBD
CLR
CAT
CAT
BKWD REF TO CAT
EXTENDED ONLY
Prefix
None
$
@
%
’
Definition
Decimal
Hexadecimal
Octal
Binary
Single ASCII Character
° Direct (DIR) and Extended (EXT) :
Machine Code
Label
B3 00 12
CAT
93 12
7F 00 12
p.5
Tecnologia dos Computadores (Aulas Práticas)
2002 © J. Lobo/J. Dias
M68HC11 - modos de endereçamento
° Indexed (INDX, INDY) :
Machine Code
Label
Operation
Operand
Comments
E3 00
ADDD
X
EA=(X)
E3 00
ADDD
,X
EA=(X)
E3 00
ADDD
0,X
EA=(X)
E3 04
ADDD
4,X
EA=(X)+4
EQU
7
DEFINE CAT=7
E3 07
ADDD
CAT,X
EA=(X)+7
E3 22
E3 22
ADDD
ADDD
$22,X
CAT*8/2+6,X
EA=(X)+$22
EA=(X)+(CAT*8¸2+6)
Operation
Operand
Comments
CAT
Prefix
None
$
@
%
’
Definition
Decimal
Hexadecimal
Octal
Binary
Single ASCII Character
° Inherent (INH):
Machine Code
Label
1B
ABA
A+B => A
5C
08
INCB
INX
B+1 => B
X+1 => X
° Relative (REL):
Machine Code
Label
Operation
Operand
Comments
20 00
THERE
BRA
WHERE
FORWARD BRANCH
22 FC
WHERE
BHI
THERE
BACKWARD BRANCH
BCC
LBCC
L-O-N-G BCC
BEQ
HANG
BRANCH TO SELF
BEQ
*
"*" MEANS "HERE"
JMP
BSR
$1000
HANG
24 04
27 FE
HANG
27 FE
7E 10 00
8D F7
p.6
LBCC
Tecnologia dos Computadores (Aulas Práticas)
2002 © J. Lobo/J. Dias
M68HC11 - conjunto de instruções
p.7
Tecnologia dos Computadores (Aulas Práticas)
2002 © J. Lobo/J. Dias
M68HC11 - registos de controlo mapeados
p.8
Tecnologia dos Computadores (Aulas Práticas)
2002 © J. Lobo/J. Dias
M68HC11 - família...
p.9
Tecnologia dos Computadores (Aulas Práticas)
2002 © J. Lobo/J. Dias
Motorola 68HC11
Exemplo de programa em C para o AES-11:
/* para compilar: icc -o prog prog.c aes11.s */
void lcd_char(char car){
asm(" ldaa 2,x");
asm("
staa $6040");
asm(" jsr $9003");
}
main() {
int i;
char tc[]="
Tecnologia
dos Computadores";
LCDCLEAR(); /* aes11.s */
LEDS_OFF(); /* aes11.s */
i=0;
while(tc[i])
lcd_char(tc[i++]);
}
p.10
Tecnologia dos Computadores (Aulas Práticas)
2002 © J. Lobo/J. Dias
Motorola 68HC11
Exercício:
° implemente um programa em C para o AES-11 para escrever o seu nome no LCD e piscar os
LEDs o número de vezes indicado pela tecla primida, sendo o ‘0’ para terminar.
° Altere o programa anterior, para acender sucessivamente LEDs consecutivos.
° Bom trabalho
° BIBLIOGRAFIA
• http://www.deec.uc.pt/~jlobo/tc/tc_praticas.html
• livro:
Título : Software and hardware engineering, motorola M68HC11
Autor : Cady, Fredrick M.
Publicação : New York: Oxford University Press 1997
Assunto : Microprocessadores, Arquitectura de computadores
Registo/Biblioteca/Cota : 8971, UCEE, C5130-CAD
MFN : 7323
p.11
Tecnologia dos Computadores (Aulas Práticas)
2002 © J. Lobo/J. Dias