Autor Tema: Duda sobre librerias de mikroC  (Leído 4247 veces)

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

Desconectado halowin

  • PIC16
  • ***
  • Mensajes: 151
Duda sobre librerias de mikroC
« en: 14 de Marzo de 2014, 05:39:48 »
Hola.

(En MikroC PRO)

A ver si alguien me puede explicar como se usa la libreria Soft_SPI y que ventajas ofrece sobre la SPI normal.
En la ayuda del compilador viene un ejemplo:

Código: [Seleccionar]
// Software SPI module connections
sbit SoftSpi_SDI at RC4_bit;
sbit SoftSpi_SDO at RC5_bit;
sbit SoftSpi_CLK at RC3_bit;

sbit SoftSpi_SDI_Direction at TRISC4_bit;
sbit SoftSpi_SDO_Direction at TRISC5_bit;
sbit SoftSpi_CLK_Direction at TRISC3_bit;
// End Software SPI module connections
...
Soft_SPI_Init(); // Init Soft_SPI

y mi pregunta es si puedo cambiar esos PINs a los que yo quiera, pero me da que no porque segun los que ponga me compila o no (no lo entiendo)

En definitiva, que no se para que sirve Soft_SPI o no lo estoy entendiendo bien. Quiero cambiar un pin, en concreto el SDO porque sospecho que me da problemas con otra funcion (RX) multiplezada pero no veo la utilidad de esta libreria.


Gracias


Desconectado HJG

  • PIC12
  • **
  • Mensajes: 77
Re: Duda sobre librerias de mikroC
« Respuesta #1 en: 14 de Marzo de 2014, 07:57:41 »
A ver si alguien me puede explicar como se usa la libreria Soft_SPI y que ventajas ofrece sobre la SPI normal.
En la ayuda del compilador viene un ejemplo:
No hay SPI "normal," hay por software y por hardware.

SPI por hardware: todo está implementado en el silicio del micro, todos los registros, y el manejo interno de los mismos y con los pines que trae preseleccionados a tal fin.

SPI por software: se hace todo el manejo por programa, utilizando cualquier grupo de pines y registros comunes.

Es decir, en el SPI por hardware el trabajo lo hace en micro "electrónicamente" y no gastas ni tiempo, ni registros del micro, y en el SPI por software, tenes que hacerlo vos por programa, en el caso de mikroC lo hace la librería, y gastas tiempo y registros del micro.

Desconectado halowin

  • PIC16
  • ***
  • Mensajes: 151
Re: Duda sobre librerias de mikroC
« Respuesta #2 en: 14 de Marzo de 2014, 08:32:23 »
Ok, HJG, creo haberlo entendido, pero si en la version "por software" puedes utilizar otros pines, porque a mi no me compila si los cambio a mi gusto?


Desconectado HJG

  • PIC12
  • **
  • Mensajes: 77
Re: Duda sobre librerias de mikroC
« Respuesta #3 en: 14 de Marzo de 2014, 08:59:44 »
porque a mi no me compila si los cambio a mi gusto?
¿Que micro utilizas?
¿no habrá algún conflicto con alguna otra librería. con los pines que quieres utilizar?
¿que pines quieres utilizar?

Desconectado halowin

  • PIC16
  • ***
  • Mensajes: 151
Re: Duda sobre librerias de mikroC
« Respuesta #4 en: 14 de Marzo de 2014, 09:12:13 »
porque a mi no me compila si los cambio a mi gusto?
¿Que micro utilizas?
¿no habrá algún conflicto con alguna otra librería. con los pines que quieres utilizar?
¿que pines quieres utilizar?

Pues segun el ejemplo que puese al principio del post, queria cambiar:

sbit SoftSpi_SDO at RC5_bit;

por por ejemplo

sbit SoftSpi_SDO at RD3_bit;

 (u otro cualquiera que no use en ese momento) paro me da errores de que las variables globales..... (no recuerdo ahora mismo el error).

