嵌入式系统在众多工业领域扮演着越来越重要的角色,但是因嵌入式系统的资源受限缘故,导致在嵌入式系统上很难实现复杂计算算法。此外,当前嵌入式系统设计阶段和实现阶段的分离现状,致使嵌入式系统开发耗时且昂贵。为解决这些问题,本书提出了一种低成本、可重复使用且可重构的嵌入式系统设计与实现集成开发环境。为了减少成本,该集成环境全部是采用自由和开放源代码软件,如Linux操作系统和Scilab计算平台等。 本文主要包括以下内容: 1、构建嵌入式Linux开发环境及移植相关软件包到嵌入式ARM平台,首先详细的描述了如何使用Buildroot工具包制作交叉编译器,并描述Minicom、TFTP和NFS等嵌入式开发相关工具,最后详细的描述了如何移植嵌入式图形用户界面TinyX和嵌入式窗口管理器JWM。 2、构建Scilab-EMB嵌入式计算平台,首先介绍了数值计算软件Scilab,然后详细的描述了如何在ARM系统上实现Scilab-EMB嵌入式计算平台。 3、开发Scilab数据采集工具包,实现Scilab与底层设备通讯,该工具包PC版和ARM版均支持串口和以太网接口,且均支持Modbus现场总线。PC版额外支持OPC协议。 4、基于Scilab构建虚拟控制实验室,验证该平台的可行性及性能。 本文创新点: 1、国内外率先提出了一种新的以Scilab为核心的嵌入式计算平台方案,并在国内外首次实现了Scilab到ARM平台的移植; 2、开发了Scilab-DAQ数据采集工具包,有效的实现了Scilab与底层设备的通讯。 通过虚拟实验室的建立,验证了该嵌入式控制平台能够胜任多种复杂算法。 该嵌入式计算平台解决方案和Scilab-DAQ数据采集工具包已经受到国内外同行的关注,并被多家科研机构、学校和公司所采纳和使用。
标签: Scilab-EMB ARM-Linux 嵌入式 计算
上传时间: 2013-05-30
上传用户:acon
随着USB接口性能的不断增强,USB接口被广泛应用到各种硬件设备上。如今在Linux操作系统中,针对USB设备的驱动编程工作越来越受到重视。本课题在以S3C2410处理器为基础的硬件平台上,对Linux操作系统环境下USB设备驱动工作原理进行了研究。在理解USB协议的基础上完成了S3C2410处理器内置USB设备控制器固件和驱动程序的编写调试等方面的工作。 固件程序工作在硬件设备上,通过它控制设备的正常工作,负责与主机端的通信会话。由于本课题中的USB设备控制器是3C2410处理器的片内外设,因此固件程序要管理整个S3C2410处理器的工作。在处理器开机工作时,固件程序首先完成包括USB设备控制器在内的整个处理器的初始化,然后与主机共同进行USB设备的枚举,最后进入循环等待主机端发起通信。当主机发起通信时,处理器产生USB中断,固件程序调用中断处理函数。 在Linux操作系统中,内核通过调用驱动中提供的标准接口将应用程序中对设备的操作映射到具体的硬件设备。驱动程序中包括向驱动注册,驱动支持设备列表信息以及各种系统调用具体实现等方面。USB接口所支持的四种传输方式,根据S3C2410内置USB设备控制器的功能属性,在驱动中采用了块传输的传输方式,通过URB的方式实现对设备的读写操作。 最后设计一个简单文件传输系统对固件和驱动程序进行了测试。测试系统中主机端通过USB接口传输一个wav格式的音频文件,设备端接收到数据保存在内存中。
上传时间: 2013-04-24
上传用户:liuchee
新手资料,AVR单片机GCC程序设计及其设计例程
上传时间: 2013-06-11
上传用户:mosliu
作为世界上最优秀的操作系统之一,Linux不仅在服务器领域有着不可撼动的地位,而且正在嵌入式领域发挥着越来越重要的作用。有专家预测,Linux将是未来最主要的嵌入式操作系统之一,将广泛应用在各种消费电子和通信设备中。因此,产生并逐渐形成了嵌入式Linux这项技术。然而,面对嵌入式系统多样化的硬件平台以及多样化的应用,如何更快更好地建立基于Linux的软件平台成为一个必须解决的问题。 本文正是针对这个问题,以Linux相关的基础软件为主要研究对象,在深入分析引导加载程序、Linux与处理器相关的代码、文件系统以及设备驱动的基础上,对基于ARM的Linux软件平台进行了创新性和探索性的研究。主要内容为:在理解ARM体系结构的基础上,通过分析uboot源码,详细研究ARM处理器在上电后的启动过程和加载引导Iinux的过程;分析并总结Linux与处理器相关的接口,以中断控制器、定时器以及串口为主,提出了移植Linux到新型处理器的思路和方法;研究Iinux文件系统的内容、制作和使用;分析Linux的设备驱动体系结构以及设备驱动的调用方式;在学习和研究的基础之上,针对STMP36xx这款处理器,设计并实现引导加载程序,完成Linux的移植、配置、编译,解决Linux启动过程遇到的问题,然后通过制作根文件系统和实现NandFlash、LCD的驱动,完整地搭建起以Linux为核心的软件平台,并进行了应用验证。 在实际应用中,嵌入式系统会使用很多不同类型的处理器,因此迫切希望能够找到一个准则解决移植带来的问题。本文最重要的成果就是为Linux在新型处理器上的移植提出了一个准则,根据该准则可以更加快速、更加准确地将Linux应用到不同的处理器上,因此具有重要的现实意义。同时,本文将项目实践贯穿于理论研究之中,涉及到Linux平台关键技术的分析、相关工具的使用以及开发经验的分享,对学习嵌入式Linux和设计嵌入式Linux系统具有较高的参考和指导价值。此外,成功移植的STMP36xx已经初具规模,可以通过二次开发以形成完善的嵌入式产品。
上传时间: 2013-06-01
上传用户:sa123456
Linux设备驱动程序的开发工作涉及到相当多的系统内核细节,对开发人员的要求很高。由于缺乏必要的可重用性,一个新设备的驱动程序的开发速度也很缓慢。为了简化其开发流程和提高已有代码的可重用性,该文将C+
上传时间: 2013-04-24
上传用户:vendy
GCC 中文手册,仔细看可以很好的了解GCC是怎么工作的-GCC chinese manual
标签: GCC-chinese
上传时间: 2013-07-29
上传用户:linlin
《LINUX与UNIX SHELL编程指南》共分五部分,详细介绍了shell编程技巧,各种UNIX命令及语法,还涉及了UNIX下的文字处理以及少量的系统管理问题。本书内容全面、文字简洁流畅,适合She
上传时间: 2013-07-24
上传用户:225588
本文主要研究一种在嵌入式系统上的GPS终端的软件设计方法。随着GPS技术在包括道路测控、汽车导航、交通管理、石油勘探、海上作业和紧急救援等军事和民用的众多领域中的越来越广泛的应用和发展,GPS系统对生产、生活的影响也愈加深远。另一方面,硬件开发与嵌入式操作系统以及软件研发技术的不断发展促使移动计算技术在手持设备中也得到广泛的应用,掌上电脑(PDA)与智能手机等移动式计算系统日益普及,功能日渐完善,在手持式设备中实现GPS移动定位、导航等功能具有良好的市场前景。 鉴于嵌入式GPS系统要求处理速度快,占用存贮空间小,根据嵌入式系统的人机交互特点,论文采用基于ARM架构的S3C2410处理器作为基础硬件平台,以OpenSource的Linux作为操作系统平台,MiniGui为图形用户界面支持系统,SQLite为数据库管理系统研究并设计了应用嵌入式地图的GPS定位系统。 该系统不仅为用户提供基本的地图信息,还利用GPS仪器实现在地图上定位功能,使用户获得当前位置相关的附属信息。该系统简单可行,不依赖其他服务器工作,可用在移动设备、车载导航等领域。 论文研究了Linux在嵌入式系统中的应用与MiniGUI图形界面和SQLite数据库系统向Arm-Linux系统上的移植;阐述了Linux下触摸屏驱动的设计与应用;分析了GPS系统中地理坐标系统的定义和坐标转换基本原理;根据转换公式实现地理经纬度坐标、平面直角坐标以及屏幕窗口坐标间的相互转换;分析了MapInfo电子地图文件的基本格式;设计了用于存储地图信息及附属信息的SQLite数据库;通过Linux与GPS接收器的通讯从GPS设备采集定位信息并进行解析;在MiniGui上实现电子地图与定位信息的显示,支持触摸屏上的人机交互;并在电子地图上实现放大缩小、测距、查询等基本功能。 论文最后同时给出了目标系统的实现结果,并分析了系统设计中的一些不足,提出了在以后的工作中改进系统效能的设想。
上传时间: 2013-04-24
上传用户:zklh8989
UHF(Ultra High Frequency,超高频)RFID(Radio Frequency Identification,射频身份识别)技术是近几年刚刚开始兴起并得到迅速推广应用的一门新技术。该技术已被广泛应用于工业自动化、商业自动化、交通运输控制管理等众多领域。但是,基于超高频频段读写器的研制在我国尚处于起步阶段,传统的超高频读写器都是在单片机的基础上实现的,这类读写器很难实现复杂的多任务功能;随着经济的飞速发展,能够与网络互联并且带有操作系统的超高频读写器越来越受人们的青睐与追求。针对这些问题,本文设计并实现了一种基于ARMS3C2410微处理器和Linux操作系统的超高频读写器,主要内容有: (1)分析了射频识别技术的发展历程和前景,以嵌入式技术为研究背景,结合软硬件开发平台,给出了一种基于ARM和Linux的超高频读写器设计思路,指出了选题研究的目的和意义。 (2)阐述了超高频读写器的原理及其应用,分析了读写器和标签之间进行数据传输时所用到的相关技术;在给出超高频读写器主要技术性能指标及功能要求的基础上给出了基于ARMS3C2410和Linux超高频读写器系统的总体设计,同时对系统构建过程中所用到的软硬件进行了器件选型。 (3)实现了超高频读写器系统硬件电路的模块设计,主要包括主控电路模块、存储电路模块、电源模块、以太网模块、液晶显示模块以及射频收发模块;阐述了各模块的组成原理与实现方法,完成了硬件电路的原理图绘制及PCB制板。 (4)根据系统的软件需求,构建了一个进行嵌入式开发所需的软件平台。建立了交叉编译环境以及NFS开发调试环境;移植了系统启动所需的引导程序bootloader;实现了嵌入式Linux操作系统内核、文件系统的配置与移植;给出了Linux系统下典型设备(触摸屏、网络接口、LCD)驱动程序的移植方法。 (5)结合实验测试环境,对超高频读写器输出功率,读写器发送命令以及标签应答波形进行了测试与分析;对读写器的整机性能进行了联机测试,给出了读写器系统的实际运行效果图,同时对测试结果进行了总结。 实际应用结果表明,基于ARMS3C2410微处理器和Linux操作系统的超高频读写器能够实现接入网络的功能,其读写速度、识别率以及识别距离等技术性能指标均达到或优于设计标准要求,该读写器在与PC机连接的情况下能进行数据处理,样机系统运行稳定可靠,达到了预期的设计目标。
上传时间: 2013-07-25
上传用户:saharawalker
汽车仪表总成是汽车和驾驶员进行信息交互的窗口。传统的汽车仪表总成采用了大量机械器件、模拟电路和少量简单数字电路的方式设计。它体积大,精确和稳定性低,显示信息少,控制按钮繁复。本项目以当前主流的嵌入式技术为基础,设计了一种以大尺寸LCD触摸屏为主要显示控制界面,以CAN总线和其他接口为信息采集渠道,以高速嵌入式ARM9微控制器为处理单元的车载信息显控终端。 作者在该项目中负责车载信息显控终端的样机设计,用Prote199完成原理图和PCB图的设计,编写测试程序对主要硬件进行测试。软件上移植Linux操作系统并编写LCD驱动程序。 论文设计的车载信息显控终端以SAMSUNG公司S3C2410ARM9微控制器为核心,以Microchip公司的MCP2515芯片为CAN总线控制器,以Sharp公司LQ080V3DG01型号的8英寸LCD屏为显控接口。存储器方面外扩了NOR FLASH、NAND FLASH、SDRAM。接口方面设计了CAN、USB、RS232、以太网等标准接口,和GPIO、AD等接口。软件上本车载信息显控终端采用自行剪裁移植的Linux操作系统,并移植了相应的LCD驱动程序。 论文主要阐述了车载信息显控终端的硬件设计,详细分析了Linux在S3C2410微控制器系统上的移植,并将在软硬件调试过程中总结的经验与大家分享。 本车载信息显控终端是对汽车仪表总成数字化和虚拟化显示控制的一个有益尝试,离最后的实用化和产品化还待进一步研究。
上传时间: 2013-05-30
上传用户:hechao3225