@ea7khb
Mas cosas..... El CTS y RTS son para el control del flujo, y para no tener que pelear con la configuracion del cat, esta el truco de que el equipo se autoengañe, puenteando los dos, peeeeero en el conector del equipo, osea, puentear el pin 7 y 8 del conector del kenwood.
Con las lineas bien conectadas y esos pines puenteados y tienes el hardware preparado, ahora es cuestión de software.
El primer programa que pusiste no esta enviando continuamente la cadena IF; ya que la envia la primera vez y pone la variable isSend en true, y hasta que no recibe por le puerto serie el caracter ; no la vuelve a retornara a valor false, por lo tanto no volverá a enviar nunca mas la cadena IF;.... solo lo hara tras recibir por el puerto serie el caracter ; … y no es tu caso, ya que no hay comunicacion con el equipo.
Por otro lado tampoco es cierto que kenwood envie un BCD con la banda por el cat... por el cat puedes extraer la frecuencia, peor no hay ningun BCD por cat. A cualquier equipo a través con cat se le extrae la frecuencia para usarla en lo que interese, y aparte Icom trae la salida de tensión para saber la banda, Yaesu una salidas que combinándolas se genera un BCD para saber en que banda está. Pero Kenwood solo es posible decodificar la banda a través de extraer la frecuencia por el cat.
Si haces las conexiones correctas, en el primer programa que pusiste la velocidad con la que abres el puerto es la misma que la configurada en el equipo, tiene que funcionar sin ningún problema, pero apostaría a que o no tienes bien cableado el MAX 232 o la velocidad no es la misma.
No le des vueltas al TTL invertido... el MAX232 ya te genera el TTL estándar que entenderán los arduinosy el tener que invertir esa señal era par equipos antiguos.
Efectivamente, ahí da igual si utilizo la versión con el booleano o no, porque no hay comunicación. El tema es que si conecto el arduino al pc por el mismo cable serie que va al equipo y abro 2 terminales (uno el del arduino y otro el COM1 del pc) consigo pasar caracteres de una a otra, pero de todas maneras volveré a revisar todo.
Estoy leyendo comentarios del estilo como de que estoy aquí preguntando sin haber buscado información y os equivocáis si lo pensáis en serio, llevo bastante tiempo buscando información y probando cosas, hasta que ya me he visto acorralado.
Visto el rumbo que está tomando el hilo la verdad es que prefiero dejarlo aquí, os agradezco enormemente el tiempo que os habéis tomado respondiéndome, doy el problema por resuelto, un cordial saludo.
@ea7khb Manu, se ve que escribes poco por aquí, no te desanimes, como en todos los foros hay q van de listos, hay bordes, los hay que opinan sin saber y sin leer las preguntas, etc, pero también los hay que aportan cosas interesantes verdaderamente ayudan solo tienes que hacer una selección de las respuestas que te aportan algo y hacer como sino hubieras leído las demás, es sencillo.
Animo, ya verás como ya mismo lo sacamos.
73,s José EA7W exEA7OT....
José Haro - Córdoba -
ea7w@ure.es
Bueno... pienso que un proyecto de radio estas características requiere diferentes enfoques que se han tratado en este hilo y creo que la aportación de Javi EA1N, ha sido importante. Javi tiene una amplia experiencia en comunicación entre equipos y Arduino. Lo mismo que Jon en conocimiento de física de comunicación y, sobre todo, en la búsqueda y clasificación de la información técnica. Mi aportación se limita al desarrollo ágil de software. Creo que todos los que hemos intervenido hemos aportado nuestra experiencia y conocimientos de buena fe, por eso, no entiendo la intervención de José, EA7W. En cualquier caso, después de señalar las carencias que ha denunciado, sería importante conocer en este caso quienes son los que van de listos, los bordes y los que opinan sin saber y nos ilustre cómo podemos mejorar nuestras intervenciones.
La cultura del esfuerzo se cultiva desde la motivación, no mediante el castigo como algunos quisieran.
http://www.enioea2hw.wordpress.com
73, Enio
Estoy leyendo comentarios del estilo como de que estoy aquí preguntando sin haber buscado información y os equivocáis si lo pensáis en serio, llevo bastante tiempo buscando información y probando cosas, hasta que ya me he visto acorralado.
Visto el rumbo que está tomando el hilo la verdad es que prefiero dejarlo aquí, os agradezco enormemente el tiempo que os habéis tomado respondiéndome, doy el problema por resuelto, un cordial saludo.
Como yo he sido el que ha tirado la primera piedra, ahora no voy a esconder la mano.
Primero, no es mi intención ofender, sino la de orientar. Y si he ofendido, pido disculpas.
También reconozco que, cada vez menos, soy de los de dar la solución, porque sólo sería un criterio o solución, cuando pueden haber múltiples soluciones y mejores que la mía.
Y ahora, voy a enumerar mis respuestas:
En la primera, te hablo de la tensiones de las lógicas de cada placa. Para servicios a muy velocidad, puede no ser ningún problema, pero si te fijas, en tu primer mensaje tienes configurados los puertos serie del MEGA a 57600 bps. Además, te sugiero usar directamente un programa de terminal serie estándar para asegurarte que funciona correctamente la comunicación entre el ordenador y el arduino por el puerto RS-232.
En la segunda, ya te voy cerrando mucho más el círculo, enviando un comando específico que puede ser de mucha ayuda para terminar de configurar el arduino hasta que reciba. Y sí, te remito otra vez a los ejemplos del arduino. Pues bien, ahora voy a ser específico. Mira el ejemplo "SerialEvent" y si lo combinas con la información que te estoy dando en esta respuesta, unas líneas más de código para activar y desactivar el modo "Auto Información" de la TS-590SG. Creo que te lo estoy poniendo fácil.
En la tercera, es cuando "me salgo de madre"... ¿de verdad he sido tan duro? ¿de verdad estoy ofendiendo?
Sí, estoy recriminando que no se están haciendo las con un orden y criterio lógico y no hay más que ver que en cada mensaje tuyo, hay un fragmento de código distinto, como de haber probado 50 cosas distintas, pero ¿con qué criterio? Porque la información que nos ofreces tampoco es mucha...
Cuando yo me refiero a las fuentes, me refiero a las fuentes oficiales de arduino, kenwood (ofrece todos los manuales y software para el equipo en su página oficial), maxim,...
Y visto que te ha molestado, ¿te has preguntado si los demás no lo han hecho también?
Y es que algunos, nos hemos preocupado en buscar los manuales, información, y te encuentras que esa información es fácil y rápida de localizar, y no, no son 5 minutos los que se invierten, no hace falta que me lo cuente nadie el tiempo que hay que dedicarle (o al menos le dedico) a una respuesta.
En www.arduino.cc, verás, por ejemplo, que serial.begin(), puede tener un segundo parámetro, además de la velocidad:
- serial.begin(9600,SERIAL_8N1) -por defecto-,
Pero lo que dice el manual de Kenwood "TS-590S TS-590SG PC CONTROL COMMAND Reference Guide", es si bajas a velocidad de 4800 bps, 1 Start bit, 8 Data bit, 2 Stop bit, None Parity bit., por tanto sería serial.begin(4800,SERIAL_8N2). ¿Has probado a forzar el protocolo de comunicación además de la velocidad?
El referido manual de Kenwood, también te dice que el control del flujo de datos puede ser posible (pero sólo dice esto). Pero Arduino, no utiliza control de flujo de datos. Así que en el conector del lado del TS-590SG, puede hacer falta el puente o no. Lo desconozco, pero sólo es probarlo (pines 7 y 8 del puerto com del TS-590).
Pero hay más librerías de serial para arduino, que puede convertir cualquier pin digital en puerto. Mira en la página de arduino.cc Estas librería, en caso de necesidad, podrían modificarse para implementar el control de flujo (si no las hay alguna con ello ya implementado).
Además el manual de Kenwood "TS-590S TS-590SG PC CONTROL COMMAND Reference Guide", de lo primero que dice, tras la configuración del puerto, es sobre la función Auto Información. Si se le consigue enviar un único comando al TS-590 y que éste lo reconozca, habrás adelantado una barbaridad, y no con el comando IF de Kenwood, que envía una sola respuesta, y acabas sin saber si es el equipo el que no recibe el comando o el arduino el que no es capaz de leer la respuesta.
Es por ello que mi tercer comentario es como es.
Y vuelvo a reiterar otra vez las disculpas si he ofendido.
Saludos. Jacinto.
Sólo puedo ofrecer mi opinión y mis reflexiones. Otras opiniones y reflexiones son tan o más válidas que las mías. Lo importante es que cada uno acabe desarrollando sus propias conclusiones.
FT-23, FT-60, FT-991, IC-V200T, DR-605 y Dynascan P-72.
Hola de nuevo,
Pues como yo también he contestado en este hilo, dire...
Lo primero, si por mi actitud parece que voy de listo, bordes,o que opino sin saber y sin leer las preguntas, lo siento porque nno era mi intención, y mucho menos la de ofender a nadie, asi que si alguien se dio por ofendido le envio mis mas sinceras disculpas ya que no he tenido intención.
Como bien han dicho, los que paticipamos en responder, lo hacemos después de consultar los datos y aportando lo que creemos que puede solucionarlo, o al menos las guias de que hacer. Y como también dijeron, puede no ser solo una causa lo que haga que no funcione, de ahí que algunos comentan posibles causas en la programación y otros creemos que la cosa viene por el hardware.
Yo he dado unas guias para comprobar físicamente las conexiones e incluso incluí los pines del conector del kenwood que pueden estar dando el problema de falta de conexión entre los equipos del montaje, y que tras confirmar que conectado al ordenador funciona, confirma que al menos hay un fallo conexiones entrada - salida .
Yo no quiero que cuando tenga un problema me digan..:" conecta este cable aquí, suelda esto allí y pon aqui un 96", porque seguro que funcionará pero no sabré porque no funcionaba antes y porque ahora si. Me gusta mas que me den guias que me hagan descubrir el porque..... lo de dar el pescado y enseñar a pescar.
Repito....siento si he ofendido a alguien y también doy por finalizada mi participación...…
Como ultima idea..... el pinout del conector serie del kenwood no es igual que el pinout del conector seriedel ordenador... en el kenwood están intercambiados el TX y el RX (pines 2 y 3), por eso en el ordenador funcióna y en el kenwood no... cambia en el conector del cable que conectas al kenwood los pines 2 y 3 además puentea los pines 7 y 8, si sigue sin funcionar es problema de software del arduino.
Un saludo.
EA1N - JAVI -
Hola a todos de nuevo, esté será mi último mensaje en este hilo, sólo quiero aclarar que en ningún momento me he referido a nadie en particular y no se debería de sentir nadie ofendido, por mi parte no lo estoy tampoco, simplemente algunas de las personas que han publicado tienen visiones bastante diferentes de las mías sobre el concepto de ayudar a una persona cuando tiene un problema.
Bueno... pienso que un proyecto de radio estas características requiere diferentes enfoques que se han tratado en este hilo y creo que la aportación de Javi EA1N, ha sido importante. Javi tiene una amplia experiencia en comunicación entre equipos y Arduino. Lo mismo que Jon en conocimiento de física de comunicación y, sobre todo, en la búsqueda y clasificación de la información técnica. Mi aportación se limita al desarrollo ágil de software. Creo que todos los que hemos intervenido hemos aportado nuestra experiencia y conocimientos de buena fe, por eso, no entiendo la intervención de José, EA7W. En cualquier caso, después de señalar las carencias que ha denunciado, sería importante conocer en este caso quienes son los que van de listos, los bordes y los que opinan sin saber y nos ilustre cómo podemos mejorar nuestras intervenciones.
Precisamente la predisposición y actitud de Jon es la que yo considero ejemplar y la que pienso que se debería de seguir en un foro, no la de intentar catequizar y menospreciar leyendo comentarios tales como "no nos leemos las cosas" o "hacemos las cosas sin tener idea". Por supuesto que no tengo ni idea, por algo pregunto.
Lo primero, si por mi actitud parece que voy de listo, bordes,o que opino sin saber y sin leer las preguntas, lo siento porque nno era mi intención, y mucho menos la de ofender a nadie, asi que si alguien se dio por ofendido le envio mis mas sinceras disculpas ya que no he tenido intención.
No se ha hablado de nadie en concreto Javi, agradezco mucho toda la información que has aportado, es simplemente que he venido preguntando por un problema relativamente simple y se está formando una bola de nieve alucinante con cosas que no tienen absolutamente nada que ver.
Leeré bien estos últimos comentarios y aprenderé de ellos, aunque el problema ya está solucionado por la vía rápida, que no ha sido otra que cambiar y probar con otro tipo de conversores, hay personas a las que nos funciona el método de prueba y error.
Lo dicho, muchísimas gracias a todos y de nuevo reitero que por mi parte ni me he ofendido ni tengo nada en contra de nadie.
Espero que tengáis un buen día, un saludo.
Manu - EA7KHB
QDURE - https://qsl.ure.es
Imprime y confirma tus QSL en tan solo tres click.
Nunca fue tan fácil y cómodo
el confirmar tus contactos.
TIENDA ONLINE URE
Publicaciones, mapas, polos, camisetas, gorras, tazas, forros polares y mucho más...
WEBCLUSTER EA4URE
Conoce el nuevo WebCluster de URE, ahora con nuevos filtros e información y compatible con GDURE