庆贺下,2410点屏OK ...

[复制链接]
3733|20
 楼主| playlinus 发表于 2008-12-2 22:53 | 显示全部楼层 |阅读模式
zyok 发表于 2008-12-2 23:00 | 显示全部楼层

祝贺

  
brandnew 发表于 2008-12-2 23:10 | 显示全部楼层

。。。

牛!<br />
lyjbighead 发表于 2008-12-2 23:50 | 显示全部楼层

祝贺!!!

  
 楼主| playlinus 发表于 2008-12-3 09:11 | 显示全部楼层

裸奔,没带系统来着,代码有三百多K啦...

  
古道热肠 发表于 2008-12-3 10:28 | 显示全部楼层

裸奔也很美呀

分辨率几何?
纯金属 发表于 2008-12-3 10:51 | 显示全部楼层

请教楼主

我在0x3380&nbsp;0000内存处开辟了显示内存空间,然后在ADS+HJTAG在线仿真下修改&nbsp;0x3380&nbsp;0001&nbsp;。。。地址上的数据。从MEMORY窗口观察数据确实写进显存了,那为什么屏上没有显示呢?<br /><br />附上我的初始化程序,请您帮我看看。<br />static&nbsp;void&nbsp;Lcd_Init(void)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;rGPCUP=0xffffffff;&nbsp;//&nbsp;Disable&nbsp;Pull-up&nbsp;register<br />&nbsp;&nbsp;&nbsp;&nbsp;rGPCCON=0xaaaaaaaa;&nbsp;//Initialize&nbsp;VD[7:0],LCDVF[2:0],VM,VFRAME,VLINE,VCLK,LEND&nbsp;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;rGPDUP=0xffffffff;&nbsp;//&nbsp;Disable&nbsp;Pull-up&nbsp;register<br />&nbsp;&nbsp;&nbsp;&nbsp;rGPDCON=0xaaaaaaaa;&nbsp;//Initialize&nbsp;VD[15:8]<br /><br />frameBuffer16BitTft320240A&nbsp;=&nbsp;(U32(*)[SCR_XSIZE_TFT_320240])LCDFRAMEBUFFERA;<br />//frameBuffer16BitTft320240B&nbsp;=&nbsp;(U16(*)[SCR_XSIZE_TFT_320240])LCDFRAMEBUFFERB;<br />//frameBuffer16BitTft320240C&nbsp;=&nbsp;(U16(*)[SCR_XSIZE_TFT_320240])LCDFRAMEBUFFERC;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;rLCDCON1=(CLKVAL_TFT_240320&lt&lt8)|(MVAL_USED&lt&lt7)|(3&lt&lt5)|(12&lt&lt1)|0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;TFT&nbsp;LCD&nbsp;panel,12bpp&nbsp;TFT,ENVID=off<br />&nbsp;&nbsp;&nbsp;&nbsp;rLCDCON2=(VBPD_240320&lt&lt24)|(LINEVAL_TFT_240320&lt&lt14)|(VFPD_240320&lt&lt6)|(VSPW_240320);<br />&nbsp;&nbsp;&nbsp;&nbsp;rLCDCON3=(HBPD_240320&lt&lt19)|(HOZVAL_TFT_240320&lt&lt8)|(HFPD_240320);<br />&nbsp;&nbsp;&nbsp;&nbsp;rLCDCON4=(MVAL&lt&lt8)|(HSPW_240320);<br />&nbsp;&nbsp;&nbsp;&nbsp;rLCDCON5=(1&lt&lt11)|(1&lt&lt9)|(1&lt&lt8);&nbsp;&nbsp;&nbsp;&nbsp;//FRM5:6:5,HSYNC&nbsp;and&nbsp;VSYNC&nbsp;are&nbsp;inverted<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;rLCDSADDR1=(((U32)frameBuffer16BitTft320240A&gt&gt22)&lt&lt21)|M5D((U32)frameBuffer16BitTft320240A&gt&gt1);//lcd&nbsp;dma&nbsp;起始地址<br />&nbsp;&nbsp;&nbsp;&nbsp;rLCDSADDR2=M5D(&nbsp;((U32)frameBuffer16BitTft320240A+(SCR_XSIZE_TFT_240320*LCD_YSIZE_TFT_240320*2))&gt&gt1&nbsp;);//结束地址<br />&nbsp;&nbsp;&nbsp;&nbsp;rLCDSADDR3=(((SCR_XSIZE_TFT_240320-LCD_XSIZE_TFT_240320)/1)&lt&lt11)|(LCD_XSIZE_TFT_240320/1);<br />&nbsp;&nbsp;&nbsp;&nbsp;rLCDINTMSK|=(3);&nbsp;//&nbsp;MASK&nbsp;LCD&nbsp;Sub&nbsp;Interrupt<br />&nbsp;&nbsp;&nbsp;&nbsp;rLPCSEL&=(~7);&nbsp;//&nbsp;Disable&nbsp;LPC3600<br />&nbsp;&nbsp;&nbsp;&nbsp;rTPAL=0;&nbsp;//&nbsp;Disable&nbsp;Temp&nbsp;Palette<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />}<br />&lthr&gt<br />void&nbsp;Lcd_Tft_LTV350QV_F05_Init(void)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Lcd_Init();<br />&nbsp;&nbsp;&nbsp;&nbsp;//LcdBkLtSet(&nbsp;70&nbsp;)&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;rLPCSEL&=~(7);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rLPCSEL|=(7);&nbsp;//&nbsp;240320,Enable&nbsp;LPC3600&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;Lcd_PowerEnable(0,&nbsp;1);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Lcd_EnvidOnOff(1);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//turn&nbsp;on&nbsp;vedio<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Lcd_ClearScr(0xce40);<br /><br />}<br />&lthr&gt<br />**************************************************************<br />320×240&nbsp;16Bpp&nbsp;TFT&nbsp;LCD全屏填充特定颜色单元或清屏<br />**************************************************************/<br />void&nbsp;Lcd_ClearScr(&nbsp;U32&nbsp;c)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;unsigned&nbsp;int&nbsp;x,y&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;for(&nbsp;y&nbsp;=&nbsp;0&nbsp;;&nbsp;y&nbsp;&lt&nbsp;SCR_YSIZE_TFT_320240&nbsp;;&nbsp;y++&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(&nbsp;x&nbsp;=&nbsp;0&nbsp;;&nbsp;x&nbsp;&lt&nbsp;SCR_XSIZE_TFT_320240&nbsp;;&nbsp;x++&nbsp;)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;frameBuffer16BitTft320240A[y][x]&nbsp;=&nbsp;c&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}
 楼主| playlinus 发表于 2008-12-3 13:46 | 显示全部楼层

