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

而且可以通过按键调整时间a

  • 基于以太网接口的ARMJTAG仿真器设计

    在嵌入式系统的开发过程中,仿真器是一个必不可少的开发工具。特别是对于初级嵌入式系统开发工程师,借助一个功能强大的仿真器进行开发工作,可以达到事半功倍的效果。一个嵌入式仿真、调试系统支持单步执行、设置断点、观察变量内容及寄存器内容等功能。开发人员可以通过各类调试功能观察变量和寄存器的变化,从而可以很清楚的了解整个程序运行的状况,及时的调整和修改程序,并不需要反复的向芯片烧写程序,就可以完成对于程序的调试工作。 @@ 本文在分析了目前市场上常用仿真器的设计原理的基础上,提出了以三星公司的S3C44BO ARM7处理器为主CPU,通过以太网接口进行数据传输的ARMJTAT仿真器的设计方案。利用这种仿真器进行程序调试,不仅可以大幅度的提高下载速度,还可以实现仿真器资源的共享,而且调试时程序是在目标板上运行,仿真更接近于目标硬件。 @@ 文中首先对于传统仿真器的设计原理、作用、存在的问题进行了研究,然后提出了基于S3C44BO的以太网接口的ARM-JTAG仿真器的设计。该仿真器的设计主要分为以下几步:第一,提出总体设计方案,包括硬件的设计及软件的设计。第二,详细介绍该仿真器的硬件结构设计和程序开发过程,其中特别对以太网接口的设计进行了研究。第三,总结了该仿真器的功能、特点。 @@关键词:仿真器;S3C44BO;以太网接口;JTAG;LwIP

    标签: ARMJTAG 以太网接口 仿真器

    上传时间: 2013-06-16

    上传用户:253189838

  • 基于ARM的TimeToCount辐射测量仪的研究

    随着半导体工艺的飞速发展和芯片设计水平的不断进步,ARM微处理器的性能得到大幅度地提高,同时其芯片的价格也在不断下降,嵌入式系统以其独有的优势,己经广泛地渗透到科学研究和日常生活的各个方面。 本文以ARM7 LPC2132处理器为核心,结合盖革一弥勒计数管对Time-To-Count辐射测量方法进行研究。ARM结构是基于精简指令集计算机(RISC)原理而设计的,其指令集和相关的译码机制比复杂指令集计算机要简单得多,使用一个小的、廉价的ARM微处理器就可实现很高的指令吞吐量和实时的中断响应。基于ARM7TDMI-S核的LPC2132微处理器,其工作频率可达到60MHz,这对于Time-To-Count技术是非常有利的,而且利用LPC2132芯片的定时/计数器引脚捕获功能,可以直接读取TC中的计数值,也就是说不再需要调用中断函数读取TC值,从而大大降低了计数前杂质时间。本文是在我师兄吕军的《Time-To-Count测量方法初步研究》基础上,使用了高速的ARM芯片,对基于MCS-51的Time-To-Count辐射测量系统进行了改进,进一步论证了采用高速ARM处理器芯片可以极大的提高G-M计数器的测量范围与测量精度。 首先,讨论了传统的盖革-弥勒计数管探测射线强度的方法,并指出传统的脉冲测量方法的不足。然后讨论了什么是Time-To-Count测量方法,对Time-To-Count测量方法的理论基础进行分析。指出Time-To-Count方法与传统的脉冲计数方法的区别,以及采用Time-To-Count方法进行辐射测量的可行性。 接着,详细论述基于ARM7 LPC2132处理器的Time-To-Count辐射测量仪的原理、功能、特点以及辐射测量仪的各部分接口电路设计及相关程序的编制。 最后得出结论,通过高速32位ARM处理器的使用,Time-To-Count辐射测量仪的精度和量程均得到很大的提高,对于Y射线总量测量,使用了ARM处理器的Time-To-Count辐射测量仪的量程约为20 u R/h到1R/h,数据线性程度也比以前的Time-To-CotJnt辐射测量仪要好。所以在使用Time-To-Count方法进行的辐射测量时,如何减少杂质时间以及如何提高计数前时间的测量精度,是决定Time-To-Count辐射测量仪性能的关键因素。实验用三只相同型号的J33G-M计数管分别作为探测元件,在100U R/h到lR/h的辐射场中进行试验.每个测量点测量5次取平均,得出随着照射量率的增大,辐射强度R的测量值偏小且与辐射真实值之间的误差也随之增大。如果将测量误差限定在10%的范围内,则此仪器的量程范围为20 u R/h至1R/h,量程跨度近六个数量级。而用J33型G-M计数管作常规的脉冲测量,量程范围约为50 u R/h到5000 u R/h,充分体现了运用Time-To-Count方法测量辐射强度的优越性,也从另一个角度反应了随着计数前时间的逐渐减小,杂质时间在其中的比重越来越大,对测量结果的影响也就越来越严重,尽可能的减小杂质时间在Time-To-Count方法辐射测量特别是测量高强度辐射中是关键的。笔者用示波器测出此辐射仪器的杂质时间约为6.5 u S,所以在计算定时器值的时候减去这个杂质时间,可以增加计数前时间的精确度。通过实验得出,在标定仪器的K值时,应该在照射量率较低的条件下行,而测得的计数前时间是否精确则需要在照射量率较高的条件下通过仪器标定来检验。这是因为在照射量率较低时,计数前时间较大,杂质时间对测量结果的影响不明显,数据线斜率较稳定,适宜于确定标定系数K值,而在照射量率较高时,计数前时间很小,杂质时间对测量结果的影响较大,可以明显的在数据线上反映出来,从而可以很好的反应出仪器的性能与量程。实验证明了Time-To-Count测量方法中最为关键的环节就是如何对计数前时间进行精确测量。经过对大量实验数据的分析,得到计数前时间中的杂质时间可分为硬件杂质时间和软件杂质时间,并以软件杂质时间为主,通过对程序进行合理优化,软件杂质时间可以通过程序的改进而减少,甚至可以用数学补偿的方法来抵消,从而可以得到比较精确的计数前时间,以此得到较精确的辐射强度值。对于本辐射仪,用户可以选择不同的工作模式来进行测量,当辐射场较弱时,通常采用规定次数测量的方式,在辐射场较强时,应该选用定时测量的方式。因为,当辐射场较弱时,如果用规定次数测量的方式,会浪费很多时间来采集足够的脉冲信号。当辐射场较强时,由于辐射粒子很多,产生脉冲的频率就很高,规定次数的测量会加大测量误差,当选用定时测量的方式时,由于时间的相对加长,所以记录的粒子数就相对的增加,从而提高仪器的测量精度。通过调研国内外先进核辐射测量仪器的发展现状,了解到了目前最新的核辐射总量测量技术一Time-To-Count理论及其应用情况。论证了该新技术的理论原理,根据此原理,结合高速处理器ARM7 LPC2132,对以G-计数管为探测元件的Time-To-Count辐射测量仪进行设计。论文以实验的方法论证了Time-To-Count原理测量核辐射方法的科学性,该辐射仪的量程和精度均优于以前以脉冲计数为基础理论的MCS-51核辐射测量仪。该辐射仪具有量程宽、精度高、易操作、用户界面友好等优点。用户可以定期的对仪器的标定,来减小由于电子元件的老化对低仪器性能参数造成的影响,通过Time-To-Count测量方法的使用,可以极大拓宽G-M计数管的量程。就仪器中使用的J33型G-M计数管而言,G-M计数管厂家参考线性测量范围约为50 u R/h到5000 u R/h,而用了Time-To-Count测量方法后,结合高速微处理器ARM7 LPC2132,此核辐射测量仪的量程为20 u R/h至1R/h。在允许的误差范围内,核辐射仪的量程比以前基于MCS-51的辐射仪提高了近200倍,而且精度也比传统的脉冲计数方法要高,测量结果的线性程度也比传统的方法要好。G-M计数管的使用寿命被大大延长。 综上所述,本文取得了如下成果:对国内外Time-To-Count方法的研究现状进行分析,指出了Time-To-Count测量方法的基本原理,并对Time-T0-Count方法理论进行了分析,推导出了计数前时间和两个相邻辐射粒子时间间隔之间的关系,从数学的角度论证了Time-To-Count方法的科学性。详细说明了基于ARM 7 LPC2132的Time-To-Count辐射测量仪的硬件设计、软件编程的过程,通过高速微处理芯片LPC2132的使用,成功完成了对基于MCS-51单片机的Time-To-Count测量仪的改进。改进后的辐射仪器具有量程宽、精度高、易操作、用户界面友好等特点。本论文根据实验结果总结出了Time-To-Count技术中的几点关键因素,如:处理器的频率、计数前时间、杂质时间、采样次数和测量时间等,重点分析了杂质时间的组成以及引入杂质时间的主要因素等,对国内核辐射测量仪的研究具有一定的指导意义。

    标签: TimeToCount ARM 辐射测量仪

    上传时间: 2013-06-24

    上传用户:pinksun9

  • 基于ARM的μCOSⅡ移植及其CAN总线应用研究

    基于删的μC/OS-Ⅱ移植及其CAN总线应用研究流体机械及工程专业近年来,嵌入式系统受到科学与工程各个领域研究者的密切关注,成为研究的一个热点。随着嵌入式系统的复杂性不断增加,嵌入式操作系统成为嵌入式系统中最重要的组成部分。在嵌入式系统中,μC/OS-Ⅱ凭借其结构清晰、源代码开放和实时性好等优势,成了监控系统等领域的技术热点。嵌入式操作系统μC/OS-Ⅱ与模块化硬件相结合,共同构成一个可以重复利用的软硬件系统平台,不但可以提高开发效率,还可以提高系统的可靠性和实时性,满足日益复杂的应用需求。 在国内监控领域中,大多采用了集散式监控系统,虽然克服了集中式监控系统的缺点,但还存在着效率较低,错误处理能力不强等缺点。而且设备的兼容性不好,系统实时性、可靠性也不高。采用CAN现场总线可很好的克服上述一些缺点,具有很强的抗干扰能力。CAN总线把所有挂接在总线上的智能设备联接成网络,构成自动化系统,实现对现场设备的实时监控。 基于这些考虑,本文选择了以IPC2290芯片(内部集成了CAN模块)为微控制器的MagicARM2200教学实验开发板作为学习和研究的开发平台,把μC/OS-Ⅱ这个实时微内核操作系统嵌入到该芯片中。在深入研究CAN通信模块特点和驱动的基础上,把其驱动移植到μC/OS-Ⅱ操作系统中。并在实时操作系统μC/OS-Ⅱ上通过设计—个带A/D转换的CAN智能模块来阐述智能模块软硬件设计方法,这些工作为搭建基于CAN总线的实际测控系统方案提供了理论基础。 本文使用的CAN通信方案具有极大的灵活性,能方便和简洁的运用到各种测控系统中。实验结果证明了该方案的有效性和正确性,并且具有实际的应用价值。最后,本文作者在CAN智能模块的基础上搭建了基于CAN总线的多相流动实验台的测控系统方案。

    标签: ARM COS CAN 移植

    上传时间: 2013-07-16

    上传用户:cngeek

  • FPGA可配置端口电路的设计

    可配置端口电路是FPGA芯片与外围电路连接关键的枢纽,它有诸多功能:芯片与芯片在数据上的传递(包括对输入信号的采集和输出信号输出),电压之间的转换,对外围芯片的驱动,完成对芯片的测试功能以及对芯片电路保护等。 本文采用了自顶向下和自下向上的设计方法,依据可配置端口电路能实现的功能和工作原理,运用Cadence的设计软件,结合华润上华0.5μm的工艺库,设计了一款性能、时序、功耗在整体上不亚于xilinx4006e[8]的端口电路。主要研究以下几个方面的内容: 1.基于端口电路信号寄存器的采集和输出方式,本论文设计的端口电路可以通过配置将它设置成单沿或者双沿的触发方式[7],并完成了Verilog XL和Hspiee的功能和时序仿真,且建立时间小于5ns和保持时间在0ns左右。和xilinx4006e[8]相比较满足设计的要求。 2.基于TAP Controller的工作原理及它对16种状态机转换的控制,对16种状态机的转换完成了行为级描述和实现了捕获、移位、输出、更新等主要功能仿真。 3.基于边界扫描电路是对触发器级联的构架这一特点,设计了一款边界扫描电路,并运用Verilog XL和Hspiee对它进行了功能和时序的仿真。达到对芯片电路测试设计的要求。 4.对于端口电路来讲,有时需要将从CLB中的输出数据实现异或、同或、与以及或的功能,为此本文采用二次函数输出的电路结构来实现以上的功能,并运用Verilog XL和Hspiee对它进行了功能和时序的仿真。满足设计要求。 5.对于0.5μm的工艺而言,输入端口的电压通常是3.3V和5V,为此根据设置不同的上、下MOS管尺寸来调整电路的中点电压,将端口电路设计成3.3V和5V兼容的电路,通过仿真性能上已完全达到这一要求。此外,在输入端口处加上扩散电阻R和电容C组成噪声滤波电路,这个电路能有效地抑制加到输入端上的白噪声型噪声电压[2]。 6.在噪声和延时不影响电路正常工作的范围内,具有三态控制和驱动大负载的功能。通过对管子尺寸的大小设置和驱动大小的仿真表明:在实现TTL高电平输出时,最大的驱动电流达到170mA,而对应的xilinx4006e的TTL高电平最大驱动电流为140mA[8];同样,在实现CMOS高电平最大驱动电流达到200mA,而xilinx4006e的CMOS驱动电流达到170[8]mA。 7.与xilinx4006e端口电路相比,在延时和面积以及功耗略大的情况下,本论文研究设计的端口电路增加了双沿触发、将输出数据实现二次函数的输出方式、通过添加译码器将配置端口的数目减少的新的功能,且驱动能力更加强大。

    标签: FPGA 可配置 端口 电路

    上传时间: 2013-06-03

    上传用户:aa54

  • 浩辰CAD 2012专业版下载

    附件附带破解补丁 浩辰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问题。此系统以完成调试功能为主,不处理词法分析前的映射。适用于中级以上开发用户。

    标签: 2012 CAD 浩辰

    上传时间: 2013-11-10

    上传用户:giraffe

  • 中望cad 2010简体中文版下载

    中望CAD2010体验版正式发布。作为中望公司的最新年度力作,在继承以往版本优势的基础上,中望CAD2010融入了以“安全漏洞抓取、内存池优化、位图和矢量图混合处理”等多项可以极大提高软件稳定性和效率的中望正在申请全球专利的独创技术,新增了众多实用的新功能,在整体性能上实现了巨大的飞跃,主要体现在以下几方面: 大图纸处理能力的提升 文字所见即所得、消隐打印等新功能 二次开发接口更加成熟 一、大图纸处理能力的提升 中望CAD2010版采用了更先进的内存管理以及压缩技术,采用了一些新的优化算法,使得中望CAD常用命令执行效率和资源占用情况得到进一步的提高,特别是在低内存配置下大图纸的处理能力,大大减少了图纸内存资源占用量,提升了大图纸处理速度。主要体现在: 大图纸内存占用量显著下降,平均下降约30%,地形图类图纸则平均下降50%; 实体缩放和平移,zoom\pan\redraw更加顺畅; 保存速度更快、数据更安全,保存速度平均有40%的提升。 二、新增功能 1、文字所见即所得 文字编辑器有多处改进,文字编辑时显示的样式为最后在图面上的样式,达到了所见即所得的效果。文字编辑器新加入段落设置,可进行制表位、缩进、段落对齐方式、段落间距和段落行距等项目的调整。另外,在文字编辑器内可直接改变文字倾斜、高度、宽度等特征。 2、消隐打印 中望CAD2010版本支持二维和三维对象的消隐打印,在打印对象时消除隐藏线,不考虑其在屏幕上的显示方式。此次消隐打印功能主要体现在以下两个方面: (一)、平台相关命令和功能的调整 视口的“属性”:增加“着色打印”选项(“线框”和“消隐”两种着色打印项) 选择视口后,右键菜单支持“着色打印”项( “线框”和“隐藏”两种模式) 命令mview增加了“着色打印”功能项,可以方便用户设置视口的“着色打印属性”(线框和消隐两种模式) 打印”对话框调整:在布局空间,激活“打印”对话框,以前的“消隐打印”选项显示为“隐藏图纸空间对象”。 页面设置管理器启动的“打印设置”对话框调整:图纸空间中,通过页面设置管理器激活的“打印设置”对话框,以前的“消隐打印”选项显示为“隐藏图纸空间对象” (二)、消隐打印使用方法的调整 模型空间: 可通过“打印”或“页面设置管理器”打开的“打印设置”对话框中的“消隐打印”选项来控制模型空间的对象是否消隐打印,同时包含消隐打印预览,若勾选“消隐打印”按钮,模型空间的对象将被消隐打印出来。 布局空间: 若要在布局空间消隐打印对象,分为两种情况:     1) 布局空间视口外的对象是否消隐,直接取决于“打印设置”对话框中“隐藏图纸空间对象”按钮是否被勾选;     2)布局空间视口中的对象是否消隐,取决于视口本身的属性,即“着色打印”特性选项,必须确保该选项为“消隐”才可消隐打印或预览 3、图层状态管理器 可以创建多个命名图层状态,以保存图层的状态列表,用户可以通过选择图层状态来表现图纸的不同显示效果。这种图层状态可以输出供其它图纸使用,也可以输入其它保存的图层状态设置。 4、文字定点缩放 能够依据文字位置的特征点,如中心,左下等,作为基准点,对多行文字或单行文字进行缩放,同时不改变基准点位置。 5、Splinedit新功能 全面支持样条曲线的编辑,主要体现在SPLINEDIT命令行提示中,如下: 拟合数据(F)/闭合样条(C)/移动(M) 顶点(V)/精度(R)/反向(E)/撤消(U)/<退出(X)>: 拟合数据: 增加(A)/闭合(C)/删除数据(D)/移动(M)/清理(P)/切线(T)/<退出(X)>: 增加、删除数据:通过增加、删除样条曲线的拟合点来控制样条曲线的拟合程度。 移动:通过移动指定的拟合点控制样条曲线的拟合数据 闭合/打开:控制样条曲线是否闭合。 清理:清除样条曲线的拟合数据,从而使命令提示信息变为不包含拟合数据的情形。 切线:修改样条曲线的起点和端点切向。 闭合样条:将打开的样条曲线闭合。若选择的样条曲线为闭合的,该选项为“打开”,将闭合的样条曲线打开。 移动:可用来移动样条曲线的控制点到新的位置。 精度:可通过添加控制点、提高阶数或权值的方式更为精密的控制样条曲线的定义。 反向:调整样条曲线的方向为反向。 6、捕捉和栅格功能增强 7、支持文件搜索路径 关于激活注册:打开CAD界面,找到左上面的“帮助”,激活产品-复制申请码-再打开你解压到CAD包找到keygen.exe(也就是注册机,有的在是“Key”文件里,如果没有可以到网上下载),输入申请码--点击确定,就中间那个键--得到数据 应该是五组-复制再回到上面激活码页面,粘贴激活码确定就ok !复制(粘贴)的时候用 ctrl +c(v),用鼠标右键没用! 如果打开安装CAD就得注册才能运行的,那方法也跟上边的差不多! 其实你在网上一般是找不到激活码的,因为各个申请码不一样,所以别人的激活码到你那基本上没用,只能用相应的方法得到激活码,这方法也就要你自己去试了,我原来也不会装CAD,但现在一般3分钟就装好了,只要知道怎么说了就快了,一般软件都是一样的装法,不会装可以到网上找资料!有时求人不如求已,自己算比在网上等着别人给你算快多了

    标签: 2010 cad 简体中文

    上传时间: 2013-11-18

    上传用户:段璇琮*

  • 基于单片机的语音电子钟设计

      钟是现代人类日常生活必不可少的工具,语音时钟更是现在电子时钟多功能化发展的一个方向。语音电子钟具有突出的播报时间的功能,它被广泛用在生活中的各种场合。本设计就是从日常生活中常见的事物入手,通过对语音电子钟的设计,让我认识到单片机已经深入到我们生活的每个领域。 本文从语音电子钟的设计原理、设计方案入手,详细介绍了系统硬件设计、软件设计及调试。在语音电子钟的设计中,要处理好以下几个关键:D/A(数/模)转换,语音识别,人机接口,程序设计。D/A(数/模)和语音识别技术关系到时间的正确播报,人机接口是播报时间和调整时间的关键。利用凌阳SPCE061A单片机在语音识别和处理方面的优点,结合实践,设计出有特色的语音电子钟。

    标签: 单片机 语音 电子钟

    上传时间: 2013-10-30

    上传用户:feitian920

  • MSP430单片机的开发及应用

    MSP430是德州公司新开发的一类具有16位总线的带FLASH的单片机,由于其性价比和集成度高,受到广大技术开发人员的青睐.它采用16位的总线,外设和内存统一编址,寻址范围可达64K,还可以外扩展存储器.具有统一的中断管理,具有丰富的片上外围模块,片内有精密硬件乘法器、两个16位定时器、一个14路的12位的模数转换器、一个看门狗、6路P口、两路USART通信端口、一个比较器、一个DCO内部振荡器和两个外部时钟,支持8M的时钟.由于为FLASH型,则可以在线对单片机进行调试和下载,且JTAG口直接和FET(FLASHEMULATION TOOL)的相连,不须另外的仿真工具,方便实用,而且,可以在超低功耗模式下工作,对环境和人体的辐射小,测量结果为100mw左右的功耗(电流为14mA左右),可靠性能好,加强电干扰运行不受影响,适应工业级的运行环境,适合与做手柄之类的自动控制的设备.我们相信MSP430单片机将会在工程技术应用中得以广泛应用,而且,它是通向DSP系列的桥梁,随着自动控制的高速化和低功耗化,MSP430系列将会得到越来越多人的喜爱.通过两过多月的毕业设计,我对MSP430有了初步了解,对内部的硬件资源和自身的汇编语法进行了实验,并开发了一个应用板,并进行了调试.鉴于时间和能力有限,没能对所有的应用一一实验.

    标签: MSP 430 单片机

    上传时间: 2013-11-21

    上传用户:asdkin

  • 单片机入门基础知识大全免费下载

    单片机入门基础知识大全免费下载 单片机第八课(寻址方式与指令系统) 通过前面的学习,我们已经了解了单片机内部的结构,并且也已经知道,要控制单片机,让它为我们干学,要用指令,我们已学了几条指令,但很零散,从现在开始,我们将要系统地学习8051的指令部份。 一、概述 1、指令的格式 我们已知,要让计算机做事,就得给计算机以指令,并且我们已知,计算机很“笨”,只能懂得数字,如前面我们写进机器的75H,90H,00H等等,所以指令的第一种格式就是机器码格式,也说是数字的形式。但这种形式实在是为难我们人了,太难记了,于是有另一种格式,助记符格式,如MOV P1,#0FFH,这样就好记了。 这两种格式之间的关系呢,我们不难理解,本质上它们完全等价,只是形式不一样而已。 2、汇编 我们写指令使用汇编格式,而计算机只懂机器码格式,所以要将我们写的汇编格式的指令转换为机器码格式,这种转换有两种方法:手工汇编和机器汇编。手工汇编实际上就是查表,因为这两种格式纯粹是格式不同,所以是一一对应的,查一张表格就行了。不过手工查表总是嫌麻烦,所以就有了计算机软件,用计算机软件来替代手工查表,这就是机器汇编。 二、寻址 让我们先来复习一下我们学过的一些指令:MOV P1,#0FFH,MOV R7,#0FFH这些指令都是将一些数据送到相应的位置中去,为什么要送数据呢?第一个因为送入的数可以让灯全灭掉,第二个是为了要实现延时,从这里我们可以看出来,在用单片机的编程语言编程时,经常要用到数据的传递,事实上数据传递是单片机编程时的一项重要工作,一共有28条指令(单片机共111条指令)。下面我们就从数据传递类指令开始吧。 分析一下MOV P1,#0FFH这条指令,我们不难得出结论,第一个词MOV是命令动词,也就是决定做什么事情的,MOV是MOVE少写了一个E,所以就是“传递”,这就是指令,规定做什么事情,后面还有一些参数,分析一下,数据传递必须要有一个“源”也就是你要送什么数,必须要有一个“目的”,也就是你这个数要送到什么地方去,显然在上面那条指令中,要送的数(源)就是0FFH,而要送达的地方(目的地)就是P1这个寄存器。在数据传递类指令中,均将目的地写在指令的后面,而将源写在最后。 这条指令中,送给P1是这个数本身,换言之,做完这条指令后,我们可以明确地知道,P1中的值是0FFH,但是并不是任何时候都可以直接给出数本身的。例如,在我们前面给出的延时程序例是这样写的: MAIN: SETB P1.0     ;(1)    LCALL DELAY ;(2)     CLR P1.0      ;(3)    LCALL DELAY   ;(4)     AJMP MAIN    ;(5) ;以下子程序 DELAY: MOV R7,#250   ;(6) D1: MOV R6,#250   ;(7) D2: DJNZ R6,D2    ;(8)    DJNZ R7,D1   ;(9)    RET        ;(10)    END        ;(11)     表1  MAIN: SETB P1.0     ;(1)    MOV 30H,#255     LCALL DELAY ;     CLR P1.0      ;(3)     MOV 30H,#200     LCALL DELAY   ;(4)     AJMP MAIN    ;(5) ;以下子程序 DELAY: MOV R7,30H   ;(6) D1: MOV R6,#250   ;(7) D2: DJNZ R6,D2    ;(8)    DJNZ R7,D1   ;(9)    RET        ;(10)    END        ;(11) 表2    这样一来,我每次调用延时程序延时的时间都是相同的(大致都是0.13S),如果我提出这样的要求:灯亮后延时时间为0.13S灯灭,灯灭后延时0.1秒灯亮,如此循环,这样的程序还能满足要求吗?不能,怎么办?我们可以把延时程序改成这样(见表2):调用则见表2中的主程,也就是先把一个数送入30H,在子程序中R7中的值并不固定,而是根据30H单元中传过来的数确定。这样就可以满足要求。 从这里我们可以得出结论,在数据传递中要找到被传递的数,很多时候,这个数并不能直接给出,需要变化,这就引出了一个概念:如何寻找操作数,我们把寻找操作数所在单元的地址称之为寻址。在这里我们直接使用数所在单元的地址找到了操作数,所以称这种方法为直接寻址。除了这种方法之外,还有一种,如果我们把数放在工作寄存器中,从工作寄存器中寻找数据,则称之为寄存器寻址。例:MOV A,R0就是将R0工作寄存器中的数据送到累加器A中去。提一个问题:我们知道,工作寄存器就是内存单元的一部份,如果我们选择工作寄存器组0,则R0就是RAM的00H单元,那么这样一来,MOV A,00H,和MOV A,R0不就没什么区别了吗?为什么要加以区分呢?的确,这两条指令执行的结果是完全相同的,都是将00H单元中的内容送到A中去,但是执行的过程不同,执行第一条指令需要2个周期,而第二条则只需要1个周期,第一条指令变成最终的目标码要两个字节(E5H 00H),而第二条则只要一个字节(E8h)就可以了。 这么斤斤计较!不就差了一个周期吗,如果是12M的晶振的话,也就1个微秒时间了,一个字节又能有多少? 不对,如果这条指令只执行一次,也许无所谓,但一条指令如果执行上1000次,就是1毫秒,如果要执行1000000万次,就是1S的误差,这就很可观了,单片机做的是实时控制的事,所以必须如此“斤斤计较”。字节数同样如此。 再来提一个问题,现在我们已知,寻找操作数可以通过直接给的方式(立即寻址)和直接给出数所在单元地址的方式(直接寻址),这就够了吗? 看这个问题,要求从30H单元开始,取20个数,分别送入A累加器。 就我们目前掌握的办法而言,要从30H单元取数,就用MOV A,30H,那么下一个数呢?是31H单元的,怎么取呢?还是只能用MOV A,31H,那么20个数,不是得20条指令才能写完吗?这里只有20个数,如果要送200个或2000个数,那岂不要写上200条或2000条命令?这未免太笨了吧。为什么会出现这样的状况?是因为我们只会把地址写在指令中,所以就没办法了,如果我们不是把地址直接写在指令中,而是把地址放在另外一个寄存器单元中,根据这个寄存器单元中的数值决定该到哪个单元中取数据,比如,当前这个寄存器中的值是30H,那么就到30H单元中去取,如果是31H就到31H单元中去取,就可以解决这个问题了。怎么个解决法呢?既然是看的寄存器中的值,那么我们就可以通过一定的方法让这里面的值发生变化,比如取完一个数后,将这个寄存器单元中的值加1,还是执行同一条指令,可是取数的对象却不一样了,不是吗。通过例子来说明吧。    MOV R7,#20    MOV R0,#30H LOOP:MOV A,@R0    INC R0    DJNZ R7,LOOP 这个例子中大部份指令我们是能看懂的,第一句,是将立即数20送到R7中,执行完后R7中的值应当是20。第二句是将立即数30H送入R0工作寄存器中,所以执行完后,R0单元中的值是30H,第三句,这是看一下R0单元中是什么值,把这个值作为地址,取这个地址单元的内容送入A中,此时,执行这条指令的结果就相当于MOV A,30H。第四句,没学过,就是把R0中的值加1,因此执行完后,R0中的值就是31H,第五句,学过,将R7中的值减1,看是否等于0,不等于0,则转到标号LOOP处继续执行,因此,执行完这句后,将转去执行MOV A,@R0这句话,此时相当于执行了MOV A,31H(因为此时的R0中的值已是31H了),如此,直到R7中的值逐次相减等于0,也就是循环20次为止,就实现了我们的要求:从30H单元开始将20个数据送入A中。 这也是一种寻找数据的方法,由于数据是间接地被找到的,所以就称之为间址寻址。注意,在间址寻址中,只能用R0或R1存放等寻找的数据。 二、指令 数据传递类指令 1) 以累加器为目的操作数的指令 MOV A,Rn MOV A,direct MOV A,@Ri MOV A,#data 第一条指令中,Rn代表的是R0-R7。第二条指令中,direct就是指的直接地址,而第三条指令中,就是我们刚才讲过的。第四条指令是将立即数data送到A中。 下面我们通过一些例子加以说明: MOV A,R1 ;将工作寄存器R1中的值送入A,R1中的值保持不变。 MOV A,30H ;将内存30H单元中的值送入A,30H单元中的值保持不变。 MOV A,@R1 ;先看R1中是什么值,把这个值作为地址,并将这个地址单元中的值送入A中。如执行命令前R1中的值为20H,则是将20H单元中的值送入A中。 MOV A,#34H ;将立即数34H送入A中,执行完本条指令后,A中的值是34H。 2)以寄存器Rn为目的操作的指令 MOV Rn,A   MOV Rn,direct   MOV Rn,#data 这组指令功能是把源地址单元中的内容送入工作寄存器,源操作数不变。

    标签: 单片机 免费下载 基础知识

    上传时间: 2013-10-13

    上传用户:3294322651

  • 基于单片机的上网计时系统的设计

    本文设计了一个用AT89S51 实现手动控制的上网计时系统,这套系统由单片机作为核心部件,只需在pc 机上网和断网时按下计时开关,计时器系统即开始自动计时,并可以累计本月上网总时长,还可以同时显示本次上网时长和累计上网时长。此外,本系统还可以设定上网报警时间,当超出设定值时,系统会发出报警提示。通过单片机的自动控制,解除了用户重复费时的手工劳动,而且本设计的计时系统成本低廉,运行稳定,有很大的实际应用价值。

    标签: 单片机 上网计时

    上传时间: 2013-11-06

    上传用户:66666