Bienvenido a Hardcore Modding

 Vivir el modding / Iniciarse en el modding 28 de marzo de 2024 22:16   Modding  ·  Artículos  ·  Guías  ·  Guías de los usuarios  ·  Reviews  ·  Enviar Noticia ·  Top 10 ·  Temas

Minichat

El_Nene :Feliz año dos meses tarde!!! Aqui el tiempo pasa mas lento
xenon :Feliz año 2024. Me embargó la nostalgia al ver que aun existe el foro :)
Cyg :Feliz Navidad 2023
DjSalva :02/10/2023 Saludos chicos cuanto tiempo, El_ Nene cuanta razon :)
Jesmasco :2023
Steam :Saludos! Iniciar sesión despues de 13 años, que recuerdos!
El_Nene :y aún así algo te llama para volver a entrar :)
djmax :saludos años t años que no entraba a esta pagina
El_Nene :Acabo de empezar un nuevo proyecto, a ver si los demás os animais.
El_Nene :cuanto tiempo!!!
aulex51 :Buen año a todos!
unkdememoria :Hola Locos
Cyg :Saludos-28-oct-2022
Cyg :Saludos-28-oct-2022
Chinoka :Aloha. 14/Sept/2022
TELOR5 :No veo como enviar mensaje
TELOR5 :No veo como enviar mensaje
alvaro :Hola 2022!!
el_friky :Buenas Mundo!!! 31/12/21
Tpm :Buenas tardes.... 25/11/21 Saludos!!!
CR6302428 :un buen dia para el que lea esto :)
CR6302428 :un buen dia para el que lea esto :)
:)8):eek::(:@;):P9):O

 FAQFAQ   BuscarBuscar   Grupos de UsuariosGrupos de Usuarios   PerfilPerfil   Entre para ver sus mensajes privadosEntre para ver sus mensajes privados   ConectarConectar 

Proyecto PicUSB ... Envio/Recepción d datos por USB con PI
Ir a página     
 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Electronica
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
alquimus
modder
modder



País:
Sexo:
Registrado: 24 julio 2006
Mensajes: 2

MensajePublicado: Lun, 24 Jul 2006 10:28 pm    Asunto: Recibir datos desde el PIC Responder citando

Hola a todos, he desarrollado el proyecto original, y he logrado grandes avances, mi objetivo es controlar 4 motores paso a paso a travez del pic, para lo cual he logrado aumentar la cantidad de informacion que le ENVIO al PIC ( en este caso un 18F4550), sin embargo no he podido RECIVIR desde el PIC mas de 1 byte, (como en la suma) .

Que parametros debo modificar tanto en el archivo .C que va en el pic, tanto como en el proyecto de visual c# para poder aumentar la cantidad de bytes recibidos?.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Lars_Ulrich
modder
modder



País:
Sexo:
Registrado: 18 marzo 2007
Mensajes: 6

MensajePublicado: Dom, 18 Mar 2007 7:22 pm    Asunto: Responder citando

J1M AYUDAAAAA!!!!!!! Soy nuevo en esto de los PIC con USB y estoy tratando de montar tu proyecto en mi casa... El caso es que cuando conecto el pic al pc, este ultimo lo toma como "dispositivo desconocido", y si instalo el driver que tu das (picusb), me sale un error que dice: "El dispositivo no puede iniciar (codigo 10)"Enfadado... q hago????? estoy medio deseperado porque necesito esto para mi proyecto de grado, PORFA AYUDAAAA...
"Para ti motherflower"...
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Teotekaplan
Moderador
Moderador



País:
Sexo:
Registrado: 31 marzo 2003
Mensajes: 4124
Ubicación: Madrid

MensajePublicado: Dom, 18 Mar 2007 10:19 pm    Asunto: Responder citando

Tienes bien soldados los pines del USB +D y -D ? Vamos, que no estén intercambiados.
'Me lo contaron y lo olvidé. Lo vi y lo entendí. Lo hice y lo aprendí.'
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Lars_Ulrich
modder
modder



País:
Sexo:
Registrado: 18 marzo 2007
Mensajes: 6

MensajePublicado: Lun, 19 Mar 2007 9:42 pm    Asunto: Responder citando

Gracias Teotekaplan por la respuesta, pero ya revisé y todo esta bien conectado, y sin embargo me sigue saliendo el mismo error Enfadado Enfadado Enfadado alguna otra solucion ???...
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Teotekaplan
Moderador
Moderador



País:
Sexo:
Registrado: 31 marzo 2003
Mensajes: 4124
Ubicación: Madrid

MensajePublicado: Lun, 19 Mar 2007 9:51 pm    Asunto: Responder citando

Varios intentos:

-Cambiar el PICUSB de puerto

-Quitar el driver e instalar a mano (clic con el derecho en el .inf y opción instalar) y luego conectar el picusb.

