420 likes | 572 Vues
Tema 6: Prácticas. Antonio Cebrián. Contenidos. Metodología Programación Prácticas. 1. Metodología. 1. Metodología. 2. Programación. 2. Programación. Estructura del código fuente plantilla.asm. 2. Programación. Directivas del ensamblador: Control. Ensamblador condicional. Datos.
E N D
Tema 6: Prácticas Antonio Cebrián
Contenidos • Metodología • Programación • Prácticas
2. Programación • Estructura del código fuente plantilla.asm
2. Programación • Directivas del ensamblador: • Control. • Ensamblador condicional. • Datos. • Listado • Macros. • Archivo objeto.
2. Programación • Constantes numéricas:
2. Programación • Comparaciones: Igual que Contador == 10 movf Contador,W sublw 10 btfsc STATUS,Z goto SeCumpleCondicion
2. Programación • Comparaciones: Mayor que Contador > 10 movf Contador,W sublw 10 ; W = k – W. btfss STATUS,C goto SeCumpleCondicion
2. Programación • Comparaciones: Menor que Contador < 10 movf Contador,W sublw 10 ; W = k – W. btfsc STATUS,C goto SeCumpleCondicion
2. Programación • Bucles: Infinito Bucle: . . . goto Bucle
2. Programación • Bucles: Número fijo de iteraciones movlw 100 movwf Contador Bucle: . . . decfsz Contador,F goto Bucle
2. Programación • Subrutinas: . . . call Subrutina . . . ;------------------------------------ Subrutina: . . . return
2. Programación • Interrupción: Interrup: . . . retfie
2. Programación • Interrupción con cambio de contexto: Interrup: movwf SaveW movf STATUS,W movwf SaveSTATUS movf PCLATH,W movwf SavePCLATH movf FSR,W movwf SaveFSR clrf STATUS clrf PCLATH . . .
2. Programación • Interrupción con cambio de contexto: . . . movf SaveFSR,W movwf FSR movf SavePCLATH,W movwf PCLATH movf SaveSTATUS,W movwf STATUS swapf SaveW,F swapf SaveW,W retfie
3. Prácticas • Práctica LEDs: • Encender secuencialmente todos los LEDs con ejecución paso a paso. • Encender secuencialmente todos los LEDs con ejecución continua utilizando un retardo software. • Encender secuencialmente todos los LEDs con ejecución continua utilizando un temporizador.
3. Prácticas • Práctica LEDs: • Salidas digitales.
3. Prácticas • Práctica LEDs: • Retardo software.
3. Prácticas • Práctica LEDs: • Temporizador.
3. Prácticas • Práctica PULSADORES: • Encender un LED mientras se mantiene la pulsación. • Cada pulsación conmuta el estado del LED. • Cada pulsación conmuta el estado del LED sin rebotes con retardo software. • Cada pulsación enciende secuencialmente un LEDs y apaga en anterior, utilizando un temporizador.
3. Prácticas • Práctica PULSADORES: - Rebotes:
3. Prácticas • Práctica ZUMBADOR: • Generar un tono de 2 kHz con zumbador mediante retardo software. • Generar un tono de 2 kHz con zumbador y onda bipolar mediante retardo software. • Generar un tono de 2 kHz con zumbador mediante módulo PWM.
3. Prácticas • Práctica ZUMBADOR: - Módulo PWM:
3. Prácticas • Práctica UART: • Realizar un echo local. • Realizar un sencillo intérprete de comandos para encender/apagar los LEDs.
3. Prácticas • Práctica UART: - Módulo UART (TX):
3. Prácticas • Práctica UART: - Módulo UART (TX):
3. Prácticas • Práctica UART: - Módulo UART (RX):
3. Prácticas • Práctica UART: - Módulo UART (RX):
3. Prácticas • Práctica ADQ: • Lectura de la tensión del potenciómetro (VPOT) mediante el convertidor A/D en ejecución paso a paso. • Lectura de la tensión del potenciómetro (VPOT) mediante el convertidor A/D y envío del código en hexadecimal a través de la UART. • Lectura de la tensión de los pulsadores (VBUTTON) mediante el convertidor A/D, envío del código en hexadecimal a travé de la UART y encendido del LED correspondiente mientras el botón se mantiene pulsado.
3. Prácticas • Práctica ADQ: • Convertidor A/D:
3. Prácticas • Práctica VGA: • Generar una pantalla compuesta por 3 franjas horizontales de colores en modo VGA con 640x480 pixels, una frecuencia de línea de 31.5 kHz y una frecuencia de refresco de 60 Hz.
3. Prácticas • Práctica VGA: • Sincronismo horizontal:
3. Prácticas • Práctica VGA: • Sincronismo vertical:
3. Prácticas • Práctica VGA: • Sincronismo horizontal:
3. Prácticas • Práctica VGA: • Sincronismo horizontal vs vertical:
3. Prácticas • Práctica VGA: • Sincronismo horizontal vs RGB:
3. Prácticas • Práctica VGA: • Sincronismo vertical vs RGB:
3. Prácticas • Práctica VGA: • Sincronismo vertical vs RGB:
3. Prácticas • Práctica VGA: