Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
Pregunta para electronicos: ttyACM0
Autor Mensaje
Imakuni Sin conexión
Presidente del CEIT
Boxes tastes like mush
********

Ing. en Sistemas
Facultad Regional Córdoba

Mensajes: 7.021
Agradecimientos dados: 124
Agradecimientos: 129 en 85 posts
Registro en: Jul 2008
Mensaje: #1
Pregunta para electronicos: ttyACM0
Buenas!

Necesitaria saber si alguno conoce alguna forma de emular el dispositivo que esta en /dev/ttyACMx (en particular, ttyACM0). En internet no entiendo un pomo, todos los ejemplos que veo estan relacionados con arduino (?)

Mil gracias! =P
10-10-2014 22:47
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
sebasthian777 Sin conexión
Presidente del CEIT
mi propio camino NINGA
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.919
Agradecimientos dados: 43
Agradecimientos: 22 en 20 posts
Registro en: Nov 2011
Mensaje: #2
RE: Pregunta para electronicos: ttyACM0
que necesitas hacer? Yo un par de veces probe de hacer emulacion de hardware y no pude.

Si sabes lo que te va a entrar por el TTY.
Es un puerto serial plano? y por ahi te llega una trama?

Depende de lo que tengas conectado y lo que quieras conectar es si se puede emular o no.
Algunos smartphones se conectar via ese puerto. Por eso te pregunto.

Yo lo soluciono para debugear de dos formas esto que me decis.

Opcion tumbera:
Creo un archivo con un volcado de lo que creo que me va a entrar por el puerto...
Total se trabaja con fopen, fwrite y fread. (En el caso de c++)

O... la Opcion more profesinal xD.
Con un cable rs232 cruzado, creo un emulador en otra maquina y ahi uso algun emulador de software o algun cliente 232 copado.
Clientes copados:
Termite.
No busques mas.

(19-11-2013 11:48).py escribió:  
(19-11-2013 11:46)sebasthian777 escribió:  
(19-11-2013 11:43).py escribió:  Terminemos Hurd.
Prefiero dejarle ese laburo a gente sin vida social y que no tenga sexo.
Cuando te casas? Asi voy armando el Gannt.
14-10-2014 07:09
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
leibniz Sin conexión
Secretario General

*******

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 849
Agradecimientos dados: 46
Agradecimientos: 24 en 17 posts
Registro en: Dec 2012
Mensaje: #3
RE: Pregunta para electronicos: ttyACM0
Adhiero. ¿Para qué lo necesitas? ¿Estás programando algo?

Acá hablan de algo similar pero para windows, mencionan termite también:
http://stackoverflow.com/questions/16057...erial-port

[Imagen: Leibnitz_signature.svg]
(Este mensaje fue modificado por última vez en: 14-10-2014 08:51 por leibniz.)
14-10-2014 08:48
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
sebasthian777 Sin conexión
Presidente del CEIT
mi propio camino NINGA
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.919
Agradecimientos dados: 43
Agradecimientos: 22 en 20 posts
Registro en: Nov 2011
Mensaje: #4
RE: Pregunta para electronicos: ttyACM0
Pasa que es al pedo emular un puerto serial, ya sea COM en windows o un tty en linux... es algo bastante tedioso en cuanto a programacion, viola miles de reglas (niveles de proteccion, porque el puerto serial esta en una capa de las mas bajas) y la relacion dificultad/complejidad vs ganancias son feas...
Lo que se hace es justamente eso que te digo yo... si estas en linux (la mayoria conocemos el pilar que dice que en linux todo es un archivo) y estas programando en C, usa un archivo binario plano, y con condiciones de compilador haces:


#ifdef EMULATIONIMAKUNINATOR
elPuertoPija = fopen("imakuniFiles.bin","a+");
#else
elPuertoPija = open("/dev/ttyS0", O_RDWR | O_NOCTTY | O_NDELAY);
#endif


Podes usar Tanto fopen como open

y en windows el CreateFile

Despues lo tenes que configurar para el baudrate en el que vas a laburar, sino es como tratar de poner a una rubia de 17 años enpastillada con extasis en la fiesta de egresados, a hablar con un salteño... van a manejar tiempos distintos y no se van a entender xD

Pero, lo mejor que podes hacer, es tener otra computadora y establecer una conexion real de 232, si no tenes el puerto "COM" o seriales, hay unos blecas que son adaptadores de 232toUSB.

(19-11-2013 11:48).py escribió:  
(19-11-2013 11:46)sebasthian777 escribió:  
(19-11-2013 11:43).py escribió:  Terminemos Hurd.
Prefiero dejarle ese laburo a gente sin vida social y que no tenga sexo.
Cuando te casas? Asi voy armando el Gannt.
(Este mensaje fue modificado por última vez en: 14-10-2014 09:24 por sebasthian777.)
14-10-2014 09:21
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] sebasthian777 recibio 1 Gracias por este post
Jarry (14-10-2014)
Imakuni Sin conexión
Presidente del CEIT
Boxes tastes like mush
********

Ing. en Sistemas
Facultad Regional Córdoba

Mensajes: 7.021
Agradecimientos dados: 124
Agradecimientos: 129 en 85 posts
Registro en: Jul 2008
Mensaje: #5
RE: Pregunta para electronicos: ttyACM0
Cita:Adhiero. ¿Para qué lo necesitas? ¿Estás programando algo?

Si, estoy programando algo =P.

Nada, basicamente en un proyecto tengo una caja china para un equipo de 4 personas. Queremos realizar tests para no tener que tener la caja china conectada siempre (ademas porque es una buena practica y bla). Sobre el puerto, tengo entendido que es un puerto serie plano.

Lo primero que pense fue "bueno, creo un archivo ttyACM0 y listo, le voy pasando los datos" pero no sabia si esa era la forma correcta de hacerlo =P.

No entiendo lo del baudrate.... es mas, pensaba que los baudios solo eran para los modems telefonicos (no me peguen =P). Tengo el numero con el que el dispositivo real funciona... pero no entiendo bien como podria "emular" eso.

Mi idea era emular el dispositivo de alguna forma, para crear un simulador de este dispositivo en particular para mostrarselo al cliente, y no tener que tocar codigo del lado de la aplicacion =P

Mil gracias por la data!
14-10-2014 17:19
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
leibniz Sin conexión
Secretario General

*******

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 849
Agradecimientos dados: 46
Agradecimientos: 24 en 17 posts
Registro en: Dec 2012
Mensaje: #6
RE: Pregunta para electronicos: ttyACM0
(14-10-2014 17:19)Imakuni escribió:  
Cita:Adhiero. ¿Para qué lo necesitas? ¿Estás programando algo?

Si, estoy programando algo =P.

Nada, basicamente en un proyecto tengo una caja china para un equipo de 4 personas. Queremos realizar tests para no tener que tener la caja china conectada siempre (ademas porque es una buena practica y bla). Sobre el puerto, tengo entendido que es un puerto serie plano.

Lo primero que pense fue "bueno, creo un archivo ttyACM0 y listo, le voy pasando los datos" pero no sabia si esa era la forma correcta de hacerlo =P.

No entiendo lo del baudrate.... es mas, pensaba que los baudios solo eran para los modems telefonicos (no me peguen =P). Tengo el numero con el que el dispositivo real funciona... pero no entiendo bien como podria "emular" eso.

Mi idea era emular el dispositivo de alguna forma, para crear un simulador de este dispositivo en particular para mostrarselo al cliente, y no tener que tocar codigo del lado de la aplicacion =P

Mil gracias por la data!

En ese caso podrías agarrar un arduino y "emularlo": programar que envíe por serie determinados datos.

[Imagen: Leibnitz_signature.svg]
14-10-2014 18:29
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Imakuni Sin conexión
Presidente del CEIT
Boxes tastes like mush
********

Ing. en Sistemas
Facultad Regional Córdoba

Mensajes: 7.021
Agradecimientos dados: 124
Agradecimientos: 129 en 85 posts
Registro en: Jul 2008
Mensaje: #7
RE: Pregunta para electronicos: ttyACM0
Para eso necesitaria un arduino por cada miembro del equipo =P.

Uno de los motivos por los cuales estamos haciendo esto, ademas de ser una buena practica, es para no tener que tener una instancia del dispositivo por maquina, si no que cualquiera pueda bajarselo y correr una simulacion.
14-10-2014 23:21
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
sebasthian777 Sin conexión
Presidente del CEIT
mi propio camino NINGA
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.919
Agradecimientos dados: 43
Agradecimientos: 22 en 20 posts
Registro en: Nov 2011
Mensaje: #8
RE: Pregunta para electronicos: ttyACM0
Ima, consejo. Crea un archivo y usalo para emular la caja. Te juro que vas a ver que para debugear es casi lo mismo.

Hay ciertas diferencias, como cada cuanto la caja china te mandaria una trama (en el caso del archivo, ese tiempo lo definis vos por cada vez que lees), una de las formas de usar el puerto serial, es por medio de funciones bloqueantes de lectura... hasta que no tenes precencia de nuevos datos en el buffer interno, la funcion de lectura bloquea la ejecucion del programa (la pones en un thread independiente de lectura.).

Lo del modem, es porque, justamente el modem era serial :B

Te quiero ima jejeje, si necesitas una mano me decis. el 50% de mi laburo comprende programar sobre puertos seriales en C JAJAJA.

Entre compañeros peronistas no nos vamos a andar despreciando una mano!

(19-11-2013 11:48).py escribió:  
(19-11-2013 11:46)sebasthian777 escribió:  
(19-11-2013 11:43).py escribió:  Terminemos Hurd.
Prefiero dejarle ese laburo a gente sin vida social y que no tenga sexo.
Cuando te casas? Asi voy armando el Gannt.
15-10-2014 06:54
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] sebasthian777 recibio 1 Gracias por este post
Imakuni (15-10-2014)
leibniz Sin conexión
Secretario General

*******

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 849
Agradecimientos dados: 46
Agradecimientos: 24 en 17 posts
Registro en: Dec 2012
Mensaje: #9
RE: Pregunta para electronicos: ttyACM0
Acá http://stackoverflow.com/questions/56365...or-testing sugieren lo mismo.


