cancel
Showing results for 
Search instead for 
Did you mean: 

STPC Atlas w/ TFT LCD QVGA panel

dlclark
Associate II
Posted on April 21, 2005 at 14:00

STPC Atlas w/ TFT LCD QVGA panel

9 REPLIES 9
dlclark
Associate II
Posted on April 11, 2005 at 22:24

I hope somebody here can give me a nudge in the right direction. I am new to this level of details in regards to displays and video BIOS's. Here is the scenario: We are upgrading the PC104 processor card on an existing product because the old one from Ampro has been obsolete-ed. The new one we are upgrading to is the Ampro CM420 based with the STPC Atlas processor. Our design uses a Sharp LQ038Q5DR01 Color TFT LCD Display. It is a Quarter VGA 320x240 3.8'' display. Ampro says that they do not currently have a BIOS that supports native QVGA (6MHz) displays and that we need to either tweak the video registers or use a QVGA display that is compatible with the VGA clock (25MHz). The application is running in DOS and uses the Fastgraph library to create the GUI. We would like to use the original Sharp display so the path I’m taking is to “tweak the video registers.�

So far, I have successfully changed the dot clock frequency to 6,2 MHz using the source code from the dclk utility. However when I make calls to the Fastgraph library it changes back to the original ~28MHz. Once I leave my application, the clock returns to 6.2 MHz. I have also played with some of the other utilities such as tfton to no avail. I see nothing on the display.

Here are my questions:

1) In addition to the dot clock, do I need to tweak the other TFT or VGA registers? I'm assuming that it will take more than simply getting the dot clock to run at 6 MHz, correct?

2) Since Fastgraph seems to override the dot clock settings and is most likely doing this by calling the video BIOS, I assume I need to override the BIOS with something that supports my display. Is this correct?

3) If Fastgraph doesn't find a supported video BIOS, it defaults to using the VESA BIOS. This is what is occurring in this case. Are there any special considerations because of this?

4) With the old processor card, we ran the application with 640x480 resolution and simply created the image in the upper left quadrant of the display to make it appear in the QVGA panel. Is there anything wrong with this?

Again, I'm quite new to all this and expect some kind of learning curve. At this point I'm just looking to pointed in the right direction.

David Clark

Software Design Engineer

C&H Technologies, Inc.

anouar2
Associate II
Posted on April 15, 2005 at 09:05

The graphical mode that you use is not standard, so it can't be included in the BIOS, But you can change one of the standard modes in the BIOS, using the BE tool. ALL registers values that must be loaded to the BE you can collect them from the stpcvga tool.

All these tools are available on the stmcu support site.

In conclusion, the solution to your problem is to update the BIOS (graphics one)

Thanks.

STPC team

marios
Associate II
Posted on April 19, 2005 at 23:15

You say that in the old application you were using the standard 640 x 480 resolution but were just using the upper left quadrant. Then you LCD is already compatible with the standard VGA timings. Why wouldn't it display correctly with the Atlas in 640 x 480 mode?

What was the old card that you are replacing with the Ampro board? It may trigger something.

twitwity
Associate II
Posted on April 20, 2005 at 05:09

No. sharp LQ038Q5DR01 pixel clock is just around 6Mhz..

Once pixel clock has been setup, it rules everything. basically the pixel clock is the sampling clock of DAC in anaog displays system (NOT CRT. the VIDEO CARD) rear End.

roughly speaking, the pixel clock has strong positive corellation with

1. video resolution and refresh rate. (Horiz * Vert * ref Rate (hz) )

2. so, without H/W assistance, you can't simply display on that LCD by filling upper left corner of display buffer. you have to look further into hardware.

3. there must have been a trick on display buffer filling schem and output video mode (ex. cunningly fool the cascaded display system with main displays interlaced mode.)

4. in anycase the pixel clock should be at 6Mhz. that rules the relation with your display system and that LCD display from sharp.although there exists 320 *240 resolution support with double-scanning, it doesnt apply to this case. because it uses VGA pixel clock rate.

attatched are VESA VideoBIOS Extension doc and updated formula of 'GTF' just for reference. YOUR LEARNING CURV LOOKS HAVE TO BE A VERTICAL ONE...

ONE MORE.

I dont know exactly about the library you used. but. in DOS era, a program can easily - without so much pain.. - bypass DOS and BIOS function and access Hardware register. this is strage though. then the library cannot be used in general purpose. and what OS did you run your software before? not a DOS right? if it is.. YOU ARE JUST GREAT!.

[ This message was edited by: Twitwity on 20-04-2005 08:56 ]

________________

Attachments :

vbe3.pdf : https://st--c.eu10.content.force.com/sfc/dist/version/download/?oid=00Db0000000YtG6&ids=0680X000006Htn6&d=%2Fa%2F0X0000000aWz%2FQZyZJAl8vTJN2Xh6gn26pi8qcESCQJkeTQHUUz3DPn8&asPdf=false

vesa_video_timing_gen.xls : https://st--c.eu10.content.force.com/sfc/dist/version/download/?oid=00Db0000000YtG6&ids=0680X000006HtuB&d=%2Fa%2F0X0000000aYb%2FFD8Wkx6BG.b3_m3fvyFh5PcAqrLLDEC7t_pyX7Yss6c&asPdf=false
twitwity
Associate II
Posted on April 20, 2005 at 12:56

Oh I'm sorry i didnt have enough time to read your article thoroughly at first time. you are running DOS.

and your previous application only fills a quarter of VGA display buffer area.

then the assumption is simple.

it is strongly suspected that the BIOS was a custom modified version. and it gave 6Mhz pxl clock to outer world.

