Displays are often required in projects to provide messages and feedback.
The LCD plugin simulates the industry standard Hitachi HD44780 LCD controller
and an LCD display in a choice of different display sizes.
The HD44780 display controller has a parallel interface that consists of 8 data
lines and three control lines.
The HD44780 supports both the 4 bit and 8 bit data transfer modes.
In 8 bit mode, the data is presented on pins DB0 through DB7.
In 4 bit mode, the data is presented on pins DB0 through DB3.
Data is clocked is clocked on the falling edge of the E (Enable)
control line.
Data is either read or written depending on the state of the R/W (Read
Not Write) control line when the falling edge of E occurs.
Data access is either to Data Register (DR) or Instruction Register (IR)
depending on the state of the RS (Register Select).
With RS = 1, data access is to DR. With RS = 0 data access is
to IR.
With R/W = 0, data will be written to the display controller. With R/W
= 1, data will be read from the display controller.
For more information please read the data sheet for the HD44780 or compatible display controller.
The HD44780 has a busy flag that indicates when the next command send or data
written.
The busy signal can be ignore, and delays added in the program to allow the
display to complete last operation to complete before the next command or data
is send.
For more information please read the data sheet for the HD44780.
The display pin connections and colors can be configure by right clicking the mouse
on the LCD window, and the selecting configure.
The following dialog box will be displayed.
The LCD Pin Connections list allows the pins of the LCD to be connected to
pins of the simulated microcontroller.
A typical 8 bit mode transfer configuration is shown above.
The Display Size selection allow a choice of several display formats
characters per line line and number of lines to display:
8 x 1,8 x 2, 12 x 1, 12 x 2, 16 x 1, 16 x 2, 20 x 1, 20 x 2, 40 x 1 and 40 x 2.
The Colors selection allows the Text , Background and Leading color to
be selected.
The leading is the space between the pixels.
The HD44780 display controller has power on reset circuitry to allow startup in an orderly fashion, however if the supply rise time is two slow this may fail to function correctly. It is therefore standard practice for the first data to be written to the display is the reset sequence.
The reset sequence has specific values that need to be written to the display and specific timing requirements. If these conditions are not met, the display may not function, or may function incorrectly. The busy flag is not valid during the reset sequence.
Please consult the data sheet HD44780 or compatible display controller for detail of the reset sequence.
The LCD simulation does very closely follow the behaviour of the actual
device, however there are a few limitations:
1) Data setup and holdup times are 0 for the simulation.
2) Only the 7 x 5 pixel font is supported.
3) The user defined character generator and memory are not simulated.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
THE AUTHOR RESERVES THE RIGHT TO REJECT ANY LICENSE (REGISTRATION) REQUEST WITHOUT EXPLAINING THE REASONS WHY SUCH REQUEST HAS BEEN REJECTED. IN CASE YOUR LICENSE (REGISTRATION) REQUEST GETS REJECTED YOU MUST STOP USING THE SourceBoost IDE, C2C-PLUS, C2C++, P2C-plus and BoostC COMPILERS AND REMOVE THE WHOLE SourceBoost IDE INSTALLATION FROM YOUR COMPUTER.