Graphics LCD 2-wire serial interface


In this video Debraj demonstrates his 2-wire serial interface for use with a 128×64 graphics LCD. This design reduces the pin requirement from 14 to 2.

Check in at hobbydebraj for schematic and source code links.

Via the contact form.

This entry was posted in how-to, LCD, open source and tagged , .

Comments

  1. arhi says:

    I don’t get it, he’s using latching shift (595) as non-latching (164)?! Why ?! If he don’t want to latch it, using a non latching 74hc164 is cheaper if you don’t want latching to happen …

    • James says:

      @arhi

      I havn’t looked at his schema, but I’m assuming he’s using the a 2-wire-latched setup for a shift register. 1 wire handles data and clock, the other the latch.

      The data/clock wire is pulsed low quickly to clock in a 1, dropped low for a longer time to clock in a zero (by way of an RC time constant on the data input to the shift register, and lack of one on the clock input, thereby a short drop of the clock will still end up with a high on the data when the clock rises, while a long drop on the clock results in the data cap discharging and presenting a zero when the clock rises).

      The latch, just latches.

      You can do a 1-wire setup with clock, data and latch all controlled by different length drops on the line, short drop clocks a 1, medium drop clocks a 0, and a long drop (heh) clocks a zero AND latches to the outputs.

      Google for “Shift1″ for a better explanation.

      • arhi says:

        He has STCP and SHCP (latch clock and shift clock) shorted and connected to clock line. I know how “shift1″ works (romanblack.com is one of my favorite sites) but he ain’t using it, he’s using 595 as 164.

  2. hardcorefs says:

    Maybe he was short of parts and used what he had for speed.
    It’s like when you get the urge to hack something and you don’t want to break the line of thought, so you end up using what you have…

  3. eLLi says:

    Debraj’s interface has the advantage to use either the 595, or 164 with just little modification to the circuit without needing to change anything on the input side.

    However, i still fail to understand how he is driving the LCD’s Enable pin reliably with the Data line. Me thinks, that the Enable pin would toggle uncontrollably while clocking bits into the shift register. Maybe Debraj is exploiting some timing characteristics of the LCD or is using some other smart trick. I don’t know…

  4. Josef van Niekerk says:

    Genius!!!

    Just the other day I asked for ways on electronics.stackoverflow.com for ways to maximize the amount of LCD displays that can be connected to a Raspberry PI or any other ARM Cortex M4 evaluation board for that matter.

    I have a STM32F4, and need to connect multiple LCD displays to the board, and this seems like an awesome solution for optimising the use of pins on an ARM MPU.

  5. Manasi says:

    hello, we’re doing a project in which we are using CD3418 IC (CVSD). we want to interface the output to FPGA kit so that we can encrypt the data. Will u pls tell me how the interfacing is possible or how to do it???

Leave a Comment

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Notify me of followup comments via e-mail. You can also subscribe without commenting.