Forums

Best approach, LCD on ARM7

Started by Henr...@ work July 12, 2006
Hello group,

For a new project, we have almost decided on AT91SAM7X256 for a variety of
reasons. Primarily due to its rich peripheral set and previuos knowledge of
Atmel Chips.

But we need to implement a LCD display, preferably 320x240 pixels into our
system and we would like some advice on the best way to do this. With
respect to both hardware and software development. I.e how to get a grip on
this. would we use LCD controller or do direct IO from the processor?

Any help, comments, links are gladly appreciated.

Thanking you in advance.


Henrik


"Henrik @ work" <henrik6650@ofir.dk> wrote in message 
news:44b4e370$0$148$edfadb0f@dread11.news.tele.dk...
> Hello group, > > For a new project, we have almost decided on AT91SAM7X256 for a > variety of > reasons. Primarily due to its rich peripheral set and previuos > knowledge of > Atmel Chips. > > But we need to implement a LCD display, preferably 320x240 pixels into > our > system and we would like some advice on the best way to do this. With > respect to both hardware and software development. I.e how to get a > grip on > this. would we use LCD controller or do direct IO from the processor?
Controlling the LCD directly from IO will be a world of pain and there are a great many controllers out there which are cheap and simple (relatively). I use the on-board controller on my Sharp 79524 and my driver for it was written by Segger as part of their Emwin graphic library - that is the easy way of doing it, but it doesn't come cheap. However, there are other graphics libraries out there and, although most are as expensive as Seggers, there are bargains to be had. Check out Jim's thread entitled "Small Graphical LCDs - Free Image Utility Available - What have I missed" which I haven't had time to test but looks like it is progressing at a good rate. You could also use an OS like linux to handle the graphics but that would take all the fun out of it ;-)
"Tom Lucas" <news@REMOVEautoTOflameREPLY.clara.co.uk> wrote in message
news:1152708468.38698.0@iris.uk.clara.net...
> Controlling the LCD directly from IO will be a world of pain and there > are a great many controllers out there which are cheap and simple > (relatively). I use the on-board controller on my Sharp 79524 and my > driver for it was written by Segger as part of their Emwin graphic > library - that is the easy way of doing it, but it doesn't come cheap.
Exactly what I expected. I will look into this. Recommandations for controllers suitable for the AT91SAm7X series are gladly appreciated. Buying a library is an option that I will look into as well. We have been using other Segger products, so I think I will start by looking at the lib you suggest.
> However, there are other graphics libraries out there and, although most > are as expensive as Seggers, there are bargains to be had. Check out > Jim's thread entitled "Small Graphical LCDs - Free Image Utility > Available - What have I missed" which I haven't had time to test but > looks like it is progressing at a good rate.
Thanks for the pointer, I will check that thread.
> You could also use an OS like linux to handle the graphics but that > would take all the fun out of it ;-)
;-) I agree, something must be left for the lowlevel guys to be done. Thank you for the fast reply. Henrik
"Henrik @ work" <henrik6650@ofir.dk> wrote in message 
news:44b4f4f3$0$165$edfadb0f@dread11.news.tele.dk...
> > "Tom Lucas" <news@REMOVEautoTOflameREPLY.clara.co.uk> wrote in message > news:1152708468.38698.0@iris.uk.clara.net... >> Controlling the LCD directly from IO will be a world of pain and >> there >> are a great many controllers out there which are cheap and simple >> (relatively). I use the on-board controller on my Sharp 79524 and my >> driver for it was written by Segger as part of their Emwin graphic >> library - that is the easy way of doing it, but it doesn't come >> cheap. > > Exactly what I expected. I will look into this. Recommandations for > controllers suitable for the AT91SAm7X series are gladly appreciated. > Buying a library is an option that I will look into as well. We have > been > using other Segger products, so I think I will start by looking at the > lib > you suggest.
I can recommend emWin very highly and their support is good too. The licensing needs to be looked at carefully because they have made it very complex and restrictive - if I'm decipgering it right then I can use it on Tuesdays but I have to have a greased weasel on a skateboard nearby ;-)
>> However, there are other graphics libraries out there and, although >> most >> are as expensive as Seggers, there are bargains to be had. Check out >> Jim's thread entitled "Small Graphical LCDs - Free Image Utility >> Available - What have I missed" which I haven't had time to test but >> looks like it is progressing at a good rate. > > Thanks for the pointer, I will check that thread.
It looks pretty good from what I've seen of it and covers all the basic things I'd want a GUI to do. I've written a lot of extensions to emWin to tweak it to what I want so I might as well have started with a simpler library.
> Thank you for the fast reply.
Thank you for not telling my boss I'm answering newsgroup questions instead of working;-)
In article <1152712265.72165.0@despina.uk.clara.net>, Tom Lucas
<news@REMOVEautoTOflameREPLY.clara.co.uk> writes
>"Henrik @ work" <henrik6650@ofir.dk> wrote in message >news:44b4f4f3$0$165$edfadb0f@dread11.news.tele.dk... >> >> "Tom Lucas" <news@REMOVEautoTOflameREPLY.clara.co.uk> wrote in message >> news:1152708468.38698.0@iris.uk.clara.net... >>> Controlling the LCD directly from IO will be a world of pain and >>> there >>> are a great many controllers out there which are cheap and simple >>> (relatively). I use the on-board controller on my Sharp 79524 and my >>> driver for it was written by Segger as part of their Emwin graphic >>> library - that is the easy way of doing it, but it doesn't come >>> cheap. >> >> Exactly what I expected. I will look into this. Recommandations for >> controllers suitable for the AT91SAm7X series are gladly appreciated. >> Buying a library is an option that I will look into as well. We have >> been >> using other Segger products, so I think I will start by looking at the >> lib >> you suggest. > >I can recommend emWin very highly and their support is good too. The >licensing needs to be looked at carefully because they have made it very >complex and restrictive -
No it's not. It's quite simple.
>> Thanks for the pointer, I will check that thread. > >It looks pretty good from what I've seen of it and covers all the basic >things I'd want a GUI to do. I've written a lot of extensions to emWin >to tweak it to what I want so I might as well have started with a >simpler library.
But the problem is a simpler library probably won't be able to do what you need on the next release. BTW the bits you would probably leave out others would want in...
>> Thank you for the fast reply. > >Thank you for not telling my boss I'm answering newsgroup questions >instead of working;-)
I will :-) -- \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ \/\/\/\/\ Chris Hills Staffs England /\/\/\/\/ /\/\/ chris@phaedsys.org www.phaedsys.org \/\/\ \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
Henrik @ work wrote:

