基于linuxarm9触摸屏驱动程序设计嵌入式系统课程设计内容摘要:

3步)。 注意: 1)外部电压源是。 2)外部晶体管的内部阻抗应该小于 5 ohm。 触摸屏工作原理 触摸屏控制接口包括一个外部晶体管控制逻辑和具有中断产生逻辑的 ADC 接口逻辑。 1)普通转换模式 普通转换模式 (AUTO_PST=0, XY_PST=0)是用作一般目的下的 ADC 转换。 这个模式可以通过设置 ADCCON 和 ADCTSC 来进行对 AD 转换的初始化;而后读取 ADCDAT0( ADC 数据寄存器 0)的 XPDATA 域(普通 ADC 转换)的值来完成转换。 2)分离的 X/Y 轴坐标转换模式: X轴坐标转换和 Y轴坐标转换。 7 X 轴坐标转换 (AUTO_PST=0 且 XY_PST=1)将 X 轴坐标转换数值写入到 ADCDAT0 寄存器的XPDATA 域。 转换后,触摸屏接口将产生中断源( INT_ADC)到中断控制器。 Y 轴坐标转换 (AUTO_PST=0 且 XY_PST=2)将 X 轴坐标转换数值写入到 ADCDAT1 寄存器的YPDATA 域。 转换后 ,触摸屏接口将产生中断源( INT_ADC)到中断控制器。 3)自动 (连续 )X/Y 轴坐标转换模式。 自动(连续) X/Y 轴坐标转换模式( AUTO_PST=1 且 XY_PST= 0)以下面的步骤工作: 触摸屏控制器将自动地切换 X 轴坐标和 Y 轴坐标并读取两个坐标轴方向上的坐标。 触摸屏控制器自动将测量得到的 X 轴数据写入到 ADCDAT0 寄存器的 XPDATA 域,然后将测量到的 Y轴数据到 ADCDAT1 的 YPDATA 域。 自动(连续)转换之后,触摸屏控制器产生中断源( INT_ADC)到中断控制器。 4)等待中断模式 当触 摸屏控制器处于等待中断模式下时,它实际上是在等待触摸笔的点击。 在触摸笔点击到触摸屏上时,控制器产生中断信号( INC_TC)。 中断产生后,就可以通过设置适当的转换模式(分离的 X/Y 轴坐标转换模式或自动 X/Y 轴坐标转换模式)来读取 X和 Y的位置。 5)静态( Standby)模式 当 ADCCON 寄存器的 STDBM 位被设为 1 时, Standby 模式被激活。 在该模式下, A/D 转换操作停止, ADCDAT0 寄存器的 XPDATA 域和 ADCDAT1 寄存器的 YPDATA(正常 ADC)域保持着先前转换所得的值。 8 第 三章 Bootloader 移植与下载 Vivi 源代码的安装 拷贝开发板光盘 Linux Source 文件夹下的 文件和Source\patch整个文件夹到 $SOURCEDIR/目录下; 进入 cygwin, Vivi 源代码的安装: $ source /tmp/edukit2410/ Linux 编译环境变量设置 $ cd $WORKDIR $ tar xvjf /tmp/edukit2410/ $ ls „ vivi „ „ 为 $WORKDIR 目录下其他内容 正确解压后,可以看到相比之前多了一个 vivi 目录,即 vivi 源代码的安装目录,后面的 vivi 配置及编译都得进入 vivi 目录进行。 图 再为 EduKit2410 实验系统打入 vivi 源代码的补丁文件: $ cd vivi $patchp1/tmp/edukit2410/patch/ patching file Makefile patching file arch/ „ „ 为其他输出内容,无错误提示信息 9 Vivi 源代码分析 Vivi 的代码包括: arch、 documentation、 drivers、 include、 init、 scripts、 test、util 等几个目录,共 200 多条文件。 Vivi主要包括下面几个目录: Arch:此目录中包含了 vivi 支持的没标板的子目录,其中中有 s3c2410x 一个目录。 Drivers:此目录中包含了引脚内核需要的驱动程序,其中只有 mtd 和 merial 两 个子目录, mtd 子目录下又有 maps、 nand、 mor 三个子目录, vivi 支持从不用的存储器启动。 Init: 存放初始化代码, 这个目录只有 和 两个文件。 和普通的 C程序一样, vivi 将从 main 函数开始执行。 Include:此目录是头文件的公共目录, 中包含可对 S3C2410 处理器内部寄存器的定义, 定义了与开发板相关的资源配置参数,我们往往只需要修改这个文件就可以配置目标板的参数,如波特率、引导参数、物理内存映射等。 Lib:各个平台公共接口代码集。 比如 udelay()和 mdelay()。 SMDK2410 文件: General setup 选项为常规安装选项,包括版本信息、虚拟内存、进程间通信、系统调用、审计支持等基本内核配置选项。 下面介绍常规安装选项下主要子选项的配置方法。 Loadable module support 即引导模块支持,该选项包括加载模块、卸载模块、模块校验、自动加载模块等引导模块配置相关子选项。 本节主要介绍引导模块支持子选项的配置方法。 Networking support 即网络支持,该选项配置的是网络协议,内容庞杂,这里就不一 一介绍了。 只要对网络协议有所了解,应该可以看懂相关帮助文件。 如果要开发嵌入式系统能像 PC 一样使用各类网络协议,则可以使用默认选项,其中,最常用的 TCP/IP working 选项当然要选择。 Vivi 源代码的编译与下载 然后执行以下命令进行编译: $ source /tmp/edukit2410/ Linux 编译环境变量设置 $ cd $WORKDIR/vivi $ make clean $make menuconfig 输入配置 smdk2410:Nand boot 或 smdk2410amd:Nor 10 Flash boot 其中,运行 make menuconfig 后,选择 Load an Alternate Configuration file,配置文件名称如下: smdk2410:编译 vivi 在 Nand Flash( K9S5608)中运行; smdk2410amd:编译 vivi 在 Nor Flash( AM29LV160DB)中运行。 这两个配置文件在 \usr\local\src\edukit2410\vivi\arch\defconfigs\中, 须复制到 \usr\local\src\edukit2410\vivi\中;或者可以在 menuconfig 中输入全部路径。 编 译 过 程 中 没 有 出 现 错 误 , 则 编 译 后 的 执 行 文 件 存 放\usr\local\src\edukit2410\vivi\目录,文件名为 vivi。 图 编译成功截图: 图 11 第四章 Linux 内核移植与下载 Linux 内核源代码的安装 拷贝开发板光盘 Linux Source 文件夹下的 文件(和 Source\patch 整个文件夹)到 $SOURCEDIR/目录下; 运行 cygwin,执行以下命令完成 cygwin 环境下的 Linux 源代码的安装: $ source /tmp/edukit2410/ Linux编译环境变量设置 $ cd $WORKDIR $ tar – xvjf /tmp/edukit2410/ $ ls „ kernel „ „ 为 $WORKDIR 目录下其他内容 正确解压后,相比之前可以看到多了一个 kernel 目录,即 kernel 源代码的安装目录,后面的 Linux 配置及编译都得在 kernel 目录进行。 图 为 EduKit2410 实验系统打入 Linux 源代码的补丁文件: $ cd kernel $patchp1/tmp/edukit2410/patch/.patch patching file Makefile patching file arch/arm/boot/Makefile patching file arch/arm/ „ � „ 为其他输出内容,无错误提示信息 12 Linux 内核源代码分析与移植 Linux 提供三个不同的命令进行 Linux 的配置,效果完全一样: make config 控制台命令行方式配置命令 make menuconfig 文本菜单方式配置命令 make xconfig X 窗口图形界面方式配置命令 其他部分命令: Make mrproper 命令清除所有的旧的配置和旧的编译目标文件等。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。