欢迎来到天天文库
浏览记录
ID:14968802
大小:70.00 KB
页数:21页
时间:2018-07-31
《基于arm触摸屏的实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、ucosII+ucGUI+s3c2410+LCD+触摸屏整合作者:佚名 来源:不详 录入:Admin 更新时间:2008-8-1814:57:54 点击数:240【字体:】环境:ads2.2+ARM9+s3c2410 注意:由于编译器(ads1.2或2.2)对全局变量初始化为0的不完全支持,有时必须手动初始化为0,切记!!! 一、ucosII移植到ARM9s3c2410可从官网下载移植代码,基本无需改动。在os_cpu_a.s中的函数UCOS_IRQHandler中的blOSIntEnter和blC_IRQHandle
2、r之间插入如下代码(见邵贝贝,第2版,第104页的说明:L3.18(4)): ldrr0,=OSIntNesting ldrbr0,[r0] cmpr0,#1 bneXX ldrr0,=OSTCBCur ldrr1,[r0] strsp,[r1] ;storespinpreemptedtasks'sTCB XX 二、ucGui390移植到ARM9s3c24101.Lcd
3、驱动:1)画点函数:对dm2410实验板上的lcd,左上为原点(0,0),函数如下:voidLCD2410_SetPixel(intxp,intyp,U16color,intdindex){ *(pLCDBuffer565+SCREEN_WIDTH*yp+xp)=color;}为了达到更快的显示速度,别忘了开启Cache!!!2)LCD控制器的初始化,对2410函数如下:intLCD2410_Init(void){ if(!isLcdInit) { InitLcdP
4、ort(); InitLcdRegs(); isLcdInit=1; return0; } return1;} voidInitLcdPort(void){ //LCDportinitialize. s2410IOP->GPCUP=0xFFFFFFFF; s2410IOP->GPCCON=0xAAAAAAAA; s2410IOP->GPDUP=0xFFFFFFFF; s2410IO
5、P->GPDCON=0xAAAAAAAA; s2410IOP->GPGCON&=~(3<<8); /*SetLCD_PWRENasoutput */ s2410IOP->GPGCON
6、=(1<<8); s2410IOP->GPGDAT
7、=(1<<4); //*BacklightON voidInitLcdRegs(void){ s2410LCD->LCDCON1 = (CLKVAL_TFT<<8)
8、 //*VCLK=HCLK/
9、((CLKVAL+1)*2)->About7Mhz (EACH_FRAME<<7)
10、 //*0:EachFrame (3 <<5)
11、 //TFTLCDPannel (12 <<1)
12、 //Y:
13、//16bppMode (0 <<0); //DisableLCDOutput s2410LCD->LCDCON2 = (VBPD <<24)
14、 //*VBPD :((32-1)&0xff)=0x1f (L
15、INEVAL_TFT<<14)
16、 //*LINEVAL_TFT:480-1 &bsp; (VFPD <<6)
17、 //*VFPD :((11-1)&0xff)=0xa (VSPW <
此文档下载收益归作者所有