Ah bueno, asegúrate de que el driver es apropiado, que no intentas meter una versión antigua... o como yo... dos dias intentando instalar el picusb y metiendole a la fuerza el driver del gtpusb (merluzas del teo) jajajaja

-Asegurarse de que el condensador de alimentación de USB (C7) está puesto, se han dado casos de mal funcionamiento por no ponerlo, aunque no tire del USB pa alimentar al circuito.

-Borra el pic y prográmalo de nuevo, o prueba otro pic.
'Me lo contaron y lo olvidé. Lo vi y lo entendí. Lo hice y lo aprendí.'
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Lars_Ulrich
modder
modder



País:
Sexo:
Registrado: 18 marzo 2007
Mensajes: 6

MensajePublicado: Mar, 20 Mar 2007 7:09 am    Asunto: Responder citando

De antemano ,uchas gracias por la qyuda que me etas dando Teo...
Entrando en materia, hice las 2 primeras y sucedieron 2 cosas interesantes: 1) cuando instale el driver a mano ya por lo menos no lo reconoce como "Dispositivo desconocido", sino como "PicUSB"(eso creo que es bueno), lo malo es que ahora no me sale ni siquiera el icono ni nada de eso TristeTriste
por cierto, de las versiones, estoy instalando el que posteó J1M en la pag 4 de este foro... no se si sea el mas reciente...
con respecto al condensador de alimentacion, carajo no lo puse, y como un refran de mi tierra dice: "en casa de herrero, cuchillo de palo", no tengo un condensador de 100n y me toca ir a comprarlo mañana :p
si hay alguna mejora, escribiré mis agradecimientos, y si no, escribiré molestandoles mas la vida jejeje :p:p.... GRACIAS!!!
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Lars_Ulrich
modder
modder



País:
Sexo:
Registrado: 18 marzo 2007
Mensajes: 6

MensajePublicado: Mar, 20 Mar 2007 7:50 pm    Asunto: Responder citando

GRACIAS!!!! ya compre el condensador y funcionó a las mil maravillas... (eso me pasa por descuidado)... pero todo gracias a la ayuda que me dieron... ahhh por cierto, lo del icono personalizado en la clase de dipositivos no me salió correctamente, pero lo importante es que ya lo raconoce perfecto...
THANKS!!!! Sonriente
Volver arriba
Ver perfil de usuario Enviar mensaje privado
dianacarolito
modder
modder



País:
Sexo:
Registrado: 30 mayo 2007
Mensajes: 1

MensajePublicado: Mie, 30 May 2007 4:01 am    Asunto: Responder citando

Hola lo que pasa es que quiero utilizar el protocolo usb y el i2c pero cuando inicia la interrupcion producida por el usb no me realiza la del i2c, me podrian ayudar Avergonzado
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Teotekaplan
Moderador
Moderador



País:
Sexo:
Registrado: 31 marzo 2003
Mensajes: 4124
Ubicación: Madrid

MensajePublicado: Mie, 30 May 2007 7:33 am    Asunto: Responder citando

Añade en la linea 273 de tu código un "NOP" y listo.










Chic@... semos listos, pero no adivinos... sin código no te podemos ayudar.
'Me lo contaron y lo olvidé. Lo vi y lo entendí. Lo hice y lo aprendí.'
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
J1M
modder
modder



País:
Sexo:
Registrado: 28 octubre 2003
Mensajes: 167
Ubicación: Cartagena

MensajePublicado: Mie, 30 May 2007 10:35 pm    Asunto: Responder citando

jejejejeje yo creo q el fallo está un par de lineas más abajo! :p .... fuera de coñas, el problema creo q es debido a que por defecto al entrar en las interrupciones del usb se deshabilitan las demás, asiq si no tienes eso en cuenta y no las habilitas cuando creas necesario pues.... no saltan las demás!


pd: teo cuanto tiempo!! Guiño ya he visto q tienes casi listo un cacharrito nuevo, tengo ganas de verlo en movimiento! Sonriente


saludos!
Si puede pensarse, puede hacerse...
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Teotekaplan
Moderador
Moderador



País:
Sexo:
Registrado: 31 marzo 2003
Mensajes: 4124
Ubicación: Madrid

MensajePublicado: Mie, 30 May 2007 11:05 pm    Asunto: Responder citando

La verdad que mi respuesta fue rápida y con acritud, pero J1M tiene razón... tenía que haberme leído dos veces la pregunta... n hace falta código (en principio) para ver que una causa 99% probable es esa.

Como bien dicen, cuando entras en una interrupción, éstas quedan deshabilitadas ya que el PIC no tiene stack para interrupciones anidadas.

El truco es intentar modificar la rutina del I2C para que salve los registros principales del PIC (WREG, STATUS... etc) en unas variables, en lugar de dejar al compilador que lo haga.

