Documente Academic
Documente Profesional
Documente Cultură
Lenguaje Ensamblador
REPORTE DE PRCTICA
INTRODUCCIN
En esta prctica se llevo a cabo el control de un brazo robot usando el manejo de tablas, en la mayora de los proyectos es necesario utilizar una o ms tablas de datos. Los conceptos expuestos en este tema son fcilmente aplicables a otras versiones de Lenguaje Ensamblador para diversas opciones de microcontroladores. Una tabla de datos en la memoria ROM de programa es una lista de constantes que el programa puede recoger mediante la instruccin retlw. La instruccin retlw funciona de forma similar que return, produce el retorno de una subrutina pero con un valor en el registro w. Dicha caracterstica es de suma importancia cuando se desea acceder a tablas de datos en la memoria de programa. Donde k es el valor de la constante que se carga en el registro de trabajo w. Una de las mayores aplicaciones del manejo de la tabla de datos en la resolucin de tablas de verdad grabadas en ROM. Salto indexado es una de las tcnicas que permite resolver problemas que puedan ser representados mediante una tabla de verdad. En el PIC16F84A se basa en la utilizacin de la instruccin addwf PCL,F, de este modo, la direccin del salto se consigue sumando al contador de programa (PCL) un valor de desplazamiento almacenado en el registro de trabajo w. En el salto indexado, la direccin del salto se consigue sumando a un registro base (el PCL) un valor de desplazamiento almacenado en un registro ndice que es el registro de trabajo w. A este valor de desplazamiento se le denomina tambin offset. Al ejecutar la instruccin addwf PCL,F el registro base (PCL) debe estar cargado con la primera direccin de la tabla, apuntado de esta manera al origen de esta. El circuito fue auxiliado con integrados L293D, para el control de giro en los motores que componen al brazo robot.
CODIGO FUENTE
list p=16f84a include <p16f84a.inc> ORG 00 INICIO BSF STATUS,5 MOVLW b'00001111' MOVWF TRISA MOVLW B'00000000' MOVWF TRISB BCF STATUS,5
CODIGO MOVF PORTA,W ANDLW B'00001111' CALL GIRO MOVWF PORTB GOTO CODIGO
GIRO ADDWF PCL,F RETLW D'0' RETLW D'1' RETLW D'2' RETLW D'4' RETLW D'8' RETLW D'16' RETLW D'32'
END
namespace robotInterface { public partial class frm_main : Form { public frm_main() { InitializeComponent(); } private void button9_Click(object sender, EventArgs e) { PortParallel.Output(888, 10); } private void button10_Click(object sender, EventArgs e) { PortParallel.Output(888, 1); } private void button7_Click(object sender, EventArgs e) { PortParallel.Output(888, 2); } private void button8_Click(object sender, EventArgs e) { PortParallel.Output(888, 3); } private void button5_Click(object sender, EventArgs e) { PortParallel.Output(888, 4); } private void button6_Click(object sender, EventArgs e)
{ PortParallel.Output(888, 5); } private void button3_Click(object sender, EventArgs e) { PortParallel.Output(888, 6); } private void button4_Click(object sender, EventArgs e) { PortParallel.Output(888, 7); } private void button1_Click(object sender, EventArgs e) { PortParallel.Output(888, 8); } private void button2_Click(object sender, EventArgs e) { PortParallel.Output(888, 9); } } }
CONCLUSIONES
En esta prctica tocamos el tema de tablas de verdad, el cual se pudo llevar a cabo por medio de la tcnica de salto indexado permite resolver mediante las mismas tablas, la direccin de salto se consigue sumando al contador PCL un valor de desplazamiento ndice almacenado en un registro ndice del registro w, mediante las instrucciones usadas addwf PCL,F.
Olga Leonor G.
Este proyecto nos a dejado mucho conocimiento de manejo de motores, que estos son bases para el funcionamiento y movimiento de los robots. Manejar el motores de corriente continua nos a hecho conocer y para que se usan los puentes H. estos sirven para controlar el sentido de giro de los motores. Al mismo tiempo este proyecto nos a ayudado a comprender como el software y el hardware pueden trabajar juntos para lograr cosas fantasticas como el es la robotica y los microcontroladores. Esto ha sido de gran ayuda para el conocimiento de todos los integrantes ya que hemos conocido como manipular los datos para sacarlos fuera de la computadora y hacer que nuestro hardware pueda recibirlos y entenderlos para realizar lo que queremos que haga. Carlos A. Cicler Molina