วันพุธที่ 16 กันยายน พ.ศ. 2552

Introduction to the 8052.com SBC


The 8052.com SBC is a single-board computer designed to be both useful and instructive in illustrating certain concepts commonly encountered in 8052-based development. Although many SBCs already exist, this SBC was designed specifically to form the basis of thorough technical discussions and tutorials consistent with those found on this website--it was also specifically designed to compliment The 8051/8052 Microcontroller Book that was authored by Craig Steiner, the webmaster of 8052.com. Nothing was included in this SBC that does not serve a specific educational purpose and implementations that would confuse or unnecessarily complicate the design were intentionally omitted in favor of easy-to-understand approaches so that the important topics could be covered without being lost in the details. Every aspect of the 8052.com SBC is completely explained in the book.


This SBC was also designed with a worldwide market in mind. Recognizing that not all parts are easily available in all parts of the world, this SBC intentionally uses common parts that should not be difficult to acquire. In some cases the use of common parts may not have been the optimum design but in these cases the efficiency was sacrificed in favor of universality.
The board was developed with the Atmel AT89S8252/AT89S8253 and Dallas DS89C420 in mind but can be used with any 40-pin 8052 pin-compatible derivative including the traditional true-blue 8052, 8051, 8032, 8031, etc.; Additionally, this SBC will work with the new Atmel AT89S8253 that has been announced to replace the AT89S8252. Its feature-set is such that the user may use the SBC simply to learn and master the 8052 microcontroller but may also subsequently use it as a base for his or her own projects and designs.


วันอังคารที่ 15 กันยายน พ.ศ. 2552

8051SBC V1.0



I decided to rename C52EVB to be 8051SBC. Since the cpu can be any 8051 compatible chips with 40-pin DIP package. The old day chips, say 8031, 8751, 8032 or the new chips, 89C51, 89C52, 89C51RD2 can be used without any problem. Some may think that your old chips were useless, now you can use it for many projects. The monitor program of new 8051SBC was placed at external 32kB EPROM. With this space, you can customize your own monitor code or even add the application program and have the DIP switch to boot it when power up. The 32kB SRAM still be mapped as external code and data memory. We can test the program in RAM, when it firms then put it in the space in EPROM. The memory and i/o decoder is now using GAL (Generic Array Logic).


The hardware schematic was provided to be an exemplary design for student to learn basic design of 8-bit microprocessor board. The board is a generic tool for every microprocessor lab. I provided all materials in public domain, so you may build it for your lab. Student can learn assembly programming, HLL programming and hardware interfacing.


The new 8051SBC features;

CPU: Any 8051 compatible with 40-pin DIP package @11.0592MHz

MEMORY: 27C256, 32kB EPROM for monitor program

62256, 32KB SRAM for both code and data space

I/O: direct cpu bus interface 2x16 line LCD

8-bit input port, 74LS244

8-bit output port, 74HC573

MEMORY and I/O Decoder: GAL16V8D

EEPROM: 24LC256, 32KB serial eeprom

RTC: Real-time clock, DS1307 with +3V Lithium backup

ADC: LTC1298, SPI interface 2-channel 12-bit Analog-to-Digital Converter

I/O pins: P1,P3 of 8051 cpu, 16-bit I/O port

Debug LED: single dot LED connected to P1.7

Keypad and DIPSW: 4-bit keypad and 4-bit DIP switch

RS232 Level Converter: MAX232

RS485: 75176 differential transceiver

Serial Interface: 9600 8n1

Monitor Program: Modified PAULMON2 including new commands

Hardware Schematic

Complete schematic for cpu and memory is shown in Figure 2. U7 is 40-pin 8051 compatible chip. The xtal is 11.0592MHz. JP1 selects internal or external code memory. With the external monitor mode, we make EA# to GND. The data bus D0-D7 are tied to memory chip, U1, U2 and to the GPIO, U3, U4 directly. Both memory chips are 32kB, so each chip needs A0-A14. A15 is used for memory decoder that decodes between first 32kB and second 32kB of external code memory. When A15 = 0, U1 the monitor rom was selected. The OE# of U1 is tied to PSEN#, so the code memory will enable only when address range 0x0000-0x7FFF of code memory are accessed. The upper memory space from address 0x8000-0xFFFF makes A15 = 1. When A15 = 1, U2 or SRAM will be selected. This memory space was decoded to be overlapped between external data and code memory. So while running under monitor mode, we can then load the hex code into the SRAM(data memory) and when JUMP from monitor program to address says 0x8000, the PSEN# that AND with RD# and ties to OE# of SRAM will enable the RAM to be code memory.


GIGABYTE AMD MA770-US3


Cpu support : AM2+

Chip : AMD770/SB700

From Factor : ATX

FSB : 5200/2000MT/s

PCI-E 2.0 : 4 Slot

PCI : 2 Slot

Memory Type : Dual Chanel 1066/800/667

Memory Socket : 4 Slot

SATA : 4

PATA : 1

RAID : yes

USB Port : 10

Audio : ALC888

LAN/IO Shield : Gigabit

68HC000 Computer


He 68000 Single Board Computer features

CPU: 68HC000 68-pin PLCC @8MHz

Memory: SRAM 256kB (628128×2), FLASH 256kB (29C010×2),

GPIO: 8-bit output port, 8-bit input port,

UART: 6850 9600 8n1,

RTC: DS12887,

Glue logic: DTACK, memory/io decoder, Xilink XC9572 CPLD,

Monitor program: zBug V1.0 for 68000-Based Single Board Computer