Author Options:

is it possible to use a picaxe 08m to drive an lcd screen of any sort? Answered

if so then can you provde a link or scematic/scource code.  i would prefer it if there were no other ics besides the picaxe



Best Answer 8 years ago

Picaxe-08M 2-wire LCD interface lives!!! 

I have to say it's a bit slow if you want to say, read a voltage from a potentiometer and display the result in real time.  However for doing 'Hello World' its fine.

The program, (generic name for the solution is 'Bit Banging'), pushes out each 8 bit code for each character you want to display one binary digit at a time in 4-bit stages.  (This because shiftout/shiftin is not available on the 08M - see manual vol 2).

This goes into a shift register whose outputs line up with the lower 4 bits of the data bus on the LCD and then passes it across.

When I find out how to put graphics up here, (if I'm allowed), I have a schematic and a program as well as my stripboard/veroboard bodge-up to try it all out.

What I said before about baud rate etc. is ok but you need a smarter and more expensive serial-parallel circuit for that. Its easier to program though.

If anyone is still interested email me:  lanigan@hotmail.co.uk and I'll send it all out to you.  Sorry this has been another long waffle-on but I do that even in coversation.
Cheers and thanks for the nice comments.

Hi Barramundi, I've had a couple of serial displays and extremely good customer service from THIS UK based eBay trader.  I've been using their VT100 serial LCDs (20 x 4 and 16 x 2).  These have a small controller PCB on the back of the display board and can be driven from any of the PicAxe outputs.  e.g.

serout LCD,t2400,(cr,cr) ' Set baud rate
pause 50
serout LCD,t2400,(esc,"[2J") ' Clear screen
pause 50
serout LCD,t2400,(" * Hello Andy *",cr)

Cheapest to buy these as controller and solder the two together yourself (easy) rather than as the ready made up module.  Shipping to Aus is £1:40 or £7:50 for insured for any quantity.  (1 GBP = 1.55 AUD)
(I've no connection to the company, but they did me a favour recently and I'm returning the compliment.)

Hi AndyGadget..
I tried your code with picaxe 08m and 20m2
on simulate picaxe but no work .Could you post for me a new code.
Thank you in advance for your time.

Whoops - I copied that from a larger program and didn't include the symbol definitions.
You'll need the following lines at the top, or change the variables I've used to the numeric equivalents, e.g.

symbol LCD = 4      'or whichever pin you're using for SOut.
symbol esc = 27      'decimal 27 is the ESCape code.

serout LCD,t2400,(cr,cr) ' Set baud rate
pause 50
serout LCD,t2400,(esc,"[2J") ' Clear screen
pause 50
serout LCD,t2400,(" * Hello Andy *",cr)


serout 4,t2400,(cr,cr) ' Set baud rate
pause 50
serout 4,t2400,(27,"[2J") ' Clear screen
pause 50
serout 4,t2400,(" * Hello Andy *",cr)

and enable the 'serial' box in the Simulate / Simulation panels / Standard menu to display the results.

Remember though, that there are different displays out there which respond to different control codes.  You always need to refer to the data sheet for the one you're using.  Usually if you get no text at all or a meaningless jumble you've got the baud rate wrong.

Also, the code above is for a display with a serial driver board.  Connecting directly to an LCD display has the advantage of being more compact and faster, but the downside of using more wires and being harder to program.

Whow..**** Beautiful Your code ,Work great*
Thank you so much.

(I've just seen the original posting date rather than the last post date I looked at before, so I see I'm a bit late to the party here #;¬)

I'm sure you can get picaxes to drive LCD display units, but you would have to buy a display unit for the job.
What sort of thing do you want to do? (Question is very vague).


I just want it to do something. I am new to picaxe and am still experimenting. i know that Arudinos can drive lcd displays and was just wondering if picaxes could do similar things

It's important to distinguish between a LCD display, and a complete unit that takes a data signal. You'd need to choose the controller to go with the display unit - any thoughts on the LCD?


I was thinking of a complete lcd display that only needs a data imput , 5v+ and gnd something similar to this

Hi it's been a few months since your post but I came across it doing a search for the same thing.

Yes you can run any old LCD from a any picaxe chip.  It justs gets harder with the smaller ones.  I'm going to do it with a 08M but  lemonie is right you need a bit more.

The common lcd interface is a parallel data affair and as the picaxe doesn't even have enough pins to do parallel you will need to do a serial-parallel converter.

The next thing is the baud rate, (data speed across the interface), as I think the norm is 9600 and the little picaxe can't do that either.

I have seen comms that work by taking serial data at one speed, shifting it  so as to store the data then clocking it out at another speed and in fact with a different protocol, (the RS 232 to RS 488 programming cable for Siemens PLC's for example).  So it can be done.

I'll check back when I've sorted mine.

Thanks for adding the details, they might be of use to someone.