Autor Tema: pic16f876  (Leído 2004 veces)

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

Desconectado xokas11

  • PIC10
  • *
  • Mensajes: 3
pic16f876
« en: 11 de Enero de 2007, 16:34:29 »
Estoy creando una libreria para controlar el ADC  del 16f876A se va compilar con el ccs(ya se que tiene unas librerias especificas para ello pero me gustaria hacerlo como ejercicio tambien he hecho una para el bus I2c y tengo planeada otra para controlar  PWM) lo que me esta pasando es que no encuentro un .h con todos los registros definidos, trae uno incorporado pero esta mas orientado a la configuracion de las  funciones del propio compilador. Alguien tiene algun fichero de este tipo es que no estoy seguro de si se puede hacer por ejemplo con el ADC
ADFM = 0
 y otra cosa como se puede hacer para definir una variable a la que se pueda acceder bit a bit
BYTE registro;
registro.6=1;
Muchas Gracias XokAs

Desconectado dhmejia

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 260
Re: pic16f876
« Respuesta #1 en: 11 de Enero de 2007, 19:44:20 »
Para definir un pin de un registro se hace con #bit, por ejemplo:

#byte PortB = 0x06 //
#bit   B0 = PortB.0 //aca se define el pin B0  del puerto B.

Luego para asignar un valor sería:

B0 = 1 o B0 = 0

Con respecto al ADC no entiendo a que te refieres con ADFM = 0

saludos,
Pereira - Colombia

Desconectado kyler182

  • PIC10
  • *
  • Mensajes: 10
Re: pic16f876
« Respuesta #2 en: 12 de Enero de 2007, 03:23:58 »
ADFM=0 Se refiere a que el resultado de la conversion A/D estará justificado a la izquierda es decir el registro ADRESL (bit 7 y 6) tendrá los 2 bits menos significativos de la conversión A/D y el registro ADRESH tendrá los 8 bits restantes de la conversión A/D

Desconectado xokas11

  • PIC10
  • *
  • Mensajes: 3
Re: pic16f876
« Respuesta #3 en: 12 de Enero de 2007, 06:00:37 »
OK gracias. Alguien tiene el archivo con todas esas definiciones?
es que no lo encuentro en ningun lado y he empezado a hacerlo
Muchas Gracias, Saludos

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: pic16f876
« Respuesta #4 en: 12 de Enero de 2007, 11:28:16 »
Hola xokas11. respecto a la justificación, prueba cambiando #DEVICE ADC=16 y si no te funciona entonces después de la línea setup_adc(xxxxx); pega una rutina en ensamblador para cambiar el bit ADFM, por ejemplo:

Código: [Seleccionar]
setup_adc(xxxxx);
#asm
bcf  ADCON1, 7
#endasm

Salu2
Pedro
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek


 

anything