Autor Tema: Declaración de Pines en Hi-Tech PIC C  (Leído 2706 veces)

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

Desconectado Palomino86

  • PIC16
  • ***
  • Mensajes: 180
Declaración de Pines en Hi-Tech PIC C
« en: 03 de Abril de 2011, 22:07:05 »
Tenga una duda acerca la declaración de pines en Hi Tech.

En C18 lo hago de la siguiente manera:

Código: [Seleccionar]
//Definición de pines a utilizar
#define SCLK RC3 //Pin de Clock de DS1302
#define IO RD0 //Pin de Datos de DS1302
#define RST RD1 //Pin de Enable de DS1302

//Definicion de los Bits de los TRIS

#define TrisSCLK TRISC3 //Pin de Clock de DS1302
#define TrisIO TRISD0 //Pin de Datos de DS1302
#define TrisRST TRISD1 //Pin de Enable de DS1302

No se como realizar lo mismo en Hi Tech PIC C, he estado buscando pero creo que no he dado con el clavo. Ojala alguien me pudiera hechar la mano.

Saludos
Lo que no me destruye, me fortalece

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: Declaración de Pines en Hi-Tech PIC C
« Respuesta #1 en: 03 de Abril de 2011, 22:23:55 »
  Al parecer es igual.
  Yo declaré unos pines así y funciona

Código: C
  1. #define TxPin   RA0
  2. #define RxPin   RB1
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Declaración de Pines en Hi-Tech PIC C
« Respuesta #2 en: 03 de Abril de 2011, 23:38:21 »
Tenga una duda acerca la declaración de pines en Hi Tech.

En C18 lo hago de la siguiente manera:

Código: [Seleccionar]
//Definición de pines a utilizar
#define SCLK RC3 //Pin de Clock de DS1302
#define IO RD0 //Pin de Datos de DS1302
#define RST RD1 //Pin de Enable de DS1302

//Definicion de los Bits de los TRIS

#define TrisSCLK TRISC3 //Pin de Clock de DS1302
#define TrisIO TRISD0 //Pin de Datos de DS1302
#define TrisRST TRISD1 //Pin de Enable de DS1302

No se como realizar lo mismo en Hi Tech PIC C, he estado buscando pero creo que no he dado con el clavo. Ojala alguien me pudiera hechar la mano.

Saludos

¿Como hiciste eso en C18?  :shock:

C18 tiene declaradas uniones y estructuras de los pines de cada registro, entonces se puede usar un macro (#define) para que el compilador reemplace una linea por otra, o sea se puede hacer:

Código: [Seleccionar]
#define PIN_A0 PORTAbits.RA0
Entonces al compilador al encontrar PIN_A0 lo reemplaza por PORTAbits.RA0.

Ahora Hitech tiene declarados los bits de los registros que controlan los puertos como RAx, RBx, ect, LATAx, LATBx, ect, TRISAx, TRISBx, ect... Y de esa manera podes hacerlo como indica AngelGris.


Saludos!
« Última modificación: 03 de Abril de 2011, 23:40:36 por Suky »
No contesto mensajes privados, las consultas en el foro

Desconectado Palomino86

  • PIC16
  • ***
  • Mensajes: 180
Re: Declaración de Pines en Hi-Tech PIC C
« Respuesta #3 en: 04 de Abril de 2011, 02:46:52 »
Unas disculpas Suky, tienes razon jajajja; me equivoque al momento de pegar el codigo de C18, en vez de eso pegue la forma en la que estoy tratando de declarar los pines en Hi Tech.

En C18 es de esta manera:

Código: [Seleccionar]
//Definición de pines a utilizar
#define SCLK PORTCbits.RC3 //Pin de Clock de DS1302
#define IO PORTDbits.RD0 //Pin de Datos de DS1302
#define RST PORTDbits.RD1 //Pin de Enable de DS1302

//Definicion de los Bits de los TRIS

#define TrisSCLK TRISCbits.TRISC3 //Pin de Clock de DS1302
#define TrisIO TRISDbits.TRISD0 //Pin de Datos de DS1302
#define TrisRST TRISDbits.TRISD1 //Pin de Enable de DS1302



Intentaré lo que me sugieren.


Saludos
Lo que no me destruye, me fortalece