以下是使用本书的推荐步骤和方法:1.学习用Protel进行电路设计。按照功能定义、方案选定、电路原理图设计、采购元件、硬件电路板设计的流程,自己动手,实践各个环节,掌握了这些环节以后,就在一定程度上具备了自己解决问题的能力。在原理图和印制电路板设计过程中,可以参考配套网站上中的相关内容,但电路印制电路板设计完成以后,暂不制板。有关内容见“硬件电路设计与制作”篇中的第1~5章。2.进行电路板焊接和调试。使用本书所配印制电路板,自己购买元件,按照“硬件电路设计与制作”篇中的第7章的详细步骤进行电路板焊接和调试。调试过程中直接使用配套网站上中提供的各种调试时需要的固件程序,暂不关心这些固件的程序是如何写就的。3.理解源程序。MP3+U盘调试完成以后,对整个调试开发环境就应该很熟悉了。接下来,阅读本书“C51程序设计”篇的有关内容,并阅读附录中对KeilC编译器、Source Insight源码阅读软件的介绍,阅读配套网站上调试过程所用固件对应的C源程序,并结合源码中的注释,理解MP3源程序设计的方法。4.进行个性化设计与调整。到此,读者对于硬件电路设计与制作过程中的软件、硬件电路设计与制作有了相当了解了。此时,可以将自己原先设计的印制电路图进行必要的个性化设计与调整,自己制作MP3播放器的印制电路板,根据所做调整,在原有调试所需固件的基础上,进行相应的修改,重复电路调试过程,以便提高和融会贯通。电路板加工可以参考“硬件电路设计与制作”篇中的第6章内容。5.进行USB通信的学习,了解USB有关概念。先学习“USB海量存储设备(U盘)设计”篇中第14~17章的内容,建立起USB通信的概念。6.了解设计一个USB海量存储设备所需的知识,进一步加深对USB通信的理解。阅读“USB海量存储设备(U盘)设计”篇中第18~20章的内容。7.用C语言编程实现U盘的固件编写,掌握USB通信的调试方法。阅读“USB海量存储设备(U盘)设计”篇中第21章、第22章的有关内容。
上传时间: 2022-06-23
上传用户:
在UEFI开源社区中,存在四个与UEFI BIOS相关的开源项目,分别为EDK(EFI Dev Kit),EDKII,EFI Shell和EFI Toolkit.其中,EDKII(EFI Development Kit)是一个开源的EFI BIOS的发布框架,其中包含一系列的开发示例和大量基本的底层库函数,因此,对于其MDE(Module Development Environment)模块开发环境的分析与测试能够在最大程度上保证开发的稳定性和质量。因而选题具有一定的实用性和先进性,此外,整个分析和测试设计的过程中,能够充分体现出在UEFI从事程序设计相对于传统BIOS环境下的优势。本论文计划从以下几个方面进行研究:1、学习研究UEFI(统一可拓展固件接口)技术;2、学习研究EDKII框架和相应的MDE(模块开发环境);3、搭建MDE库的测试框架MdeTestPkg:4、编写MdeTestPkg下的测试实例,实现对MDE库的分析与测试。通过对现有的UEFT(统一可扩展固件按口)技术的学习,深入了解UEFI BIOS的背景知识。在此基础上,学习研究EDK II的整体架构和模块单元开发设计的规范和方法,并用基于EDK 11搭建MDE(模块开发环境)的测试框架,编写类库的测试实例。最终的结果是完成MDE,即模块开发环境框架中的44个库类在DXE阶段的功能分析与测试,并且由于类际的4通性,使得测试的类际能够在不同的平台架构(如:IA32,X64和IPF等)上成功运行,具有很好的稳定性和健壮性。在本论文中,我只以NT32平台架构为例,来说明MDE库在NT32平台下的测试框架的搭建以及对于MDE库类的测试实例的设计,编写和测试。
上传时间: 2022-06-26
上传用户:kent
针对闪存系统对在应用中编程(in-application programming,IAP)的强烈需求,介绍基于 STM32 平台的IAP 设计原理以及实现方法。分析 IAP 设计的重要性,以 STM32F103RC 为例,介绍 IAP 程序中的 FLASH 规划、用户程序条件,IAP 实现原理以及在产品中应用 IAP 详细设计的实现过程。结果表明:IAP 应用在产品项目中的成功实现,能使现场产品固件的更新更为便捷,可进行大面积推广使用。在应用中编程(in-application programming,IAP)是用户自己的程序在运行过程中对 User Flash的部分区域进行烧写,可在产品发布后方便地通过预留的通信口对产品中的固件程序进行更新升级。通讯接口可以是 SPI、I2C、UART、USB、CAN 和以太网等。随着用户对产品现场适应能力的要求越来越高,大部分基于闪存的系统对于 IAP 的需求也越来越强。笔者以 STM32F103RC 为例,介绍了 IAP在产品中应用的详细设计和实现过程。
上传时间: 2022-07-11
上传用户:aben
本书从软件设计的角度,全面、系统地介绍了ARM处理器的基本体系结构和软件设计与优化方法。内容包括:ARM处理器基础;ARM/Thumb指令集;C语言与汇编语言程序的设计与优化;基本运算、操作的优化;基于ARM的DSP;异常与中断处理;固件与嵌入式OS;cache与存储器管理;ARMv6体系结构的特点等。全书内容完整,针对各种不同的ARM内核系统结构都有详尽论述,并有大量的例子和源代码。附录给出了完整的ARMv4/v5/Thumb指令的功能、编码、周期定时以及汇编参考。本书适于从事ARM嵌入式系统教学与研发,或想把其它嵌入式平台的软件移植到ARM平台上去的专业技术人员使用,要求对ARM处理器有一定的了解,并有C语言和汇编语言基础。若在编译原理、操作系统、数字信号处理、计算机体系结构等方面有一定的基础,则效果会更好。本书也可作为嵌入式系统专业方向的本科生和研究生相关课程的教材或教学参考书。
标签: 嵌入式系统
上传时间: 2022-07-26
上传用户:
燃料电池电动汽车DC/DC变换器的诸如工作电压、电流、效率、体积、重量、温度这些参数指标中温度参数是一个尤为重要的参数。如何对DC/DC变换器内部多点温度参数进行实时监测从而为DC/DC变换器提供可靠的温度参数就成为本课题的直接来源和选题依据。 USB总线具有即插即用、使用方便、易于扩展以及抗干扰能力强等其它总线无法比拟的优点。如今USB已经成为PC上的标准接口,并迅速占领了计算机中、低速外设的市场。而且随着计算机功能的不断强大,虚拟仪器技术也在不断发展。它代表了测量与控制技术的未来发展方向。本课题的研究目的就是希望将USB总线技术和虚拟仪器技术应用到测量系统中,充分利用实验室现有的资源,设计一个基于USB总线和LabVIEW的多路温度测试仪。 在了解DC/DC变换器内部主电路的拓扑结构的基础上,考虑测试系统抗干扰技术,选用扩展了USB功能的微控制器芯片STM32F103和高精度温度传感器PT1000完成了基于恒流源的多通道温度检测电路原理图与印刷电路板设计。在学习USB协议和电子芯片数据手册的基础上编写了测试仪的下位机固件程序。通过LabVIEW中的NI—VISA开发驱动程序实现上位机与USB设备的通信功能。在LabVIEW虚拟仪器软件开发平台中编写用户界面并建立合理的报表生成系统,有效存储数据提供用户查询。 直接在LabVIEW环境下通过NI—VISA开发能驱动用户USB系统应用程序,完全避开了以前开发USB驱动程序的复杂性,大大缩短了开发周期,节省了开发成本。设计完毕后对系统进行了软硬件联调,通道标定和现场试验,并进行了精度分析。实验结果表明课题在这一研究过程中取得了预期的良好结果。
上传时间: 2013-06-07
上传用户:kennyplds
激光打标是指利用高能量密度的激光束在物件表面作永久性标刻。激光打标以其“打标速度快、性能稳定、打标质量好”等优势,获得了日益广泛的应用。传统的激光打标系统一般是基于ISA总线或PCI总线的,运动控制卡必须插在计算机的PCI插槽内,且不支持热捅拔,影响了控制卡的稳定性;以单片机为主控制器的激光打标控制卡虽然成本低、运行可靠,但由于其运算速度慢、存储容量有限,限制了它的应用范围。 运动控制卡是激光打标系统的核心组成部分。本文设计了一种新型的基于USB总线,以FPGA为主控单元的振镜扫描式激光打标控制卡,它利用了USB总线高速、稳定、易用和FPGA资源丰富、处理能力强、易扩展等优点,将PC机强大的信息处理能力与运动控制卡的运动控制能力相结合,具有信息处理能力强、开放程度高、使用方便的特点。 本文首先介绍了激光打标的原理,激光打标技术的发展现状以及激光打标系统的组成结构。在对USB总线技术作了简要介绍后,详细讨论了激光打标控制卡的硬件电路设计,包括USB接口电路,FPGA主控单元电路,D/A单元电路,存储器电路,I/O接口电路等。接着对USB接口单元的固件程序和FPGA中USB接口功能模块、D/A写控制功能模块和SRAM读写控制功能模块的程序做了详细设计,通过软硬件调试,控制卡实现了USB通信,输出两路模拟信号,SRAM数据读写,数字量输入输出等功能。
上传时间: 2013-04-24
上传用户:prczsf
随着数字电子技术的发展,数字信号处理广泛应用于声纳、雷达、通讯语音处理和图像处理等领域。快速傅立叶变换(Fast Fourier Transform,FFT)在数字信号处理系统中起着很重要的作用,FFT 有效地提高了离散傅立叶变换(Discret Fourier Transform,DFT)的运算效率。 处理器一般要求具有高速度、高精度、大容量和实时处理的性能,而现场可编程门阵列(Field Programmable Gate Array,FPGA)是近年来迅速发展起来的新型可编程器件,在处理大规模数据方面,有极大的优势。论文采用了在FPGA中实现FFT算法的方案。 数字信号处理板的硬件电路设计是本论文的重要部分之一。在介绍了FFT以及波束形成的基本原理和基本方法的基础上,根据实时处理的要求,给出了数字信号处理板的硬件设计方案并对硬件电路的实现进行了分析和说明。 依据数字系统的设计方法,分别采用基二按时间抽取FFT算法、基四按时间抽取FFT算法以及FFT兆核函数三种方法利用硬件描述语言(VHSICHardware Description Language,VHDL)实现了1024点的FFT,接着对三种方法进行了评估,得出了FPGA完全能满足处理器的实时处理的要求的结论。然后根据通用串行总线(Universial Serial Bus,USB)协议,利用VHDL语言编写了USB接口芯片ISP1581的固件程序,实现了设备的枚举过程。
上传时间: 2013-06-27
上传用户:a937518043
对于大多数工程师来说,开发USB2.0 接口产品主要障碍在于:要面对复杂的USB2.0协议、自己编写USB设备的驱动程序、熟悉单片机的编程。这不仅要求有相当的VC编程经验、还能够编写USB接口的硬件(固件)程序。所以大多数人放弃了自己开发USB产品。为了将复杂的问题简单化,西安达泰电子特别设计了USB2.0协议转换模块。这个模块可以被看作是一个USB2.0协议的转换器,将电脑的USB2.0接口转换为一个透明的并行总线,就象单片机总线一样。从而几天之内就可以完成USB2.0产品的设计。
上传时间: 2013-04-24
上传用户:nanjixehun
对于大多数工程师来说,开发USB2.0 接口产品主要障碍在于:要面对复杂的USB2.0协议、自己编写USB设备的驱动程序、熟悉单片机的编程。这不仅要求有相当的VC编程经验、还能够编写USB接口的硬件(固件)程序。所以大多数人放弃了自己开发USB产品。为了将复杂的问题简单化,西安达泰电子特别设计了USB2.0协议转换模块。这个模块可以被看作是一个USB2.0协议的转换器,将电脑的USB2.0接口转换为一个透明的并行总线,就象单片机总线一样。从而几天之内就可以完成USB2.0产品的设计。
上传时间: 2013-04-24
上传用户:pwcsoft
随着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