Finding display solution for microcontroller sensory.

nitromarsjipan, Sun Apr 02 2006, 09:48PM

I am working on a project where I need to display information from several sensors and output data computed in a microcontroller. A HD44780-compitable display is not adequate, I need to display 400 characters at a rough figure, in addition to a few graphic data representations (graphs, bars and an aircraft attitude sketch). I have all the information to be displayed avaiable on a AVR microcontroller.

I do not think i can use a computer for the task, interfacing a computer would require computer programming skills. I do not feel confident with learning this in paralell with the project design and learning assembly for AVR microcontrollers. I did therefore think of interfacing directly to a computer LCD from a microcontroller, but i soon realized that this would require a clock speed way over what the AVR circuits i have avaiable can manage; 20MHz maximum for the AVR, a common LCD display would require 1280*1024*60Hz*3colour channels = 235M write cycles per second. Car TV screens would require similarely huge write speeds, which excludes theese as well for direct interface.

Does one of you have any ideas for how to get the information on a suitably large display, either by using some display controller between the AVR and the LCD, by using some other display, or by any other means? I am also interested in info about easy ways to get data from a microcontroller sent through a computers serial port displayed properly.

nitromarsjipan
Re: Finding display solution for microcontroller sensory.
Bjørn, Mon Apr 03 2006, 12:05AM

What size?
How fast must it be refreshed?
What cost?

Use a LCD with built in controller and RAM or use an old PC that runs DOS and QBASIC/VBDOS.
Re: Finding display solution for microcontroller sensory.
Wolfram, Mon Apr 03 2006, 04:43AM

I think the best solution for you would be a controllerless LCD and a SED1335. So called controllerless LCDs are quite easy to get, and should not be too expensive. For the LCD to work with the SED1335, it has to have a 4-bit data input and 3 clock inputs. The SED1335 should not be hard to get, futurlec.com has it and complete boards with SED1335 and RAM can be bought here: Link2 .

Controllerless LCDs can be acquired in many different sizes. You can't go above 640*256 if you want to use the SED1335, but I think that's plenty big.

The SED1335 is perfect for what you want to do, because it has a built-in character generator. Also, like with all other LCD controllers, the information that you write to the LCD stays on the screen until you overwrite it, so you don't need huge bandwidth.
Re: Finding display solution for microcontroller sensory.
nitromarsjipan, Mon Apr 03 2006, 06:55AM

The upper size limit of the display is 40cm * 37cm, i need it to fit inside a box together with some other equipment (the lid is 40*37*3, bottom is 40*37*17, see attached image). The lower size limit is somewhere around the size of a A5 paper sheet. I wish for a refresh rate of 4Hz or better for the numerical / text data, and a little bit higher for grapic data (say 8Hz or so). The total price for the display solution should not exeed 100$.

The SED1335 based solution seems good, the only downside compared to some other screens is the lack of colour, this is not a major problem though. I think I will go with a SED1335 / controllerless LCD setup if I can't get a colour display without much more hassle.

The old laptop computer shown beside the box in the attached picture has a suitably large display, and I am free to do whatever I like with it, it has an unused serial port. If I can get this laptop, or its display working this would be perfect.
1144047282 319 FT6500 Display Box
Re: Finding display solution for microcontroller sensory.
Superkuh, Mon Apr 03 2006, 07:56AM

It is not all too hard to get an AVR to do NTSC non-interlaced video (for television) as is described and documented here (check out the final projects page too, Link2 , for example implementations and code):

Link2 Cornell University Electrical Engineering 476 Video Generation with Atmel AVR microcontrollers

That is, if you are not dead set on LCDs.
Re: Finding display solution for microcontroller sensory.
Steve Conner, Mon Apr 03 2006, 10:18AM

i've used graphic LCDs with the Toshiba T6963 controller before. They come in 128x128 pixel square and 240x64 letterbox shaped varieties. The 240x64 can display 8 lines of 40 characters combined with bitmapped graphics.

The T6963 is similar to the SED1335 but not so powerful.

About using the laptop: Your AVR should have a UART module that can send data in a format that a RS-232 port can accept. You just need to set the UART up to 9600 N-8-1 or whatever, wire up a RS-232 level shifter chip, dump the raw data out, and write software on the laptop to display it, like Bjorn suggested.
That could turn out easier than using a LCD directly from the AVR, since you can use some DOS-based programming language with ready-made graphics and maths libraries.

The only tricky thing is defining a packet format for the data. It's just a stream of hex numbers and the computer needs to know what they mean and whether it has lost any or had any errors.
Re: Finding display solution for microcontroller sensory.
Bjørn, Mon Apr 03 2006, 01:12PM

Since you have the laptop I would suggest using that unless power consumption is a problem. RS-232 has a tendency to work without a level shifter but not always. If it requires negative voltages you can use the "Avi fibulator" circuit if the two devices does not share a common ground. The parallel port will work nicely too and might be simpler in some cases since you would see everything that is going on.

If you use the laptop you have many options to add useful things in a simple way like data logging and Space Invaders.
Re: Finding display solution for microcontroller sensory.
nitromarsjipan, Mon Apr 03 2006, 07:04PM

Thank you for your replies. I have decided to try to get the laptop functioning as a display. I have however added another function to my project, for this I need to have a GPS map program running on the computer. This program will occupy much of the display area, so I doubt I will manage to fit all the other information together with it. Therefore I will also add one of the passive PLCD / SED1335 displays (gah, this is getting expensive).

The laptop will recieve GPS positioning data and all other data processed in the unit. It will display the position on a map, and log all data. The other LCD screen will most probably be this one, combined with a SED1335 board. This display will portray all data i can't fit on the computer screen.