Data Storage Tool Display Human Input Protocol Math Motor Control Sensor Signal Generation & Processing Speech & Sound Fun View all Objects


Quick Links
Contact Us
Forums
Support

Register
Login

This object is provided under license. By downloading this object, you are agreeing to the terms of the MIT License.

jm_lcd4_ez

High-performance 4-bit LCD driver written in Spin. Uses LCD busy flag to minimize delays between character writes for best performance. Driver includes code to write characters, formatted strings, to read from LCD memory, and to define custom characters.

Version 1.1 allows the specification of LCD size (cols, rows) for error trapping. Adds display(), cursor(), moveto(), and scrollstr() methods.

Version 1.2 adds initx() method to allow for non-contiguous pin group of control pins (BL, E, RW, RS). Also adds rscrollstr() for left-to-right scrolling of a string.

Version 1.3 fixes a small setup error in initx(), removes some small inefficiencies, self-adjusts or clock frequency, and adds rjdec() method for printing right-justified decimal numbers.

Version 1.4 fixes a bug that prevented LCDs using the startx method (was initx) from working properly (thanks to Eldon Brown for pointing out the problem with non-contiguous pin assignments). The init method has been renamed start() to conform with other Propeller objects, and is more efficient (calls startx).

Version:
  1.4

Type:
  Object

Attributes:


Author:
  Jon McPhalen
  jon@jonmcphalen.com

Categories:
  Display

Downloads:
  537

Last Updated:
  2012-02-06



User Reviews:

  • Majorstrain commented:
    In the intix() Method, I needed to change the line "db7 := db4pin + 7 " from a +7 to a +4 to get the method to work. line 142 is changed to db7 := db4pin + 4 ' lcd.14 Cheers Phil.
    September 29, 2011 10:47 p.m.




  • Comments on this Object:


    [2011-09-30 00:28:07] Anonymous said:
    In actual fact it should be db7 := db4pin + 3 Sorry for the error; my test setup must have been very forgiving. I will look through the listing, fix that -- and anything else that needs fixing -- and repost. Reply
    [2011-09-30 01:28:03] Jon McPhalen said:
    30 SEP 2011: Bug in initx() method is fixed, and other improvements added. New method, rjdec(), allows for the right-justified printing of decimal values in display. Reply

    Post a comment:




    Please contact obex.support@parallax.com with comments or questions.

    Copyright 2011 by Parallax, Inc.