วันพฤหัสบดีที่ 24 กันยายน พ.ศ. 2552

MTK51 8051 Microcontroller Trainer


Build a single board computer with a 8051-compatible microcontroller, ATMEL 89S52.

MTK51 is a single board computer that uses the ATEML 89S52 microcontroller as the CPU. The board provides a 32kB RAM (code memory) for user program and a 32KB ROM for monitor program. The board is designed for studying the microcontroller hardware and instruction coding. We can enter HEX code directly to the code memory and test the code with single step running, check the result of the operation with user registers. The kit also provides more devices interfacing, e.g. ADC, EEPROM, RTC, RELAY, Programmable Port, serial ports RS232, and RS485. The MCU can run both single chip or expand modes as well.


Hardware features

MCU: ATMEL 89S52 @11.0592MHz, 40-pin DIP package 8051-compatible microcontroller chips,
Memory: 32kB RAM, 32KB monitor ROM, 256 bytes on-chip RAM,
GPIO: 8255 PPI, P1, P3,
DISPLAY: 16x2 Text LCD,
Keypad: 28-key, 16-HEX key, 12-function key,
ADC: LTC1298, MCP3202, 2-channel 12-bit resolution,
RTC: DS1307 I2C interface real-time clock with +3V Lithium battery backup,
EEPROM: 32kB 24LC256,
Temperature sensor: DS1820,
RELAY: 10A 250VAC relay with NO-C-NC terminal,
Serial port: 9600 RS232 and RS485,
Optional keyboard: PS2 interface connector.The monitor software features:
Enter hex code directly using the 16-key hex key,
Single step running with user registers display,
Run user code full speed,
Display code and data memory,
Offset byte calculation for relative addressing mode,
Insert AJMP and ACALL hex code to the code memory,
Insert byte and delete byte,
Clear code memory,
Quick home location key.

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