I am working on a project in which I need to get a golf rangefinders distance that it reads into the Arduino's memory. I have seen other forums on how to use the LCD's r/w wire to read the DRAM or something, but I was looking for a simpler solution, or a more descriptive and understandable explanation, because this is my first time with using external electronics.
I figured it out. I found a great instructible article on how to do exactly this. https://www.instructables.com/id/Direct-Reading-of-LCD-Using-General-Purpose-IO/
If you have actually gone to all the trouble of decoding the LCD control signals in your golf range finder, and successfully collected the display data, please post the details for the benefit of other people.
I basically did what the guy did in the instructable, but without having to use an oscilloscope because I didn't have one. I used my Arduino nano and ran a simple program that detects when the voltage goes up to find the cycle time. Then I made this code while touching A0 to one of my com pins and A1 to a data pin to decode my chart.
boolean lastData = false;
void setup() {
pinMode(A0, INPUT);
pinMode(A1, INPUT);
Serial.begin(115200);
}
void loop() {
if (analogRead(A0) > 120) {
if (!lastData) {
delay(2);
if (analogRead(A1) > 120) {
Serial.println("On");
}else {
Serial.println("Off");
}
}
lastData = true;
}else {
lastData = false;
}
}
After this I just decided I can recycle my LCD and wrote a program to manipulate the com and data lines to display any 4 digit number.
In the end it didn't really matter though because the range finder I purchased just used a 30 wire FPC cable LCD and had a wire for each independent section of the display, so I just got an adapter from FPC to PCB, and read the voltages directly. And the programming is just make a reference chart and a lot of if statements, to read the number.