对系统的移植和裁剪,以达到所需的系统要求以PowerPC8xx系列处理器为例,通过对此类处理器的引导模式。引导代码的编写和调试,以及如何引导操作系统执行等问题的研究,探索嵌入式系统引导过程的一种解决方案。关键词:MPC860嵌入式操作系统存储映射引导嵌入式系统应用开发不同于PC机,其开发过程同时涉及软硬件,需要将硬件平台的设计。操作系统以及上层应用开发综合考虑;而PC机应用开发建立在已经定制好的硬件和操作系统平台上,开发者只需调用系统提供的接口和服务完成相应的功能。由于应用和成本约束,嵌入式系统的硬件平台需根据应用量身定制,通常所用的MPU.存储器。外围设备等有多种选择余地,而且软件调试技术特殊,使平台的引导设计变得十分复杂。因此,对于嵌入式系统开发者而言,有必要深入分析系统引导过程,将软硬件开发有效地综合,即针对不同的硬件平台和软件运行模式,正确地进行底层上电初始化,进而引导操作系统执行。这个问题的核心在于对系统的引导模式的研究。嵌入式系统的启动代码一般由两部分构成:引导代码和操作系统执行环境的初始化代码。其中引导代码一般也由两部分构成:第一部分是板级。片级初始化代码,主要功能是通过设置寄存器初始化硬件的工作方式,如设置时钟。中断控制寄存器等,完成内存映射。初始化MMU等;第二部分是装载程序,其功能是将操作系统和应用程序的映像从只读存储器装载或者拷贝到系统的RAM中,并跳转到相应的代码处继续执行。操作系统执行环境的初始化代码主要由硬件抽象层HAL代码。设备驱动程序初始化代码和操作系统执行体初始代码三部分构成。本文以摩托罗拉MPC860处理器和具有自主知识产权的操作系统CRTOSII为例,研究嵌入式系统引导程序的设计和实现技术。嵌入式软件的开发涉及调试模式和固化模式两种运行状态。调试模式主要解决如何在目标板上调试正确性未经验证的程序的问题;而固化模式主要解决如何引导已调试成功的程序的问题。相应地,引导代码的设计应针对两种模式分别进行。1调试模式的系统引导1.1调试模式引导代码的作用1调试模式的系统引导1.1调试模式引导代码的作用一个完整的嵌入式软件的解决方案大致包括四方面:①硬件平台配置初始化和系统引导代码;②操作系统软件执行环境的初始化代码;③操作系统;④应用程序。在上述四方面中,引导代码是本研究中力求解决的问题。事实上,板级初始化。操作系统硬件抽象层。设备驱动程序三者整合到一起,就构成了嵌入式系统中BSP(板级支持包)的主体。BSP的代码与具体的目标板硬件设计相关,同时也与应用程序的设计要求相关,针对应用程序提出的不同要求,例如不同设备驱动程序。不同的中断源个数。不同的中断优先级安排。是否启用MMU机制等,BSP部分应作出相应的安排。上述第四部分的应用程序是建立在前三部分正确运行的基础上,并需反复调试。由上述分析可知,BSP和应用程序代码的正确性通过一次的编写不能得到保证,需要经历“调试——修改——调试”反复的过程,因此需要建立一个可靠的调试环境。该环境建立的基础正是调模式下的引导代码。1.2引导代码的调试方法本研究实验采用一种称作BDM(Background Debug Mode)的OCD(On Chip Debuging)调试技术。BMD是由Motorola公司提供的一种硬件调试方法,类似于JTAG调试。它利用处理器提供的调试端口调试。MPC860采用一种特殊的BDM——EPBDM,其运作相当于用处理器内嵌的调试模块接管中断及异常处理,用户通过设置调试许可寄存器(debug enable register)指定哪些中断或异常发生后处理器直接进入调试状态,而不是操作系统的处理程序。进入调试状态后,内嵌调试模块向外部调试通信接口发出信号,通知一直在通信接口监听的主机调试器,然后调试器便可通过调试模块使处理器执行系统指令(相当于特权态)。由于专用的片级调试接口装置(BDI2000)的支持,不需要目标端配备相应的调试代理(Monitor)软件。1.3调试模式引导代码实现调试模式引导代码的核心在于使用BDM协议解析微指令,通过调试接口向MPC860发送信号,初始化调试环境。由于MPC860采用RISC结构,所以初始化部分主要是设置处理器内部寄存器,这个过程包括三方面内容:(1)对处理器相关寄存器进行初始化:主要是关于处理器状态的寄存器(等),中断。时钟相关模块(等)。(2)对BDM调试端口的初始化:包括调试使能寄存器DER.支持指令断点的寄存器ICTRL等。(3)对片级。板级内存映射的初始化:包括内部内存映射寄存器IMMR,内存控制相关寄存器OR0~~BR7等。它们主要功能是地址映射。片选信号选择。内存控制器选择()。如果选择UPM,由于UPM控制采用微指令方式,而这些微指令根据内存的不同(等),需要设计人员自行编写代码写入MPC860内部存储区相应位置。对于需要实时刷新的存储体(如SDRAM),还需设置刷新控制微指令。上述初始化代码得以执行,一方面依赖于目标机MPC860提供的调试接口支持,另一方面也需要宿主机GDB的支持。对于宿主机系统,可能选择Linux,在其下配置GBD;也可以选择Windows2000,使用可视化的调试工具LambdaTools GDB(Coretek公司产品,不支持硬件断点),或者使用BDI2000(支持硬件断点的仿真器)。不管使用哪种调试工具,都可以使用该调试器能够识别的脚本文伯存放初始化指令。这些脚本在功能上是等效的,指令的描述一般都采用如下格式:操作码寄存器数值如在嵌入式Linux下SDRAM初始化的代码片断为:mpcbdm spr MDR=0x1FF77C35mpcbdm spr MDR=0xEFEABC34mpcbdm spr MDR=0x1FB57C35……而在Windows2000下使用BDI2000代码为:WUPM 0x00000005 0x1FF77C35WUPM 0x00000006 0xEFEABC34WUPM 0x00000007 0x1FB57C35……脚本描述的指令执行后,MPC860按照预先的设想进入一个可以正常工作的状态,可以用装载器将程序下载到SDRAM中调试执行。这个程序主要包含中断表。操作系统和应用程序映象两部分,其格式可以为等。图1给出了下载完毕后的内存映象。当程序下载完成后,PC指针指向Image代码段(text段)的首条指令,可以利用调试器提供的命令开始调试。2固化模式的系统引导2.1概述经过调试后,OS和上层应用程序构成的Image的正确性得到了保证,但是这个Image不能自主运行。因为调试模式下,是通过BDM接口初始化处理器,并且通过BDM接口将程序下载到RAM中去运行。实际应用环境中,Image必须被存储在非易失性存储器中,如等,本文选择Flash。系统启动时,处理器执行一段引导程序替代调试模式下的调试脚本和装载程序的功能。启动代码主要考虑以下几个问题:(1)系统上电和复位时程序如何执行,需要初始化哪些寄存器,重点仍然是内存映射相关部分;(2)启动代码为几部分,每部分代码应该全部还是部分放到Flash或者RAM中执行;(3)在时间效率和空间效率的折衷。2.2上电初始化在两种引导模式下,上电初始化总是必要步骤。它涉及各种核心寄存器初始化。地址映射等问题的处理。2.2.1地址映射MPC860的复位是通过一种异常中断来处理的(可理解为CPU自己产生的中断),向量号为0x100。异常向量表的基地址加上复位向量号即为复位向量,也就是CPU开始执行指令的地方。异常向量表在内存空间的可能位置有两个:0x0000000和0xFFF00000。所以PowerPC的复位向量为0x100或0xFFF00100。假设复位向量为0xFFF00100,系统有128K字节的Flash,并准备把它映射到CPU内存空间0xFE000000开始的地址。MPC860内部的CS0片选信号是默认的系统启动片选信号,已被连接到Flash的片选线上。上电时,内存控制器会忽略所有参与征选逻辑的地址线的高17位,CS0总是有效。这样,Flash总会被选中,CPU从Flash偏移0x100的地方取指令,此时CPU的4GB内存空间的每个128KB的块都被映射到Flash。2.2.2寄存器初始化固化方式下的大致相同,但是不再采用脚本文件编写,而是直接将一段MPC860汇编程序存放在一个文件中。与调试模式初始化程序一样,主要完成以下处理:(1)初始化CPU核心寄存器;(2)设置机器状态寄存器;(3)禁止ceche;(4)初始化IMMR;(5)初始化系统接口单元(SIU);(6)初始化时钟和中断控制寄存器;(7)初始化通信处理机(CPM);(8)初始化内存控制器(UPM);(9)初始化C语言堆栈。2.2.3地址空间重映射上电时,由于只有一个片选信号有效,它选通了Flash,而RAM和其它存储设备地址无效,需要经过地址空间重映射才能访问。MPC860的地址空间重映射是通过设置0R0~~BR7这十六个寄存器完成的。由于上电时4GB的地址空间均被Flash占用,所以0xFFF00100这个地址仍在Flash的偏移0x100处。在寄存器初始化过程中,需要把内部寄存器空间以及外设等也映射进来。在进行这些操作前,需要把Flash的位置固定下来,例如映射到0xFE000000,这个操作是通过设置OR0和BR0寄存器实现的。但在写OR0时,CPU仍然在0xFFF00000的那一块取指令,而Flash即将被映射到0xFE000000块,所以程序必定出现“跑飞”的现象,必须对程序计数器(PC)进行调整,然而PC指针对程序员是不可见的,必须用跳转指令修改它。在Flash地址映射完成后,通过设置OR1~~BR7可以完成对所有存储器空间的映射,各种存储设备可映射在CPU地址空间中的任意位置,但相互之间不能冲突。2.3引导代码的构成和运行系统启动所涉及的代码由寄存器初始化汇编文件.一个Load程序以及操作系统与应用程序的Image三部分构成,引导代码则只包含和Load程序。Load程序的作用是将操作系统与应用程序的构成的Image从Flash拷贝到SDRAM中,并跳转到Image的首条指令。调试完成后的Image有两种运行模式:Flash-resident image:Load程序仅仅把Image中的数据段(data+bss)复制到RAM中,代码段(text)在Flash中直接运行。Flash-based image:Load程序把Image完全搬到RAM中执行,包括image中的代码段(text)和数据段(data+bss)。图2和图3分别描述了两种Image的存贮映象,以及从Flash到SDRAM的装载过程。2.4时间效率和空间效率上的折衷在嵌入式系统的应用过程中,针对不同的应用环境,对时间效率和空间效率有不同的要求,基于MPC860的启动代码对此有比较充分的解决方案。2.4.1时间限制时间限制主要包括两种情况:系统要求快速启动和系统启动后要求程序高速执行。对于要求快速启动的系统,应该使在Flash中执行的初始化程序尽量简短,诸如循环语句之类的语法应该尽量减少,尽快将程序装载到RAM中执行,这样做的原因在于Flash的访存时间与RAM的访存时间存在数量级上的差距。但是必须根据代码量以及存储器的特片进行权衡。因为,虽然RAM中捃速度快,但是将Flash中的代码复制到RAM中的操作会带来一定的开销。由于可见,启动时间由Flash中引导代码的运行时间。代码从Flash拷贝到RAM的时间以及RAM中后续启动代码的运行时间三部分组成。启动时间的最小值是这三者和的最小值。对于启动后要求程序高速执行的系统,主要受处理器。存储器特性以及I/O速度等的影响。在软件方面,应该采用了上述Flash-based image方式,使得代码段在RAM中运行,提高运行速度。2.4.2空间限制空间限制主要包括两种情况:Flash等非易失性存储空间有限和RAM等易失性空间有限两种系统。对于采用高性能非易失性存储器的系统,出于成本因素,Flash等存储设备不能太大,然而它又是系统存放启动代码和操作系统Image的地方。在存放Image时,可以先使用gzip等压缩工具进行压缩,在将Image加载到RAM时采用逆向的解压缩算法解压。同时,出于实时性考虑,压缩算法不能过于复杂,否则压缩解压过程消耗大量时间将与启动时间限制发生严重冲突。采用压缩策略并不一定会增加系统启动时间,因为压缩解压过程虽然消息了一定的时间,但是由于Image体积减小,由Flash复制到RAM中的时间相应减少,有可能反而减少了时间消耗。对于采用高性能RAM的系统,同样出于成本因素,RAM空间有一定限制,此时一般采用前文描述的Flashresident image方式:Load程序把Image中的数据段复制到RAM中,代码段在Flash中运行。折衷同样存在,因为code段在低速的Flash中运行,在节省空间的同时,却牺牲了时间。本文介绍了基于嵌入式处理器的操作系统引导方法,重点研究嵌入式系统的引导模式以及不同类别的引导方法。以在MPC860C处理器上引导CRTOSII操作系统为例,阐述了调试模式和固化模式下引导代码的构成。作用以及执行方式,并对不同引导模式下的时空效率的折衷进行了分析。最终,借助BDI2000仿真器对编写的引导代码进行调试,成功实现了调试模式和固化模式下操作系统的引导。后续工作包括:继续研究在不同硬件平台上的操作系统引导方法,例如最流行的系列;在同一平台上,可以研究不同操作系统的启动方法,例如嵌入式等。
进我空间有答案,这东西嘛,很义贼。
等速驱动轴论文:等速驱动轴中间轴的感应淬火数值模拟分析【中文摘要】等速驱动轴是轿车的关键部件之一,它传递繁重的驱动力矩,随受负荷重,传动精度高,需求量很大并且又是安全件,所以它的性能直接影响到汽车转向驱动性能,其中中间轴连接两端的轴承,主要用来传递运动和扭矩,所以提高它的性能与寿命,对提高整个汽车的动力性、操纵性都起着至关重要的作用。在目前来说,都是在热处理完毕之后通过室温解剖的方法来估算工件芯部温度,这种做法也仅仅是针对某一个工件而言,没有一个规律性的结果,而且这样的方法无疑是对成本的又一增加。将感应加热技术应用到中间轴的热处理同时运用软件模拟加热过程,可以直观的得到热处理温度的大小和分布情况,在此基础上调整工艺参数来揭示不同工艺参数对表面温度的影响规律。这样对工艺的设计和制定起到了辅助作用,节约了通过多次实验来改进工艺的成本,对工艺的优化和实施具有指导性。国内外学者对感应加热数值模拟的研究对象几乎全部为理想的轴类零件和钢板,对形状有变化的工件几乎没有涉及。中间轴在外形上存在形状突起部分,这将对感应加热的工艺造成影响。本文以等速驱动轴中间轴为研究对象,对其进行热处理工艺设计,制定工艺参数,在此基础上进行有限元分析,分析不同工艺参数对其温度分布影响的...【英文摘要】Constant velocity drive-shaft is one of the key parts of cars, as the key part, constant velocity drive-shaft is a safety parts in a great demand which can convey heavy driving torque, support heavy load and has high transmission accuracy. So it directly affects the driver steering performance. Middle-shaft of constant velocity drive-shaft connected the both ends of bearing. Therefore, improving its performance and life is important to improve power and handling of present, the method of estimat...【关键词】等速驱动轴 感应淬火 有限元 尖角效应【英文关键词】Constant velocity drive-shaft induction hardening finite element cusp effect【目录】等速驱动轴中间轴的感应淬火数值模拟分析摘要4-5Abstract5-6第1章 绪论 引言 感应加热数值模拟发展概况 感应加热研究现状 存在的问题 选题的背景和意义 研究目标及研究内容 本文的研究方法 创新点 本章小结15-16第2章 感应加热工艺设计 感应加热工艺原理 电磁感应 感应电流基本特性 感应电流加热方式 感应淬火 概述 感应淬火的特点 感应加热工艺设计 工件尺寸 硬化层深度 频率 感应线圈 电流密度 本章小结35-36第3章 感应加热有限元数值模拟 电磁场有限元计算理论 模拟计算模型 边界条件 温度场有限元计算理论 模拟计算模型 初始条件和边界条件 ANSYS软件介绍 概述 ANSYS耦合分析 感应加热的模拟过程 单元类型 材料特性 模型建立 网格划分 施加载荷 电磁场模拟结果 本章小结51-53第4章 模拟结果分析与优化 计算参数模拟结果 电流密度 加热时间 模拟结果优化 温度分布不均的原因 工艺参数的优化 本章小结63-64第5章 总结和展望 总结 展望64-66参考文献66-69致谢69-70攻读硕士期间发表的论文70
机械设计的水平对产品的质量、性能、研发时间和经济效益等有直接或间接的影响。下文是我为大家整理的关于机械设计方面毕业论文的范文,欢迎大家阅读参考!
浅谈机械零部件设计的新思路
摘 要:机械零部件设计是人类为了实现某种预期目标而进行的一种创造性活动,是人们以长期经验积累为基础,通过力学、数学建模及试验等所形成的经验公式、图表、标准及规范作为依据运用条件性计算或类比等方法进行设计。传统设计有很多局限性,因此笔者提出了机械零部件设计的新思路。
关键词:机械;零部件;设计;新思路
机械零部件设计的传统模式是采用手工计算及绘图,虽然现在已有不少设计人员使用了计算机绘图但基本上还停留在计算机绘图的初级阶段段有将计算机在机械零部件设计的优化方面的优势充分发挥出来,就使设计的准确性较差池因为设计思路的老套化,使在生产过程中不断地出现问题设计不断地修改、修正就使其效率更低。
1、设计核心思想――创新思维
运用创造思维
设计者的创造力是多种能力、个性和心理特征的综合表现,包括观察力、记忆力、想象力、思维力、表达力、自控力、文化修养、理想信念、意志性格、兴趣爱好等因素。它是社会前进、科技进步的基本动力之一,其中想象力和思维力是创造力的核心,它是将观察、记忆所得信息有控制地进行加工变换,创造表达出新成果的整个创造活动的中心。设计者不是把设计工作当成例行公事,而是时刻保持强烈的创新愿望和冲动,掌握必要创新方法,加强学习和锻炼启觉开发创造力,成为一个符合现代设计需要的创新人才。创造力的开发可从培养设计人员的创新意识、提高创新能力、士曾加创新实践等方面进行。
运用发散思维
发散思维又称辐射思维,是以欲解决的问题为中心,思维者打破常规,从不同方向,多角度、多层次地考虑问题。通过提出各种不同的解决问题的途径求出多种不同的答案,才从中选出最优解决方案的思维方式。例如若提出“将两个零部件联结在一起”的问题,常规的办法有焊接、胶接、铆接、捆绑、螺栓连接等各种各样的常规方式。但运用发散思维思考以后,就可得到利用电磁力、摩擦力、压合力、抽真空、冷冻等等方法。利用发散思维可能会找到更好的更优化的解决问题的方法。发散思维是创造性思维的主要形式之一在技术创新和方案设计中具有重要的意义。
运用创新思维
创新思维是建立在各类常规思维基础上的。人脑在外界信息激励下,将各种信息重新综合集成产生新的结果的思维活动过程就是创新思维。机械零部件设计的过程是创新的过程。设计者应打破常规思维的惯例追求新的功能原理、新方案、新结构、新造型、新材料、新工艺等在求异和突破中体现创新。
2、科学地进行机械零部件设计
把握机械零部件设计的主要内容
机械零部件设计是机械设计的重要组成部分,是机械总体设计的基础。机械设备中的各种机构和构件及它的各种运动功能,都是通过机械零部件的精心设计、绘制出零部件的加工制造图和各部件的装配图再通过机械制造过程中的精细加工及各合格零部件的组合装配得以实现了机械设备的设计功能。
机械零部件设计的主要内容包括:根据机械设备方案设计和总体设计的要求阴确零部件的工作要求、性能、参数等,选择零部件的构形、材料、精度等,进行失效分析和工作能力计算,画出零部件图和部件装配图。机械产品整机应满足由零部件设计所决定的机械零部件的综合质量对强度、刚度、寿命、耐磨性、耐热性、振动稳定性、精度、加工及装配工艺性、维修、生产成本等方面的要求,还要满足噪声控制、防腐性能、不污染环境等环境保护要求和安全要求等。
严格计算机械零部件的失效形式
机械零部件由于各种原因不能正常工作而失效,其失效形式主要有断裂、表面压碎、表面点蚀、塑性变形、过度弹性变形、共振、过热及过度磨损等。故在设计零部件时应首先进行零部件的失效分析预估失效的可能性采取相应措施,其中包括理论计算及计算准则。
常用的计算准则如下:一是强度准则。强度是机械零部件抵抗断裂、表面疲劳破坏或过大塑性变形等失效的能力;二是刚度准则。刚度是指零部件在载荷的作用下,抵抗弹性变形的能力;三是振动稳定性准则。对于高速运动或刚度较小的机械,在工作时应避免发生共振;四是耐热性准则。为了保证零部件在高温下正常工作,应合理设计其结构及合理选择材料,必要时须采用有效的降温措施;五是耐磨性准则。耐磨性是指相互接触并运动零部件的工作表面抵抗磨损的能力。当零部件过度磨损后,将会导致零部件失效报废。只有综合考虑才能最大可能地避免零部件的失效。
正确选择机械零部件表面粗糙度
表面粗糙度是反映零部件表面微观几何形状误差的一个重要技术指标,是检验零部件表面质量的主要依据;其选择的合理与否,直接关系到产品的质量、使用寿命和生产成本。在机械零部件设计工作中表面粗糙度的选择应用最广的是类比法,此法简便、迅速、有效。最常用的是与公差等级相适应的表面粗糙度。
在实际应用中,对于不同类型的机器,其零部件在相同尺寸公差的条件下对表面粗糙度的要求是有差别的。这就是配合的稳定性问题。对于不同类型的机器,其零部件的配合稳定性和互换性的要求是不同的。故在设计工作中,表面粗糙度的选择归根到底还是必须从实际出发,全面衡量零部件的表面功能和工艺经济性才能作出合理的选择。
全面优化机械零部件设计方法
要充分运用机械学理论和方法包括机构学、机械动力学、摩擦学、机械结构强度学、传动机械学等及计算机辅助分析的不断发展,对设计的关键技术问题能作出很好的处理,一系列新型的设计准则和方法正在形成。计算机辅助设计(CAD)是把计算机技术引入设计过程环节,用计算机完成选型、计算、绘图及其他作业的现代设计方法。
CAD技术促成机械零部件设计发生巨大的变化并成为现代机械设计的重要组成部分。目前,CAD技术向更深更广的方向发展,主要表现为:基于专家系统的智能CAD;CAD系统集成化,CAD与CAM(计算机辅助制造)的集成系统(CAD/CAM);动态三维造型技术;基于并行工程面向制造的设计技术(DFM);分布式网络CAD系统。
参考文献:
[1]王月强:《现代机械产品的零部件设计创新研究》[J]交通世界(建养.机械),2012(06)
[2]谢志坤/路平/史科科/刘伯聪:《轻量化技术在机床设计中的应用》[J]制造技术与机床,2012(12)
机械设计制造自动化探讨
摘要:本文对机械自动化与传统的机械制造技术进行了比较分析,指出了智能化的机械设计制造成为发展趋势。机械自动化在机械制造上具有低成本、高效率和多功能的有点,能够满足人民生活和生产的多元化需求。本文中论述了机械自动化的设计的原理、优点与效益以及发展方向。
关键词:机械制造自动化原则发展方向
1 机械制造自动化符合设计的原则
满足对机器的功能要求。
任何一种产品的开发都是为了满足人们某种需求为目的的,不同的产品具有不同的性能。任何机械设计都要能够对输入的物质、能量和信息进行处理,输出需要的物质、信息和能量。机械自动化系统也应该具有这种功能,能够对物质、信息和能量进行处理。机械自动化系统包括和机电一体化产品和机电一体化技术的内容,作为产品, 又包含着设计、 制造和特定的功能以满足使用要求,而功能是由其内部有机联系的结构所决定的。
利用先进技术不断创新。
根据产品或系统的功能不同,可对产品或系统进行分类。以物料搬运、加工为主,输入物质、能量和信息,经过加工处理,主要输出改变了位置和形态的物质系统称为加工机。以能量转换为主,输入能量和信息,输出不同能量的系统,称为动力机,其中输出机械能的为原动机。以信息处理为主,输入信息和能量,主要输出某种信息。
机械自动化系统除了具备上述必须的主功能外,还应具备其它内部功能,即 控制功能、动力功能、检测功能、构造功能。基于上述的功能构成原理,既有利于设计或分析各种机械自动化的产品,又有利于开拓思路,便于创造发明和创新。
2 机械自动化系统的优点与效益
生产能力和工作质量提高。
机械自动化产品具有信息自动控制和自动处理的功能,其检测的精度和灵敏度有很大的提高,通过自动化控制系统能够保证机械的能按照计划完成动作,使制造过程不受操作者主观因素的影响,保证最佳的工作质量和较高的产品合格率。同时,由于机械自动化产品实现了工作自动化,所以生产力大大提高。
使用安全性和可靠性提高。
机械自动化系统都有报警、监视、诊断和保护等功能。如果在工作中遇到过流、过压、过载、短路等电力故障时,能够自动停止工作,保护机械设备的完好,避免或减少人身事故,提高了设备的安全性。机械自动化产品由于采用电子元器件,减少了机械产品中的可动构件和磨损部件,从而使其具有较高的灵敏度和可靠性,故障率降低,寿命得到了延长。
调整和维修方便,使用性能改善。
机械自动化产品在安装调试时,可通过改变控制程序来实现工作方式的改变,以适应不同用户对象的需要以及现场参数变化的需要。这些控制程序可通过多种手段输入到机械自动化产品的控制系统中,而不需要改变产品中的任何部件和零件。对于具有存储功能的机械自动化产品,可以事先存入若干套不同的执行程序,然后根据不同的工作对象,给定一个代码信号输入,即可按指定的预定程序进行自动工作。机械自动化产品的自动化检验和自动监视功能可对工作过程中出现的故障自动采取措施,使工作恢复正常。
改善劳动条件,有利于自动化生产。
机械自动化产品自动化程度高,是知识密集型和技术密集型产品,是将人们从繁重的体力劳动中解放出来的重要途径,可以加速工厂自动化、办公自动化、农业自动化、交通自动化甚至是家庭自动化,从而可促进我国四个现代化的实现。
3机械设计制造及其自动化的发展方向
3 .1智能化。
智能化是21 世纪机械自动化技术发展的一个重要发展方向。这里所说的“智能化”是对机器行为的描述,是在控制理论的基础上,吸收人工智能、运筹学、计算机科学、模糊数学、心理学、生理学和混饨动力学等新思想、新方法。模拟人类智能,使它具有判断推理、逻辑思维、自主决策等能力,以求得更高的控制目标。诚然,使机械自动化产品具有低级智能或人的部分智能,则是完全可能而又必要的。
模块化。
模块化是一项重要而又艰巨的工程。 由于机械自动化产品种类和生产厂家繁多, 研制和开发具有标准机械接口、电气接口、动力接口、环境接口的机械自动化产品单元是一项十分复杂但又是非常重要的事。如研制集减速、智能减速、 电动机于一体的动力单元, 具有视觉、 图像处理、 识别和测距等功能的控制单元以及各种能完成典型操作的机械装置。 这样, 可利用标准单元迅速开发出新的产品,同时也可扩大生产规模。
网络化。
网络技术的兴起和飞速发展给科学技术、工业生产、政治、军事、教育以及人们日常生活带来了巨大的变革。各种网络将全球经济、生产连成一体,企业间的竞争也趋于全球化。机械自动化的新产品一旦研制出来,只要其功能独到,质量可靠,很快会畅销全球。由于网络化的普及,基于网络的各种远程控制和监测技术方兴未艾,而远程控制的终端设备本身就是机械自动化产品。现场总线和局域网技术使家用电器网络化已成大势。
微型化。
微型化指的是机械自动化向微观领域发展的趋势。国外将其称为微电子机械系统,或微机械自动化系统,泛指几何尺寸不超过1 cm3的机械自动化产品,并向微米、纳米级发展。微机械自动化产品体积小、耗能少、运动灵活, 在生物医疗、军事、信息等方面具有不可比拟的优势。微机械自动化发展的瓶颈在于微机械技术,微机械自动化产品的加工采用精细加工技术,即超精密技术,它包括光刻技术和蚀刻技术两类。
4结论
现代机械自动化在设计和制造上具有多功能、高质量、高可靠性、低能耗的意义,所以机械的设计、制造都是围绕着机械自动化来进行的。机械自动化技术所面临的共性关键技术是传感检测技术、信息处理技术、伺服驱动技术、自动化控制技术、接口技术、精密机械技术及系统总体技术等。设计人员不能只热衷于技术引进,不能仅仅安心于作为新技术的传播者, 而应该作为新技术产业化的创造者,为机电一体化技术发展开辟广阔的天地。
参考文献:
[1]吴俊松.机械设计制造及其自动化的发展方向[J].黑龙江科技信息,2013(11):45-46.
[2]罗碧龙.机械设计制造及其自动化发展方向的研究[J].科技与企业,2013(8):105-106.
[3]刘超.我国机械设计制造及其自动化发展方向研究[J].河南科技,2013(6):66-67.
对系统的移植和裁剪,以达到所需的系统要求以PowerPC8xx系列处理器为例,通过对此类处理器的引导模式。引导代码的编写和调试,以及如何引导操作系统执行等问题的研究,探索嵌入式系统引导过程的一种解决方案。关键词:MPC860嵌入式操作系统存储映射引导嵌入式系统应用开发不同于PC机,其开发过程同时涉及软硬件,需要将硬件平台的设计。操作系统以及上层应用开发综合考虑;而PC机应用开发建立在已经定制好的硬件和操作系统平台上,开发者只需调用系统提供的接口和服务完成相应的功能。由于应用和成本约束,嵌入式系统的硬件平台需根据应用量身定制,通常所用的MPU.存储器。外围设备等有多种选择余地,而且软件调试技术特殊,使平台的引导设计变得十分复杂。因此,对于嵌入式系统开发者而言,有必要深入分析系统引导过程,将软硬件开发有效地综合,即针对不同的硬件平台和软件运行模式,正确地进行底层上电初始化,进而引导操作系统执行。这个问题的核心在于对系统的引导模式的研究。嵌入式系统的启动代码一般由两部分构成:引导代码和操作系统执行环境的初始化代码。其中引导代码一般也由两部分构成:第一部分是板级。片级初始化代码,主要功能是通过设置寄存器初始化硬件的工作方式,如设置时钟。中断控制寄存器等,完成内存映射。初始化MMU等;第二部分是装载程序,其功能是将操作系统和应用程序的映像从只读存储器装载或者拷贝到系统的RAM中,并跳转到相应的代码处继续执行。操作系统执行环境的初始化代码主要由硬件抽象层HAL代码。设备驱动程序初始化代码和操作系统执行体初始代码三部分构成。本文以摩托罗拉MPC860处理器和具有自主知识产权的操作系统CRTOSII为例,研究嵌入式系统引导程序的设计和实现技术。嵌入式软件的开发涉及调试模式和固化模式两种运行状态。调试模式主要解决如何在目标板上调试正确性未经验证的程序的问题;而固化模式主要解决如何引导已调试成功的程序的问题。相应地,引导代码的设计应针对两种模式分别进行。1调试模式的系统引导1.1调试模式引导代码的作用1调试模式的系统引导1.1调试模式引导代码的作用一个完整的嵌入式软件的解决方案大致包括四方面:①硬件平台配置初始化和系统引导代码;②操作系统软件执行环境的初始化代码;③操作系统;④应用程序。在上述四方面中,引导代码是本研究中力求解决的问题。事实上,板级初始化。操作系统硬件抽象层。设备驱动程序三者整合到一起,就构成了嵌入式系统中BSP(板级支持包)的主体。BSP的代码与具体的目标板硬件设计相关,同时也与应用程序的设计要求相关,针对应用程序提出的不同要求,例如不同设备驱动程序。不同的中断源个数。不同的中断优先级安排。是否启用MMU机制等,BSP部分应作出相应的安排。上述第四部分的应用程序是建立在前三部分正确运行的基础上,并需反复调试。由上述分析可知,BSP和应用程序代码的正确性通过一次的编写不能得到保证,需要经历“调试——修改——调试”反复的过程,因此需要建立一个可靠的调试环境。该环境建立的基础正是调模式下的引导代码。1.2引导代码的调试方法本研究实验采用一种称作BDM(Background Debug Mode)的OCD(On Chip Debuging)调试技术。BMD是由Motorola公司提供的一种硬件调试方法,类似于JTAG调试。它利用处理器提供的调试端口调试。MPC860采用一种特殊的BDM——EPBDM,其运作相当于用处理器内嵌的调试模块接管中断及异常处理,用户通过设置调试许可寄存器(debug enable register)指定哪些中断或异常发生后处理器直接进入调试状态,而不是操作系统的处理程序。进入调试状态后,内嵌调试模块向外部调试通信接口发出信号,通知一直在通信接口监听的主机调试器,然后调试器便可通过调试模块使处理器执行系统指令(相当于特权态)。由于专用的片级调试接口装置(BDI2000)的支持,不需要目标端配备相应的调试代理(Monitor)软件。1.3调试模式引导代码实现调试模式引导代码的核心在于使用BDM协议解析微指令,通过调试接口向MPC860发送信号,初始化调试环境。由于MPC860采用RISC结构,所以初始化部分主要是设置处理器内部寄存器,这个过程包括三方面内容:(1)对处理器相关寄存器进行初始化:主要是关于处理器状态的寄存器(等),中断。时钟相关模块(等)。(2)对BDM调试端口的初始化:包括调试使能寄存器DER.支持指令断点的寄存器ICTRL等。(3)对片级。板级内存映射的初始化:包括内部内存映射寄存器IMMR,内存控制相关寄存器OR0~~BR7等。它们主要功能是地址映射。片选信号选择。内存控制器选择()。如果选择UPM,由于UPM控制采用微指令方式,而这些微指令根据内存的不同(等),需要设计人员自行编写代码写入MPC860内部存储区相应位置。对于需要实时刷新的存储体(如SDRAM),还需设置刷新控制微指令。上述初始化代码得以执行,一方面依赖于目标机MPC860提供的调试接口支持,另一方面也需要宿主机GDB的支持。对于宿主机系统,可能选择Linux,在其下配置GBD;也可以选择Windows2000,使用可视化的调试工具LambdaTools GDB(Coretek公司产品,不支持硬件断点),或者使用BDI2000(支持硬件断点的仿真器)。不管使用哪种调试工具,都可以使用该调试器能够识别的脚本文伯存放初始化指令。这些脚本在功能上是等效的,指令的描述一般都采用如下格式:操作码寄存器数值如在嵌入式Linux下SDRAM初始化的代码片断为:mpcbdm spr MDR=0x1FF77C35mpcbdm spr MDR=0xEFEABC34mpcbdm spr MDR=0x1FB57C35……而在Windows2000下使用BDI2000代码为:WUPM 0x00000005 0x1FF77C35WUPM 0x00000006 0xEFEABC34WUPM 0x00000007 0x1FB57C35……脚本描述的指令执行后,MPC860按照预先的设想进入一个可以正常工作的状态,可以用装载器将程序下载到SDRAM中调试执行。这个程序主要包含中断表。操作系统和应用程序映象两部分,其格式可以为等。图1给出了下载完毕后的内存映象。当程序下载完成后,PC指针指向Image代码段(text段)的首条指令,可以利用调试器提供的命令开始调试。2固化模式的系统引导2.1概述经过调试后,OS和上层应用程序构成的Image的正确性得到了保证,但是这个Image不能自主运行。因为调试模式下,是通过BDM接口初始化处理器,并且通过BDM接口将程序下载到RAM中去运行。实际应用环境中,Image必须被存储在非易失性存储器中,如等,本文选择Flash。系统启动时,处理器执行一段引导程序替代调试模式下的调试脚本和装载程序的功能。启动代码主要考虑以下几个问题:(1)系统上电和复位时程序如何执行,需要初始化哪些寄存器,重点仍然是内存映射相关部分;(2)启动代码为几部分,每部分代码应该全部还是部分放到Flash或者RAM中执行;(3)在时间效率和空间效率的折衷。2.2上电初始化在两种引导模式下,上电初始化总是必要步骤。它涉及各种核心寄存器初始化。地址映射等问题的处理。2.2.1地址映射MPC860的复位是通过一种异常中断来处理的(可理解为CPU自己产生的中断),向量号为0x100。异常向量表的基地址加上复位向量号即为复位向量,也就是CPU开始执行指令的地方。异常向量表在内存空间的可能位置有两个:0x0000000和0xFFF00000。所以PowerPC的复位向量为0x100或0xFFF00100。假设复位向量为0xFFF00100,系统有128K字节的Flash,并准备把它映射到CPU内存空间0xFE000000开始的地址。MPC860内部的CS0片选信号是默认的系统启动片选信号,已被连接到Flash的片选线上。上电时,内存控制器会忽略所有参与征选逻辑的地址线的高17位,CS0总是有效。这样,Flash总会被选中,CPU从Flash偏移0x100的地方取指令,此时CPU的4GB内存空间的每个128KB的块都被映射到Flash。2.2.2寄存器初始化固化方式下的大致相同,但是不再采用脚本文件编写,而是直接将一段MPC860汇编程序存放在一个文件中。与调试模式初始化程序一样,主要完成以下处理:(1)初始化CPU核心寄存器;(2)设置机器状态寄存器;(3)禁止ceche;(4)初始化IMMR;(5)初始化系统接口单元(SIU);(6)初始化时钟和中断控制寄存器;(7)初始化通信处理机(CPM);(8)初始化内存控制器(UPM);(9)初始化C语言堆栈。2.2.3地址空间重映射上电时,由于只有一个片选信号有效,它选通了Flash,而RAM和其它存储设备地址无效,需要经过地址空间重映射才能访问。MPC860的地址空间重映射是通过设置0R0~~BR7这十六个寄存器完成的。由于上电时4GB的地址空间均被Flash占用,所以0xFFF00100这个地址仍在Flash的偏移0x100处。在寄存器初始化过程中,需要把内部寄存器空间以及外设等也映射进来。在进行这些操作前,需要把Flash的位置固定下来,例如映射到0xFE000000,这个操作是通过设置OR0和BR0寄存器实现的。但在写OR0时,CPU仍然在0xFFF00000的那一块取指令,而Flash即将被映射到0xFE000000块,所以程序必定出现“跑飞”的现象,必须对程序计数器(PC)进行调整,然而PC指针对程序员是不可见的,必须用跳转指令修改它。在Flash地址映射完成后,通过设置OR1~~BR7可以完成对所有存储器空间的映射,各种存储设备可映射在CPU地址空间中的任意位置,但相互之间不能冲突。2.3引导代码的构成和运行系统启动所涉及的代码由寄存器初始化汇编文件.一个Load程序以及操作系统与应用程序的Image三部分构成,引导代码则只包含和Load程序。Load程序的作用是将操作系统与应用程序的构成的Image从Flash拷贝到SDRAM中,并跳转到Image的首条指令。调试完成后的Image有两种运行模式:Flash-resident image:Load程序仅仅把Image中的数据段(data+bss)复制到RAM中,代码段(text)在Flash中直接运行。Flash-based image:Load程序把Image完全搬到RAM中执行,包括image中的代码段(text)和数据段(data+bss)。图2和图3分别描述了两种Image的存贮映象,以及从Flash到SDRAM的装载过程。2.4时间效率和空间效率上的折衷在嵌入式系统的应用过程中,针对不同的应用环境,对时间效率和空间效率有不同的要求,基于MPC860的启动代码对此有比较充分的解决方案。2.4.1时间限制时间限制主要包括两种情况:系统要求快速启动和系统启动后要求程序高速执行。对于要求快速启动的系统,应该使在Flash中执行的初始化程序尽量简短,诸如循环语句之类的语法应该尽量减少,尽快将程序装载到RAM中执行,这样做的原因在于Flash的访存时间与RAM的访存时间存在数量级上的差距。但是必须根据代码量以及存储器的特片进行权衡。因为,虽然RAM中捃速度快,但是将Flash中的代码复制到RAM中的操作会带来一定的开销。由于可见,启动时间由Flash中引导代码的运行时间。代码从Flash拷贝到RAM的时间以及RAM中后续启动代码的运行时间三部分组成。启动时间的最小值是这三者和的最小值。对于启动后要求程序高速执行的系统,主要受处理器。存储器特性以及I/O速度等的影响。在软件方面,应该采用了上述Flash-based image方式,使得代码段在RAM中运行,提高运行速度。2.4.2空间限制空间限制主要包括两种情况:Flash等非易失性存储空间有限和RAM等易失性空间有限两种系统。对于采用高性能非易失性存储器的系统,出于成本因素,Flash等存储设备不能太大,然而它又是系统存放启动代码和操作系统Image的地方。在存放Image时,可以先使用gzip等压缩工具进行压缩,在将Image加载到RAM时采用逆向的解压缩算法解压。同时,出于实时性考虑,压缩算法不能过于复杂,否则压缩解压过程消耗大量时间将与启动时间限制发生严重冲突。采用压缩策略并不一定会增加系统启动时间,因为压缩解压过程虽然消息了一定的时间,但是由于Image体积减小,由Flash复制到RAM中的时间相应减少,有可能反而减少了时间消耗。对于采用高性能RAM的系统,同样出于成本因素,RAM空间有一定限制,此时一般采用前文描述的Flashresident image方式:Load程序把Image中的数据段复制到RAM中,代码段在Flash中运行。折衷同样存在,因为code段在低速的Flash中运行,在节省空间的同时,却牺牲了时间。本文介绍了基于嵌入式处理器的操作系统引导方法,重点研究嵌入式系统的引导模式以及不同类别的引导方法。以在MPC860C处理器上引导CRTOSII操作系统为例,阐述了调试模式和固化模式下引导代码的构成。作用以及执行方式,并对不同引导模式下的时空效率的折衷进行了分析。最终,借助BDI2000仿真器对编写的引导代码进行调试,成功实现了调试模式和固化模式下操作系统的引导。后续工作包括:继续研究在不同硬件平台上的操作系统引导方法,例如最流行的系列;在同一平台上,可以研究不同操作系统的启动方法,例如嵌入式等。
嵌入式图像处理系统特点技术及应用前景论文
现今,伴随着信息技术的迅速发展与用户需求的逐年提高,嵌入式系统的应用逐年扩大,已经逐渐的融入到了国民生产的诸多方面。嵌入式系统具体讲,就是一种拥有特定功能的计算机系统。嵌入式系统与网络技术、通信技术有机结合,有效的提高了通信的智能性与灵活性。
应用嵌入式系统对图像进行处理,可以显著的提高图像处理系统的数据处理、通信等能力,进而有效的扩大图像处理技术的使用范围,以及对于不同要求与环境的适应能力。应用嵌入式系统进行图像处理,是进行图像处理的新的途径之一。当前图像处理技术应用范围十分广泛,涉及仪表检测安全、消费电子、工业自动化、医学等领域,因此图像处理技术具有十分广泛的应用前景。
1 嵌入式图像处理系统特点
1) 图像处理系统,具有系统专用的图形用户界面,同时具备运行速度快、简单易用与功能强大的特点。2) 图像基础数据库的建立,可以为智能化模式识别技术,诸如图像匹配等提供支持。3) 改变了原有的对待处理图像的处理策略与算法,可以依据具体的待处理图像的不同特点,提供有效的图像处理算法,进而提高图像处理的效率与速度。4)对于外部图像的总线结构与输入输出设备等都是采取专用的设备,进而有效的提高了外部图像输入输出设备、中央计算单元的数据交换速度。
5) 改变了原有的计算机体系结构,应用了嵌入式的专用平台,同时应用图像高速处理器,使图像处理的速度有效的.提高,同时也提高了图像处理任务的实时性。
2 图像处理系统总体设计
嵌入式图像处理系统
嵌入式图像处理系统,具体由嵌入式操作系统、图像处理算法的应用软件与硬件平台构成。系统的组成结构图具体如图1所示。硬件平台可以为图像处理提供显示、存储器与计算支持,主要采用的是MagicARM2410嵌入式开发平台,同时包括图像存储模块;显示模块;通信模块;嵌入式处理器S3C2410、SDRAM等。
图像处理过程
嵌入式操作系统,可以为底层硬件提供有效的技术支持与管理,诸如可以进行图像处理任务管理;中断管理;内存管理;任务管理;驱动支持等。首先,在系统启动后,经由引导程序启动操作系统,进而完成硬件的初始化。其次,经由操作系统的任务管理模块,进行内存的分配,同时将图像信息存储在存储器的视频缓冲区中。第三,经由软件算法,将显示缓冲区的图像信息,写入到LCD缓冲区,进而实现图像的实时显示。第四,通过图像处理的算法,进行图像的编码与处理,同时进行存储。应用软件可以实现图像处理算法,其主要是针对目标要求编写的专用程序。
系统的功能设计
嵌入式图像处理可以有效的解决在嵌入式环境下实现图像的处理。
具体的主要应用模块化设计的方式,将需要系统完成的任务进行功能模块化的设计。在每一个模块中,都包含一类图像处理的操作方法,而且在进行执行时都会调用对应的算法。系统功能模块具体如图2所示,主要分为形态运算;几何变换;图像分析;图像增强。其中图像增强的模块具体又包括:灰度变换调整;直方图修正法;直方图等,具体如图3所示。各大系统模块的下面都会细分图像的处理操作,其余的三个模块的设计形式与图像增强模块的设计具有相似性。
3 图像处理系统发展趋势
1) 在图像处理系统的内部,主要进行集成软件的开发,对于用户而讲,可以依据自己的需求开发相应的图像处理算法,可以显著的提高系统的效率。2) 图像处理系统与网络的结合性逐渐提高,进而实现了图像的远程传输与采集。3) 图形处理系统的功能不再完全借助PC与多种辅助设备,而是会集成在一个方便使用的电子设备上。4) 伴随硬件设备的进步,图像处理系统的性能逐年提高,因而价格也会逐年下降。
4 结语
在嵌入式系统的图像处理技术的基础上,使得图像处理领域中出现了人机用户界面、多种通信模式与网络接口的便捷性。图像处理技术的应用范围越来越广泛,因此,在未来的发展道路上,其必然会朝着网络化、便携性、多任务与多功能的方向发展。伴随着嵌入式操作系统的强大功能,图像处理技术的发展方向必定会更加宽广。
参考文献:
[1] 崔磊,董守平,马红莲。数字图像处理技术的发展现状与展望[M].北京:中国石油大学出版社,2003.
[2] 刘禾。数字图像处理及应用[M].北京:中国电力出版社,2005.
[3] 杨永敏。嵌入式图像处理系统的研制[D].哈尔滨工业大学硕士学位论文,2006.
[4] 杨柯。嵌入式图像处理技术研究及其应用[D].西北工业大学硕士学位论文,2003.
[5] 宋延昭。嵌入式操作系统介绍及选型原则[J].工业控制计算机,2005.
[6] 严丽平,甘岚。基于嵌入式平台的图像处理系统的研制[J].微计算机信息,2008.
[7] 杨会丽。基于嵌入式系统的图像处理平台的设计[D].河北科技大学工学硕士学位论文,2009.
一、课程设计(论文)资料的组成 1.课程设计(论文)任务书; 2.课程设计(论文)——标题、中英文摘要(关键词)、正文、参考文献; 3.课程设计(论文)答辩纪录及教师评语。二、课程设计(论文)资料的填写与装订 统一使用学校印制的课程设计(论文)资料袋和学院印制的封面。课程设计(论文)资料按要求认真填写,字体要工整,版面要整洁,手写一律用黑或兰黑墨水,最好使用A4纸计算机打印。装订一律按“标题、中英文摘要(关键词)、正文、参考文献”顺序,在左侧装订。三、课程设计(论文)的撰写规范 1.课程设计(论文)的撰写规范完全按照南工校教[2006]28号文“本科生毕业设计(论文)撰写规范(2006年修订)”和学院相关文件执行。 2.课程设计(论文)写作格式参考科研期刊杂志论文投稿要求,不要求目录、不需分章,连续写作。 3.页眉格式: 奇数页:南京工业大学课程设计(论文)——单写“设计”或“论文”) 偶数页:课程设计(论文)题目
首先写在完成论文过程中的遇到困难以及得到哪些人的帮助,再写对他们的感谢!最后写即将毕业了对母校的恋恋不舍,对同学、老师的美好祝愿!例如:2009年3月,我开始了我的毕业论文工作,时至今日,论文基本完成。从最初的茫然,到慢慢的进入状态,再到对思路逐渐的清晰,整个写作过程难以用语言来表达。历经了几个月的奋战,紧张而又充实的毕业设计终于落下了帷幕。回想这段日子的经历和感受,我感慨万千,在这次毕业设计的过程中,我拥有了无数难忘的回忆和收获。3月初,在与导师的交流讨论中我的题目定了下来,是:8031单片机控制LED显示屏设计。当选题报告,开题报告定下来的时候,我当时便立刻着手资料的收集工作中,当时面对浩瀚的书海真是有些茫然,不知如何下手。我将这一困难告诉了导师,在导师细心的指导下,终于使我对自己现在的工作方向和方法有了掌握。在搜集资料的过程中,我认真准备了一个笔记本。我在学校图书馆,大工图书馆搜集资料,还在网上查找各类相关资料,将这些宝贵的资料全部记在笔记本上,尽量使我的资料完整、精确、数量多,这有利于论文的撰写。然后我将收集到的资料仔细整理分类,及时拿给导师进行沟通。4月初,资料已经查找完毕了,我开始着手论文的写作。在写作过程中遇到困难我就及时和导师联系,并和同学互相交流,请教专业课老师。在大家的帮助下,困难一个一个解决掉,论文也慢慢成型。4月底,论文的文字叙述已经完成。5月开始进行相关图形的绘制工作和电路的设计工作。为了画出自己满意的电路图,图表等,我仔细学习了Excel的绘图技术。在设计电路初期,由于没有设计经验,觉得无从下手,空有很多设计思想,却不知道应该选哪个,经过导师的指导,我的设计渐渐有了头绪,通过查阅资料,逐渐确立系统方案。方案中LED显示屏行、列驱动电路的设计是个比较头疼的问题,在反复推敲,对比的过程中,最终定下了行驱动电路采用74LS154译码器,列驱动电路采用74HC595集成电路。当我终于完成了所有打字、绘图、排版、校对的任务后整个人都很累,但同时看着电脑荧屏上的毕业设计稿件我的心里是甜的,我觉得这一切都值了。这次毕业论文的制作过程是我的一次再学习,再提高的过程。在论文中我充分地运用了大学期间所学到的知识。我不会忘记这难忘的几个月的时间。毕业论文的制作给了我难忘的回忆。在我徜徉书海查找资料的日子里,面对无数书本的罗列,最难忘的是每次找到资料时的激动和兴奋;亲手设计电路图的时间里,记忆最深的是每一步小小思路实现时那幸福的心情;为了论文我曾赶稿到深夜,但看着亲手打出的一字一句,心里满满的只有喜悦毫无疲惫。这段旅程看似荆棘密布,实则蕴藏着无尽的宝藏。我从资料的收集中,掌握了很多单片机、LED显示屏的知识,让我对我所学过的知识有所巩固和提高,并且让我对当今单片机、LED显示屏的最新发展技术有所了解。在整个过程中,我学到了新知识,增长了见识。在今后的日子里,我仍然要不断地充实自己,争取在所学领域有所作为。脚踏实地,认真严谨,实事求是的学习态度,不怕困难、坚持不懈、吃苦耐劳的精神是我在这次设计中最大的收益。我想这是一次意志的磨练,是对我实际能力的一次提升,也会对我未来的学习和工作有很大的帮助。在这次毕业设计中也使我们的同学关系更进一步了,同学之间互相帮助,有什么不懂的大家在一起商量,听听不同的看法对我们更好的理解知识,所以在这里非常感谢帮助我的同学。在此更要感谢我的导师和专业老师,是你们的细心指导和关怀,使我能够顺利的完成毕业论文。在我的学业和论文的研究工作中无不倾注着老师们辛勤的汗水和心血。老师的严谨治学态度、渊博的知识、无私的奉献精神使我深受启迪。从尊敬的导师身上,我不仅学到了扎实、宽广的专业知识,也学到了做人的道理。在此我要向我的导师致以最衷心的感谢和深深的敬意。
这个网址你可以看下,可以先用Proteus仿真一下看效果。 关于制作16*16二极管显示点阵元件,16*16=256个LED 一个双层板(焊这256个LED) 【当然,可以买现成的8*8的点阵代替自己手动焊点阵,然后拼在一起,这样减少很多工作】 一个74LS154(4线16线译码器) 2个74LS373(驱动LED的行或列) 一个单片机,入门的就用AT89S52吧。 再就是单片机最小系统中的分立元件这些。就够了
用点阵式液晶显示屏吧,网上一大把这样的资料。自己动手找吧。
学生毕业论文总结1
--年3月,我开始了我的毕业论文工作,时至今日,论文基本完成。从最初的茫然,到慢慢的进入状态,再到对思路逐渐的清晰,整个写作过程难以用语言来表达。历经了几个月的奋战,紧张而又充实的毕业设计终于落下了帷幕。回想这段日子的经历和感受,我感慨万千,在这次毕业设计的过程中,我拥有了无数难忘的回忆和收获。
3月初,在与导师的交流讨论中我的题目定了下来,是:8031单片机控制LED显示屏设计。当选题 报告 ,开题报告定下来的时候,我当时便立刻着手资料的收集工作中,当时面对浩瀚的书海真是有些茫然,不知如何下手。我将这一困难告诉了导师,在导师细心的指导下,终于使我对自己现在的工作方向和 方法 有了掌握。
在搜集资料的过程中,我认真准备了一个 笔记本 。我在学校图书馆,大工图书馆搜集资料,还在网上查找各类相关资料,将这些宝贵的资料全部记在笔记本上,尽量使我的资料完整、精确、数量多,这有利于论文的撰写。然后我将收集到的资料仔细整理分类,及时拿给导师进行沟通。
4月初,资料已经查找完毕了,我开始着手论文的写作。在写作过程中遇到困难我就及时和导师联系,并和同学互相交流,请教专业课老师。在大家的帮助下,困难一个一个解决掉,论文也慢慢成型。
4月底,论文的文字叙述已经完成。5月开始进行相关图形的绘制工作和电路的设计工作。为了画出自己满意的电路图,图表等,我仔细学习了E-cel的绘图技术。在设计电路初期,由于没有设计 经验 ,觉得无从下手,空有很多设计思想,却不知道应该选哪个,经过导师的指导,我的设计渐渐有了头绪,通过查阅资料,逐渐确立系统方案。方案中LED显示屏行、列驱动电路的设计是个比较头疼的问题,在反复推敲,对比的过程中,最终定下了行驱动电路采用74LS154译码器,列驱动电路采用74HC595集成电路。
当我终于完成了所有打字、绘图、排版、校对的任务后整个人都很累,但同时看着电脑荧屏上的毕业设计稿件我的心里是甜的,我觉得这一切都值了。这次毕业论文的制作过程是我的一次再学习,再提高的过程。在论文中我充分地运用了大学期间所学到的知识。
我不会忘记这难忘的几个月的时间。毕业论文的制作给了我难忘的回忆。在我徜徉书海查找资料的日子里,面对无数书本的罗列,最难忘的是每次找到资料时的激动和兴奋;亲手设计电路图的时间里,记忆最深的是每一步小小思路实现时那幸福的心情;为了论文我曾赶稿到深夜,但看着亲手打出的一字一句,心里满满的只有喜悦毫无疲惫。这段旅程看似荆棘密布,实则蕴藏着无尽的宝藏。我从资料的收集中,掌握了很多单片机、LED显示屏的知识,让我对我所学过的知识有所巩固和提高,并且让我对当今单片机、LED显示屏的最新发展技术有所了解。在整个过程中,我学到了新知识,增长了见识。在今后的日子里,我仍然要不断地充实自己,争取在所学领域有所作为。
脚踏实地,认真严谨,实事求是的 学习态度 ,不怕困难、坚持不懈、吃苦耐劳的精神是我在这次设计中最大的收益。我想这是一次意志的磨练,是对我实际能力的一次提升,也会对我未来的学习和工作有很大的帮助。
在这次毕业设计中也使我们的同学关系更进一步了,同学之间互相帮助,有什么不懂的大家在一起商量,听听不同的看法对我们更好的理解知识,所以在这里非常感谢帮助我的同学。
在此更要感谢我的导师和专业老师,是你们的细心指导和关怀,使我能够顺利的完成毕业论文。在我的学业和论文的研究工作中无不倾注着老师们辛勤的汗水和心血。老师的严谨治学态度、渊博的知识、无私的奉献精神使我深受启迪。从尊敬的导师身上,我不仅学到了扎实、宽广的专业知识,也学到了做人的道理。在此我要向我的导师致以最衷心的感谢和深深的敬意。
学生毕业论文总结2
在将近两个月的时间里,我们已基本完成了毕业设计。在编程的过程中,我们学到了很多知识,不仅是编程开发方面的专业技能,更锻炼了自己的毅力和耐性。
经过一段时间的设计和开发,图书借阅管理系统基本开发完毕,系统功能基本符合借阅管理的需求,由于时间比较紧迫,该系统还有些不足之处,比如有些界面做的不够漂亮,不够人性化,有的操作有点繁琐,这些都是后续工作可以更好完善的。因为对图书馆的调研不够精确,所以有些问题没有考虑到,导致有些实现的功能不够周全,还需要进一步的完善。对于一些复杂的代码还需要进一步的修改,使之更加简捷易懂。
在开发图书借阅管理系统的过程中,出现了很多问题,如当调试时,出现,页面加载不进去,以前我们只知道单一的调试方法,即点击调试按钮,不知道代码出错信息在哪里,很难调试成功,后来经过到网上搜索信息,以及请教老师和同学,渐渐的懂得了如何调试程序,这需要在相应的函数添加断点,按F10,分段调试,一点一点调试,就能可找出错误出现在哪个地方,然后再不断的调试。
在创建数据库时,会出现,主键和外键的先后创建问题,以及当创建了表和字段的主外键和关系后,需要修改数据库时,会出现主外键的问题,这时就要考虑修改数据表的先后问题了。
在创建登录界面的功能时,刚开始理解的有点错误,导致后来登录界面没有更实际的功能,经过一段时间的修改,终于修改成功了,编程并不是最难的,修改程序,调试程序往往是最繁琐,最耗时间的,但是通常,只有耐心的,一点一点的调试,才能发现系统的不足,才能让系统的功能更好更全面的实现。
大学的生活很美好,也很值得留恋。在这里,找到了良师益友,也学到了在别处学不到的知识。随着毕业设计的完成,随之而来的便是毕业,意味着和同学、老师分开,真的有很多不舍。
在做毕业设计的过程中,经常会遇到问题,有些问题自己解决不了,很是苦恼,就向同学和老师请教,他们总会很耐心的给以帮助。老师在检查程序时,总是耐心地指出程序中明显的不足,使我明白怎样去改正,完善系统的功能。老师在给我检查毕业论文时,批注写的很仔细,写明了需要修改的地方,和仔细的指导,使我更加方便地对论文进行改正。老师那温和的态度和深厚的学术修养使我终身难忘,真的很感谢老师耐心的指导和同学热心的帮助。
感谢计算机系的每位老师,每一次课他们都很认真地对待,很耐心地讲解。感谢我的母校“无锡职业技术学院”,美丽的校园、庄严的教学楼、干净的教室,敬爱的老师,亲爱的同学,是我心中最珍贵、最美丽的记忆。不管将来走到哪里,依然记得我的母校,无锡职业技术学院,我曾经学习和生活的母校。
最后祝我的母校,蒸蒸日上,更创新高!
学生毕业论文总结3
随着毕业日子的即将到来,我们的毕业设计也划上了圆满的句号。毕业设计是我们学业生涯的最后一个环节,不仅是对所学基础知识和专业知识的一种综合应用,更是对我们所学知识的一种检测与丰富,是一种综合的再学习、再提高的过程,这一过程对我们的学习能力、独立思考及工作能力也是一个培养。
在没有做毕业设计以前觉得毕业设计只是对这几年来所学知识的单纯总结,但是通过这次做毕业设计发现自己的看法有点太片面。毕业设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。通过这次毕业设计,我才明白学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质。我们设计毕业论文就是运用已有的专业基础知识,独立进行科学研究活动,分析和解决一个理论问题或实际问题,把知识转化为能力的实际训练。毕业设计是对我们的知识和相关能力进行一次全面的考核,是对我们进行科学研究基本功的训练,培养我们综合运用所学知识独立地分析问题和解决问题的能力,为以后撰写专业学术论文打下良好的基础。
我认为,毕业设计也是对在校大学生最后一次知识的全面检验,是对学生基本知识、基本理论和基本技能掌握与提高程度的一次总测试。毕业论文不是单一地对学生进行某一学科已学知识的考核,而是着重考查学生运用所学知识对某一问题进行探讨和研究的能力。毕业设计还能培养我们的科学研究能力,使我们初步掌握进行科学研究的基本程序和方法。我们大学生毕业后,不论从事何种工作,都必须具有一定的研究和写作能力,要学会收集和整理材料,能提出问题、分析问题和解决问题,并将其结果以文字的形式表达出来。我们当代大学生应该具有开拓精神,既有较扎实的基础知识和专业知识,又能发挥无限的创造力,不断解决实际工作中出现的新问题
毕业论文的过程是训练我们独立地进行科学研究的过程。撰写毕业论文是学习怎么进行科学研究的一个极好的机会,有指导教师的指导与传授,可以减少摸索中的一些失误,少走弯路,而且直接参与和亲身体验了科学研究工作的全过程及其各环节,是一次系统的、全面的实践机会。撰写毕业论文的过程,同时也是专业知识的学习过程,而且是更生动、更切实、更深入的专业知识的学习。毕业设计论文是结合科研课题,把学过的专业知识运用于实际,在理论和实际结合过程中进一步消化、加深和巩固所学的专业知识,并把所学的专业知识转化为分析和解决问题的能力。同时,在搜集材料、调查研究、接触实际的过程中,既可以印证学过的书本知识,又可以学到许多课堂和书本里学不到的活生生的新知识。此外,学生在毕业论文写作过程中,对所学专业的某一侧面和专题作了较为深入的研究,会培养学习的志趣,这对于我们今后确定具体的专业方向,增强攀登某一领域科学高峰的信心大有裨益。所以毕业设计的研究对我们来说,意义非凡。
在此要感谢我的'指导老师周杰老师对我悉心的指导,感谢老师给我的帮助。在设计过程中,我通过查阅大量有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。在整个设计中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有非常重要的影响。毕业设计的研究期间,我大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。在此,我向帮助我的老师和同学们表示衷心的感谢!
学生毕业论文总结4
一、选题要准确。俗话说,良好的开头是成功的一半。论文写作也是一样,选一个恰当的题目是写好论文的关键之一。万事开头难,就是在选题的时候,要考虑好多的因素,既要符合理论的发展趋势,紧跟时代的步伐,有一定的新意,有一定的学术价值;又要符合自身的实际情况,自己有一定的专业知识的沉淀,或自己感兴趣。在选题时一定要进行深入的论证,选题要适中,既不要太难,自己没法写下去,又不能过于肤浅,研究价值不大。这就是要结合自身情况,量体裁衣,在导师的指导下,选一个符合自己实际的题目。题目一旦论证确定,就要树立目标和信心,坚定的写下去,在写作过程中遇到困难在所难免,我们只有进一步调查研究,寻求解决困难的办法,切忌朝三暮四,犹豫不定,切忌中途换题,临阵换将,就是在万不得已的情况下,不要中途换题,这样会分散自己的精力,一定要相信自己,选定的题目是有科学依据的,自己有能力有信心写下去,这一点,信心最重要,这是我们论文写作的动力和支撑。
二、研究思路要清晰。题目选定了,我们就围绕论文进行深入的论述,思路最重要,思路决定出路。论文写作,总有一个思路,是按时间顺序,历史发展顺序,战斗行动顺序,还是逻辑顺序,这根据自己论文的实际情况而定,只有做到研究思路清晰,才能围绕主体开展论述,这也是从总体上对论文的一个把握,不会让论文写作偏离主题,做到形散神聚。根据研究的思路,我们可以列出论文的各级标题。
三、观点要鲜明。论文写作过程中,要善于用简明扼要的话总结自己的观点,要敢于亮出自己的观点,就是在论文的三级标题之间对自己的观点要有所体现,切忌把观点隐藏在正文中间,要做到读者看了你的纲目,就知道你写了什么,表达了怎样的观点。切忌人云亦云,泛泛而谈,说了半天,不知道要表达什么意思,我们所有的工作都是为我们的中心论点和分论点服务的。
四、论据要充分。论文论文,重在论证。这与我们编写教科书有很大区别,教课书的重点在于解决“是什么”,而论文的重点在于解决“为什么”。论文不需要像教课书一样面面俱到,可以不完整,但一定要亮出自己的观点,把道理讲明白,为什么是这样的观点,论据一定要充分,我们可以采取讲道理,摆事实,举例子进行论证,古今中外,历史的,现在的,未来的,都可以用来论证,论据充分了,我们的论文才显得丰满,论点才能站得住脚。
五、找准自己论文的创新点。论文的创新点或进步点,就是你论文的闪光点,也是你论文中最核心的地方,硕士论文的创新点一般为3—5个即可,这必须站在一定的高度,进行深入的思考,要提出新的思路、新的方法、新的举措,创新点的优劣,从一定程度上也决定了你的学术研究水平和论文质量,也是你论文答辩时必须重点汇报的东西,这也是吸引专家教授眼球的东西。
六、合理借鉴和引用他人的成果。他山之石,可以攻玉。我们就是在占有资料和文献的同时,要借鉴他人的强处,进一步进行研究。牛顿说过,我之所以看的更远,是因为站在巨人的肩上。我们在论证的时候,一般可以采用归纳、总结和演绎的方法,当看到几个相似的观点时,我们可以进行归纳和总结,找出它们的共性,得出它们的规律,那就是自己的观点。从他人研究的一个内容,我们可以进行联想和演绎,是不是对我研究的东西也可以引申,可以借鉴。在引用他人的研究成果时,一般要遵循一个原则,引用了人家的论点,就不能引证人家的论据,引用了论据,就不能引用论点,这样可以避免不必要的麻烦。
七、详略要恰当。山不在高,有仙则灵,水不在深,有龙则灵, 文章 篇幅不在长短,有新意就行。在论文写作中,千万莫以字数论英雄,字数只是个门面,关键是内容,在论文创新的地方,应该重点论述,论文中 其它 部分要恰如其分,详略恰当,有张有弛,重点内容,浓墨重彩,相关内容,蜻蜓点水,切忌一碗水端平,我们要学会弹钢琴。真正一篇好的论文,就像你见到的一个美女一样,添之一分太肥,减之一分太瘦,恰到好处。而不是在凑字数,可要可不要的东西,坚决删除,别留着占版面,浪费读者的时间。
八、定性与定量分析结合。大多数军事学学论文,基本上具有理工科论文的特征。有了定性的研究往往是不够的,就是讲的天花乱缀,它的说服力是不够的,我们要借用数学的、计算机的相关知识,对其进行定量的分析,计算和模拟出结果,这也是自然科学研究的精神,用事实说话,切忌伪造数据,篡改数据,这是学术道德不允许的。
九、巧妙运用图表。图标的功能就是简明扼要,能形象的反应出研究的问题,让人看了一目了然,赏心悦目。把我们的论文比作一部电影的话,那么图标就是电影的插曲,是相当重要的,没有图标的论文,通篇纯文字的论文,让人看了就是有点不过瘾,就像只有一种纯颜色,没有色彩,就像看黑白电视一样,显得有点沧桑,论文中的图表的作用相当重要。
十、文中脚注和参考文献要全面。在论文写作中,不可能不引用别人的观点,不过论文写作中标注出来了,这是研究的需要,不能算抄。但一定要有下注,要标明文献的出处,具体到页码,不然很容易有抄袭的嫌疑。一般在引用中,不能出现大段的引用,最好是转化为自己的语言,把意思表达出来。文章千古事,得失寸心知。论文撰写没有捷径可走,只有一步一个脚印,认认真真的去完成,在论文的字里行间凝结着导师和作者的心血,一份耕耘一份收获,预祝在一起并肩战斗的兄弟姐妹顺利通过!
学生毕业论文总结5
--年11月,我开始了我的毕业论文工作,经过长时间的写作到现在论文基本完成。论文的写作是一个长期的过程,需要不断的进行精心的修改,不断地去研究各方面的文献,认真总结。历经了这么久的努力,终于完成了毕业论文。在这次毕业论文的写作的过程中,我拥有了无数难忘的感动和收获。12月初,在与导师的交流讨论中我的题目定了下来,是:传播学视野下的青春文学现象——从80后作家谈起。当开题报告定下来之后,我便立刻在学校的图书馆着手资料的收集工作中,当时面对众多网络资料库的文章真是有些不知所措,不知如何下手。我将这一困难告诉了指导老师,在老师的细心的指导下,终于使我了解了应该怎么样利用学校的浩瀚的资源找到自己需要的青春文学方面的资源,找了大概100篇左右相关的论文,认真的阅读,总结笔记,为自己的论文打好基础。主要是为了发现过去那些论文之中的观点,然后避免有重复的观点出现,争取从一个全新的角度去研究青春文学。
在搜集资料后,我在电脑中都进行分类的整理,然后针对自己不同部分的写作内容进行归纳和总结。尽量使我的资料和论文的内容符合,这有利于论文的撰写。然后及时拿给老师进行沟通,听取老师的意见后再进行相关的修改。老师的意见总是很宝贵的,可以很好的指出我的资料收集的不足以及需要什么样的资料来完善文章。
1月初,资料已经查找完毕了,我开始着手论文初稿的写作。初稿的写作显得逻辑结构有点不清晰,总是想到什么相关的问题就去写,而没有很好的分出清晰的层次,让文章显得有点凌乱,这样的文章必然是不符合要求的,但毕竟是初稿,在老师的指导下还要进行反复的修改。
写作毕业论文是我们每个大学生必须经历的一段过程,也是我们毕业前的一段宝贵的回忆。当我们看到自己的努力有收获的时候,总是会有那么一点点自豪和激动。任何事情都是这样子,需要我们脚踏实地的去做,一步一个脚印的完成,认真严谨,有了好的态度才能做好一件事情,一开始都觉得毕业论文是一个很困难的任务,大家都难免会有一点畏惧之情,但是经过长时间的努力和积累,经过不断地查找资料后总结,我们都很好的按老师的要求完成了毕业论文的写作,这种收获的喜悦相信每个人都能够体会到。这是一次意志的磨练,是对我实际能力的一次提升,相信对我未来的学习和工作有很大的帮助。
在这次毕业论文中同学之间互相帮助,共同商量相关专业问题,这种交流对于即将面临毕业的我们来说是一次很有意义的经历,大学四年都一起走过了,在最后我们可以聚在一起讨论学习,研究专业问题,进而更好的了解我们每个人的兴趣之所在,明确我们的人生理想,进而在今后的生活和工作中更好的发挥自己的优势,学好自己的专业,成为一个对于社会有用的人。
在此更要感谢我的专业老师,是你们的细心指导和关怀,使我能够顺利的完成毕业论文。老师对于学生总是默默的付出,尽管很多时候我们自己并没有特别重视论文的写作,没有按时完成老师的任务,但是老师还是能够主动的和我们联系,告诉我们应该怎么样修改论文,怎么样按要求完成论文相关的工作。老师的检查总是很仔细的,可以认真的看论文的每一个细小的格式要求,认真的读每一个同学的论文,然后提出最中肯的意见,这是很难得的。
学生毕业论文总结(通用5篇)相关文章:
★ 毕业论文心得5篇
★ 大学生毕业论文总结六篇
★ 大学毕业论文心得5篇精选案例
★ 毕业论文写作心得5篇
★ 毕业论文心得体会作文5篇
★ 毕业实习论文范文5篇
★ 毕业设计总结最新范文
★ 毕业论文开题报告范文5篇
★ 毕业论文工作评价五篇
★ 精选五篇关于毕业论文中期报告心得范文
我是电子专业的毕业论文(设计)昨天才写好,key words:单片机 传感器 嵌入式 GSM Internet 客户端 服务器近三万字 要的QQ
你是要选题目还是?
智能玩具小车的设计与实现 程序 可以实现小车在红外遥控器下行驶 左转 右转 前进 后退 停止 要原理图的话 你懂的 #include<> #include <>#define uchar unsigned char#define uint unsigned int sbit IR=P3^2; //红外接口标志 sbit NEA1=P2^2; sbit NEB1=P2^3; sbit IN1=P2^0; sbit IN2=P2^1; sbit IN3=P2^4; sbit IN4=P2^5;char code Tab[16]="0123456789ABCDEF";unsigned char irtime;//红外用全局变量bit irpro_ok,irok;unsigned char IRcord[4];unsigned char irdata[33];unsigned char TempData[16]; uchar a; void Ir_work(void); void Ircordpro(void); void qian_jin(void); void hou_tui(void); void zuo(void); void you(void); void ting(void); void zuo45(void); void you45(void); void delay(uchar t); void delay(uchar t) //延时1ms { uchar i,j,k; for(i=t;i>0;i--) for(j=142;j>0;j--) for(k=4;k>0;k--); } void DelayUs2x(unsigned char t){ while(--t);}void DelayMs(unsigned char t){ while(t--) { //大致延时1mS DelayUs2x(245); DelayUs2x(245); }} void qian_jin(void) { IN1=0; IN2=1; IN3=0; IN4=1; NEA1=1; NEB1=1; } void hou_tui(void) { IN1=1; IN2=0; IN3=1; IN4=0; NEA1=1; NEB1=1; } void zuo(void) { IN1=0; IN2=1; IN3=1; IN4=0; NEA1=1; NEB1=1; } void you(void) { IN1=1; IN2=0; IN3=0; IN4=1; NEA1=1; NEB1=1; } void ting(void) { IN1=0; IN2=0; IN3=0; IN4=0; NEA1=0; NEB1=0; } void zuo45(void) { IN1=0; IN2=1; IN3=1; IN4=0; NEA1=1; NEB1=1; delay(150); delay(100); } void you45(void) { IN1=1; IN2=0; IN3=0; IN4=1; NEA1=1; NEB1=1; delay(150); delay(100); }void tim0_isr (void) interrupt 1 using 1{ irtime++; //用于计数2个下降沿之间的时间}void EX0_ISR (void) interrupt 0 //外部中断0服务函数{ static unsigned char i; //接收红外信号处理 static bit startflag; //是否开始处理标志位if(startflag) { if(irtime<63&&irtime>=33)//引导码 TC9012的头码,9ms+ i=0; irdata[i]=irtime;//存储每个电平的持续时间,用于以后判断是0还是1 irtime=0; i++; if(i==33) { irok=1; i=0; } } else { irtime=0; startflag=1; }}void TIM0init(void)//定时器0初始化{ TMOD=0x02;//定时器0工作方式2,TH0是重装值,TL0是初值 TH0=0x00; //重载值 TL0=0x00; //初始化值 ET0=1; //开中断 TR0=1; }void EX0init(void){ IT0 = 1; //指定外部中断0下降沿触发,INT0 () EX0 = 1; //使能外部中断 EA = 1; //开总中断}void Ir_work(void){ TempData[0] = Tab[IRcord[0]/16]; //处理客户码 TempData[1] = Tab[IRcord[0]%16]; TempData[2] = '-'; TempData[3] = Tab[IRcord[1]/16]; //处理客户码 TempData[4] = Tab[IRcord[1]%16]; TempData[5] = '-'; TempData[6] = Tab[IRcord[2]/16]; //处理数据码 TempData[7] = Tab[IRcord[2]%16]; TempData[8] = '-'; TempData[9] = Tab[IRcord[3]/16]; //处理数据反码 TempData[10] = Tab[IRcord[3]%16]; irpro_ok=0;//处理完成标志 }void Ircordpro(void)//红外码值处理函数{ unsigned char i, j, k; unsigned char cord,value; k=1; for(i=0;i<4;i++) //处理4个字节 { for(j=1;j<=8;j++) //处理1个字节8位 { cord=irdata[k]; if(cord>7) //大于某值为1, value|=0x80; if(j<8) { value>>=1; } k++; } IRcord[i]=value; value=0; } irpro_ok=1;//处理完毕标志位置1}void main(void){ EX0init(); //初始化外部中断 TIM0init(); //初始化定时器 DelayMs(20); //延时有助于稳定 while(1)//主循环 { if(irok) //如果接收好了进行红外处理 { Ircordpro(); irok=0; } if(irpro_ok) { Ir_work(); }if(TempData[9]=='E' && TempData[10]=='3' ) { a=0; } if(TempData[9]=='E' && TempData[10]=='7' ) { a=1; } if(TempData[9]=='A' && TempData[10]=='D') { a=2; } if(TempData[9]=='F' && TempData[10]=='7') { a=3; } if(TempData[9]=='A' && TempData[10]=='5') { a=4; } if(TempData[9]=='F' && TempData[10]=='3') { a=5; } if(TempData[9]=='A' && TempData[10]=='1' ) { a=6; } switch(a) { case 0: ting(); break; case 1: qian_jin(); break; case 2: hou_tui(); break; case 3: zuo(); break; case 4: you(); break; case 5: zuo45();a=0;TempData[10]='0'; break; case 6: you45();a=0;TempData[10]='0'; break; default: a=0; break; } }}
这些个题目都不错,任何一个弄清楚了都有很大收获。建议你根据自己的工作目标来选,尽量选与要从事的工作有关的题目。如果实在没有可选,建议选个安卓的吧。19,20这两个。