LABORATORIO 2 ATMEGA Puerto Analógico
LABORATORIO 2 ATMEGA Puerto Analógico
LABORATORIO 2 ATMEGA Puerto Analógico
LABORATORIO N°2
PUERTOS ANALÓGICOS DEL MICROCONTROLADOR ATMEGA 32
2. Fundamento teórico:
El microcontrolador ATMEGA posee 8 pines habilitados para la
conversión analógica digital; el principio de conversión es por
aproximaciones sucesivas y su resolución es de 10 bits.
Comparador analógico
Interrupciones externas
Eventos de los temporizadores (desbordamiento,
interrupciones)
3. Trabajo de laboratorio:
.include <m32def.inc>
.org $0000
jmp main ;ve al main
;PROGRAMA PRINCIPAL
main:
ldi r16,$04 ; Configuración de...
out sph,r16
ldi r16,$5F
out spl,r16 ;...la pila: Stack: $045F=RAMEND
ser r16 ;r16 <- $ff
out ddrd,r16 ;portD salidas
out ddrb,r16 ;portB salidas
ldi r16,$40 ;r16 <- $40
out admux,r16 ;configuro ADC a canal0, ajuste a derecha y referencia en Vref con
capacitor
ldi r16,$85 ;r16 <- $85
out adcsra,r16 ;habilito ADC, interrupcion y free running desactivados, divisor 32
call delay200u ;retardo para inicializar el conversor A/D
;se necesita 25 ciclos del clock ADC, el clock ADC esta puesto a
4MHz/32=125kHz
;25 ciclos de 125Khz, es 200us que se debe esperar para la
;configuración de todo el circuito interno del conversor A/D del micro
loop:
sbi adcsra,adsc ;se inicia conversion A/D, seteando el bit adsc
convertir:
sbis adcsra,adsc ;pregunto por el bit de conversión terminada
rjmp leer ;si termino la conversión, voy a leer la conversión
; =============================
; delay loop generator
; 100000 cycles:
; -----------------------------
; delaying 99990 cycles:
delay25m:
ldi R17, $A5
WGLOOP0: ldi R18, $C9
WGLOOP1: dec R18
brne WGLOOP1
dec R17
brne WGLOOP0
; -----------------------------
; delaying 9 cycles:
ldi R17, $03
WGLOOP2: dec R17
brne WGLOOP2
; -----------------------------
; delaying 1 cycle:
nop
ret
; =============================
; =============================
; delay loop generator
; 800 cycles:
; -----------------------------
; delaying 798 cycles:
delay200u:
ldi R17, $02
WGLOOP3: ldi R18, $84
WGLOOP4: dec R18
brne WGLOOP4
dec R17
brne WGLOOP3
; -----------------------------
; delaying 2 cycles:
nop
nop
ret
; =============================