8051 Single Board Computer (SBC) Version 1.0 By Wichit Sirichote kswichit@kmitl.ac.th http://www.kmitl.ac.th/~kswichit/8051sbc/8051sbc.html
The 8051 Single Board Computer Serial Interface LED Real-Time Clock Analog to digital converter Random Access Memory (RAM) Input/Output Pins Input/Output Pins Read Only Memory (EEPROM) DIP Switches Liquid Cristal Display 8051 CPU 14/11/2018
8051 SBC Features CPU: 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 Real-Time Clock (RTC): 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 P 1.7 Keypad and DIP Switch: 4-bit keypad and 4-bit DIP switch RS 232 Level Converter: MAX232 RS 485: 75176 differential transceiver Serial Interface: 9600 8n1 Monitor Program: Modified PAULMON2 including new commands 14/11/2018
Hardware Schematic, CPU, memory, PLD 14/11/2018
RS232, RS485, DC supply, EEPROM, ADC, RTC, keypad, debug LED. 14/11/2018
Output Port 8-bit output port address: 0x0100 Data output pins 14/11/2018
Input Port Data input pins 8-bit input port address: 0x0200 14/11/2018
12-bit Analog to Digital Converter (ADC) Transfer Curve Output Code 14/11/2018 Source: Linear Technology LTC1298
12-bit Analog to Digital Converter (ADC) Analog input pin Digital Data output pin Channel 0 (Pin 2) - Analog Input (e.g. from 0 to 5 volts) Data (Pin 6) - The A/D conversion result is shifted out of pin 6 Data Transfer Format: serial with MSB first Conversion Time : 60µs Sampling Rate: 11.1 Kilo Samples per second (ksps) http://www.linear.com/pc/productDetail.jsp?navId=H0,C1,C1155,C1001,C1158,P1445 14/11/2018 Source: Linear Technology LTC1298
12-bit Analog to Digital Converter (ADC) Handshake between computer and Converter 14/11/2018
12-bit Analog to Digital Converter (ADC) Handshake between computer and Converter Transfer of data: from MSB (i.e. Bit 11) to LSB (i.e. Bit 0) 14/11/2018
MTK51 8051 Microcontroller Trainer http://www.kmitl.ac.th/~kswichit/mtk51/index.html 14/11/2018
MTK51 8051 Microcontroller Trainer 14/11/2018
MTK51 8051 Instruction Subset ACALL - Absolute Call ADD, ADDC - Add Accumulator (With Carry) AJMP - Absolute Jump ANL - Bitwise AND CJNE - Compare and Jump if Not Equal CLR - Clear Register CPL - Complement Register DA - Decimal Adjust DEC - Decrement Register DIV - Divide Accumulator by B DJNZ - Decrement Register and Jump if Not Zero INC - Increment Register JB - Jump if Bit Set JBC - Jump if Bit Set and Clear Bit JC - Jump if Carry Set JMP - Jump to Address JNB - Jump if Bit Not Set JNC - Jump if Carry Not Set JNZ - Jump if Accumulator Not Zero JZ - Jump if Accumulator Zero LCALL - Long Call LJMP - Long Jump MOV - Move Memory MOVC - Move Code Memory MOVX - Move Extended Memory MUL - Multiply Accumulator by B NOP - No Operation ORL - Bitwise OR POP - Pop Value From Stack PUSH - Push Value Onto Stack RET - Return From Subroutine RETI - Return From Interrupt RL - Rotate Accumulator Left 14/11/2018 http://www.win.tue.nl/~aeb/comp/8051/set8051.html