嵌入式应用设计课程设计报告linux数据采集课设报告

上传人:pu****.1 文档编号:554895430 上传时间:2023-09-12 格式:DOC 页数:16 大小:247.50KB
返回 下载 相关 举报
嵌入式应用设计课程设计报告linux数据采集课设报告_第1页
第1页 / 共16页
嵌入式应用设计课程设计报告linux数据采集课设报告_第2页
第2页 / 共16页
嵌入式应用设计课程设计报告linux数据采集课设报告_第3页
第3页 / 共16页
嵌入式应用设计课程设计报告linux数据采集课设报告_第4页
第4页 / 共16页
嵌入式应用设计课程设计报告linux数据采集课设报告_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《嵌入式应用设计课程设计报告linux数据采集课设报告》由会员分享,可在线阅读,更多相关《嵌入式应用设计课程设计报告linux数据采集课设报告(16页珍藏版)》请在金锄头文库上搜索。

1、北 华 航 天 工 业 学 院课程设计报告(论文)设计课题:Linux系统下系统的数据采集专业班级: 学生姓名: 指导教师: 王达伟 设计时间: 2011年12月 北华航天工业学院电子工程系10 嵌入式应用设计 课程设计任务书姓 名:专 业:电子信息工程班级:指导教师:王达伟职 称:讲师课程设计题目:Linux系统下系统的数据采集设计要求:(1)根据技术指标确定硬件实现方案,画出系统的电路原理图(2)确定软件流程图,并编写程序(3)在超级终端显示测量电压值(4)提交设计报告技术指标:(1)输入电压范围0-2.5V(2)电压分辨率2.4mv所需仪器设备:计算机 嵌入式系统实验箱 虚拟机vmwar

2、e和Red Hat9成果验收形式:上机验收参考文献:1 孟庆春,牛欣源著. linux教程.电子工业出版社.2 张玲,周旭著. linux操作系统原理与应用.西安电子科技大学出版社.3 魏永明,耿岳等译. linux设备驱动程序.中国电力出版社.时间安排第17周到18周完成设计题目指导教师:王达伟 教研室主任:王俊红2011年 12月28日 内 容 摘 要嵌入式系统是嵌入式计算机系统的总称。Linux是嵌入式操作系统中的一种应用比较广泛的操作系统。嵌入式Linux 是一种适用于嵌入式系统的源码开放的占先式实时多任务操作系统,是目前操作系统领域中的一个热点,其重点与难点是驱动程序的开发。开发嵌人

3、式Linux 下的设备驱动程序,可以更好地利用新硬件特性,提高系统访问硬件的效率,改善整个应用系统的性能。驱动程序修改非常方便,使应用系统非常灵活。Linux的驱动开发中模块方式调试效率很高,它使用insmod工具将编译的模块直接插入内核,如果出现故障,可以使用rmmod从内核中卸载模块,不需要重新启动内核,这使驱动调试效率大大提高。A/D转换器是模拟信号源和CPU之间联系的接口,它的任务是将连续变化的模拟信号转换为数字信号,以便计算机和数字系统进行处理、存储、控制和显示。本设计是在Linux环境下对S3C2410芯片的8通道10位A/D的操作与控制实现数据的转换采集。通过调整三个按钮。采集出

4、的数据会随之变化。索引关键词:嵌入式 Linux 驱动程序 A/D转换 数据采集 目 录一 概 述 1二 实验原理 1二 方案设计 3三 实验步骤 3 四 程序源代码 6五 结论及体会9 六 参考文献 10一、 概述 本课程设计通过编写驱动程序以及测试程序并进行编译,在Linux系统下实现模拟数据转换成数字数据并采集。Linux 中的驱动设计是嵌入式Linux 开发中十分重要的部分,驱动程序的作用是应用程序与硬件之间的一个中间软件层,为应用程序展现硬件的所有功能。Linux 的驱动开发调试有两种方法,一种是直接编译到内核,再运行新的内核来测试;二是编译为模块的形式,单独加载运行调试。模块方式调

