Autor Tema: Timer 0, Timer 1, Modulo comparador y Modulo USB del pic 18F4550  (Leído 4114 veces)

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

Desconectado dark_soul_4578

  • PIC10
  • *
  • Mensajes: 7
Saludos, tengo un pequeño con la comunicacion USB del pic 18F4550, estoy usando sensores ultrasonicos para medir distancia SRF05, segun la hoja de datos del sensor este necesita un pulso minimo de 10 us y esperar aprox 50 ms, para esto utilizo el Timer 0 de Pic, por cada interrupcion del timer, cambio los valores para que se alterne entre 10 us en alto y 50 ms en bajo, bueno aunque los 10 us nos los puedo conseguir aqui empieza mi primer problema, creo es el menos significativo ya que la hoja de datos dice: "minimo 10 us", bueno este sensor me genera un pulso que va de 100 us a 25 ms segun la distancia, para esto utilizo el Timer 1 y el modulo CCP en modo captura, se me ocurrio configurar el timer para que cuente cada 50 us y que incremente un contador, asi cuando genere un pulso de 100 us, este me cuente hasta dos, el problema es que tampoco consigo esos 50 us y por ultimo necesito que los datos se desplieguen en la PC, para esto ocupo el modulo USB.

Aunado a los problemas que tengo con los Timer's, le sumo el problema de comunicacion ya que cuando conecto el cable usb a la PC este transmite por un tiempo y de repente se muero, es decir, ya no hace nada, no se si los timers o interrupciones interfieran con la comunicacion, aun no domino el PIC al 100% no comprendo del todo la configuracion de los fuses.
Como antecedente ocupo un cristal de 4 MHz, pero como conseguia los tiempos, probe con uno de 20 MHz y con este me acerque un poco mas auque obtengo el mismo resultado, ojala me puedan ayudar, anexo la configuracion de los fuses, yo creo ahi esta el problema, en caso de no ser asi, afjuntare el codigo.

Por todo muchas gracias.
#pragma config PLLDIV=1
#pragma config CPUDIV=OSC1_PLL2
#pragma config USBDIV=2
#pragma config FOSC=HSPLL_HS
#pragma config FCMEN=OFF
#pragma config IESO=OFF
#pragma config PWRT=OFF
#pragma config BOR=ON
#pragma config BORV=3 //2
#pragma config VREGEN=ON
#pragma config WDT=OFF
#pragma config WDTPS=32768
#pragma config CCP2MX=ON
#pragma config PBADEN=OFF
#pragma config LPT1OSC=OFF
#pragma config MCLRE=ON
#pragma config STVREN=ON
#pragma config LVP=OFF
#pragma config ICPRT=OFF
#pragma config CP0=OFF
#pragma config CP1=OFF
#pragma config CP2=OFF
#pragma config CP3=OFF
#pragma config CPB=OFF
#pragma config CPD=OFF
#pragma config WRT0=OFF
#pragma config WRT1=OFF
#pragma config WRT2=OFF
#pragma config WRT3=OFF
#pragma config WRTC=OFF
#pragma config WRTB=OFF
#pragma config EBTR0=OFF
#pragma config EBTR1=OFF
#pragma config EBTR2=OFF
#pragma config EBTR3=OFF
#pragma config EBTRB=OFF

Desconectado willynovi

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 546
Re: Timer 0, Timer 1, Modulo comparador y Modulo USB del pic 18F4550
« Respuesta #1 en: 14 de Junio de 2010, 08:59:21 »
hola, yo trabajo tambien con ese pic y las interrupciones, hasta ahora con las de timers y las int, o sea las externas por RB0, y he podido darle prioridades y esas cosas, el unico inconveniente que tuve es que el ejemplo de HID de Microchip tiene algunas interrupciones para entrar en modo sleep, pero se las he retirado ya que mi dispositivo trabaja continuamente.

Por lo que veo de la configuración de bits no hay nada raro, luego lo reviso un poco mejor en casa.

Estas usando alguna documentación de Microchip de guia? la de la PICDEM FS USB Demo Board es la que corresponde al 18F4550.
Junto con el Framework creo la versión 2.7 es la actual, aunque los ejemplos en C no ma han servido de mucho :5]

No se bien que modo de comunicacion estas usando, HID, CDC, o la API específica, cada uno tiene sus particularidades.

Con respecto a que se quede "colgada" la aplicación o que de ves en cuando no me la detecte es algo que tambien me pasó al principio, pero con unos condensadores de 10uf entre VDD (+5V) y VSS (0V), y uno de 100nf entre VBUS y 0V del USB no tuve mas problemas.
Intento enseñarte a pescar, si solo quieres pescados, espera que un pescador te regale los suyos.

Desconectado dark_soul_4578

  • PIC10
  • *
  • Mensajes: 7
Re: Timer 0, Timer 1, Modulo comparador y Modulo USB del pic 18F4550
« Respuesta #2 en: 14 de Junio de 2010, 22:28:21 »
Agredezco tu ayuda, te comento, la verdad es que no habia leido ningun tipo de documentacion, es que eh tendio que ir aprendiendo en base a lo que hay en la red ya que es un proyecto escolar y el tiempo es oro, pero creo tendre que considerar la opcion de ir documentandome, asi que ya descargue la documentacion de microchip que mencionas.
Yo espero que con esa documentacion pueda saber que tipo de comunicacion estoy usando  :lol: ya entendi un ejemplo de la red y lo modifique para mi aplicacion y con respecto a lo de la "colgada" creo es mi cable que ha de tener un falso por ahi, ya le puse los capacitores y ni aun asi, pero me di cuenta que hay veces que la comunicacion dura hasta que decido desconectar y en otras se desconecta.

Nuevamente agradezco tu ayuda me fue util, y si tengo mas dudas estare por aqui molestando.