Linux-2.6.32.2内核在mini2440上的移植(九).docx
《Linux-2.6.32.2内核在mini2440上的移植(九).docx》由会员分享,可在线阅读,更多相关《Linux-2.6.32.2内核在mini2440上的移植(九).docx(19页珍藏版)》请在第壹文秘上搜索。
1、1.inux-2.6.32.2内核在mini2440上的移植(九)-触摸屏驱动移植移植环境(缸色超字体字为修改於内容,道色粗体字为特殊待.&内容)1,主机环境:VMareFCentOS5.5,1G内存。2,集成开发环境:ElipseIDE3,编译编译环境:arm-linu-gccv443.arm-none-li11u-gnueabot-2009.087.参考文堂:嵌入式IinUX应用开发完全手册,韦东山.编著.Mini2440之1.inUX移植开发实战指南博主黄刚嵌入式1.inux之我行S3C2440上ADCM动实例开发讲解1在内核中添加触摸屏骚动程序1.inux-2.6.32.2内核也没有包
2、含支持S3C2440的触摸屏驱动,因此友善富方自行设计了*个s3c2410JSC它位linux-srGdriversinput.ltouchscreenBIIF,你可以自己增加一个s3c2410js.c文件,并更制如下内容:/include#includeVllnUXykerneI.h#include#include9Include#include#includetfincludeincludeVllnUXplatformdevlce.h#includetfinclude#include#includeirq.h*include#includeForts.dev.id.version*/ffd
3、efineS3C2410TSVERSION0x0101厂定义个WAIT4INT宏,该宗将对ADC触摸屏限制寄存满进行操作S3C2410_ADCTSC_YM_SEN这些宏祐定义在regs-adc.h7*defineWA4INT(x)(x)8)|S3C2410_ADCTSC_YM_SENS3C2410_ADCTSC_YP_SEN|S3C2410_ADCTSC_XP_SEN|S3C2410_ADCTSC_XY_PST(3)tfdeflneAUTOPST(S3C2410_ADCTSC_YM_SENS3C2410_ADCTSCYP_SENS3C2410_ADCTSC_XP_SENS3C2410_ADCT
4、SC_AUTO_PSTS3C2410_ADCTSC_XY_PST(0).staticchar*s3c2410ts-nam=s3c2410TouchScreen;defineDEVlCE_NAME“mlni2440JrOUChSCreen”广设备名称VstaticstructInpu1.dev,ts_dev;r定义一个输入设备来表示我们的肘擞屏设备7staticlongxp;staticlongyp;staticintcount;定义个外部的信号lADC_1.OCK.因为ADC,OCK在ADC!妪动程序中已申明这样就能保证ADC资源在ADC驱动和触摸屏驱动中进行互斥访问/externstruct
5、semaphoreADC_1.OCK;staticintOwnADC=O;StatlcvoldIOmem*base_addr;/定义了一个用来保存钱过虚拟映射后的内存地址staticinlinevoids3c2410_ts_connect(void)(s3c2410gpiocfgpin(S3C2410_GPG(12),S3C2410_GPG12_XMON);S3c2410_gpio_cfgpin(S3C2410_GPG(13),S3C2410_GPG13_nXPON);s3c2410.gplocfgpln(S3C2410_GPG(14),S3C241O_GPG14YMON);s3c2410gp
6、iocfgpin(S3C2410GPG(15),S3C2410GPG15nYP0N);staticvoidtouch_timer_fire(unsignedlongdata)(厂用于记录这一次AD转换后的值Vunsignedlongdata;unsignedlongdatal;intupdown;广用于记录触摸屏操作状态是按下还是抬起Vdata=ioread32(base_addr+S3C2410_ADCDAT0);data1=ioread32(baseaddr+S3C241O_ADCDAT1);广记录这一次对触摸屏是下还是抬起.该状态保存在数据寄存器的第15位.所以须要逻川与上S3C2410
7、_ADCDATO_UPD0WN7updown=(!(data&S3C2410ADCDATOUPDOWN)&(!(data1&S3C2410_ADCDAT0_UPDOWN);if(updown)厂推断触摸屏的操作状杳7(广假如状态是按下,并且ADC已经转换了就报告事务和数据7if(count!=O)转换四次后进行本务汇报(longtmp;tmp三xp;P=YP;yp=tmp;这里进行折换是因为我们的屏林运用时采纳的是240-320,相当于把原来的屏弁的X,Y轴变换.个人理解.不知是否正确设备X,Y值XP=2;yp=2;华ifdefCONFIGJrOUCHSCREENMlNI244ODEBUG广触
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 2.6 32.2 内核 mini2440 移植