none
Comunicacion Puerto Serial - Programa Hibrido RRS feed

  • Pregunta

  • Hola a todos,
    Me gustaria saber como realizar un programa con MFC en visual C++ para comunicarme por el puerto serie a través del comando SerialPort donde envie y reciba datos, ya que al parecer en MFC me permite el uso de Ensamblador dentro del codigo o si hay alguna forma de utilizar Ensamblador en una aplicacion de windows form?

    Muchas Gracias .

    jueves, 22 de diciembre de 2011 9:15

Respuestas

  • Aparte de la respuesta de WebJose, tienes un buen jaleo mental.

    Primero deberías leerte esto de mi blog para poder distinguir entre C++ clásico y C++/CLI de .NET, que es donde está el componente SerialPort: http://geeks.ms/blogs/rfog/archive/2009/06/15/191-qu-233-es-c-y-qu-233-es-c-cli.aspx

    Luego, desde C++/CLI no puedes ejecutar ensamblador de x86, pero sí el MSIL del CLR (que es lo que hay debajo del .NET). Y desde C++ nativo sí que puedes ejecutar ensamblador x86 pero no puedes acceder desde él al componente SerialPort, no al menos directamente sin pasar por una llamada a C++/CLI desde C++...

    Es decir, algo así (escrito de memoria, sólo a título informativo):

    //Método en C++/CLI:
    void UnaClase::MetodoCPP_CLI(int parametro)
    {
      SerialPort.Write(...);
    }
    
    //Métoco en C++ clásico
    void MetodoCPP_Nativo(int parametro)
    {
      instanciaDeUnaClase.MetodoCPP_CLI(parametro);
    }
    
    //Código ensamblador:
    ...
    PUSH AX
    CALL _MetodoCPP_Nativo;
    ...
    
    
    
    

    Personalmente no veo la necesidad de hacer nada así...

    Si quieres usar el puerto serie desde C/C++, puedes usar las funciones CreateFile, ReadFile y WriteFile del api de Win32...


    MVP Visual C++ - Visita mi blog sobre desarrollo: http://geeks.ms/blogs/rfog/
    jueves, 12 de enero de 2012 13:06
    Moderador

Todas las respuestas