ASIC对产品成本和灵活性有一定的要求.基于MCU方式的ASIC具有较高的灵活性和较低的成本,然而抗干扰性和可靠性相对较低,运算速度也受到限制.常规ASIC的硬件具有速度优势和较高的可靠性及抗干扰能力,然而不是灵活性较差,就是成本较高.与传统硬件(CHW)相比,具有一定可配置特性的场可编程门阵列(FPGA)的出现,使建立在可再配置硬件基础上的进化硬件(EHW)成为智能硬件电路设计的一种新方法.作为进化算法和可编程器件技术相结合的产物,可重构FPGA的研究属于EHW的研究范畴,是研究EHW的一种具体的实现方法.论文认为面向分类的专用类可重构FPGA(ASR-FPGA)的研究,可使可重构电路粒度划分的针对性更强、设计更易实现.论文研究的可重构FPGA的BCH通讯纠错码进化电路是一类ASR-FPGA电路的具体方法,具有一定的实用价值.论文所做的工作主要包括:(1)BCH编译码电路的设计——求取实验用BCH码的生成多项式和校验多项式及其相应的矩阵并构造实验用BCH码;(2)建立基于可重构FPGA的基核——构造具有可重构特性的硬件功能单元,以此作为可重构BCH码电路的设计基础;(3)构造实现可重构BCH纠错码电路的方法——建立可重构纠错码硬件电路算法并进行实验验证;(4)在可重构纠错码电路基础上,构造进化硬件控制功能块的结构,完成各进化RLA控制模块的验证和实现.课题是将可重构BCH码的编译码电路的实现作为一类ASR-FPGA的研究目标,主要成果是根据可编程逻辑电路的特点,选择一种可编程树的电路模型,并将它作为可重构FPGA电路的基核T;通过对循环BCH纠错码的构造原理和电路结构的研究,将基核模型扩展为能满足纠错码电路需要的纠错码基本功能单元T;以T作为再划分的基本单元,对FPGA进行"格式化",使T规则排列在FPGA上,通过对T的控制端的不同配置来实现纠错码的各个功能单元;在可重构基核的基础上提出了纠错码重构电路的嵌套式GA理论模型,将嵌套式GA的染色体串作为进化硬件描述语言,通过转换为相应的VHDL语言描述以实现硬件电路;采用RLA模型的有限状态机FSM方式实现了可重构纠错码电路的EHW的各个控制功能块.在实验方面,利用Xilinx FPGA开发系统中的VHDL语言和电路图相结合的设计方法建立了循环纠错码基核单元的可重构模型,进行循环纠错BCH码的电路和功能仿真,在Xilinx公司的Virtex600E芯片进行了FPGA实现.课题在研究模型上选取的是比较基本的BCH纠错码电路,立足于解决基于可重构FPGA核的设计的基本问题.课题的研究成果及其总结的一套ASR-FPGA进化硬件电路的设计方法对实际的进化硬件设计具有一定的实际指导意义,提出的基于专用类基核FPGA电路结构的研究方法为新型进化硬件的器件结构的设计也可提供一种借鉴.
上传时间: 2013-07-01
上传用户:myworkpost
数字超声诊断设备在临床诊断中应用十分广泛,研制全数字化的医疗仪器已成为趋势。尽管很多超声成像仪器设计制造中使用了数字化技术,但是我们可以说现代VLSI 和EDA 技术在其中并没有得到充分有效的应用。随着现代电子信息技术的发展,PLD 在很多与B 型超声成像或多普勒超声成像有关的领域都得到了较好的应用,例如数字通信和相控雷达领域。 在研究现代超声成像原理的基础上,我们首先介绍了常见的数字超声成像仪器的基本结构和模块功能,同时也介绍了现代FPGA 和EDA 技术。随后我们详细分析讨论了B 超中,全数字化波束合成器的关键技术和实现手段。我们设计实现了片内高速异步FIFO 以降低采样率,仿真结果表明资源使用合理且访问时间很小。正交检波方法既能给出灰度超声成像所需要的回波的幅值信息,也能给出多普勒超声成像所需要的回波的相移信息。我们设计实现了基于直接数字频率合成原理的数控振荡器,能够给出一对幅值和相位较平衡的正交信号,且在FPGA 片内实现方案简单廉价。数控振荡器输出波形的频率可动态控制且精度较高,对于随着超声在人体组织深度上的穿透衰减,导致回波中心频率下移的声学物理现象,可视作将回波接收机的中心频率同步动态变化进行补偿。 还设计实现了B 型数字超声诊断仪前端发射波束聚焦和扫描控制子系统。在单片FPGA 芯片内部设计实现了聚焦延时、脉宽和重复频率可动态控制的发射驱动脉冲产生器、线扫控制、探头激励控制、功能码存储等功能模块,功能仿真和时序分析结果表明该子系统为设计实现高速度、高精度、高集成度的全数字化超声诊断设备打下了良好的基础,将加快其研发和制造进程,为生物医学电子、医疗设备和超声诊断等方面带来新思路。
上传时间: 2013-05-30
上传用户:tonyshao
小信号放大器的设计 1. 放大器是射频/微波系统的必不可少的部件。 2. 放大器有低噪声、小信号、高增益、中功率、大功率等。 3. 放大器按工作点分有A、AB、B、C、D…等类型。 4. 放大器指标有:频率范围、动态范围、增益、噪声系数、工作效率、1dB压缩点、三阶交调等
上传时间: 2013-07-23
上传用户:yulg
1) 全数字化设计,交流采样,人机界面采用大屏幕点阵图形128X64 LCD中文液晶显示器。 2) 可实时显示A、B、C各相功率因数、电压、电流、有功功率、无功功率、电压总谐波畸变率、电流总谐波畸变率、电压3、5、7、9、11、13次谐波畸变率、电流3、5、7、9、 11、13次谐波畸变率频率、频率、电容输出显示及投切状态、报警等信息。 3) 设置参数中文提示,数字输入。 4) 电容器控制方案支持三相补偿、分相补偿、混合补偿方案,可通过菜单操作进行设置。 5) 电容器投切控制程序支持等容/编码(1:2、 1:2:3、 1:2:4:8…)等投切方式。 6) 具有手动补偿/自动补偿两种工作方式。 7) 提供电平控制输出接口(+12V),动态响应优于20MS。 8) 取样物理量为无功功率,具有谐波测量及保护功能。 9) 控制器具有RS-485通讯接口,MODBUS标准现场总线协议,方便接入低压配电系统。
上传时间: 2013-11-09
上传用户:dancnc
具有OBFL功能的电路板经配置后,可以把故障相关数据存储在非易失性存储器中,并可在日后加以检索和显示以用于故障分析。这些故障记录有助于电路板故障的事后检查。要实现OBFL系统功能,需要同时使用软硬件。在硬件方面,需要:a)确定给出电路板件故障信息的板载OBFL资源(如温度感应器、存储器、中断资源、电路板ID,等等);b)在电路板或者系统出现故障时用以保存故障信息的板载非易失性存储。OBFL软件的作用是在正常的电路板运行以及电路板故障期间配置电路板变量并将其作为OBFL记录存储在非易失性存储中。OBFL软件还应具备一定的智能,能够分析多项出错事件、记录和历史故障记录,以逐步缩小范围的方式确认故障原因。这种分析可以大大减轻故障排查工作,否则将有大量的OBFL记录需要故障分析工程师手动核查。
上传时间: 2013-11-03
上传用户:1595690
附件附带破解补丁 浩辰CAD 2012专业版破解方法: 按正常安装浩辰CAD 2012专业版,点击安装KeyGen.exe。 浩辰CAD2012,以增强软件实用性、易用性为主要目标,新增了大量实用功能,改进了着色、消隐的正确性,提升了大幅面光栅图像处理的性能,同时改进了LISP\VBA二次开发接口的正确性和兼容性。 浩辰CAD 2012根据国内外用户的需求,增加了大量实用功能,例如动态块、DWF文件插入、隔离隐藏对象、转换EXCEL表格、块属性管理器、放样、超级填充等。 浩辰cad2012新增功能: 1、动态块(bedit) 动态块具有灵活性和智能性。 用户在操作时可以轻松地更改图形中的动态块参照。 可以通过自定义夹点或自定义特性来操作动态块参照中的几何图形。 a)通过设置图块中元素的可见性,一个图块中可以包含一种图形的多种形态,如下图的汽车模块就包含跑车、轿车和卡车的各向视图,只需在可见性列表中选择一个选项,就可以显示相应的图形。 还可对图块中的图形设置参数和动作,可对图块的整体或部分图形进行移动、旋转、翻转、缩放、阵列等;并可建立查询列表,对图块进行参数化控制。通过图块的动作设置,一个图块可以派生出数个图块,如下图所示: 2、DWF参考底图(dwfattach) 可以将dwf文件插入到当前图中作为参考底图,并可以捕捉到底图的端点、中点,如下图所示: 3、对象隔离、对象隐藏、取消对象隔离 可将选择的对象暂时隐藏,也可将选择对象以外的其他所有对象隐藏。当图中对象较多,利用此命令可以简化图纸,方便后续操作,操作起来比图层隔离更加简便、直观。 4、冻结其它图层和锁定其它图层 浩辰CAD 之前版本提供了图层隔离的功能,冻结其他图层和锁定其它图层与图层隔离功能类似,可以通过选择需要显示或可编辑对象,将其他图层进行冻结和锁定。 5、CAD表格转EXCEL表格 可以直接选择CAD中由直线、多段线和单行文字、多行文字组成的表格输出为EXCEL表格。 6、文字递增 可以对序号、编号、数值进行递增复制,间距、数量和增量均可随心所欲地控制。 7、多段线布尔运算 可直接对封闭的多段线进行差并交计算,无需转换面域,有时比修剪更简便。 8、拼写检查(spell) 此功能实现对用户输入的单词或文章进行单词校验,提示匹配的单词列表,方便用户进行正确的单词填写工作。可以实现不同语言的单词校验工作,包括英文,德文,等8种语言。 可以对全部实体(包括布局,模型中的所有实体)进行校验。 可以分别对布局或模型中的实体进行校验。 可以单独对一个实体或一个选择集进行校验。 方便用户自定义词典。 兼容的自定义词典。 支持文字,块内文字,块属性,属性,标注的校验。 9、放样(Loft) 通过对包含两条或者两条以上的横截面曲线的一组曲线进行放样(绘制实体或曲面)来创建三维实体或曲面。 10、块属性管理器(battman) 创建带属性的块后,执行 battman 对块中属性定义进行查询和修改,如果将修改应用到所有块参照,则对应块的块参照中属性实体也会做对应修改。 11、超级填充(superhatch) 超级填充命令有点像hatch命令,不同的是,可以使用该命令将光栅图像、块、外部参照和擦除这些实体作为填充实体对闭合区域进行填充。 12、线上写字 可以在选择线上书写文字,线会被自动打断,文字会放到线中间。 ◆ 重要功能改进 1、超链接 浩辰CAD 2012版的超链接不仅修改了以前存在的一些错误,而且提供了更为丰富的功能。 a)支持web链接的浏览和连接的设置。 b)支持打开操作系统可打开的所有文件。 c)支持dwg图纸的视图定位。 d)支持超链接的复制粘贴。 e)可以通过鼠标光标状态来判断是否存在链接,方便用户判断是否存在链接。 f)可以通过ctrl+鼠标点击打开设置的文件,方便用户的操作。 g)可以通过右键打开块内实体的链接。 2、光栅图像 浩辰CAD 2012版不仅增加了图像格式的支持,同时提升了大分辨率光栅图像的插入、显示和打印的效果和速度。 a) 增加了对多种图像格式的支持,诸如:CALS-1(*.cal,*.mil,*.rst,*.cg4)、RLC、GEOSPORT(.bil)、PICT(.pct/.pict)、IG4、Autodesk Animator(.fil/.flc)。 b) 内存使用问题,可以插入多张图片,内存不会增加。 c) 光栅图像打印问题(不清晰)。 d) 插入大图像时,预览速度大幅提升。 3、二次开发改进 浩辰CAD 2012版针对二次开发商和用户提出的一些LISP及VBA与AutoCAD存在的兼容性问题进行了系统梳理,兼容性有明显提升,此外还针对国外二次开发商的需求开发了Lisp调试器。 a) Lisp改进 处理了线程问题、命令范围值问题、VLX解析问题,对Lisp程序执行速度进行了优化。 b) VBA改进 处理了VBA的文档管理、接口不全、接口错误、类派生关系错误问题。 c) Lisp调试器 用户在使用浩辰CAD时,由于LISP与AutoCAD不完全兼容,用户需要一个工具进行调试,以协助用户解决及分析报告LISP问题。此系统以完成调试功能为主,不处理词法分析前的映射。适用于中级以上开发用户。
上传时间: 2013-11-10
上传用户:giraffe
本书分三部分介绍在美国广泛应用的、高功能的M68HC11系列单片机(8位机 ,Motorola公司)。内容包括M68HC11的结构与其基本原理、开发工具EVB(性能评估板)以及开发和应用技术。本书在介绍单片机硬、软件的基础上,进一步介绍了在美国实验室内,如何应用PC机及EVB来进行开发工作。通过本书的介绍,读者可了解这种单片机的原理并学会开发和应用方法。本书可作为大专院校单片机及其实验的教材(本科、短训班)。亦可供开发、应用单片机的各专业(计算机、机电、化工、纺织、冶金、自控、航空、航海……)有关技术人员参考。 第一部分 M68HC11 结构与原理Motorola单片机 1 Motorla单片机 1.1 概述 1.1.1 Motorola 单片机发展概况(3) 1.1.2 Motorola 单片机结构特点(4) 1.2 M68HC11系列单片机(5) 1.2.1 M68HC11产品系列(5) 1.2.2 MC68HC11E9特性(6) 1.2.3 MC68HC11E9单片机引脚说明(8) 1.3 Motorola 32位单片机(14) 1.3.1中央处理器(CPU32)(15) 1.3.2 定时处理器(TPU)(16) 1.3.3 串行队列模块(QSM)(16) 1.3.4 系统集成模块 (SIM)(16) 1.3.5 RAM(17) 2 系统配置与工作方式 2.1 系统配置(19) 2.1.1 配置寄存器CONFIG(19) 2.1.2 CONFIG寄存器的编程与擦除(20) 2?2 工作方式选择(21) 2.3 M68HC11的工作方式(23) 2.3.1 普通单片工作方式(23) 2.3.2 普通扩展工作方式(23) 2.3.3 特殊自举方式(27) 2.3.4 特殊测试方式(28) 3 中央处理器(CPU)与片上存储器 3.1 CPU寄存器(31) 3?1?1 累加器A、B和双累加器D(32) 3.1.2 变址寄存器X、Y(32) 3.1.3 栈指针SP(32) 3.1.4 程序计数器PC(33) 3.1.5 条件码寄存器CCR(33) 3.2 片上存储器(34) 3.2.1 存储器分布(34) 3.2.2 RAM和INIT寄存器(35) 3.2.3 ROM(37) 3.2.4 EEPROM(37) 3.3 M68HC11 CPU的低功耗方式(39) 3.3.1 WAIT方式(39) 3.3.2 STOP方式(40) 4 复位和中断 4.1 复位(41) 4.1.1 M68HC11的系统初始化条件(41) 4.1.2 复位形式(43) 4.2 中断(48) 4.2.1 条件码寄存器CCR中的中断屏蔽位(48) 4.2.2 中断优先级与中断矢量(49) 4.2.3 非屏蔽中断(52) 4.2.4 实时中断(53) 4.2.5 中断处理过程(56) 5 M68HC11指令系统 5.1 M68HC11寻址方式(59) 5.1.1 立即寻址(IMM)(59) 5.1.2 扩展寻址(EXT)(60) 5.1.3 直接寻址(DIR)(60) 5.1.4 变址寻址(INDX、INDY)(61) 5.1.5 固有寻址(INH)(62) 5.1.6 相对寻址(REL)(62) 5.1.7 前置字节(63) 5.2 M68HC11指令系统(63) 5.2.1 累加器和存储器指令(63) 5.2.2 栈和变址寄存器指令(68) 5.2.3 条件码寄存器指令(69) 5.2.4 程序控制指令(70) 6 输入与输出 6.1 概述(73) 6.2 并行I/O口(74) 6.2.1 并行I/O寄存器(74) 6.2.2 应答I/O子系统(76) 6?3 串行通信接口SCI(82) 6.3.1 基本特性(83) 6.3.2 数据格式(83) 6.3.3 SCI硬件结构(84) 6.3.4 SCI寄存器(86) 6.4 串行外围接口SPI(92) 6.4.1 SPI特性(92) 6.4.2 SPI引脚信号(92) 6.4.3 SPI结构(93) 6.4.4 SPI寄存器(95) 6.4.5 SPI系统与外部设备进行串行数据传输(99) 7 定时器系统与脉冲累加器 7.1 概述(105) 7.2 循环计数器(107) 7.2.1 时钟分频器(107) 7.2.2 计算机正常工作监视功能(110) 7.2.3 定时器标志的清除(110) 7.3 输入捕捉功能(111) 7.3.1 概述(111) 7.3.2 定时器输入捕捉锁存器(TIC1、TIC2、TIC3) 7.3.3 输入信号沿检测逻辑(113) 7.3.4 输入捕捉中断(113) 7.4 输出比较功能(114) 7.4.1 概述(114) 7.4.2 输出比较功能使用的寄存器(116) 7.4.3 输出比较示例(118) 7.5 脉冲累加器(119) 7.5.1 概述(119) 7.5.2 脉冲累加器控制和状态寄存器(121) 8 A/D转换系统 8.1 电荷重新分布技术与逐次逼近算法(125) 8.1.1 基本电路(125) 8.1.2 A/D转换逐次逼近算法原理(130) 8.2 M68HC11中A/D转换的实现方法(131) 8.2.1 逐次逼近A/D转换器(131) 8.2.2 控制寄存器(132) 8.2.3 系统控制逻辑(135)? 9 单片机的内部操作 9.1 用立即> 图书前言 美国Motorola公司从80年代中期开始推出的M68HC11系列单片机是当今功能最强、性能/价格比最好的八位单片微计算机之一。在美国,它已被广泛地应用于教学和各种工业控制系统中。? 该单片机有丰富的I/O功能,完善的系统保护功能和软件控制的节电工作方式 。它的指令系统与早期Motorola单片机MC6801等兼容,同时增加了91条新指令。其中包含16位乘法、除法运算指令等。 为便于用户开发和应用M68HC11单片机,Motorola公司提供了多种开发工具。M68HC11 EVB (Evaluation Board)性能评估板就是一种M68HC11系列单片机的廉价开发工具。它既可用来 调试用户程序,又可在仿真方式下运行。为方便用户,M68HC11 EVB可与IBM?PC连接 ,借助于交叉汇编、通信程序等软件,在IBM?PC上调试程序。? 本书分三部分(共15章)介绍了M68HC11的结构和基本原理、开发工具-EVB及开发应用实例等。第一部分(1~9章),介绍M68HC11的结构和基本原理。包括概述,系统配置与工作方式、CPU和存储器、复位和中断、指令系统、I/O、定时器系统和脉冲累加器、A/D转换系统、单片机的内部操作等。第二部分(10~11章),介绍M68HC11 EVB的原理和技术特性以及EVB的应用。第三部分(12~15章),介绍M68HC11的开发与应用技术。包括基本的编程练习、应用程序设计、接口实验、接口设计及应用等。 读者通过学习本书,不仅可了解M68HC11的硬件、软件,而且可了解使用EVB开发和应用M68HC11单片机的方法。在本书的第三部分专门提供了一部分实验和应用程序。? 本书系作者张宁作为高级访问学者,应邀在美国马萨诸塞州洛厄尔大学(University of Massachusetts Lowell)工作期间完成的。全书由张宁执笔。在编著过程中,美国洛厄尔大学的R·代克曼教授?(Professor Robert J. Dirkman)多次与张宁一起讨论、研究,并提供部分资料及实验数据。参加编写和审校等工作的还有王云霞、孙晓芳、刘安鲁、张籍、来安德、张杨等同志。? 为将M68HC11系列单片机尽快介绍给我国,美国Motorola公司的Terrence M.S.Heng先生曾大力支持本书的编著和出版。在此表示衷心感谢。
上传时间: 2013-10-27
上传用户:rlgl123
本书针对Atmel公司的AVR系列单片机和ImageCraft公司的ICC AVR开发环境,详细地介绍了AT90LS8535的C语言程序设计。全书共有13章,其内容既涉及到了单片机的结构原理、指令系统、内容资源和外部功能扩展,又包含了单片机的编程工具——ICC AVR C编程器的数据类型、控制流、函数和指针等。本书的特点是:深入浅出,从最基本的概念开始,循序渐进地讲解单片机的应用开发;列举了大量实例,使读者能从实际应用中掌握单片机的开发与应用技术。本书适合作为从事单片机开发人员的参考用书。书中先后讲解了C语言基础、AVR单片机基础,并举了一些简单的实例。本书非常适合初学者。 【目录信息】 第1章 单片机系统概述 1. 1 AVR系列单片机的特点 1. 2 AT90系列单片机简介 第2章 AT90LS8535单片机的基础知识 2. 1 AT90LS8535单片机的总体结构 2. 1. 1 AT90LS8535单片机的中央处理器 2. 1. 2 AT90LS8535单片机的存储器组织 2. 1. 3 AT90LS8535单片机的I/O接口 2. 1. 4 AT90LS8535单片机的内部资源 2. 1. 5 AT90LS8535单片机的时钟电路 2. 1. 6 AT90LS8535单片机的系统复位 2. 1. 7 AT90LS8535单片机的节电方式 2. 1. 8 AT90LS8535单片机的芯片引脚 2. 2 AT90LS8535单片机的指令系统 2. 2. 1 汇编指令格式 2. 2. 2 寻址方式 2. 2. 3 伪指令 2. 2. 4 指令类型及数据操作方式 2. 3 应用程序设计 2. 3. 1 程序设计方法 2. 3. 2 应用程序举例 第3章 AT90LS8535单片机的C编程 3. 1 支持高级语言编程的AVR系列单片机 3. 2 AVR的C编译器 3. 3 ICCAVR介绍 3. 3. 1 安装ICCAVR 3. 3. 2 设置ICCAVR 3. 4 用ICCAVR编写应用程序 3. 5 下载程序文件 第4章 数据类型. 运算符和表达式 4. 1 ICCAVR支持的数据类型 4. 2 常量与变量 4. 2. 1 常量 4. 2. 2 变量 4. 3 AT90LS8535的存储空间 4. 4 算术和赋值运算 4. 4. 1 算术运算符和算术表达式 4. 4. 2 赋值运算符和赋值表达式 4. 5 逻辑运算 4. 6 关系运算 4. 7 位操作 4. 7. 1 位逻辑运算 4. 7. 2 移位运算 4. 8 逗号运算 第5章 控制流 5. 1 C语言的结构化程序设计 5. 1. 1 顺序结构 5. 1. 2 选择结构 5. 1. 3 循环结构 5. 2 选择语句 5. 2. 1 if语句 5. 2. 2 switch分支 5. 2. 3 选择语句的嵌套 5. 3 循环语句 5. 3. 1 while语句 5. 3. 2 do…while语句 5. 3. 3 for语句 5. 3. 4 循环语句嵌套 5. 3. 5 break语句和continue语句 第6章 函数 6. 1 函数的定义 6. 1. 1 函数的定义的一般形式 6. 1. 2 函数的参数 6. 1. 3 函数的值 6. 2 函数的调用 6. 2. 1 函数的一般调用 6. 2. 2 函数的递归调用 6. 2. 3 函数的嵌套调用 6. 3 变量的类型及其存储方式 6. 3. 1 局部变量 6. 3. 2 局部变量的存储方式 6. 3. 3 全局变量 6. 3. 4 全局变量的存储方式 6. 4 内部函数和外部函数 6. 4. 1 内部函数 6. 4. 2 外部函数 第7章 指针 7. 1 指针和指针变量 7. 2 指针变量的定义和引用 7. 2. 1 指针变量的定义 7. 2. 2 指针变量的引用 7. 2. 3 指针变量作为函数参数 7. 3 数组与指针 7. 3. 1 指向数组元素的指针变量 7. 3. 2 数组元素的引用 通过指针 7. 3. 3 数组名作为函数参数 7. 3. 4 指向多维数组的元素的指针变量 7. 4 字符串与指针 7. 4. 1 字符串的表示形式 7. 4. 2 字符串指针变量与字符数组的区别 7. 5 函数与指针 7. 5. 1 函数指针变量 7. 5. 2 指针型函数 7. 6 指向指针的指针 7. 7 有关指针数据类型和运算小结 7. 7. 1 有关指针的数据类型的小结 7. 7. 2 指针运算的小结 第8章 结构体和共用体 8. 1 结构体的定义和引用 8. 1. 1 结构体类型变量的定义 8. 1. 2 结构体类型变量的引用 8. 2 结构类型的说明 8. 3 结构体变量的初始化和赋值 8. 3. 1 结构体变量的初始化 8. 3. 2 结构体变量的赋值 8. 4 结构体数组 8. 4. 1 结构体数组的定义 8. 4. 2 结构体数组的初始化 8. 5 指向结构体类型变量的指针 8. 5. 1 指向结构体变量的指针 8. 5. 2 指向结构体数组的指针 8. 5. 3 指向结构体变量的指针做函数参数 8. 6 共用体 8. 6. 1 共用体的定义 8. 6. 2 共用体变量的引用 第9章 A190LS8535的内部资源 9. 1 I/O 口 9. 1. 1 端口A 9. 1. 2 端口B 9. 1. 3 端口C 9. 1. 4 端口D 9. 1. 5 I/O口的编程 9. 2 中断 9. 2. 1 单片机的中断功能 9. 2. 2 AT90LS8535单片机的中断系统 9. 2. 3 1CCAVRC编译器的中断操作 9. 2. 4 中断的编程 9. 3 串行数据通信 9. 3. 1 数据通信基础 9. 3. 2 AT90LS8535的同步串行接口 9. 3. 3 AT90LS8535的异步串行接口 9. 4 定时/计数器 9. 4. 1 定时/计数器的分频器 9. 4. 2 8位定时/计数器0 9. 4. 3 16位定时/计数器1 9. 4. 4 8位定时/计数器2 9. 5 EEPROM 9. 5. 1 与EEPROM有关的寄存器 9. 5. 2 EEPROM读/写操作 9. 5. 3 EEPROM的应用举例 9. 6 模拟量输入接口 9. 6. 1 模数转换器的结构 9. 6. 2 ADC的使用 9. 6. 3 与模数转换器有关的寄存器 9. 6. 4 ADC的噪声消除 9. 6. 5 ADC的应用举例 9. 7 模拟比较器 9. 7. 1 模拟比较器的结构 9. 7. 2 与模拟比较器有关的寄存器 9. 7. 3 模拟比较器的应用举例 第10章 AT90LS8535的人机接口编程 10. 1 键盘接口 10. 1. 1 非矩阵式键盘 10. 1. 2 矩阵式键盘 10. 2 LED显示输出 10. 2. 1 LED的静态显示 10. 2. 2 LED的动态扫描显示 10. 2. 3 动态扫描显示专用芯片MC14489 10. 3 LCD显示输出 10. 3. 1 字符型LCD 10. 3. 2 点阵型LCD 10. 4 ISD2500系列语音芯片的编程 10. 4. 1 ISD2500的片内结构和引脚 10. 4. 2 ISD2500的操作 10. 4. 3 ISD2500和单片机的接口及编程 10. 5 TP-uP微型打印机 10. 5. 1 TP-uP打印机的接口和逻辑时序 10. 5. 2 P-uP打印机的打印命令和字符代码 10. 5. 3 AT90LS8535与TP-uP系列打印机的接口及编程 10. 6 IC卡 10. 6. 1 IC卡读写装置 10. 6. 2 IC卡软件 第11章 AT90LS8535的外围扩展 11. 1 简单I/O扩展芯片 11. 1. 1 用74LS377扩展数据输出接口 11. 1. 2 数据输入接口 11. 2 模拟量输出 11. 2. 1 D/A转换器简介 11. 2. 2 8位数模转换器DAC0832 11. 2. 3 8位数模转换器与单片机的接口及编程 11. 2. 4 12位数模转换器DACl230 11. 2. 5 12位数模转换器与单片机的接口及编程 11. 3 可编程I/O扩展芯片8255A 11. 3. 1 8255A的引脚和内部结构 11. 3. 2 8255A的工作方式 11. 3. 3 8255A的控制字 11. 3. 4 AT90LS8535和8255A的接口 11. 4 带片内RAM的I/O扩展芯片8155 11. 4. 1 8155的引脚和内部结构. 11. 4. 2 8155的I/O口工作方式 11. 4. 3 8155的定时/计数器 11. 4. 4 8155的命令和状态字 11. 4. 5 AT90LS8535与8155的接口及编程 11. 5 定时/计数器芯片8253 11. 5. 1 8253的信号引脚和逻辑结构 11. 5. 2 8253的工作方式 11. 5. 3 8253的控制字 11. 5. 4 AT90LS8535与8253的接口及编程 11. 6 实时时钟芯片DS1302 11. 6. 1 DS1302的引脚和内部结构 11. 6. 2 DS1302的控制方式 11. 6. 3 AT90LS8535与DS1302的接口与编程 11. 7 数字温度传感器DS18B20 11. 7. 1 DSl8B20的引脚和内部结构 11. 7. 2 DS18B20的温度测量 11. 7. 3 AT90LS8535与DS18B20的接口与编程 第12章 AT90LS8535的通信编程 12. 1 串口通信 12. 1. 1 异步串口UART通信 12. 1. 2 同步串口SPI通信 12. 2 I2C总线 12. 2. 1 I2C总线协议 12. 2. 2 采用AT90LS8535的并行I/O口模拟I2C总线 12. 3 CAN总线 12. 3. 1 CAN总线的特点 12. 3. 2 CAN协议的信息格式 12. 3. 3 CAN控制器SJA1000 12. 3. 4 AT90LS8535与SJA1000的接口及编程 12. 4 AT90LS8535单片机与PC的串行通信 12. 4. 1 基于VC 6. 0的PC串口通信 12. 4. 2 应用实例 第13章 系统设计中的程序处理方法 13. 1 数字滤波处理 13. 1. 1 平滑滤波 13. 1. 2 中值滤波 13. 1. 3 程序判断滤波 13. 2 非线性处理 13. 2. 1 查表法 13. 2. 2 线性插值法
上传时间: 2013-11-04
上传用户:元宵汉堡包
I/O 型单片机使用手册 目录 间接寻址寄存器 – IAR, IAR0, IAR1 .............................................35间接寻址指针 – MP, MP0, MP1 ......................................................35存储区指针 – BP .........................................................................36累加器 – ACC...................................................................................37程序计数器低字节寄存器 – PCL....................................................37表格寄存器 – TBLP,TBHP,TBLH....................................................37看门狗定时寄存器 – WDTS............................................................38状态寄存器 – STATUS.....................................................................38中断控制寄存器 – INTC,INTC0,INTC1 .........................................39定时/计数寄存器...............................................................................39输入/输出端口和控制寄存器...........................................................40UART 寄存器 .USR,UCR1,UCR2,TXR/RXR,BRG.......................40输入/输出端口..........................................................................................41上拉电阻............................................................................................41PA 口的唤醒......................................................................................41输入/输出端口控制寄存器...............................................................41引脚共享功能....................................................................................42编程注意事项....................................................................................45定时/计数器..............................................................................................46配置定时/计数器输入时钟源...........................................................47定时/计数寄存器 – TMR, TMR0,TMR0L/TMR0H,TMR1L/TMR1H,TMR2.....................................................................49定时/计数控制寄存器 – TMRC,TMR0C,TMR1C,TMR2C............50定时器模式........................................................................................53事件计数器模式................................................................................53脉冲宽度测量模式............................................................................54可编程分频器(PFD)和蜂鸣器的应用..............................................55预分频器(Prescaler)...........................................................................56输入/输出接口...................................................................................56编程注意事项....................................................................................57定时/计数器应用范例.......................................................................57中断............................................................................................................59中断寄存器........................................................................................59中断优先权........................................................................................62外部中断............................................................................................63定时/计数器中断...............................................................................64UART 中断........................................................................................64编程注意事项....................................................................................65复位和初始化............................................................................................66复位....................................................................................................66目录iii异步串行口——UART............................................................................74UART 特性..........................................................................................74UART 外部引脚..................................................................................74数据发送.............................................................................................75UART 状态控制寄存器......................................................................75波特率发生器.....................................................................................79UART 设置与控制..............................................................................81UART 发送器......................................................................................83UART 接收器......................................................................................84接收错误处理.....................................................................................85接收中断图解.....................................................................................86地址检测模式.....................................................................................86暂停模式下的UART 功能.................................................................87UART 应用范例.................................................................................87振荡器........................................................................................................89系统时钟配置....................................................................................89系统晶体/陶瓷振荡器.......................................................................89系统电阻电容振荡器........................................................................90内部系统电阻电容振荡器................................................................90RTC 振荡器........................................................................................91看门狗定时振荡器............................................................................91暂停和唤醒................................................................................................92暂停.....................................................................................................92进入暂停.............................................................................................92静态电流.............................................................................................92唤醒....................................................................................................92看门狗定时器............................................................................................94掩膜选项....................................................................................................96应用电路....................................................................................................97第二部份 程序语言.....................................................................99第二章 指令集介绍.................................................................................101指令集......................................................................................................101指令周期..........................................................................................101数据的传送......................................................................................101算术运算..........................................................................................102逻辑和移位运算..............................................................................102分支和控制的转换..........................................................................102位运算..............................................................................................102查表运算..........................................................................................103其它运算..........................................................................................103指令设定一览表......................................................................................104惯例..................................................................................................104I/O 型单片机使用手册iv第三章 指令定义.....................................................................................107第四章 汇编语言和编译器.....................................................................121常用符号..................................................................................................121语句语法..................................................................................................122名称..................................................................................................122操作项..............................................................................................122操作数项..........................................................................................122注解..................................................................................................122编译伪指令..............................................................................................123条件编译伪指令..............................................................................123文件控制伪指令..............................................................................124程序伪指令......................................................................................126数据定义伪指令..............................................................................130宏指令..............................................................................................132汇编语言指令..........................................................................................136名称..................................................................................................136助记符..............................................................................................136操作数、运算子和表达式..............................................................136其它..........................................................................................................139前置引用..........................................................................................139局部标号..........................................................................................139汇编语言保留字..............................................................................140编译器选项..............................................................................................141编译列表文件格式..................................................................................141源程序列表......................................................................................141编译总结..........................................................................................142其它..................................................................................................142第三部份 开发工具................................................................... 145第五章 单片机开发工具.........................................................................147HT-IDE 集成开发环境............................................................................147盛群单片机仿真器(HT-ICE) ..................................................................149HT-ICE 接口卡.................................................................................149OTP 烧写器.....................................................................................149OTP 适配卡.....................................................................................149系统配置..................................................................................................150HT-ICE 接口卡设置........................................................................151安装..........................................................................................................153系统要求..........................................................................................153硬件安装..........................................................................................153软件安装..........................................................................................154目录v第六章 快速开始.....................................................................................159步骤一:建立一个新项目..............................................................159步骤二:将源程序文件加到项目中..............................................159步骤三:编译项目..........................................................................159步骤四:烧写OTP 单片机.............................................................160步骤五:传送程序与掩膜选项单至Holtek ..................................160附录............................................................................................... 161附录A 特性曲线图...................................................................................163附录B 封装信息.......................................................................................173
上传时间: 2013-10-18
上传用户:blacklee
at91rm9200启动过程教程 系统上电,检测BMS,选择系统的启动方式,如果BMS为高电平,则系统从片内ROM启动。AT91RM9200的ROM上电后被映射到了0x0和0x100000处,在这两个地址处都可以访问到ROM。由于9200的ROM中固化了一个BOOTLOAER程序。所以PC从0X0处开始执行这个BOOTLOAER(准确的说应该是一级BOOTLOADER)。这个BOOTLOER依次完成以下步骤: 1、PLL SETUP,设置PLLB产生48M时钟频率提供给USB DEVICE。同时DEBUG USART也被初始化为48M的时钟频率; 2、相应模式下的堆栈设置; 3、检测主时钟源(Main oscillator); 4、中断控制器(AIC)的设置; 5、C 变量的初始化; 6、跳到主函数。 完成以上步骤后,我们可以认为BOOT过程结束,接下来的就是LOADER的过程,或者也可以认为是装载二级BOOTLOER。AT91RM9200按照DATAFLASH、EEPROM、连接在外部总线上的8位并行FLASH的顺序依次来找合法的BOOT程序。所谓合法的指的是在这些存储设备的开始地址处连续的存放的32个字节,也就是8条指令必须是跳转指令或者装载PC的指令,其实这样规定就是把这8条指令当作是异常向量表来处理。必须注意的是第6条指令要包含将要装载的映像的大小。关于如何计算和写这条指令可以参考用户手册。一旦合法的映像找到之后,则BOOT程序会把找到的映像搬到SRAM中去,所以映像的大小是非常有限的,不能超过16K-3K的大小。当BOOT程序完成了把合法的映像搬到SRAM的任务以后,接下来就进行存储器的REMAP,经过REMAP之后,SRAM从映设前的0X200000地址处被映设到了0X0地址并且程序从0X0处开始执行。而ROM这时只能在0X100000这个地址处看到了。至此9200就算完成了一种形式的启动过程。如果BOOT程序在以上所列的几种存储设备中找到合法的映像,则自动初始化DEBUG USART口和USB DEVICE口以准备从外部载入映像。对DEBUG口的初始化包括设置参数115200 8 N 1以及运行XMODEM协议。对USB DEVICE进行初始化以及运行DFU协议。现在用户可以从外部(假定为PC平台)载入你的映像了。在PC平台下,以WIN2000为例,你可以用超级终端来完成这个功能,但是还是要注意你的映像的大小不能超过13K。一旦正确从外部装载了映像,接下来的过程就是和前面一样重映设然后执行映像了。我们上面讲了BMS为高电平,AT91RM9200选择从片内的ROM启动的一个过程。如果BMS为低电平,则AT91RM9200会从片外的FLASH启动,这时片外的FLASH的起始地址就是0X0了,接下来的过程和片内启动的过程是一样的,只不过这时就需要自己写启动代码了,至于怎么写,大致的内容和ROM的BOOT差不多,不同的硬件设计可能有不一样的地方,但基本的都是一样的。由于片外FLASH可以设计的大,所以这里编写的BOOTLOADER可以一步到位,也就是说不用像片内启动可能需要BOOT好几级了,目前AT91RM9200上使用较多的bootloer是u-boot,这是一个开放源代码的软件,用户可以自由下载并根据自己的应用配置。总的说来,笔者以为AT91RM9200的启动过程比较简单,ATMEL的服务也不错,不但提供了片内启动的功能,还提供了UBOOT可供下载。笔者写了一个BOOTLODER从片外的FLASHA启动,效果还可以。 uboot结构与使用uboot是一个庞大的公开源码的软件。他支持一些系列的arm体系,包含常见的外设的驱动,是一个功能强大的板极支持包。其代码可以 http://sourceforge.net/projects/u-boot下载 在9200上,为了启动uboot,还有两个boot软件包,分别是loader和boot。分别完成从sram和flash中的一级boot。其源码可以从atmel的官方网站下载。 我们知道,当9200系统上电后,如果bms为高电平,则系统从片内rom启动,这时rom中固化的boot程序初始化了debug口并向其发送'c',这时我们打开超级终端会看到ccccc...。这说明系统已经启动,同时xmodem协议已经启动,用户可以通过超级终端下载用户的bootloader。作为第一步,我们下载loader.bin.loader.bin将被下载到片内的sram中。这个loder完成的功能主要是初始化时钟,sdram和xmodem协议,为下载和启动uboot做准备。当下载了loader.bin后,超级终端会继续打印:ccccc....。这时我们就可以下在uboot了。uboot将被下载到sdram中的一个地址后并把pc指针调到此处开始执行uboot。接着我们就可以在终端上看到uboot的shell启动了,提示符uboot>,用户可以uboot>help 看到命令列表和大概的功能。uboot的命令包含了对内存、flash、网络、系统启动等一些命令。 如果系统上电时bms为低电平,则系统从片外的flash启动。为了从片外的flash启动uboot,我们必须把boot.bin放到0x0地址出,使得从flash启动后首先执行boot.bin,而要少些boot.bin,就要先完成上面我们讲的那些步骤,首先开始从片内rom启动uboot。然后再利用uboot的功能完成把boot.bin和uboot.gz烧写到flash中的目的,假如我们已经启动了uboot,可以这样操作: uboot>protect off all uboot>erase all uboot>loadb 20000000 uboot>cp.b 20000000 10000000 5fff uboot>loadb 21000000 uboot>cp.b 210000000 10010000 ffff 然后系统复位,就可以看到系统先启动boot,然后解压缩uboot.gz,然后启动uboot。注意,这里uboot必须压缩成.gz文件,否则会出错。 怎么编译这三个源码包呢,首先要建立一个arm的交叉编译环境,关于如何建立,此处不予说明。建立好了以后,分别解压源码包,然后修改Makefile中的编译器项目,正确填写你的编译器的所在路径。 对loader和boot,直接make。对uboot,第一步:make_at91rm9200dk,第二步:make。这样就会在当前目录下分别生成*.bin文件,对于uboot.bin,我们还要压缩成.gz文件。 也许有的人对loader和boot搞不清楚为什么要两个,有什么区别吗?首先有区别,boot主要完成从flash中启动uboot的功能,他要对uboot的压缩文件进行解压,除此之外,他和loader并无大的区别,你可以把boot理解为在loader的基础上加入了解压缩.gz的功能而已。所以这两个并无多大的本质不同,只是他们的使命不同而已。 特别说名的是这三个软件包都是开放源码的,所以用户可以根据自己的系统的情况修改和配置以及裁减,打造属于自己系统的bootloder。
上传时间: 2013-10-27
上传用户:wsf950131