Autor Tema: Programacion en assembly - velocidad  (Leído 192 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado MayaTM

  • PIC10
  • *
  • Mensajes: 2
Programacion en assembly - velocidad
« en: 09 de Febrero de 2018, 19:31:15 »
Hola a todos , mi pregunta va de el codigo de programacion en assembler o assembly , anteriormente ya habia hecho la programacion de  un motor paso a paso en modo medio paso en clases (en lenguaje assembler)  y ahora en mi clase me pidieron un sensor de velocidad con el mismo lenguaje con P16F1628A ,protocolo RS485 , no soy aun buena en assembler la verdad :/ por eso si podrian ayudarme en eso estaria agradecida. :oops:

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 6550
Re:Programacion en assembly - velocidad
« Respuesta #1 en: 09 de Febrero de 2018, 20:26:49 »
Hacer un programa en ASM lleva tiempo, y especialmente conocimiento del micro.

Lo que comentas no parece complejo ( asi nomas por arriba ), se te puede ayudar en problemas puntuales que tengas, pero no creo que nadie te de el codigo completo de alguna parte.
Vamos por parte, ya que el programa es igual que esta explicacion, por parte.

Sensor de Velocidad:
Primero tenes que saber que sensor vas a usar, sabiendo el sensor, vas a conocer que protocolo usa de comunicacion ( SPI, I2C, etc). De alli en adelante es aprender a usar los modulos del micro y aprender como se comunica el sensor de velocidad. Para esto te vas a tener que leer el datasheet del micro en cuestion.
Aca te sugiero que primero leas el datasheet del sensor, de alli aprende como conectarlo al micro. Sabiendo como conectarlo, solo queda saber que debes enviar y que vas a recibir.
Si es I2C/SPI el mismo datasheet del PIC te da un paso a paso de como hacer la comunicacion ( transmitir o recibir )

RS485:
Para el RS485 es lo mismo que el RS232 en cuanto a la programacion del micro, es solamente programar la UART. Una ves configurada ( velocidad) es poner dato a dato en un registro para que se vaya enviando. Complicado? es todo lo que necesitas saber. Respecto a la parte de hardware, vas a tener que buscar un transceiver que trasnforme esos niveles TTL a lso de RS485.

¿Entonces que debo hacer en todo el programa?

- Defino los vectores de reset/interrupcion
- Configuro pines/modulos/etc
- inicializo cualquier dato que necesite antes

Comienza el loop principal:

- Tomo los datos del sensor
- Escribo el dato en la UART
- Vuelvo al comienzo del loop principal

¿Parece complejo? Es todo lo que necesitas realizar, pensa que cada item es una "subrutina" que debes implementar.

------------------

Nuevamente cuando tengas una pregunta sobre algo mas puntual, podes realizarla en este hilo, asi se continua aca y no se crea otro tema de forma innecesaria.