in your first test, the dclk utility maybe an sample application and the code was not integrated in VGA BIOS routine. so when you use the GUI library, it might does routine that saves original value and set the CRTC to one of the VESA mode, and then restore previous value to the one that gives 6MHz pxl clk.

well. if you have to use the GUI library , then Modify BIOS routine that sets CRTC value to the codes you tested. before go on to fine tune the rest process such as frame buffer manipulation. your pxl clk must be at 6Mhz..

[ This message was edited by: Twitwity on 20-04-2005 16:35 ]

marios
Associate II
Posted on April 20, 2005 at 13:15

All you are looking for is a new CPU card that can be used in your existing setup, right?

If the LQ038Q5DR01 was the display that you've been using, I'm curious to know what board you were using to interface this display. Finding a 3.8-inch display has become tougher. It looks like 6.4 inches has become a standard for small TFTs, at 640 x 480.

dlclark
Associate II
Posted on April 20, 2005 at 14:00

Yes we are only looking for a new CPU and the LQ038Q5DR01 was the display we have been using. We were using the Ampro CoreModule 4GV PC104 board to interface to it previously. This module had a Chips and Technologies 65545 (maybe the 65550 I'm not sure) video controller. The board is now obsolete and Ampro is recommending using their CoreModule 420 (w/ STPC Atlas) as a replacement which is supposed to be guaranteed available until 2010. We decided at this point to go ahead and upgrade so that we can deliver our product in the future. We were ignorant to the effort required to support our display with this new processor. We assumed it would be easy. We cannot go to a bigger display because of mechanical reasons.

You can see a picture of our product here:

http://www.chtech.com/1267swmat.html

We have been able to find enough of the old processor cards for purchase to hold us off for while (this product sales at very low volume but will have a long life-cycle) so we have stopped our efforts to upgrade the processor. We will probably have to try again in the future. At our volume I suspect it will be 1-2 years before we will have to try again and who knows what will be available then.

To answer some of the other questions:

1) Yes we are in DOS

2) When we ran using a standard CRT monitor we ran in 640x480 mode and only the upper left quadrant was used. To move to our LCD, we ran a little DOS executable which as far as I know loaded a RAM BIOS. From what I can tell, this executable was developed by Chips and Technologies for the 655xx graphic controller chip. We did not develop it so it is hard to say what exactly it does. After running this executable we did not change video modes in our application and it appeared without problem on the QVGA LCD. This application modified the clock rate to 6MHz. One it was run, the CRT was unreadable.

twitwity
Associate II
Posted on April 20, 2005 at 15:17

agreed. maybe after 2 years the main problem would be display. not pc 104 form factor CPUcards.

even though you hace CPU brd stock for 2 years qt'y, id like to write my opinion here.

--regarding atlas

1. the board manufacturer has the key.if they produces module based on ATLAS, the BIOS also must be based on the 'BIOS writers guide in this sites documents page. it is like customized patches in Linux world. even the BIOS seller like General BIOS has has CPU-customized modules to get lower things into work. it means, the manufacturer has the means to write customized BIOS codes even though they charges fee to customize it. if they has someone knows what to do in 'board level', yes it is not very difficult.

2. Chips & Technology's 65X itself is an old stone axe.it was used in early notebooks. where the graphic power is not one of the important factor. more and more, the not-strong but cheaper graphic controller that attatched to outer bus seems to be hard to get. with which the LCD display too. all this means. CRTC integrated SOCs like atlas, consumer2, PICTOR (i have much to say about PICTOR.. myself..) have much attraction in the field of application like yours.

3.maybe, in black box, - embedded system field, many SOCs which have CMOS sensor interface, TFT LCD interface has a tendency of having new ARM core, or intel's X-scale seems to have a chance to prevail.

--TFT display

1. in korea, the display industry has entered Jedi's era. force is everywhere. hand-carrying or pocket devices are in lines to be sold such personnel-carryng devices like multimedia PDA, PMPs (personal Multimedia Player.) even the Cellula phone. they provide mobile movie or commercial video streaming service into 400-500$ cellular. when it comes to hand carrying devices, 10'' display with VGA display is like frying pan in your picnic basket. it is not a CDP packed in your sack and forget. 4-5 inch display with QVGA would not be perished. (size that matters with reverse notion. plus the wireless bandwidth cost can't be ignored.)

2. despite. i agree with Felix's opinion. all those things are embedded one. they are never built with X86 based indutrial mother boards. what you need is not 4'' LCD, but 4''LCD module.

3. SAMSUNG continues to make 5'' analog TFT QVGA modules. they are even upgrading. whatever the CPU side's interfaces are, ever analog, digital. one guy making panel, there should be another guy who makes the module.becase not all socs have digital TFT controller.

4. after 2 years, im quite sure. X86 would never perished. (at least so long as MicroSofts suvives..)

in the conclusion, BIOS modification itself is not very difficult on manucaturer's side. espescially with integrated CRTC like ATLAS. chip manufacturer supports basic tools. which fits their chips application. all binary layout is upto manufacturer.

in two years, the sky would be not so dark. who knows the future?

[ This message was edited by: Twitwity on 20-04-2005 18:48 ]

[ This message was edited by: Twitwity on 20-04-2005 18:50 ]

marios
Associate II
Posted on April 21, 2005 at 14:00

The 65545/550 had a very flexible LCD interface. I have done nice things in the past with this chip. It was able to interface to passive displays too, which the STPCs can't do. This part is still being manufactured. The problem is more with the CPU and chipset on the rest of the obsoleted Ampro board.

Sometimes I think about putting my own VGA controller in a xilinx, for low-end PC applications that have been deserted by everyone.

Before two years I might have an Atlas computer board to sell too... (right now I still do boards with the Industrial), and I won't wait for an order of a thousand boards to customize a BIOS, like Ampro does.

;)