5、试效率很高,它使用insmod 工具将编译的模块直接插入内核,如果出现故障,使用rmmod 从内核中卸载模块。不需要重新启动内核,这使驱动调试效率太大提高。A/D转换器是模拟信号源和CPU之间联系的接口,它的任务是将连续变化的模拟信号转换为数字信号,以便计算机和数字系统进行处理、存储、控制和显示。在工业控制盒数据采集及许多其他领域中,A/D转换是不可缺少的。二、 实验原理3.1 A/D 转换器 A/D转换器是模拟信号源和 CPU之间联系的接口,它的任务是将连续变化的模拟信号转换为数字信号,以便计算机和数字系统进行处理、存储、控制和显示。在工业控制和数据采集及许多其他领域中,A/D 转换是不可缺

6、少的。 A/D 转换器有以下类型:逐位比较型、积分型、计数型、并行比较型、电压频率型,主要应根据使用场合的具体要求,按照转换速度、精度、价格、功能以及接口条件等因素来决定选择何种类型。常用的有以下两种: 1、双积分型的 A/D 转换器 双积分式也称二重积分式,其实质是测量和比较两个积分的时间,一个是对模拟输入电压积分的时间 T0,此时间往往是固定的;另一个是以充电后的电压为初值,对参考电源 Vref反向积分,积分电容被放电至零所需的时间 T1。模拟输入电压 Vi与参考电压 VRef之比,等于上述两个时间之比。由于 VRef、T0 固定,而放电时间 T1 可以测出,因而可计算出模拟输入电压的大小

7、(VRef 与 Vi符号相反)。由于 T0、VRef 为已知的固定常数,因此反积分时间 T1与输入模拟电压 Vi 在T0时间内的平均值成正比。输入电压 Vi 愈高,VA 愈大,T1就愈长。在 T1开始时刻,控制逻辑同时打开计数器的控制门开始计数,直到积分器恢复到零电平时, 计数停止。 则计数器所计出的数字即正比于输入电压 Vi在 T0时间内的平均值,于是完成了一次 A/D 转换。由于双积分型 A/D 转换是测量输入电压 Vi 在 T0 时间内的平均值,所以对常态干扰(串摸干扰)有很强的抑制作用,尤其对正负波形对称的干扰信号,抑制效果更好。双积分型的A/D 转换器电路简单,抗干扰能力强,精度高,

8、这是突出的优点。但转换速度比较慢,常用的 A/D 转换芯片的转换时间为毫秒级。例如 12 位的积分型 A/D 芯片 ADCETl2BC,其转换时间为 lms。因此适用于模拟信号变化缓慢,采样速率要求较低,而对精度要求较高,或现场干扰较严重的场合。例如在数字电压表中常被采用。2、逐次逼近型的 A/D 转换器 逐次逼近型(也称逐位比较式)的A/D 转换器,应用比积分型更为广泛,其原理框图如图1 所示,主要由逐次逼近寄存器SAR、D/A 转换器、比较器以及时序和控制逻辑等部分组成。它的实质是逐次把设定的SAR 寄存器中的数字量经D/A转换后得到电压Vc与待转换模拟电压V。进行比较。比较时,先从SAR

9、的最高位开始,逐次确定各位的数码应是“1”还是“0”,其工作过程如下: 转换前,先将 SAR 寄存器各位清零。转换开始时,控制逻辑电路先设定SAR 寄存器的最高位为“1” ,其余位为“0” ,此试探值经 D/A 转换成电压 Vc,然后将 Vc 与模拟输入电压Vx比较。如果 VxVc,说明 SAR最高位的“1”应予保留;如果 VxVc,说明 SAR 该位应予清零。然后再对SAR寄存器的次高位置“1” ,依上述方法进行 D/A 转换和比较。如此重复上述过程,直至确定 SAR 寄存器的最低位为止。过程结束后,状态线改变状态,表明已完成一次转换。最后,逐次逼近寄存器 SAR 中的内容就是与输入模拟量