楼上,你的framebuffer地址是在 0x3380 0001吗>???

/??//
纯金属 发表于 2008-12-3 14:29 | 显示全部楼层

写错了,是在0X3380 0000

我完全参考网上下的&nbsp;smdk2410程序的。<br />现在能做到只能是填充屏幕。而不能画点和画线。
纯金属 发表于 2008-12-3 15:00 | 显示全部楼层

搞了短短2天时间,关于LCD寄存器控制具体含义还没有深究,我有几个问题想请楼主帮忙解答:<br />1&nbsp;我设置60HZ刷新,是不是我只要往显存中&nbsp;更新数据了,1/60秒后LCD就会有变化?<br />2&nbsp;为什么显存要定义在指定SRAM中,由编译器自动生成不好么?<br /><br />3&nbsp;frameBuffer16BitTft240320=(U32&nbsp;(*)[SCR_XSIZE_TFT_240320])LCDFRAMEBUFFER;<br />&nbsp;我觉得这里定义显存大小应该是:<br />frameBuffer16BitTft240320=(U32&nbsp;(*)[SCR_XSIZE_TFT_240320]×[SCR_YSIZE_TFT_240320])LCDFRAMEBUFFER;<br /><br />谢谢啊。
 楼主| playlinus 发表于 2008-12-3 15:23 | 显示全部楼层

楼上,你的问题

第1个理解不对:&nbsp;60HZ是指刷屏速度,是指刷满一屏时间为1/60&nbsp;S<br />第2个理解:&nbsp;RAM空间可读写,速度快,一部分ROM.FLASH等空间可读不可写<br />第3个理解:&nbsp;如果是16bpp的屏,framebuffer只要U16&nbsp;[x&nbsp;size]&nbsp;*&nbsp;[y&nbsp;size]&nbsp;就可以了,当然如果你设置更大一些应该也可以,只是在给address&nbsp;1&nbsp;-&nbsp;3赋值的方式就要对应更改了...&nbsp;
纯金属 发表于 2008-12-3 16:00 | 显示全部楼层

那什么时候LCD控制器会去刷新屏幕?

那什么时候LCD控制器会去刷新屏幕?<br />关于第二个问题,我说的还不够清楚,编译器自动定义也是在sdram中的。<br />谢谢你。回答的真快,好羡慕你。<br />如果你的是三星16位TFT<br />能不能把你的LCD控制器初始化放出来参考下?
lamdoc 发表于 2008-12-3 16:03 | 显示全部楼层

北京人民发来贺电!!!!

北京人民发来贺电!!!!
yewuyi 发表于 2008-12-3 16:14 | 显示全部楼层

和北京人民有关系?

  
纯金属 发表于 2008-12-3 16:20 | 显示全部楼层

13楼在发扬MOP精神

太和谐了。
icecut 发表于 2008-12-3 16:21 | 显示全部楼层

你应该修改buffer的数据

buffer的位置可能不是你想像的0x3380&nbsp;0000内存处开辟了显示内存空间<br />应该是&nbsp;frameBuffer16BitTft240320=(U32&nbsp;(*)[SCR_XSIZE_TFT_240320])LCDFRAMEBUFFER;这个数组的位置.并且要声明这个数组占地方,防止编译器把这块地址分配给别的.
biehoff 发表于 2008-12-3 17:28 | 显示全部楼层

RE

太羡慕了&nbsp;&nbsp;我只能搞ARM7的STN·······
 楼主| playlinus 发表于 2008-12-3 18:56 | 显示全部楼层

建议纯金属兄弟还是先把2410的LCD控制器参数熟悉下先

.....
纯金属 发表于 2008-12-4 07:35 | 显示全部楼层

playlinus 谢谢你

刚才搜索了本网站&nbsp;看见你也发了不少问贴啊,看来要做到你这样&nbsp;也不是一时半刻的事。<br />我接下来会好好看datasheet的。
 楼主| playlinus 发表于 2008-12-4 09:49 | 显示全部楼层

玩得差不多的时候再讨论...

......
您需要登录后才可以回帖 登录 | 注册

本版积分规则

102

主题

518

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部