Cuando entres en la de USB, los registros se guardan automáticamente. Ahí dentro has de habilitar de nuevo las interrupciones a mano (las de I2C y globales) y cuando la del I2C ocurra, los registros se salvarán en tus variables.

Al salir de la int de I2C, metes tus variables en sus registros originales y sales de la interrupción, con lo que volverías a la del USB.

Al loro porque ésto sólo lo podrás hacer en ASM o accediendo directamente a los registros.

Otra opción es pasarte a los 18F.... que tienen dos niveles de interrupción: una de alta prioridad y otra de baja.
'Me lo contaron y lo olvidé. Lo vi y lo entendí. Lo hice y lo aprendí.'
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
J1M
modder
modder



País:
Sexo:
Registrado: 28 octubre 2003
Mensajes: 167
Ubicación: Cartagena

MensajePublicado: Mie, 03 Oct 2007 10:21 am    Asunto: Responder citando

He 'actualizado' el proyecto para añadir compatibilidad con Vista, ahora se llama PicWinUSB. Digo actualizado, aunque en realidad he creado una nueva API en Visual C# basándome en el Driver WinUSB de Microsoft, ya que el de Microchip no es compatible con Vista. En mi página podéis encontrar más info:



http://www.hobbypic.com/index.php?option=com_content&task=view&id=31&Itemid=41

Saludos!
Si puede pensarse, puede hacerse...


Ultima edición por J1M el Jue, 04 Oct 2007 1:07 pm, editado 2 veces
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Teotekaplan
Moderador
Moderador



País:
Sexo:
Registrado: 31 marzo 2003
Mensajes: 4124
Ubicación: Madrid

MensajePublicado: Mie, 03 Oct 2007 6:13 pm    Asunto: Responder citando

Ya que se actualiza el hilo, tengo una pregunta XDD programativa.

Para enviar una trama de 64 bytes del pc al pic no tengo problemas usando la función correspondiente.

El problema es recibir resultados, ya que la función en C# sólo retorna una variable, no una colección o una matriz.

Dentro de la función que lee datos del PIC, sí que se puede especificar los bytes a recibir, pero en el return de la función, devuelve sólo uno independientemente de los recibidos.

La pregunta es... ¿Cómo se hace para que una función en C# devuelva una matriz en lugar de una sola variable? Por supuesto sin recurrir a los punteros ni a código no seguro.

¿Alguien sabe?
'Me lo contaron y lo olvidé. Lo vi y lo entendí. Lo hice y lo aprendí.'
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
J1M
modder
modder



País:
Sexo:
Registrado: 28 octubre 2003
Mensajes: 167
Ubicación: Cartagena

MensajePublicado: Mie, 03 Oct 2007 6:27 pm    Asunto: Responder citando

Ostrin... pues a ver, los punteros convierten el código en no seguro, por lo que hay q compilarlo como tal. C# Tiene una variable 'propia' llamada IntPtr, es una mezcla entre puntero y variable pero 'segura'... Lo que no tengo claro es si puede ser bidimensional. De todas formas si tu bidimensionalidad es debida a un LCD, supongo que si previamente defines el WxH y son constantes, las dos dimensiones las puedes transformar en un array de una sola dimensión........... Creo que no me he explicado en absoluto :p
Si puede pensarse, puede hacerse...
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Teotekaplan
Moderador
Moderador



País:
Sexo:
Registrado: 31 marzo 2003
Mensajes: 4124
Ubicación: Madrid

MensajePublicado: Mie, 03 Oct 2007 6:35 pm    Asunto: Responder citando

Sí, sí, lo pillé Sonriente

Es poquito más engorroso por lo de encontrar el pixel dentro del array, pero joer... la posición sería Y * ancho + X - 1 así que sirve Sonriente

Es por ver si se puede sacar más caña al USB del PIC, intentando transferir tramas completas de 64 bytes de cada petición que hago.

Lo cojonudo sería intentar abrir mas pipelines a la vez Sonriente
'Me lo contaron y lo olvidé. Lo vi y lo entendí. Lo hice y lo aprendí.'


Ultima edición por Teotekaplan el Mie, 03 Oct 2007 6:41 pm, editado 1 vez
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Mostrar mensajes de anteriores:   
Publicar nuevo tema   Responder al tema    Foros de discusión -> Electronica Todas las horas son GMT + 2 Horas
Ir a página     
Página 5 de 6

 
Cambiar a:  

Powered by phpBB.


Este sitio no se hace responsable de ningún daño que cause en su ordenador con la información que en el se expone.Todos los productos y marcas están registrados por sus respectivos propietarios. Prohibida la reproducción total o parcial de los textos e imagenes de esta web sin el consentimiento expreso de su autor.
Hardcore-Modding.com 2001-2019 Los comentarios son propiedad de sus autores (ya sean anonimos o registrados).
Portal basado en NukeET, RSS
Página Generada en: 0,139 segundos

π