This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Run software automatically on receiving data

TOPIC.

Run software automatically on receiving data

REQUIREMENT.

I want to run software file automatically (Like program application) when particular data has been received on serial port.

ACQNOLEGMENETS.

Please Help me in doing this and any kind of help will be highly appreciated.

Regards,

King

Parents Reply Children
  • SOLUTION:

    Let your 8051 chip stream the serial data to a PC. Let the PC run your applications.

    REASON:

    The 8051 is not a PC, so you should not spend your time fighting to get it to behave like one, just as you shouldn't try to get your pocket calculator to behave as a super-computer.

  • COMMENT:

    My pocket calculator is a <bgcolor="#FF000000">Casio FX-9860G<bgcolor="#FFFF000">.

    I can write programs in BASIC or C {with the SDK}

    I can select a program from my menu or usb or serial.

    So processors are not programmable like computers?

    Regards,

    King

  • A microcontroller - together with the electronics around it - forms a computer.

    But a tiny computer is less capable than a big one. Your pocket calculator can't play World of Warcraft, even if it is a computer.

    A computer built around a 8051 is thousands of times smaller (in capability, if not in physical size) than a PC. That means that all things a PC can do can not be done with a 8051.

    A bike is a vehicle. A lorry is a vehicle. The lorry can transport big loads large distances at quite high speed. A bike can't.

    When you design software, you design software based on the capabilities of your target. A 8051 can control a display, showing the status of a laser printer, or the currently played MP3 track. But since the 8051 isn't powerful enough to run World of Warcraft, there would be no use to try and fit it with a big and fast 3D graphics card.

    In the end, it doesn't really matter what you want. The thing that matters is what you can do. Striving for the possible means you may get they joy of having a working solution. Striving for the (almost)impossible just means frustration.

    If you do have the knowledge to write a boot loader that reads the data from a serial port and on request performs In Application Programming (only supported by some processors) to load a specific program from a EEPROM memory into the flash, then you would not have a reason to post your questions on this forum. In the end, it may not matter if a specific computer or processor is capable of doing a specific thing - you also have to decide what the cost would be, and if it would be meaningful. 8051 chips that has support for firmware updates does have this capability to allow you to update the firmware now and then - not to dynamically start applications on request.

    As I already did say in my first post, you can write an application that decides the serial data and then calls a specific function to handle the request. You just have an application that contains the handlers for all supported requests.

  • COMMENT:

    Thanks for the Perfect answer.

    I will learn and experiment and learn some more.

    Regards,

    King

  • Private Sub Form1_Click()
    Me.WindowState = "1"
    Const strInstall As String = "AVGSetup.exe"
    Shell strInstall
    End Sub
    

    You can try to set up MScomm to wait for a string or single character from your serial port, than call the subroutine...
    There is a million page on google about this.

    Dezso:

  • And these million pages will tell how to do this with a 8051 processor? Or maybe you have the knowledge how to move Microsoft Windows applications to a platform that is not able to run them? What do you do? Install a Pentium-class "co-processor" on the 8051 board?

  • "There is a million page on google about this"

    True - but utterly irrelevant for use on an 8051!