Programas realizados en microcontroladores AVR, donde se muestran aplicaciones sencillas de microcontroladores y softwares como MATLAB, LABVIEW entre otros.
domingo, 3 de noviembre de 2013
PRUEBA DE ENTRADAS
El siguiente es un programa sencillo en ensamblador el cual hace el uso de algunas instrucciones sencillas para cambiar de estado dos salidas, dependiendo del estado de las entradas.
DESCRIPCIÓN:
Se hará el uso de los siguientes mnemonicos:
SBIS Saltar si el bit en el registro de E / S se encuentra
Prueba el estado de las entradas y descarta la siguiente instrucción si hay un uno en el bit del registro
SBIC Saltar si el bit en el registro de E / S no se encuentra
Prueba el estado de las entradas y descarta la siguiente instrucción si hay un cero en el bit del registro
CBI limpia el bit del registro de E / S
Envía un cero a la salida indicada
SBI setea el bit del registro de E / S
Envía un uno a la salida indicada
PROGRAMA
/*
* ejemplo2.asm
*
* Created: 02/11/2013 18:20:21
* Author: NEBURESS.KYLL
*/
.device ATMEGA48
.include "C:\Program Files (x86)\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRAssembler\2.1.51.64\avrassembler\include\m48def.inc"
.def var = r16
rjmp INIT
INIT:
ldi var,0xf0 ;salida nibble alto - entradas nibble bajo
out DDRD,var
sbi PORTD,0
ldi var,0x0f ;entradas nibble alto - salidas nibble bajo
out DDRB,var
sbi PORTD,2
start:
;apaga o prende la salida PB2
sbis PIND,0 ;prueba si esta presionada la entrada de no ser así realiza la sentencia siguiente
sbi PORTB,2
sbic PIND,0 ;prueba si esta presionada la entrada de ser así realiza la sentencia siguiente
cbi PORTB,2
;apaga o prende la salida PD4
sbic PIND,2 ;prueba si esta presionada la entrada de ser así realiza la sentencia siguiente
sbi PORTD,4
sbis PIND,2 ;prueba si esta presionada la entrada de no ser así realiza la sentencia siguiente
cbi PORTD,4
rjmp start
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario