LCD Monitor 程式设计理论.docx
《LCD Monitor 程式设计理论.docx》由会员分享,可在线阅读,更多相关《LCD Monitor 程式设计理论.docx(15页珍藏版)》请在冰豆网上搜索。
LCDMonitor程式设计理论
LCD监视器程序设计理论
1.LCDMonitor架构
2.VGACard(显示卡)
VGA(显示卡)现在市面上的显示卡或笔记本非常多,所以LCD监视器的兼容性格外重要,通常客户会做兼容性测试在LCD监视器设计研发的阶段,一般大约要测200至300张显示卡。
3.VESA标准
VESA是支持并且确定PC,工作站和民用电子工业的工业范围内的界面标准的一个组织。
VESA促进并且发展及时,相关,公开的标准给那些显示并且展示工业界面,保证互操作性并且鼓励革新和发展市场。
VESA定义了一些标准的Mode从显示卡或者是有GraphicIC的Device输出,我们称之为Presettiming,其组成有Hfreq(水平频率)、Vfreq(垂直频率)、RGB数据的讯号。
Figure1即是VESAMonitorTimingSpecVer1.0,定义了VESAStandard的一些Timing。
Figure1.
Figure2为详细的800x60060HzTiming,其中有很多参数定义如PixelRate、Htotal、HDisplay、Vtotal、VDisplay…等。
。
Figure2.
简单来说任何一组Timing皆可看为一个窗口,水平的单位为pixel,垂直的单位为line,例如800x60060Hz的Timing,即水平可视的有800个pixels,垂直的有600个lines,
600lines
4.MST9151BScaler(缩放)IC
MST9151B是一种高性能并且整合性高的IC,其中整合了ADC(Analog-DigitalConverter)、高质量的缩放技术、OSD(可供使用者操作的界面)、频率产生器
…等,透过Firmware软件的控制,可让ScalerIC发挥它最大的性能,所以Firmware在整个研发设计中占有极重要的角色,一旦设计概念错误,不仅性能会不好,兼容性也会很差,Figure3.即描述了Scaler的特色。
Figure3.
5.Firmware程序设计理论
Firmware是烧录在8051架构的MCU里头,其中储存了VEGAStandard的TimingTable,一般又称为ModeTable,程序设计的理论如下:
1.设定Scaler及周边IC初始值
2.侦测是否有讯号进入Scaler
3.查表(SearchModeTable)
4.设定Capturewindow
5.设定Displaywindow
6.设定使用者界面
7.点亮背光模块
6.水平频率、垂直频率
虽然VESAStandard定义了一些标准的Timing,但是因为显示卡的种类非常多,所以程序的设计必须要可以考虑兼容性的问题,如果程序架构不好,可能有一些卡会不能显示。
7.Capturewindow
想象InputTiming是一种Window的概念。
8.Displaywindow
根据不同的面板,程序设计必须不同的Displaywindow和频率去符合面板的特性,
所以面板的兼容性也很重要,例如SXGA的面板,就必须创造一个1280x1024的displaywindow和频率,XGA的面板,就必须创造出一个1024x768的displaywindow和频率。
9.缩放原理(Scaler)
10.程序频率Table的设计
一般来说Monitor程序的设计,Table的设计非常重要,如何去找到正确的频率,所以会将频率表设计成一个Table,其中如何设计水平、垂直频率表,下列有最简单的二种做法。
1.取VESAStandard中水平、垂直频率的最大值和最小值。
第一组:
02FC0326026c027c030D0003={784,806,620,636,781,2+1}
第二组:
02FC0326026c027c030D0003={784,806,620,636,781,2+1}
第二组:
02FC032602040214030D0003={784,806,516,532,781,2+1}
第四组:
02FC032602040214030D0003={784,806,516,532,781,2+1}
第五组:
03C903FD01AF01BF03DE0009={969,1021,431,447,990,8+1}
11.程序CapturewindowTable的设计
Capturewindowtable程序的设计可参考的大部分有Htotal、HStar、Hdisplay、Vtotal、VStar、VDisplay…等。
下列程序设计的方式只用了五种参数Htotal、HStar、Hdisplay、VStar、Vdisplay。
第一组:
0320009002800098015E={800,144,640,152,350}
第二组:
032000900280007F019D={800,144,640,127,400}
第三组:
0320009002800064015e={800,144,640,100,350}
第四组:
032000900280004b0190={800,144,640,75,400}
第五组:
03200090028000280190={800,144,640,40,400}
一般DisplaywindowTable的设计有Htotal、Hdisplay、Vtotal、Vdisplay。
12.程序Table设计的思维
Monitor程 式设计中modetable的思维有好几种想法,一般可以分成三组Table(频率、Capturewindow、Displaywindow),且采一对一对应的方式互相对应,一般以数组的方式设计,Table的设计可有好几种组合方式,且引用的参数可会有不同,好的table设计可以找到完整的频率,所以每一个程序设计者所设计的table绝对不同,不可能有类似或一样。
13.Mstar程序Table设计的思维
MStarModetable的设计是采频率和Capturewindow混合为一组,Displaywindow为一组的方式,其中频率不采用最大、最小法,而是采用VESA标准的频率表,水平取1khz为搜寻范围、垂直取1hz为搜寻范围,两组table并没有互相对应。
Table1.频率和Capturewindow混合
Table2.Displaywindow
第一组0400013B02BC032001C10090003E=
{SyncHpVn,=04
Res_640x350,=00
315,700,=013B02BC
800,449,=032001C1
144,62,=0090003E
},
第二组0B01013B0353034001BD00A0003F=
{SyncHpVn,=04
Res_640x350,=01
379,851,=017B0353
832,445,=034001BD
160,63,=00A0003F
},
第三组0401013B02BC032001C100900025=
{SyncHpVp|SyncHnVp|SyncHnVn,=04
Res_640x400,=01
315,700,=013B02BC
800,449,=032001C1
160,37,=00900025
},
14.R公司程序Table设计的思维
Table1.频率和Capturewindow混合
第一组020280015E013B02BC0A0A032001C10090003E=
{
0|_SYNC_HP_VN,=02
640,350,=0280015E
315,700,=013B02BC
_HFREQ_TOLERANCE,_VFREQ_TOLERANCE,=0A0A
800,449,=032001C1
144,62,=0090003E
},
第二组020280015E017A03520F0F034001BD00A0003F=
{
0|_SYNC_HP_VN,=02
640,350,=0280015E
378,850,=017A0352
_HFREQ_TOLERANCE+5,_VFREQ_TOLERANCE+5,=0F0F
832,445,=034001BD
160,63,=00A0003F
},
第三组0D02D00190013B02BC0A0A038401C100A20025=
{
0|_SYNC_HN_VP|_SYNC_HP_VP|_SYNC_HN_VN,=0D
720,400,=02D00190
315,700,=013B02BC
_HFREQ_TOLERANCE,_VFREQ_TOLERANCE,=0A0A
900,449,=038401C1
162,37,=00A20025
},