10、V 相对应的二进制数字量。显然 A/D转换器的位数 N 决定于 SAR 的位数和 D/A 的位数。图 1(b)表示四位 A/D 转换器的逐次逼近过程。转换结果能否准确逼近模拟信号,主要取决于 SAR和 D/A的位数。位数越多,越能准确逼近模拟量,但转换所需的时间也越长。 逐次逼近式的 A/D 转换器的主要特点是:转换速度较快,在 1100/s 以内,分辨率可以达 18 位,特别适用于工业控制系统。转换时间固定,不随输入信号的变化而变化。抗干扰能力相对积分型的差。例如,对模拟输入信号采样过程中,若在采样时刻有一个干扰脉冲迭加在模拟信号上,则采样时,包括干扰信号在内,都被采样和转换为数字量,这就会

11、造成较大的误差,所以有必要采取适当的滤波措施。(a)逐次渐进式A/D转换原理图 (b)逐次逼近过程原理图图1 逐次逼近式A/D转换器三、 方案设计本课题是基于linux操作系统的数据采集,应用试验箱上面的ADC模块,通过编写linux对应的ADC模块驱动程序实现数据采集功能,并通过minicom显示在超级终端上面。课题完成过程中应完成以下任务:1、了解嵌入式系统实验箱核心板及ADC模块的电路原理图及工作原理。2、 理解无操作系统情况下(把S3C2410作为一个32位的单片机),用片上集成的ADC模块实现数据采集的工作过程。3、 熟悉linux文件系统,掌握linux字符设备驱动程序开发原理及的

12、流程,理解用户应用程序调用内核设备驱动程序的过程。 4、使用通用的Linux操作,编写简单的字符设备驱动程序,完成应用程序调用字符设备驱动程序,深入理解程序执行过程。5、编写ADC模块的设备驱动程序,在实验箱上验证编写的设备驱动程序。利用minicom,显示结果显示在PC机的终端上。 四、 实验步骤1、准备工作1.1、虚拟机设置如下:a、将vmware联网改为桥接方式,顺序选中菜单VMsettingsHardwareNetwaor Adapter,在弹出对话框的右边将Network Connection,改为Bridged;b、顺序选中菜单EditVirtual Network EditorH

13、ost Virtual Network Mapping,在弹出的对话框中选“Host Virtual Network Mapping”属性页,为VMnet0选为计算机网卡,如图2:图2主机虚拟网络映射方式设置c、将F盘共享;d、关闭防火墙,运行命令 #chkconfig iptables offe、重启nfs和portmap服务,运行命令#service nfs restart#service portmap restart1.2、NFS挂载配置如下:主机:IP:192.168.1.168 子网掩码:255.255.255.0 网关:192.168.1.1 DNS:192.168.1.1Lin

14、ux:IP:192.168.1.169 子网掩码:255.255.255.0 网关:192.168.1.1 DNS:192.168.1.11.3、将F盘的ADC目录拷贝到linux下地/root/myjob目录下: 执行命令:cp /mnt/hgfs/F/ADC rf /root/myjob2、编译ADC驱动文件并挂载到试验箱的操作系统下2.1、进入/root/myjob/ADC目录,修改Makefile文件(在实验箱上运行的版本)KERNELDIR = /arm2410cl/kernel/linux-2.4.18-2410cl/#KERNELDIR=/usr/src/linux-2.4.20-8INCLUDEDIR = $(KERNELDIR)/include#CROSS_COMPILE=CROSS_COMPILE=/opt/host/armv4l/bin/armv4l-unknown-linux-其它地方不用修改,存盘退出2.2、回到/root/myjob/ADC目录,编译程序,运行命令:#make2.3、挂载/root/myjob到试验

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号