虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

指针变量

  • 基于ARM平台的存储卡系统设计与实现

    随着现代计算机技术和互联网技术的飞速发展,嵌入式系统成为了当前信息行业最热门的焦点之一。而ARM以其高性能低功耗的特点成为目前应用最广泛的32位嵌入式处理器。在嵌入式操作系统方面,Linux凭借其性能优异、结构清晰、平台支持广泛、网络支持强劲及开放源代码等多方面的优势,被嵌入式系统开发者广泛地采用。Linux 2.6包含许多新的特性,为其在嵌入式领域的应用提供了强有力的支持,新的内核越来越多地应用于嵌入式Linux系统中。 本文的工作基于艾科公司研发的硬件平台Ark1600开展。该平台上集成了多个功能模块,例如LCD、12S、GPIO、12C等,同时支持XD、CF、MMC、SD等多种硬件存储设备,在设备通信方面提供了USB、串行通信等传输方式。本文的主要工作是研究Linux在ARM芯片上的移植,并在此基础上阐述Linux设备驱动的开发。 首先构建了交叉编译环境,然后在分析Ark1600硬件体系结构的基础上详细阐述了BootLoader程序设计与实现、Linux2.6内核移植、Ramdisk文件系统移植的全过程,为后续项目的实施搭建了一个良好的开发平台。论文最后阐述了Linux 2.6内核中开发块设备驱动程序的实现方法,并以XD块设备驱动程序为例,详细阐述了Linux驱动程序的开发流程。 主要工作量在于BootLoader程序的设计与实现、Linux系统移植和XD块设备驱动程序的开发。因为项目平台独特的硬件环境,一些程序代码要严格依赖硬件设备设计。在Linux移植中的主要工作包括串口控制台的驱动、设置系统的存储布局、初始化系统定时器、初始化系统中断、在Linux系统中建立标识本硬件平台的结构体变量、配置并编译Linux内核等。

    标签: ARM 存储卡 系统设计

    上传时间: 2013-05-18

    上传用户:wzr0701

  • 嵌入式C语言精华

    C/C+语言struct 深层探索 C++中 extern "C"含义深层探索 C 语言高效编程的几招 想成为嵌入式程序员应知道的 0x10 个基本问题 C 语言嵌入式系统编程修炼 C 语言嵌入式系统编程修炼之一:背景篇 C 语言嵌入式系统编程修炼之二:软件架构篇 C 语言嵌入式系统编程修炼之三:内存操作 C 语言嵌入式系统编程修炼之四:屏幕操作 C 语言嵌入式系统编程修炼之五:键盘操作 C 语言嵌入式系统编程修炼之六:性能优化 C/C++语言 void及 void 指针深层探索 C/C++语言可变参数表深层探索 C/C++数组名与指针区别深层探索 C/C++程序员应聘常见面试题深入剖析(1) C/C++程序员应聘常见面试题深入剖析(2) 一道著名外企面试题的抽丝剥茧 C/C++结构体的一个高级特性――指定成员的位数 C/C++中的近指令、远指针和巨指针 从两道经典试题谈 C/C++中联合体(union)的使用 基于 ARM 的嵌入式 Linux 移植真实体验 基于 ARM 的嵌入式 Linux 移植真实体验(1)――基本概 基于 ARM 的嵌入式 Linux 移植真实体验(2)――BootLoa 基于 ARM 的嵌入式 Linux 移植真实体验(3)――操作系 基于 ARM 的嵌入式 Linux 移植真实体验(4)――设备驱 基于 ARM 的嵌入式 Linux 移植真实体验(5)――应用实 深入浅出 Linux 设备驱动编程 1.Linux 内核模块 2.字符设备驱动程序 3.设备驱动中的并发控制 4.设备的阻塞与非阻塞操作

    标签: 嵌入式 C语言

    上传时间: 2013-04-24

    上传用户:thh29

  • 基于FPGA的PCI接口设计及其应用

    该文进行的设计作为数控系统大课题中的一个子课题,主要研究利用PCI总线来实现对外围IO的操作,硬件上包括设计一块PCI接口卡并测试通过,软件上实现了PCI接口卡在Linux下的驱动和用软PLC来实现对外围IO的操作.该文在比较几种微机总线的基础上,为了实现数控系统高速、高精度、低功耗的要求,采用PCI总线进行设计.随着可编程逻辑器件的发展,为在一片PLD芯片内实现复杂的逻辑控制提供了条件.该文在综合比较开发PCI卡的几种方法的基础上,选择了使用FPGA来实现PCI接口卡设计.用VHDL语言对FPGA编程,采用模块化的设计方法进行设计,用状态机来控制PCI逻辑的时序.设计首先在EDA软件上仿真通过后,制作成PCI板卡并在现场调试通过.为方便所设计的PCI卡在数控系统及其它系统中应用,该文设计了PCI卡在Linux下的设备驱动程序,主要包括设备的注册与注销、与Linux内核的接口、相关的入口函数、驱动程序的编码、编译、加载与卸载等,并编写了相应的测试代码,在Linux环境下调试通过.为了解决数控系统中PLC的应用问题,该文还设计了PCI卡在软PLC中的应用.采用的软PLC软件是Linux下的MatPLC软件.在详细讨论MatPLC工作原理的基础上,设计了一个输入模块、一个输出模块和一个MatPLC配置文件.输入模块通过驱动程序从PCI卡中读取数据,传送到MatPLC内核的全局变量中,输出模块从内核全局变量读取数据并进行逻辑运算,再输出到PCI卡.将他们编译通过,并进行测试,最终实现软PLC对外围IO端口的读写.该论文受到广东省科技攻关项目[2002A1040402]、广东省科技攻关项目[2003C101002]、广州市重大科技攻关计划[2002Z1-D0051]的资助.

    标签: FPGA PCI 接口设计

    上传时间: 2013-07-18

    上传用户:szchen2006

  • 车载智能仪表的功能研究与开发

    汽车仪表是驾驶员与汽车进行交流的重要窗口,也是汽车高新技术的重要部分。传统汽车仪表多使用指针型显示器件为主,如步进电机、十字线圈,辅以液晶显示,显示的信息量相对较少,且结构复杂。一方面随着汽车电子化程度的不断提高,进行技术创新,研制开发新一代汽车仪表产品;另一方面,由于能源和环保问题,汽车也将从内燃机汽车发展到包括纯电动汽车(BEF)、混合电动汽车(HEV)以及燃料电池汽车(FCV)的新能源汽车时代,因此结合新能源汽车信息量多、电子化程度高的特点,开发新一代汽车智能仪表具有重要的现实和长远意义。 本文正是在这样的背景下,以同济大学汽车学院自主研发的ROVER燃料电池轿车为研究对象,进行了汽车智能仪表的一些功能研究与开发。所做的主要工作有: (1)根据要实现的功能确定所需的硬件资源,选择合适的嵌入式硬件系统。 (2)嵌入式操作系统的选择和二次开发。在选择操作系统时要考虑到系统的硬件可移植性、实时性、对内存的需求以及提供哪些开发工具等。 (3)应用软件的开发。主要是仪表界面设计,包括数字图形显示,动画显示,数据库开发等。 (4)基于无线数据传输模块下的GPRS无线通讯实验。包括客户端和服务器端系统配置,动态域名解析等。 该仪表已应用于ROVER燃料电池轿车,实践表明,在嵌入式平台上显示车载信息,同传统仪表相比具有较大的优势。可满足小型化、轻量化的要求;造型美观,可动画显示、可读性、可视性强;可实现一表多用。从软件方面来讲,引入了操作系统的概念,增强了代码的可读性、可维护性、可扩展性以及灵活性;信息显示自由度高,显示界面人性化,可定制;即使更换硬件平台,也只需对操作系统和底层驱动程序进行少量的移植工作,而无需修改与硬件无关的应用代码。

    标签: 车载 智能仪表

    上传时间: 2013-04-24

    上传用户:SimonQQ

  • 指纹识别认证算法硬件实现

    指纹识别作为生物特征识别的一种,在身份识别上有着其他手段不可比拟的优越性:人的指纹具有唯一性和稳定性;随着指纹传感器性能的提高和价格的降低.指纹的采集相对容易;指纹识别算法已经比较成熟

    标签: 指纹识别 算法 硬件实现

    上传时间: 2013-07-28

    上传用户:chongcongying

  • Source Insight 3.5.rar

    非常好用的适合撰写如C/C++或Java等程序语言的编辑器,可以自动列出程序的变量,量数等。

    标签: Insight Source

    上传时间: 2013-04-24

    上传用户:hjshhyy

  • 几种用于FPGA的新型有效混合布线算法

    采用现场可编程门阵列(FPGA)可以快速实现数字电路,但是用于生成FPGA编程的比特流文件的CAD工具在编制大规模电路时常常需要数小时的时间,以至于许多设计者甚至通过在给定FPGA上采用更多的资源,或者以牺牲电路速度为代价来提高编制速度。电路编制过程中大部分时间花费在布线阶段,因此有效的布线算法能极大地减少布线时间。 许多布线算法已经被开发并获得应用,其中布尔可满足性(SAT)布线算法及几何查找布线算法是当前最为流行的两种。然而它们各有缺点:基于SAT的布线算法在可扩展性上有很大缺陷;几何查找布线算法虽然具有广泛的拆线重布线能力,但当实际问题具有严格的布线约束条件时,它在布线方案的收敛方面存在很大困难。基于此,本文致力于探索一种能有效解决以上问题的新型算法,具体研究工作和结果可归纳如下。 1、在全面调查FPGA结构的最新研究动态的基础上,确定了一种FPGA布线结构模型,即一个基于SRAM的对称阵列(岛状)FPGA结构作为研究对象,该模型仅需3个适合的参数即能表示布线结构。为使所有布线算法可在相同平台上运行,选择了美国北卡罗来纳州微电子中心的20个大规模电路作为基准,并在布线前采用VPR399对每个电路都生成30个布局,从而使所有的布线算法都能够直接在这些预制电路上运行。 2、详细研究了四种几何查找布线算法,即一种基本迷宫布线算法Lee,一种基于协商的性能驱动的布线算法PathFinder,一种快速的时延驱动的布线算法VPR430和一种协商A

    标签: FPGA 布线算法

    上传时间: 2013-05-18

    上传用户:ukuk

  • 基于FPGA感应电机控制器

    感应电机由于具有可靠性好、结构简单、价格低廉和体积小等优点,成为生产实践中应用最广泛的一种电动机。然而,感应电机是一个多变量、强耦合、非线性的时变系统,这使得感应电机的控制十分复杂,尤其是在对控制精度要求比较高的场合,设计出高精度的感应电机控制系统变得非常困难。 针对高精度感应电机控制较困难的问题,本文分析了感应电机的数学建模方法及电机控制策略问题。在对感应电机的数学模型进行了数学推导的基础上,在Matlab/Simulink平台上建立了感应电机的电机模型,提出了一种感应电机控制系统仿真建模的新方法。对常用的数字脉宽调制方法进行了数学推导及仿真研究,并将模糊控制理论应用于感应电机的变频调速系统中,改善了传统PI控制器超调较大、响应较慢、鲁棒性差的缺点。仿真结果验证模糊PI控制方案的优越性。 在感应电机建模仿真的基础上,根据高精度感应电机控制器的需求及FPGA的特点,本文提出感应电机控制器的的设计方案。按照FPGA模块化设计思想,将整个系统进行了合理的划分,对SVPWM、Park变换、模糊PI控制器、反馈速度测量等重要模块的FPGA硬件实现算法进行了深入的研究。并在一些模块算法的设计上提出了自己的思路。各模块在Modelsim平台上完成功能仿真后并下载到Spartan-3E开发板上完成硬件验证。

    标签: FPGA 感应电机 控制器

    上传时间: 2013-04-24

    上传用户:tdyoung

  • 基于ARM感应电机数字控制器的设计

    感应电机具有可靠性好、结构简单、耐腐蚀、效率好、结构紧凑、价格低廉和体积小等优点,成为工业伺服控制的主要传动装置然而,感应电机又是一个多变量、强耦合的非线性系统,磁链和转矩的非线性耦合及参数时变,使得感应电机的控制十分复杂,特别是在实际电机控制系统中,还需要考虑硬件和周围环境等多种因素的干扰,致使实现高性能的感应电机控制系统更加困难 本文研究感应电机的高性能控制策略,综述了感应电机高性能控制策略的发展历程和感应电机模糊控制的发展现状,分析了实际电机控制系统控制器选型中各个嵌入式微处理器的基本性能和优缺点在给出三相坐标系和二相坐标系中的感应电机数学模型之后,从理论上阐述了模糊控制和矢量控制的基本原理,针对传统的PI控制器参数整定繁琐,系统鲁棒性差的缺点,论文将模糊控制技术应用于感应电机的变频调速,采用CRI推理法,设计了一种参数自整定模糊PI矢量控制器,利用Matlab对基于模糊PI控制的感应电机控制系统进行了仿真,并对采用两种控制器实现的感应电机调速控制系统进行了比较、分析仿真结果表明模糊控制的控制性能优于常规的PI调节器 论文对基于ARM的感应电机数字控制技术进行了系统研究,阐述了采用LPC2214ARM微处理器构成数字感应电机变频调速系统的方法,给出了一种高性能感应电机的数字实现方案,详细介绍了系统硬件结构的组成及软件模块的功能,并给出了主要算法的参考代码,为实际电机控制器的选型和开发提供了一个新的思路

    标签: ARM 感应电机 数字控制器

    上传时间: 2013-08-03

    上传用户:sy_jiadeyi

  • AVR单片机GCC程序设计

    第一章 概述 1.1 AVR 单片机GCC 开发概述 1.2 一个简单的例子 1.3 用MAKEFILE 管理项目 1.4 开发环境的配置 1.5 实验板CA-M8 第二章 存储器操作编程 2.1 AVR 单片机存储器组织结构 2.2 I/O 寄存器操作 2.3 SRAM 内变量的使用 2.4 在程序中访问FLASH 程序存储器 2.5 EEPROM 数据存储器操作 2.6 avr-gcc 段结构与再定位 2.7 外部RAM 存储器操作 2.8 堆应用 第三章 GCC C 编译器的使用 3.1 编译基础 3.2 生成静态连接库 第四章 AVR 功能模块应用实验 4.1 中断服务程序 4.2 定时器/计数器应用 4.3 看门狗应用 4.4 UART 应用 4.5 PWM 功能编程 4.6 模拟比较器 4.7 A/D 转换模块编程 4.8 数码管显示程序设计 4.9 键盘程序设计 4.10 蜂鸣器控制 第五章 使用C 语言标准I/O 流调试程序 5.1 avr-libc 标准I/O 流描述 5.2 利用标准I/0 流调试程序 5.3 最小化的格式化的打印函数 第六章 CA-M8 上实现AT89S52 编程器的实现 6.1 编程原理 6.2 LuckyProg2004 概述 6.3 AT989S52 isp 功能简介 6.4 下位机程序设计 第七章 硬件TWI 端口编程 7.1 TWI 模块概述 7.2 主控模式操作实时时钟DS1307 7.3 两个Mega8 间的TWI 通信 第八章 BootLoader 功能应用 8.1 BootLoader 功能介绍 8.2 avr-libc 对BootLoader 的支持 8.3 BootLoader 应用实例 8.4 基于LuckyProg2004 的BootLoader 程序 第九章 汇编语言支持 9.1 C 代码中内联汇编程序 9.2 独立的汇编语言支持 9.3 C 与汇编混合编程 第十章 C++语言支持

    标签: AVR GCC 单片机 程序设计

    上传时间: 2013-08-01

    上传用户:飞翔的胸毛