So here I am with my microprocessor setup, and NOW things are working perfectly.
Here's the interesting part.
I started with a Datung backlit LCD display (model DV-16110) which is 16 characters long by 1 line. It costed me $15.
The problem with it is that I can't make it go past 8 characters!
Now I switched it to a Hyundai LCD which costs only $10, it has 16 characters and 2 lines. Thankfully, I managed to display what I wanted to display.
It's quite amazing how some things can NOT work, even though they "try" to go with the standards, or are the standards wrong?
My next stop is now communicating my 8051 with my PC through the serial port.
Luckily, I managed to pull off over 15Mhz with a 7555 timer, two 4.7K resistors, and one 4.7pF NPO capacitor, and the LCD still works.
My LCD subroutine has the accumulator go from 255 to 0 between the time the time the EN line begins to go low, and the time it returns high.
I should be able to somehow or another get a decent connection speed. Hopefully I can get 115,200bps.
But when I use my calculator to divide the oscillator speed (15Mhz) by a number between 0 and 255, I eventually get a number that is within 200bps of the wanted speed.
The question is how much tolerance could the microprocessor have, or in other words, how much can I be off of the baud rate without losing any characters, if I used serial port mode 1 (the 8-bit UART mode)?
I will be happy if I can get 115,200bps.