| ??? 12/14/01 20:51 Read: times |
#17656 - RE: 8051 sbc design |
Lets see if it can be doen from a verbal description. I hope to extend this posting with other people's comments.
1.) Decide whether you want to have any external memory or not. If you are going to need memory mapped I/O (an ADC chip or an 8255 controller), then you need the external memory stuff anyway 2.) With no external memory, you can build a system to play with, using the ATMEL, TEMIC, PHILIPS or DALLAS parts External memory is more complicated, and programming an SBC is trickier this way. You need an EPROM emulator, or possibly a clever arrangement with a monitor program and RAM in the right places. Its harder to get code in than using a FLASH memory based CPU. External memory needs extra glue logic too. At the very barest minimum you need a latch to hold the low address of the memory while the data is read to or from it. The latch is "latched" from the ALE pin on the processor. A good chip for the latch is the LS573 or the 373 if you have to. The 573 has "straight through" connections that makes PCB design and debugging dead easy ! The ROM of course only needs one line to read it. On a '52, this is the PSEN (Program Store ENable) line. These days, most of us would probably fit a 27512 and fill the whole of its 64K address space with one device. In the "old days", the memory would have had to be decode with other logic to address multiple devices. With a single device in the memory space, there is no need to decode, and the ROM chip select line can be tied low. If you need External data memory (XDATA), and think carefully, because with the right variant you can get up to 1k byte of RAM ON CHIP these days, on top of the 256 bytes of internal DATA memory of the standard 8052s, then THAT is attached onto the processor through the RD and WR pins. The Chip select line of the memory can be tied low, if you are only using a single device. As another engineer, I won't insult your intelligence by explaining how to do a memory decoder to drive multiple device or to memory map other peripherals. CLOCK The 8052 has a built in oscillator, but it requires a crystal to make it work. The "work horse" crystal is the 11.0592 Mhz crystal. Why that ? Because it is the best frequency to give you the correct numbers for all the common Rs232 serial speeds (110 Baud to 19200) You CAN use slower crystals, you CAN (but check the processor data sheet use higher, but the serial port will need some attention later. The Crystal is attached between the XTAL1 and XTAL2 pins,and THESE pins are then coupled to ground using something like a 27pF or 33pF ceramic capacitor. RESET When the processor powers up, it generally needs its reset pin to be held low long enough for the supply to stabilise and the crystal to start up. Many processors can be started with an RC network, or even with just a C. Always put a manual reset button on the processor, to stop having to switch everything else on and off when (not if) your program locks up. I usually use a "proper" reset generator chip, like the MAX 701, this chip is nice because I get positive and negative resets (handy for all my I/O), push button input and supply monitoring. All in an 8 pin package. 3.) Whatever you build you need a serial port interface. Get a MAX202 from Maxim Connect it to the processor's TX and RX pins. 4.) If you want to play with modems, it is a good idea to take the RTS and CTS signals to the processor through the MAX 202 and connect them to couple of port pins. You don't need to use them immedietely, but they are ready when you do ! 5.) Its a good idea, if you are just playing with 8052s to add some kind of I/O, maybe 8 LEDS and some push buttons, but soemthing to play with. Microcontroller work is ALL about I/O. 6.) The easiest way of adding some "muscle", is to use a ULN2803 on the port pins of the processor. I also put a small pullup resistor on each port pin, to ensure I get enough drive to the 2803. The 2803 has a set of flywheel diodes in it, when one is switching inductive loads like relays or solenoids. Make sure you connect the common pin for these diodes to the supply for your loads ! 7.) The easiest way of driving LEDs is via the 2803 too, though you can drive LEDS from logic buffer chips like the 74HC4050, or the 74HC125. In general HC series will drive up to about 40mA without too much trouble. 8.) Push buttons should be arranged so that the port pin is pulled low by an external resistor and pulled high by the push button being depressed, then the pin is never in a high impendance state and sensitive to noise. See if this helps. It is much more satisfying to design your own system than copying anyone elses. Steve |
| Topic | Author | Date |
| 8051 sbc design | 01/01/70 00:00 | |
| RE: 8051 sbc design | 01/01/70 00:00 | |
| RE: 8051 sbc design | 01/01/70 00:00 | |
| RE: 8051 sbc design | 01/01/70 00:00 | |
| RE: 8051 sbc design | 01/01/70 00:00 | |
| RE: 8051 sbc design | 01/01/70 00:00 | |
RE: 8051 sbc design | 01/01/70 00:00 |



