I really can’t understand why I’m struggling with this LCD so much, I did a project using it 2 years ago… Well that was using PICAXE so it was dead easy, but still, i’ve spent days on this. Its not going into clock mode for some reason, even though the jumper isnt shorted…
EDIT: Just looked at the datasheet. A “0” Byte makes it display the time, but I’m not sending it one… My current code I’m trying to make it work with is
SerialPort UART = new SerialPort("COM1", 2400);
UART.Open();
Thread.Sleep(3000);
Debug.Print("hello");
byte[] buffer = new byte[2] {254,128};
UART.Write(buffer, 0, buffer.Length);
Thread.Sleep(100);
byte[] bufferMessage = new byte[5] { 65, 66, 67, 68, 69 };
int i;
for (i = 0; i < bufferMessage.Length; i++) {
UART.Write(bufferMessage, i, 1);
Thread.Sleep(10);
}
Thread.Sleep(500);
Debug.Print("goodbye");
Now I would be able to test that, if my Panda wasn’t getting stuck at the “Deploying Assemblies” bit of the deployment… This happens all the time, am I doing something wrong? I end up having to reboot my computer, and when I shut it off I get a BSOD saying “Fatal USB driver error, dumping RAM to harddrive to avoid file loss”
I’m getting defeated by a simple LCD, I feel like such a looser
Okay now its displaying the Preset message 1 on the top line and clock on bottom line, just as if it was in clock mode. Its still got the preset message back from my old project 2 years ago. Ill take a picture, but I’m really bemused, I might make a PICAXE program and try to run it see if that works. Ill also check the jumper for clock for continuity, because thats just weird.
The attached image is the LCD. The bottom jumper visible on left (The set of two pads) is the clock jumper, which when shorted should display exactly whats displayed on the screen now… except that its clearly not shorted.
PS: Just checked the Clock jumper with my multimetre - No continuity.
EDIT 3million and 7: This is an extract from the PICAXE manual: “When bit1 is 1, the serial output polarity is �Inverted� which is same as a �Nxxx�
baud rate in the �serout� command. In this state the pin idles low and pulses high.
This is the state normally used with third part devices (e.g an AXE033 serial LCD)
or director �resistor� conection to a PC.”
This requires N2400 baud rate. Is that what i’m using?
yet another edit: I checked the timings at which the messages come up, the top display message actualy appears when I send data to the screen, so it seems to think that I’m sending it a 0 for the clock, and a 1 for the message… Weird…
Finals thoughts - I’m not going to use a lot of standard IO pins on my panda, I’m really only after I2C, UART and PWM, so I’m thinking - I might aswell just take off the silly serial to pararell driver thats giving me so much trouble, and connect it straight to the LCD display. Saves me a UART, and a lot of effort