TODOPIC
Microcontroladores PIC => * PROYECTOS * => Mensaje iniciado por: tiopac en 17 de Mayo de 2010, 20:49:45
-
Buenaaaaassss....
Alguien me puede ayudar?
Estoy intentando enviar la informacion de unos pulsadores conectados al PIC al PC en modo BULK y leerlos desde DELPHI.
Como soy nuevo en esto de los PICS y estoy bastante verde ya no se por donde tirar.
He conectado un pulsador al PIN_B4 y masa y una resistencia a +5V y al codigo fuente de RR2_USB_Monitor de RedPic le he añadido lo siguiente:
if (!input(SW1)) usb_put_packet(1,Version,6,USB_DTS_TOGGLE);
para emular lo mismo que hace ,al hacer clic en el boton 'Get Firmware version' en el programa RRUSBMonitor.exe
Cuando hago clic en ese boton todo va bien y muestra la version del firmware, pero cuando activo el pulsador no hace nada de nada y ¿No deberia hacer lo mismo?.
Hay que estar leyendo desde delphi continuamente los packeds que pueda enviar el PIC?
De ser asi ,hay alguna manera de hacerlo por interrupciones o eventos ?
Agradeceria inmensamente algun tipo de ayuda.
Gracias.
-
Hay que estar leyendo desde delphi continuamente los packeds que pueda enviar el PIC?
De ser asi ,hay alguna manera de hacerlo por interrupciones o eventos ?
Agradeceria inmensamente algun tipo de ayuda.
Gracias.
Sí, hay que estar leyendo continuamente los paquetes que envía el PIC. El pic nunca envía datos a menos que el host los pida.
No, no hay forma de saber cuando el pic quiere enviar algo. Siempre hay que hacerlo por polling (muestreo constante).
-
tiopac, creo te convendria trabajar con el modo CDC, que emula el RS232, yo estoy haciendo algunas aplicaciones con esto es muy simple, es como manejar el puerto serie.
En framework 2.3 tiene varios ejemplos.
El modo bulk, creo es conveniente para transferencia de datos, pero no para comunicación.
-
Muchas Gracias por las respuestas.
Ahora lo tengo mas claro.
Tendre que hacer mi pulsadora en modo HID, asi utilizo el driver HID de windows.
Ahora me surje otro problema.
He probado el programa HID de USB Desencadenado y el circuito hace la funcion de un teclado normal correctamente.
Pero , ¿Como podria enviar datos al PC en modo HID y capturarlos en DELPHI sin emular un teclado standart, algo asi como lo hace un Joystick o mouse?. Lo que necesito es que al pulsar una o varias teclas a la vez, lo envie en modo HID y delphi me indique cuales son .
Alguien podria ayudarme o indicar donde podria encontrar informacion.
Prometo aportar todo el proyecto , incluido el diseño de la placa, si consigo terminarlo.
Gracias
-
aqui yo he encontrado algo, http://www.lvr.com/hidpage.htm
Lo que tu tienes que hacer es un HID generico, osea, ni teclado, ni mouse, ni gamepad. Un dispositivo que envia y recibe datos de la PC.
Alli en esa pagina puedes encontrar ejemplos en varios lenguajes, VB, VC, etc.
Yo no he logrado algo concreto con el HID, uso la API de Microchip "mchpfsusb.dll" si te bajas el framework oficial, creo es la version 2.6 la actual, alli tienes varios ejemplos, incluso de HID, CDC o del API, para el firmware o para el soft de la PC.
Si llegas a tener algún avance con lo del HID y puedes hacer una comunicación bidireccional, por favor mantenme al tanto que me interesa.
Saludos,