Infotc

Páginas: 5 (1043 palabras) Publicado: 24 de julio de 2011
-------------------------------------------------

-------------------------------------------------

-------------------------------------------------
LABORATORIO DE:
-------------------------------------------------

-------------------------------------------------
SISTEMAS MICROPROCESADOS
--------------------------------------------------------------------------------------------------

-------------------------------------------------
INFORME: PREPARATORIO:
-------------------------------------------------


PRÁCTICA Nº 12

Tema: CONVERSOR A/D DEL MICROCONTROLADOR ATMEL MEGA 164p

Fecha de realización: 2011 / 06 / 29
Año mes día
Realizadopor:
GR7C

Alumnos: Gabriel Rodríguez Grupo:
José Gaibor


-------------------------------------------------
Fecha de entrega: 2011 / 07 / 05 f. _____________________
-------------------------------------------------
Año mes día Recibido por-------------------------------------------------
Sanción: _____________________________________________

Período: Marzo 2011–Agosto 2011

Septiembre 2011–Marzo 2011

ESCUELA POLITÉCNICA NACIONAL
FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA

PRACTICA No.12
LABORATORIO DE  SISTEMAS MICROPROCESADOS
CONVERSOR A/D DEL MICROCONTROLADORATMEL MEGA 164p

1.  OBJETIVO:
Implementar un voltímetro digital y medidor de temperatura utilizando conversor A/D del microcontrolador Mega164p.
2.  Marco Teórico:
Diseñar un circuito que permita medir un voltaje entre 0V y 5V utilizando el conversor A/D del microcontrolador Mega 164p con una resolución de 10 bits, el valor de la medición deberá ser mostrado en 4 displays de 7 segmentos enbase 10, utilizar la opción  Vcc interno como referencia. El pin de AREF debe estar desconectado de Vcc pero debe colocarse un condensador para filtrar el ruido. También debe colocar un condensador entre Vcc y GND del microcontrolador para controlar el ruido.
PROGRAMA:

.include "m164pdef.inc"
.def temp=r16
.def binario=r17
.def h=r18
.def dig10=r19
.def dig32=r20
.def cont=r21
.org 0x0inicio:
ldi temp,high(ramend)
out sph,temp
ldi temp,low(ramend)
out spl,temp
ldi temp,0b00000000
out ddrb,temp
ldi temp,0b11111111
out ddrd,temp
ldi temp,0b00001111
out ddrc,temp
ldi temp,0b01000000
sts admux,temp
ldi temp,0b10000101
sts adcsra,temp
dato:
ldi temp,0b11000101
sts adcsra,temp
lds temp,adcl
lds h,adch

lsr h
ror tempmov binario,temp
ldi cont,16
clr dig10
clr dig32
lazo:
rol binario
rol h
rol dig10
rol dig32
dec cont
breq fin
ldi temp,0x03
add temp,dig10
sbrc temp,3
mov dig10,temp
ldi temp,0x30
add temp,dig10
sbrc temp,7
mov dig10,temp
ldi temp,0x03
add temp,dig32
sbrc temp,3
mov dig32,temp
ldi temp,0x30
add temp,dig32
sbrc temp,7
movdig32,temp
rjmp lazo
fin:
clr temp
lazo1:
mov temp,dig10
andi temp,0b00001111
rcall bcd_7seg
sbi portc,3
out portd,temp
cbi portc,0
rcall retardo
mov temp,dig10
swap temp
andi temp,0b00001111
rcall bcd_7seg
sbi portc,0
out portd,temp
cbi portc,1
rcall retardo
mov temp,dig32
andi temp,0b00001111
rcall bcd_7seg
sbi portc,1
anditemp,0b01111111
out portd,temp
cbi portc,2
rcall retardo
mov temp,dig32
swap temp
andi temp,0b00001111
rcall bcd_7seg
sbi portc,2
out portd,temp
cbi portc,3
rcall retardo
rjmp dato
retardo:
ldi R23, $03
WGLOOP0: ldi R24, $6E
WGLOOP1: dec R24
brne WGLOOP1
dec R23
brne WGLOOP0
; -----------------------------
;...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS