Pages: [1]   Go Down
Author Topic: Controlling LCD with a single wire.  (Read 494 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 36
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I am trying to control a 16x2 LCD with s dingle wire using SN74HC595N shift register.
I came across this great library "ShiftRegLCD123"
http://code.google.com/p/shiftreglcd123/wiki/Schematics#ShiftRegLCD123

I tired this schematic it just didn't work.

 
I thought there might be something wrong with the LCD the register or something else , so I tried the 3 wire connection and it worked just perfectly !

I also tried the 2 wires one but replaced the 1N4148 with 1N4007 (the only one I have)  and it didn't work :/ !

So is there any other schemes for 2 and 1 wire connections ?

Logged

0
Offline Offline
Shannon Member
****
Karma: 162
Posts: 10489
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The timing is critical in circuits like that, and the caps C1 and C2 will need to have stable
values (polymer film rather than ceramic?).  Its a veritable hack anyway and there ought
to be some schmidt-triggers somewhere to ensure proper function (CMOS logic inputs
should not be slowly varying, and especially so for clock inputs).
Logged

[ I won't respond to messages, use the forum please ]

Offline Offline
Newbie
*
Karma: 0
Posts: 36
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I just tried a polymer film capacitor, nothing changed :/ !
Logged

Leeds, UK
Offline Offline
Edison Member
*
Karma: 72
Posts: 1642
Once the magic blue smoke is released, it won't go back in!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Did you see this:

Quote
Slowest version

With the least amount of external components.

This require that you edit the library and comment out this line in ShiftRegLCD123.cpp:

#define LCD_SLIGHTLY_FASTER_1_WIRE
Logged

~Tom~

UK
Offline Offline
God Member
*****
Karma: 17
Posts: 568
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

You might also want to look at the FM New LiquidCrystal Library as the developers of that are currently working with a 1 Wire serial and they are active here.

The git project has a thread ru ning on the 1 Wire with diagrams and code.

As I found with thd 2 Wire serial, component type and values are critical to get these hacks to work properly.

FM's library is the most flexible for character LCD as it supports multiple connection methods in a consistent manner. The developers also put effort in to make it as fast as possible.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 36
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Did you see this:

Quote
Slowest version

With the least amount of external components.

This require that you edit the library and comment out this line in ShiftRegLCD123.cpp:

#define LCD_SLIGHTLY_FASTER_1_WIRE
Thaaaaaaaaaaaaaaaaaaaaaaanks it is working now, even with ceramic capacitors smiley-grin
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 36
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

You might also want to look at the FM New LiquidCrystal Library as the developers of that are currently working with a 1 Wire serial and they are active here.

The git project has a thread ru ning on the 1 Wire with diagrams and code.

As I found with thd 2 Wire serial, component type and values are critical to get these hacks to work properly.

FM's library is the most flexible for character LCD as it supports multiple connection methods in a consistent manner. The developers also put effort in to make it as fast as possible.
Thanks, I'll give it a try
Logged

0
Offline Offline
Shannon Member
****
Karma: 162
Posts: 10489
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

This is the sort of issue where an oscilloscope is invaluable, BTW.
Logged

[ I won't respond to messages, use the forum please ]

Pages: [1]   Go Up
Jump to: