Voltaje Referencia

Foro para hablantes de español que deseen escribir en su lengua materna.

Moderator: Benj

Post Reply
electron67
Posts: 311
Joined: Sat Jan 12, 2008 2:08 am
Has thanked: 104 times
Been thanked: 47 times
Contact:

Voltaje Referencia

Post by electron67 »

Hola,
Estoy probando un programa que utiliza el VRef del pic, consegui uno que utiliza esta funcion, este ejemplo esta configurado para el PIC16F877A funciona correctamente en flowcode y en el hardware; configure el programa para el PIC18F4620 pero cuando comienza el programa se detiene en la instruccion "C", cabe comentar que en flowcode el programa funciona correctamente, pero en el hardware no; lamentablemente para mi, no entiendo el lenguaje "C", es por eso que uso flowcode; creo que el problema esta en la configuracion del block que tiene la instruccion en "C". El programa esta excelente si tienes un sensor que te entregue por decir 1.5 volt maximo, ajustas el VRef con un pot de 10k a ese mismo voltaje, de esta forma vas a ajustar de 0 a 1.5 volt el rango o sea de 0 a 255 (byte) quedando mas exacta la medicion realizada por el sensor. El VRef es conectado en el puerto A3 por medio del pot de 10k (4.5 volt max) y la señal del sensor al puerto A0.
Envio el programa para el PIC18F877A y para el PIC18F4620.
Podria alguien ayudarme en esto ?

Saludos y gracias
Attachments
Vref18F4620.fcf
PROGRAMA
(9 KiB) Downloaded 420 times
Vref16F877A.fcf
PROGRAMA
(12.5 KiB) Downloaded 412 times

User avatar
Benj
Matrix Staff
Posts: 15312
Joined: Mon Oct 16, 2006 10:48 am
Location: Matrix TS Ltd
Has thanked: 4803 times
Been thanked: 4314 times
Contact:

Re: Voltaje Referencia

Post by Benj »

Hola,

Para el 18F4620 el comienzo ADC bits de conversión es de 1 bit en vez de 2 bits por lo que el código para iniciar y esperar a que la conversión debe tener este aspecto.

Code: Select all

adcon0 = adcon0 | 0x02;
while (adcon0 & 0x02) ;
Puede haber otras diferencias también, lo cual significa que se escribe en los registros ADCON0 y ADCON1 puede no ser del todo correcto. La hoja de datos del dispositivo 18F4620 explica completamente los registros de ADC en el artículo 19.

¿Por lo menos necesita el bloque de código C en su programa? El ADC se lea como función de bytes se utiliza la configuración de las propiedades de los componentes primordiales de ADC de todas formas los valores que se ponen en el ADCON registra.


Hello,

For the 18F4620 the ADC start conversion bit is bit 1 rather then bit 2 so the code to start and wait for the conversion should look like this.

Code: Select all

adcon0 = adcon0 | 0x02;
while (adcon0 & 0x02) ;
There may be other differences too which means that your writes to the adcon0 and adcon1 registers may not be quite correct. The 18F4620 device datasheet fully explains the ADC registers in section 19.

Do you even need the C code block in your program? The ADC read as byte function will use the settings from the ADC component properties anyway overriding the values you are putting into the adcon registers.

electron67
Posts: 311
Joined: Sat Jan 12, 2008 2:08 am
Has thanked: 104 times
Been thanked: 47 times
Contact:

Re: Voltaje Referencia

Post by electron67 »

hize una prueba anteriormente eliminanado el codigo "C" pero no funciono; tendran un ejemplo de como usar el VRef del pic ? o que cambio le podria hacer al programa Vref18f4620 para no utilizar el codigo C.

User avatar
Benj
Matrix Staff
Posts: 15312
Joined: Mon Oct 16, 2006 10:48 am
Location: Matrix TS Ltd
Has thanked: 4803 times
Been thanked: 4314 times
Contact:

Re: Voltaje Referencia

Post by Benj »

Hola,

Debe ser capaz de seleccionar el componente ADC en el panel. Haga clic en el componente en el panel y seleccione Propiedades EXT. A continuación, establezca la opción de Vref a VREF +.



Hello,

You should be able to select the ADC component on the panel. Right click the component on the panel and select EXT properties. Then set the Vref option to VREF+.
Attachments
ADCprops.JPG
ADCprops.JPG (32.75 KiB) Viewed 6809 times

electron67
Posts: 311
Joined: Sat Jan 12, 2008 2:08 am
Has thanked: 104 times
Been thanked: 47 times
Contact:

Re: Voltaje Referencia

Post by electron67 »

Seleccione adc(0) y adc(1) con los puertos A0 y A3; A3 lo seleccione en propiedades ext.
Vref+ y A0 seleccione prop. ext. Vdd. Ajusto VRef a 2.5 volt, y cuando activo el sensor al llegar a 2.5 volt deberia marcar 255(byte) pero marca 100
Attachments
Vref18F4620.fcf
programa
(9.5 KiB) Downloaded 430 times

electron67
Posts: 311
Joined: Sat Jan 12, 2008 2:08 am
Has thanked: 104 times
Been thanked: 47 times
Contact:

Re: Voltaje Referencia

Post by electron67 »

He tratado muchas opciones para que funcione correctamente el VRef en el PIC18F4620
(llevo varios dias haciendo pruebas). Elimine el bloque C del programa, en el PIC16F877A funciono correctamente en el hardware, pero al configurar el chip 18f4620 este no trabaja.

Agradeceria si es posible que chequen el programa en el hardware, para verificar en donde esta el problema.

electron67
Posts: 311
Joined: Sat Jan 12, 2008 2:08 am
Has thanked: 104 times
Been thanked: 47 times
Contact:

Re: Voltaje Referencia

Post by electron67 »

Parece ser que la funcion VRef no funciona con Flow 5, con Flow 4 si funciona.

Post Reply