Let's Make Robots!


Well recently I have been reading about LCD's and trying to figure out how I would use them with a picaxe 28x1. I am pretty sure you use a serout command followed by a number that corresponds with where you want the dot on the lcd. Bottom line though is that I have no idea how I would wire A LCD to the picaxe28x1 or how I would exactly program it. And what exactly is the baud rate? If possible could somebody please help explain this confusion to me? 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
So it's a serial LCD?
The "picaxe" brand LCD is default set at 2400 baud and uses serout 1,N2400, ("Hello"). The LCD's from say, Sparkfun can be set to 2400 but come stock at 9600. To get to the 9600 baud you would have to set internal frequency up to 8 hz to get up to the 9600... setfreq m8 then serout 1,T9600_8,("Hello") then after you have sent your command, you would set your freq back to 4hz so your pauses etc. won't get changed. In either case, all serial LCD's from a picaxe will simple display whatever you send in the quotes. In addition, there are a few extra commands that allow you to move the curser, show the curser, dim the backlight etc. These commands are used by sending a certain number (to tell the display you are next going to send a command) followed by the actual command number. All these commands are covered in the manual that comes with the screen. Bottom line: wire up +,- and a signal wire (from any output pin) and you are all set.
Ok, that clears things up a ton. So let me get this straight, I simply wire the +,-, and the signal wire to a output? And to set a LCD from sparkfun I would have to set it to 2400 using a command like setfreq m8, and then to set it back I would use something like setfreq m4 ? And does the "1" after serout specify the output pin? Thanks so much

Just wondering what would be a good serial lcd to start with?

the setfreq m4 and setfreq m8 changes the picaxe's speed. This is called "overclocking" and causes the picaxe to run faster. You have to do this because at the 4hz (m4) the picaxe can't get up to the 9600 baud you need. The baud speed of the display is changed by sending one of those special command numbers mentioned in the manual that comes with the screen but the sparkfun displays come stock at 9600 so you have to be running at 9600 to start to change to another baudrate.  Yes the "1" is the output pin, you could use any of them. I am using a sparkfun display on walter and am very happy --Just be sure to buy the "serial enabled" one. Don't buy a regular lcd and then add the "serial backpack" seperatly, it is just more soldering you have to do. One more: the picaxe brand lcd uses the N2400 command and the sparkfun units use the T9600 command.

Check out the picaxe manual about displays and check out the data sheet on the sparkfun displays.

for $25, you can have this one :  http://letsmakerobots.com/node/4644


dead easy to use....   +5V,  GND,  and a serial signal  or I2C bus 


serout 2,T2400_4,(0xFE,0x14,"Let's Make Robots !")          

[ 2 is pin2,     T2400_4 is TTL 'True' 2400bauds@4Mhz,  0xFE 0x14 is clearscreen ]

TTL True : 0V is '0' ,  5V is '1'    ,       N2400_4 : 0V is '1', 5V is '0'

gives you...



hmmmm, seems very intresting. Only one last thing, where exactly would I wire +,-, and signal to on it? there seems to be alot of solder spots.

not on those LCD connection,  but on the serial backpack

take a look at page 3 of the datasheet   http://www.web4robot.com/files/SerialLCDCtrl.pdf

so you would solder to +5v gnd and int?

I would'nt solder my LCD...

a connector is far better,   and can be found in old PC

For write only operation, you will have to use the Rx pin.

Tx if you want to read from LCD / touchpad

Int is the interrupt signal, which is triggered on keypress

You can of course use the I2C connection, allowing many devices on 2 wires.