i would like to connect 2 devices like GSM, Zigbee, with one 8051 microcontroller. is it possible to connect with one 8051 are i need to provide separate microcontroller for each device. please provide me some technical explanations
--------------------------------------- Posted through
Which 8051? It's probably not an original intel MCS-51 device.
If you need a second serial connection (UART) it is possible to write one in software. It's actually a pretty good exercise and there are application notes that describe the process. One example is at . It's for a different processor but the technique is similar. Do note that your processor's instruction cycle time and interrupt latency will set the maximum achievable signal rate.
I'm chiming in because I'm doing some background research on the 8051. I wa s dismantling some APC UPS units for recycling purposes. I came across the monitoring interface - model AP9607 for those following at home. The card i s actually a complete computer system in itself: microcontroller, EPROM, an d I/O. It can technically function alone.
The microcontroller is a Siemens SABC510, which I've come to find out is a C510, which is a 8051 equivalent. I'm thinking about using this card as a c hallenge, to maybe turn it into a full-on computer with RAM and such.
Regarding this thread, the AP9607 actually has two serial interfaces. They' re used to monitor the UPS. Both interfaces are controlled by the C501, as there are no UARTs on this board. I've yet to disassemble the code in the E PROM - I'll do that to study how the serial interfaces are accessed.
With that, it sounds like the C501, and quite possibly other 8051 equivalen ts, can drive two serial interfaces. But I won't fully know until I finish studying the firmware.
For my final-paper (now more then 20 years ago), I needed to let one controller-device talk to 4 slave-devices, using the onboard UART. FOr that, I used RS485 driver-ICs to provide a "bus" and wrote a small master-slave (or master-4slaves in this case) to control the communication.
I guess you can do this with any interface that provides some kind of "bus" (e.g. open collector).
The other option (as Bryan also mentioned) is to use a software-serial interface.