Pero por otro lado, buscando 'virtual serial port', encontré esto: http://justcheckingonall.wordpress.com/2...-vsp-socat

[Imagen: Leibnitz_signature.svg]
15-10-2014 08:56
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] leibniz recibio 1 Gracias por este post
Imakuni (15-10-2014)
sebasthian777 Sin conexión
Presidente del CEIT
mi propio camino NINGA
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.919
Agradecimientos dados: 43
Agradecimientos: 22 en 20 posts
Registro en: Nov 2011
Mensaje: #10
RE: Pregunta para electronicos: ttyACM0
ah mira que piola lo de socat... no es mala eh! con probar no se pierde nada.

El asunto es que tenes que programar logica (un programirigilla) para agregarle al stdio del socat (o eso es lo que entendi)...

Es cuestion de poner a pesar costo beneficio xD

Lo voy a tener en cuenta para chusmearlo algun dia! :B
grande leibniz !!!

(19-11-2013 11:48).py escribió:  
(19-11-2013 11:46)sebasthian777 escribió:  
(19-11-2013 11:43).py escribió:  Terminemos Hurd.
Prefiero dejarle ese laburo a gente sin vida social y que no tenga sexo.
Cuando te casas? Asi voy armando el Gannt.
15-10-2014 09:13
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
leibniz Sin conexión
Secretario General

*******

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 849
Agradecimientos dados: 46
Agradecimientos: 24 en 17 posts
Registro en: Dec 2012
Mensaje: #11
RE: Pregunta para electronicos: ttyACM0
(15-10-2014 09:13)sebasthian777 escribió:  grande leibniz !!!

(15-10-2014 06:54)sebasthian777 escribió:  Entre compañeros peronistas no nos vamos a andar despreciando una mano!

=)

Una vez que tenés el loop de puertos serie, podés armar un script para probarlo con tu weapon of choice.

[Imagen: Leibnitz_signature.svg]
15-10-2014 09:19
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Imakuni Sin conexión
Presidente del CEIT
Boxes tastes like mush
********

Ing. en Sistemas
Facultad Regional Córdoba

Mensajes: 7.021
Agradecimientos dados: 124
Agradecimientos: 129 en 85 posts
Registro en: Jul 2008
Mensaje: #12
RE: Pregunta para electronicos: ttyACM0
Parece demasiado grosso el socat!!!!

sebasthian777 Y gracias por tu ofecimiento =). Por ahora en realidad lo que quiero es aprender... asi que si tenes algun link piola de "puerto serie para no-electronicos" me vendria bien =P (mas que nada porque, si bien el baudrate lo tengo como un numero fijo, quisiera saber bien que joraca es).


Gracias a ambos!!!! =)
15-10-2014 09:40
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
sebasthian777 Sin conexión
Presidente del CEIT
mi propio camino NINGA
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.919
Agradecimientos dados: 43
Agradecimientos: 22 en 20 posts
Registro en: Nov 2011
Mensaje: #13
RE: Pregunta para electronicos: ttyACM0
Tomalo de esta forma, que es la forma mas natural en la que lo puedo explicar (me gusta explicar en argentino), es la velocidad de transmicion, Como es un medio fisico real, necesitas que la comunicacion se realice en los diferentes nodos, bajo la misma velocidad.

Si te queres drogar tranquilo informandote sobre EL EXTENSO MUNDO del puerto serial xD
te tiro palabras claves para buscar en gugle.

8n1.
Baudrate.
bitrate.
RS232.

Con eso tenes para jugar tranquilo JAJAJA
Si solo queres usarlo
"Open Serial port in" + lenguaje_que_vas_a_usar
"Read Serial port in" + lenguaje_que_vas_a_usar
"Write Serial port in" + lenguaje_que_vas_a_usar

(19-11-2013 11:48).py escribió:  
(19-11-2013 11:46)sebasthian777 escribió:  
(19-11-2013 11:43).py escribió:  Terminemos Hurd.
Prefiero dejarle ese laburo a gente sin vida social y que no tenga sexo.
Cuando te casas? Asi voy armando el Gannt.
15-10-2014 10:30
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] sebasthian777 recibio 1 Gracias por este post
Imakuni (17-10-2014)
leibniz Sin conexión
Secretario General

*******

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 849
Agradecimientos dados: 46
Agradecimientos: 24 en 17 posts
Registro en: Dec 2012
Mensaje: #14
RE: Pregunta para electronicos: ttyACM0
Sobre los baudios:
Cita:La velocidad en baudios de una señal representa el número de cambios de estado, o eventos de señalización, que la señal tiene en un segundo. Cada evento de señalización transmitido puede transportar uno o más bits. Sólo cuando cada evento de señalización transporta un solo bit coinciden la velocidad de transmisión de datos en baudios y en bits por segundo.

Además en wikipedia, la página en inglés del puerto serie es bastante completa.

[Imagen: Leibnitz_signature.svg]
15-10-2014 12:34
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 1 invitado(s)