> Hello group, > > For a new project, we have almost decided on AT91SAM7X256 for a variety of > reasons. Primarily due to its rich peripheral set and previuos knowledge of > Atmel Chips. > > But we need to implement a LCD display, preferably 320x240 pixels into our > system and we would like some advice on the best way to do this. With > respect to both hardware and software development. I.e how to get a grip on > this. would we use LCD controller or do direct IO from the processor? > > Any help, comments, links are gladly appreciated. > > Thanking you in advance. > > > Henrik
may be some ideas for you at: http://www.dontronics.com/micro-lcd.html Don... -- Don McKenzie E-Mail Contact Page: http://www.dontronics.com/e-mail.html Micro,TTL,USB to 1.5" color LCD http://www.dontronics.com/micro-lcd.html USB,RS232 or TTL to VGA Monitor http://www.dontronics.com/micro-vga.html World's smallest USB 2 TTL Conv http://www.dontronics.com/micro-usb.html
"Chris Hills" <chris@phaedsys.org> wrote in message 
news:Qgc279AGkVtEFAiY@phaedsys.demon.co.uk...
> In article <1152712265.72165.0@despina.uk.clara.net>, Tom Lucas > <news@REMOVEautoTOflameREPLY.clara.co.uk> writes
<snip>
>> >>I can recommend emWin very highly and their support is good too. The >>licensing needs to be looked at carefully because they have made it >>very >>complex and restrictive - > > No it's not. It's quite simple.
I wouldn't say it is all that straightforward and it is quite restrictive. Someone else commented on this a while back when I was choosing between Segger and PEG. They are a bit more flexible during development but once you go into production then you are tied to using the library on one product even if you are using the same display hardware in several. I guess that is how they make their money but it is definitely more restrictive than other licenses I have and I think is is a bit more complex than most. However, just to qualify that, it is not enough of a problem to prevent anyone from buying the library if that is the one they choose.
>>> Thanks for the pointer, I will check that thread. >> >>It looks pretty good from what I've seen of it and covers all the >>basic >>things I'd want a GUI to do. I've written a lot of extensions to emWin >>to tweak it to what I want so I might as well have started with a >>simpler library. > > But the problem is a simpler library probably won't be able to do what > you need on the next release. BTW the bits you would probably leave > out > others would want in...
I think it is just useful for some people to have a leg up and just get a bit of simple graphics going which they can add their own functions to. It's not right for everyone but if you are only doing something really basic then it might be enough. It is certainly much easier to get going with a package like Segger's but the cost might be prohibitive for some.
"Henrik @ work" <henrik6650@ofir.dk> skrev i meddelandet 
news:44b4e370$0$148$edfadb0f@dread11.news.tele.dk...
> Hello group, > > For a new project, we have almost decided on AT91SAM7X256 for a variety of > reasons. Primarily due to its rich peripheral set and previuos knowledge > of > Atmel Chips. > > But we need to implement a LCD display, preferably 320x240 pixels into our > system and we would like some advice on the best way to do this. With > respect to both hardware and software development. I.e how to get a grip > on > this. would we use LCD controller or do direct IO from the processor? > > Any help, comments, links are gladly appreciated. > > Thanking you in advance. > > > Henrik >
Depending on your need for peripherals you could also consider the AT91SAM9261 which has an internal LCD controller optimized for 320 x 240. The standard peripherals are more or less the same but it lacks Ethernet, ADC and CAN of course. -- Best Regards, Ulf Samuelsson This is intended to be my personal opinion which may, or may not be shared by my employer Atmel Nordic AB
Henrik @ work wrote:
> For a new project, we have almost decided on AT91SAM7X256 for a variety of > reasons. Primarily due to its rich peripheral set and previuos knowledge of > Atmel Chips. > > But we need to implement a LCD display, preferably 320x240 pixels into our > system and we would like some advice on the best way to do this. With > respect to both hardware and software development. I.e how to get a grip on > this. would we use LCD controller or do direct IO from the processor?
We're using the LCD library from Simplify Technologies http://www.simplify-technologies.de/gui_library/index.html which has been great - it's not (or wasn't!) licensed on a 'per product' basis which makes it cheaper if you want to use it in multiple projects. I'm interested to know what people suggest for the HW side of things - we're looking at adding a LCD to a Atmel SAM7 chip without an external address bus and, so far, haven't come up with any good ideas. There don't seem to be any 320x240 SPI based controllers around - one suggestion was to put it in a FPGA and write some logic to convert between SPI & an "address bus" based FGPGA video controller. Peter
Peter wrote:

> Henrik @ work wrote: > >>For a new project, we have almost decided on AT91SAM7X256 for a variety of >>reasons. Primarily due to its rich peripheral set and previuos knowledge of >>Atmel Chips. >> >>But we need to implement a LCD display, preferably 320x240 pixels into our >>system and we would like some advice on the best way to do this. With >>respect to both hardware and software development. I.e how to get a grip on >>this. would we use LCD controller or do direct IO from the processor? > > > We're using the LCD library from Simplify Technologies > http://www.simplify-technologies.de/gui_library/index.html > which has been great - it's not (or wasn't!) licensed on a 'per > product' basis which makes it cheaper if you want to use it in multiple > projects. > > I'm interested to know what people suggest for the HW side of things - > we're looking at adding a LCD to a Atmel SAM7 chip without an external > address bus and, so far, haven't come up with any good ideas. There > don't seem to be any 320x240 SPI based controllers around - one > suggestion was to put it in a FPGA and write some logic to convert > between SPI & an "address bus" based FGPGA video controller. > > Peter >
For HW, why not look at the SAM9 series or the new AVR-32 series from Atmel? LCD controller is built in. regards DR