Microcontroladores
El programa sólo será un ejemplo que usa el puerto B como salida, cada segundo se incrementa un conteo binario. 1. Escribo el programaque es general para todos los programas. Solamente se han colocado
comentarios al inicio para darle al usuario una idea del programa;-------------------------------------------------------------------------------; Programa: Contador por el puerto B ; Dispositivo: ATmega16 Compilador: AVRASM1 ; Entorno IDE: AVR Studio4.15 Simulador: Proteus 7.4sp3 ; Autor: Lewin López Fecha: Mayo 4 de 2010 ;; Notas: Este programa hace generar un conteo binario incrementado ; cada segundo y mostrado por el puerto B. ; ; Registros: r16 -> Registro multiproposito (configurar puertos y conteo) ; r17 ->Registro de conteo ; r20, r21 y r22 -> Retardo de 1 segundo ; ; Conexiones: B7 – B0 -> Leds ;-------------------------------------------------------------------------------;DIRECTIVAS EN ENSAMBLADOR.include "M16DEF.INC" ;ATmega16 .device ATMEGA16 ;DEFINICION DE REGISTROS .def temp = r16 .def conteo = r17 ;reset-vector address $0000 .ORG $00 JMP INICIO
;registro multipropósito ;registro de conteo;va al inicio
;PROGRAMA PRINCIPAL INICIO: ;ESTAS INSTRUCCIONES VAN SIEMPRE PARA CARGAR EL PUNTERO DE LA PILA LDI R19, HIGH(RAMEND) OUT SPH, R19 LDI R19, LOW(RAMEND) OUT SPL, R19 CICLO: JMP CICLO2. Escribo la secuencia de pasos a realizar para cumplir el objetivo propuesto en el
enunciado. Paso 1. Configurar B como salida. Paso 2. Iniciar variable de conteo (R16 en 0) Paso 3. Enviar porB la variable de conteo. Paso 4. Esperar 1 segundo. Paso 5. Incrementar la variable de conteo. Paso 6. Volver al paso 3.
3. Escribo el programa que aplique la secuencia de pasos anterior donde elretardo de 1
segundo es una subrutina (call retardo).
;-------------------------------------------------------------------------------; Programa: Contador por el puerto B ; Dispositivo: ATmega16...
Regístrate para leer el documento completo.