La cosa es que (RC7/RX/DT/SDO) (PIC18F4550)  uso la UART para enviar datos al portatil pero NO recibo nada, solo envio, pero sospecho que no me funcione la comunicacion SPI por eso.


Desconectado HJG

  • PIC12
  • **
  • Mensajes: 77
Re: Duda sobre librerias de mikroC
« Respuesta #5 en: 14 de Marzo de 2014, 09:19:32 »

Desconectado halowin

  • PIC16
  • ***
  • Mensajes: 151
Re: Duda sobre librerias de mikroC
« Respuesta #6 en: 14 de Marzo de 2014, 09:20:53 »
PIC18F4550

Desconectado HJG

  • PIC12
  • **
  • Mensajes: 77
Re: Duda sobre librerias de mikroC
« Respuesta #7 en: 14 de Marzo de 2014, 09:50:12 »
PIC18F4550
En el 18F4550, el pin RC3 no existe, no está implementado.
RC4 y RC5 seguramente la utiliza alguna otra librería,¿deshabilitaste las que no utilizas?

Yo probé con RC0, RC1 y RC2 y compila perfectamente.

Desconectado halowin

  • PIC16
  • ***
  • Mensajes: 151
Re: Duda sobre librerias de mikroC
« Respuesta #8 en: 14 de Marzo de 2014, 10:01:13 »
PIC18F4550
En el 18F4550, el pin RC3 no existe, no está implementado.
RC4 y RC5 seguramente la utiliza alguna otra librería,¿deshabilitaste las que no utilizas?

Yo probé con RC0, RC1 y RC2 y compila perfectamente.

Ya, ya se que no existe RC3, he dicho RD3, y si, desactivé todas las demas y me seguia dando ese error.
Probaré a la tarde con esos pines que me dices y te cuento.

Gracias

Desconectado HJG

  • PIC12
  • **
  • Mensajes: 77
Re: Duda sobre librerias de mikroC
« Respuesta #9 en: 14 de Marzo de 2014, 10:03:11 »
Ya, ya se que no existe RC3, he dicho RD3,
de echo que en el ejemplo pusiste RC3... por eso lo aclaré.

Hola.

(En MikroC PRO)

A ver si alguien me puede explicar como se usa la libreria Soft_SPI y que ventajas ofrece sobre la SPI normal.
En la ayuda del compilador viene un ejemplo:

Código: [Seleccionar]
// Software SPI module connections
sbit SoftSpi_SDI at RC4_bit;
sbit SoftSpi_SDO at RC5_bit;
sbit SoftSpi_CLK at RC3_bit;

sbit SoftSpi_SDI_Direction at TRISC4_bit;
sbit SoftSpi_SDO_Direction at TRISC5_bit;
sbit SoftSpi_CLK_Direction at TRISC3_bit;
// End Software SPI module connections
...
Soft_SPI_Init(); // Init Soft_SPI

y mi pregunta es si puedo cambiar esos PINs a los que yo quiera, pero me da que no porque segun los que ponga me compila o no (no lo entiendo)

En definitiva, que no se para que sirve Soft_SPI o no lo estoy entendiendo bien. Quiero cambiar un pin, en concreto el SDO porque sospecho que me da problemas con otra funcion (RX) multiplezada pero no veo la utilidad de esta libreria.


Gracias



Al RD3 lo mencionas como reeplazo del RC5...

Pues segun el ejemplo que puese al principio del post, queria cambiar:

sbit SoftSpi_SDO at RC5_bit;

por por ejemplo

sbit SoftSpi_SDO at RD3_bit;

 (u otro cualquiera que no use en ese momento) paro me da errores de que las variables globales..... (no recuerdo ahora mismo el error).

La cosa es que (RC7/RX/DT/SDO) (PIC18F4550)  uso la UART para enviar datos al portatil pero NO recibo nada, solo envio, pero sospecho que no me funcione la comunicacion SPI por eso.



« Última modificación: 14 de Marzo de 2014, 10:06:25 por HJG »