skip navigational linksPJRC
Shopping Cart Checkout Shipping Cost Download Website
Home Products Teensy Blog Forum
You are here: 8051 Tools Development Board Troubleshooting Test Chart

PJRC Store
8051 Board, $79
LCD 128x64 Pixel, $29
LCD 16x2 Char, $14
Serial Cable, $5
9 Volt Power, $6
More Components...
8051 Tools
Main Page
Software
PAULMON Monitor
Development Board
Code Library
89C2051 Programmer
Other Resources

Troubleshooting

Warning: many multimeters output a large, chip-damaging test current in continuity (beeper) mode, or when set on their lower resistance measurement ranges.

SymptomPossible CauseTroubleshooting Action
No Response From Board No PowerCheck 5 volt power
PC Serial Port Problem Serial Port Loopback Test
Software Config (eg, wrong serial port)
Defective Serial Cable
Wrong Cable TypeDo not use "null modem" cable
CPU Not RunningCheck Reset & Crystal
Not Receiving Serial DataCheck Receiver Circuitry
Not Transmitting Serial DataCheck Transmitter Circuitry
Unresponsive Code in Flash ROMErase Flash ROM using FLASH ERASE Jumper
(Understanding Startup Sequence)
Damaged ChipsRemove: RAM, Flash, HC373, HC20, 82C55
Replace: 87C52, MAX232, HC00, HC02, HC08
Corrupted / Garbage Communication Wrong Baud RateErase Flash, Power Off 15 Seconds, Reboot to Auto-Detect Baud Rate (more info)
Power ProblemCheck Input Voltage is not AC
PC to Board Ground ProblemCheck Serial Cable Ground (more info)
Only 115200 WorksCheck CR/LF Software Setting (more info)
Errors Detected During Download Target Area In Flash Not ErasedErase Flash Before Downloading Code Compiled for Flash Memory (0x8000 to 0xF7FF)
LCD Interfering With Data BusRemove LCD, Check Pins Are Aligned Correctly
Bus or Memory DamagedTest Memory With Editor
Reboot or Crash When Running LED Blink Example Not Enough PowerCheck 5 volt power
This is usually due to AC voltage input, where the board can just barely run until the LEDs consume more power. Input must be 8 to 15 volts DC.
Interrupts Not WorkingInterrupt Code not at 0x20XX Compile code for RAM, location 0x2000.
Write LJMPs into RAM before enabling interrupts. See pm2_interrupt_remap() in paulmon2.c, LED Blink Example.
Compile code for Flash, 0x8000, allow Auto-Start Code to write LJMPs into RAM before running your program


8051 Development System Circuit Board, Paul Stoffregen
http://www.pjrc.com/tech/8051/board5/troubleshooting.html
Last updated: March 19, 2008
Status: finished
Suggestions, comments, criticisms: <paul@pjrc.com>