Autor Tema: otra duda sobre mikrobasic y el adc  (Leído 3407 veces)

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

Desconectado heder

  • PIC10
  • *
  • Mensajes: 6
otra duda sobre mikrobasic y el adc
« en: 09 de Noviembre de 2007, 01:10:34 »
hola tengo una duda sobre la conversion adc con el mkb,  cuando programaba en mplab  5v  me representaban  en la salida a 8bits (11111111)=5v en mkb el conversor me  da  una salida a 10bits y para trabajar una salida a 8bits tendria que trabajar a 2.5v= (11111111),  mi pregunta es como contraresto esto o en que estoy errando.


mi programa en mkb

dim temp as byte

main:
 TRISB  = 0                   ' PORTB como salida
 TRISA  = %000001             'RA0 COMO ENTADA
 ADCON1 = %00001110           'SELECCIONO CH0


TEMP = adc_read(0)
PORTB = TEMP
 delay_ms(50)
goto main
end.

gracias por pretarme atencion








Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: otra duda sobre mikrobasic y el adc
« Respuesta #1 en: 09 de Noviembre de 2007, 01:50:10 »
Hola:

Y porqué no puedes trabajar con los 10 bits?

PD: recuerda que puedes introducir código ASM si en realidad necesitaras los 8bits.

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: otra duda sobre mikrobasic y el adc
« Respuesta #2 en: 09 de Noviembre de 2007, 14:52:19 »
Y si configuras el ADCON para trabajr con 8 Bits solamente.
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: otra duda sobre mikrobasic y el adc
« Respuesta #3 en: 09 de Noviembre de 2007, 17:13:21 »
Hola:

Pues parece ser que es la instrucción así:

Código: [Seleccionar]
Adc_Read

Prototype sub function Adc_Read(dim channel as byte) as word
 
Returns 10-bit unsigned value read from the specified channel.
 
Description Initializes PIC’s internal ADC module to work with RC clock. Clock determines the time period necessary for performing AD conversion (min 12TAD).

Parameter channel represents the channel from which the analog value is to be acquired. Refer to the appropriate datasheet for channel-to-pin mapping.
 
Requires Nothing.
 
Example tmp = Adc_Read(1)  ' Read analog value from channel 1


Ya es cuestión de la instrucción, te retorna el valor de 10 bits, pero se podría configurar el registro para ver que sucede.

Desconectado heder

  • PIC10
  • *
  • Mensajes: 6
Re: otra duda sobre mikrobasic y el adc
« Respuesta #4 en: 09 de Noviembre de 2007, 23:34:10 »
no puedo usar los 10bit porque pienzo implememtar un dac de 8bits, el  problema es que no tengo idea de como configurar el registro

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: otra duda sobre mikrobasic y el adc
« Respuesta #5 en: 09 de Noviembre de 2007, 23:41:36 »
Lee el datasheet del PIC que estes usando si es el 877 puedes con el registro ADCON1 si tienes dudas nos dices
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado heder

  • PIC10
  • *
  • Mensajes: 6
Re: otra duda sobre mikrobasic y el adc
« Respuesta #6 en: 10 de Noviembre de 2007, 01:24:55 »
acabo  de hacer funcionar  el adc para  8bits como me lo aconsejoron  trabaje la configuracion en asm en mkb   



dim temp as byte

main:
 TRISB  = 0                   ' PORTB como salida
 TRISA  = %000001

   ADCON1  =%00001110
   ADCON0  =%01000001


delay_ms(50)
   ADCON0.2=1
  T:
if ADCON0.2=1  THEN
  goto T
   END IF
   TEMP=   ADRESH
   PORTB = TEMP
  goto main
END.

gracias por pretarme atencion




Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: otra duda sobre mikrobasic y el adc
« Respuesta #7 en: 11 de Noviembre de 2007, 22:07:00 »
Excelente que ya funcione como lo querias.
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."


 

anything