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

I want to do some Lame Multiprocessing.....

I am doing a project and in that project i am using one MAX232 but with multiple Microcontrollers i know that i cannot use RS-232 to multiple Microcontrollers but i am using MAX232 to convert the RS-232's 23V to TTL (5V) and so as the RS232 is converted to TTL so i think that it will work for multiple Microcontrollers (am i right?) well this is my stratigy ...

but my main task is that i want to send a HexaDecimal no through the Serial port so that the approriate Microcontroller will responce .... so i have coded some code but as i cant see the value came into SBUF in keil so could any one help me ?

Parents
  • "using MAX232 ... the RS232 is converted to TTL so i think that it will work for multiple Microcontrollers (am i right?)"

    No - you are wrong.

    The MAX232 does not provide a bus interface - that's what you need.

    You need some sort of scheme using, for example, open-collector or tri-state drivers. And then some scheme to ensure that you can never have more than one unit transmitting at a time, or some sort of "collision" detection & retry scheme to recover from it.

    If you gave a clearer description of what you're actually trying to achieve, people would be able to give more specific help...

Reply
  • "using MAX232 ... the RS232 is converted to TTL so i think that it will work for multiple Microcontrollers (am i right?)"

    No - you are wrong.

    The MAX232 does not provide a bus interface - that's what you need.

    You need some sort of scheme using, for example, open-collector or tri-state drivers. And then some scheme to ensure that you can never have more than one unit transmitting at a time, or some sort of "collision" detection & retry scheme to recover from it.

    If you gave a clearer description of what you're actually trying to achieve, people would be able to give more specific help...

Children
  • "but my main task is that i want to send a HexaDecimal no through the Serial port so that the approriate Microcontroller will responce"

    Actually, that's an implementation detail rather than your "main task"!

    Have you looked at the 9-bit Multiprocessor mode of the 8051 UART?

    int i=1; //global variable which is to be compared
    

    Are you sure that you want the numeric value 1 (0x01), or do you really mean the character '1' - ASCII code 0x31?