毕业设计(论文)人体动作检测装置的设计.doc

上传人:仙人指路1688 文档编号:4027505 上传时间:2023-04-01 格式:DOC 页数:64 大小:1.87MB
返回 下载 相关 举报
毕业设计(论文)人体动作检测装置的设计.doc_第1页
第1页 / 共64页
毕业设计(论文)人体动作检测装置的设计.doc_第2页
第2页 / 共64页
毕业设计(论文)人体动作检测装置的设计.doc_第3页
第3页 / 共64页
毕业设计(论文)人体动作检测装置的设计.doc_第4页
第4页 / 共64页
毕业设计(论文)人体动作检测装置的设计.doc_第5页
第5页 / 共64页
点击查看更多>>
资源描述

《毕业设计(论文)人体动作检测装置的设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)人体动作检测装置的设计.doc(64页珍藏版)》请在三一办公上搜索。

1、本科学生毕业设计人体动作检测装置的设计院系名称: 专业班级: 学生姓名: 指导教师: 职 称: 讲 师 黑 龙 江 工 程 学 院二一二年六月The Graduation Design for Bachelors DegreeDesign of Equipment of HumanMotion DetectionCandidate:Specialty:Measurement & Control Technology and InstrumentationClass:Supervisor:Heilongjiang Institute of Technology2012-06Harbin摘 要人体

2、动作检测是一个非常有意义的研究方向。在工业、医疗、军事和生活等许多地方,都需要用到人体动作检测装置来进行模拟训练。传统的模拟量检测不满足要求,特别是在某些环境恶劣的工业环境和户外环境,通过人体布线检测现实。因此采用无线传输检测数据尤为必要。目前相关产品能够实现人体动作数据无线采集,但价格过高是其最大的缺点。在实际需求过程中既要求系统具有稳定性、实时性又需要降低功耗。因此设计一种低功耗的无线人体动作检测装置很有意义。本文提出一种采用STM32单片机和加速度传感器、陀螺仪传感器、电子罗盘传感器和无线传输模块组成动作测量端,ATmega16单片机控制无线传输模块协同上位机组成数据接收端,两部分组合即

3、为人体动作检测装置。通过简单的无线通信协议,实现可靠性与功耗平衡,该系统能实现对人体简单动作信息的检测,能够同时进行温度检测,且低功耗、实时性是该人体检测装置的最大特点。无线传输采用nRF24L01模块传输数据。该系统结构简单、可靠、功耗较低,成本低,是一种人体动作检测的解决方案。关键字:动作检测;无线传输;加速度传感器;陀螺仪;电子罗盘ABSTRACTDetection of human action is a very important research fields. In the industrial, medical and military and life and many o

4、ther place, it needs to use detection of Human action device to do simulationtraining .The traditional direct measurement wiring does not meet the requirements, especially in some environmental bad industrial environment and outdoor environment, through the direct wiring measurement is not practical

5、. Sousing wireless transmission action testing is necessary.At present some design can realize the wireless action information gathering, but the price is too high, its biggest weakness. In the actual action control process requires both system has stability, real-time and the need to reduce power c

6、onsumption. So the design of a kind of low power consumption wireless action detection system is very meaningful. STM32 controls Acceleration transducer, Gyroscope transducer and Electronic compass to measure Action data. This paper presents a USES the monolithic integrated circuit ATmega16 control

7、NRF24L01 of the realization of the wireless action measuring Equipment. Through the simple wireless communication protocol, realize the reliability and power balance, the Equipment can realize to the action detection, can simultaneously determine the temperature, can be realized the wireless remote

8、control action detection system. Low power consumption, real-time wireless temperature detection is the biggest characteristic of the design Wireless transmission using nRF24L01 module transmission. The system structure is simple, reliable, low power consumption, low cost it is a kind of wireless se

9、nsor solutions.keywords:Detect of the action;Wireless transmission;Acceleration transducer;Gyroscope transducer;Electronic compass目 录摘 要IAbstractII第 1 章引 言11.1课题研究的目的和意义11.2课题研究现状及分析11.3基本内容及拟解决的问题3第 2 章系统方案分析与论证42.1总体方案设计42.2硬件选择与论证52.2.1微控制器的选择52.2.2陀螺仪传感器的选择62.2.3加速度传感器的选择62.2.4电子罗盘传感器的选择72.2.5无线

10、传输芯片的选择82.3本章小结8第 3 章系统硬件设计93.1动作检测模块设计93.1.1核心控制芯片简介93.1.2STM32最小系统介绍113.1.3程序下载与仿真电路设计123.1.4动作测量模块电源设计133.2传感器电路设计133.2.1陀螺仪传感器电路设计133.2.2加速度传感器电路设计163.2.3电子罗盘传感器电路设计183.2.4无线传输模块发送端电路设计193.3数据接收端电路设计213.3.1ATmeg16芯片简介213.3.2ATmega16最小系统233.3.3接收端无线传输电路设计243.3.4接收端串口通讯电路设计253.3.5接收端电路电源设计263.4本章小

11、结26第 4 章程序设计274.1动作测量模块程序设计274.1.1主程序设计274.1.2加速度传感器程序设计274.1.3陀螺仪传感器程序设计284.1.4电子罗盘传感器程序设计294.1.5数据发送模块程序设计294.2数据接收模块软件设计304.2.1主程序设计304.2.2数据接收模块接收程序设计314.3本章小结31结束语32参考文献33致谢35附录36第 1 章 引 言1.1 课题研究的目的和意义随着计算机图形技术和虚拟仿真技术的发展,为了缩短训练周期, 节约训练费用, 基于人体动作检测的三维虚拟训练软件广泛应用于武警、消防、水下作业等各高风险领域。然而目前此类软件大多仍采用鼠标

12、、键盘作为动作输入设备,逼真程度和训练效果有限。虽然部分软件配备有专用模拟器、数据手套等动作输入设备,但往往因价格昂贵难以广泛应用。由MEMS器件构成的MIMU是一种小体积、低成本的捷联惯导系统, 广泛应用于惯性导航和航测量等领域1-2。虽然国外已开始了将惯性器件用于人体动作检测领域的研究,但国内相关研究尚未见报道。针对人体运动特点,将惯性测量技术应用于人体动作姿态的测量,从而为三维虚拟训练软件开发出一种新型的基于MIMU的人体动作检测装置,可以提高虚拟训练的逼真程度和训练效果。为了解决以上问题,本设计将基于高速的微处理器3、无线传输技术、MIMU的惯性测量技术和上位机软件相结合,设计出人体动

13、作检测系统装置,以其准确获取突发事件中动作反应过程及应对措施。1.2 课题研究现状及分析人们早期较成功的研究主要集中于对刚体运动的研究上,直到五十年代左右,对非刚体的研究逐渐兴起。尤其是人的运动分析,由于其在监控、机器人、人机交互等方面具有广泛的应用前景,激发了世界范围内的广大工作者的研究热潮4-6。在心理学方面,Johansson7在他的著作MLDs(Moving Light Displays)实验中发现人们只需要根据很少的运动点就可以识别出运动的模式,如走动、起立。这引出一个问题:是否可以直接从局部运动中识别运动模式,而不需要恢复结构。在走动学方面,需要发掘人体的模型以解释其运动的基理。在

14、舞蹈学方面,人们长期致力于舞蹈、芭蕾、戏剧的高层次的人体运动描述。计算机处理图像学则处理人运动的合成。研究人员使用了各种的研究方法,有不同的分类方法7-10。如基于模型方法和基于非模型的方法,二维模型和三维模型的方法,无论哪种方法,处理的都是包含人体的动态图像序列,研究过程可以分为目标检测、目标分类、目标跟踪、动作识别几个方面。研究时可以单独针对其中的某方面,或者设计完整的系统。人体动作检测主要算法有时间差分法、背景减除法、光流法,由于每种方法都有其自己的优点,大部分情况下都结合其他方法一起使用。随着微处理器硬件上的完善,其处理数据的速度已经越来越快,国内的大学研究所开始利用相关芯片优势进行人

15、体运动检测的相关研究。同济大学的计算机科学与工程系,在这方面已经有了很大的成果。通过高速DSP芯片、性能优越的AVR单片机、FPGA/CPLD逻辑芯片11-15以及MEMS传感器器件完成了重要的实验,记录了大量珍贵数据。同时随着微机械系统(MEMS)的技术16和半导体技术的发展,加速度传感器的微机化、智能化,使其在人体运动信息识别检测中得到了更加广泛的应用。目前,在人体动作检测领域,逐渐开始应用微电子机械系统器件代替传统的数据采集部分。微电子机械系统(MEMS)技术是建立在微米/纳米技术基础上的21世纪的前沿技术,是对微米/纳米材料进行设计、加工、制造、测量和控制的技术,集微型化技术、传感器信

16、号处理等功能为一体,具有信号获取、处理和执行等多功能的系统。完整的MEMS是采用微电子技术和微加工技术相结合的制造工艺,由微传感器、微执行器、信号处理和控制电路、通讯接口和电源等部件组成的一体化的微型器件系统。自1977年美国斯坦福大学首先采取硅加工技术制造第一个开环硅加速度计并于80年代初商品化以来,硅微机械加速度计取得了巨大的进展。目前MEMS加速度计以广泛应用于汽车安全气囊中,成为了商品化最为成功的微机械传感器,在精度方面也已经能够满足战术导弹的应用要求。美国模拟器件公司从1989年开始进行平衡电容加速度计的研究,目前已成为MEMS传感器市场领先的供应商。法国SAGEM公司采用氧离子注入

17、工艺,在硅基片上实现了面加工的电容传感器加速度计。此外日本的日立公司、美国立顿公司、法国国家航空航天研究院、德国利铁夫公司等在微机械加速度计研究方面也取得了明显的成效17。我国微机械系统研究始于1989年,主要以跟踪国外为主,虽然起步较晚,但正积极开展研究、从1995年开始,国防科工委便投入6000万元以上的经费主要用于惯性器件的基础性研究,并已将硅微机械陀螺技术纳入863计划中。目前,教育部、中国科学院、信息产业部等所属40多个单位在开展MEMS研究工作,包括清华大学、北京大学、东南大学、信息产业部十三所、上海冶金所等。经过十多年的发展,我国在微机械陀螺仪和微机械加速度计研究方面已经取得了很

18、大的进展,微机械加速度计的精度已经达到1mg的水平18。但陀螺仪和加速度计主要应用于飞行器飞行姿态、船舶航姿设计方面,在人体动作检测上研究较少。鉴于与传统的惯性器件相比,微电子机械系统具有微型化、集成化、尺寸达到微米数量级等特点,而且测量范围大、可靠性高、功耗低、易于数字化和智能化。结合上述特点,国内人体动作检测领域逐渐开始应用微电子机械技术将传感器、处理器等应用模块微型化,从而也拓展了惯性导航系统的应用范围。本设计将为三维人体动作模型设计、制作等方面的动作获取系统提供前期基础,可广泛应用于动画制作、人体动作捕捉、游戏外设、计算机人体输入外设等领域19-20。1.3 基本内容及拟解决的问题本设

19、计的目标是应用微处理器技术、微机电系统技术和无线传输等技术,完成针对人体动作检测装置的设计。利用微机电系统为核心的传感器完成对人体动作信号的检测与获取,通过微处理器和无线射频模块将所得动作数据通过串口的方式传输给计算机。并在通过计算机上的人机界面显示人体相关部位的运动状态或具体的参数如速度、加速度、方向角等。本设计为基于STM32单片机21-22和微机电系统传感器人体动作检测的设计,主要分为四章进行全面阐述:第1章主要介绍了本设计的课题现状以及课题的研究意义和本设计的主要内容。第2章主要介绍了本设计的设计要求以及方案论证,并对各个模块的方案论证进行了详细介绍。第3章详细介绍了本设计的硬件电路设

20、计。其硬件电路的设计包括角速度、加速度等测量模块设计、单片机主控模块设计、及电源模块设计等。第4章介绍了本设计的软件程序设计。本章给出了主程序流程图,并对每个流程图进行了简单的介绍,使得软件设计部分易于理解。要选择适合的主控制器,充分应用控制器的硬件资源。掌握传感器的使用方法,解决硬件设计时,保证信号干扰最小原则。第 2 章 系统方案分析与论证2.1 总体方案设计方案一:数据采集处理发送端和数据接收端都应用MCS-51单片机最为主控制器,因为本系统需要微处理器完成数据的采集、储存、处理和传输等工作,该方案的外部的电路相对复杂、系统规模庞大,不具有灵活性。方案二:主控芯片应用FPGA/CPLD或

21、者应用带有IP核的FPGA/CPLD,可以完成数据采集、储存、处理等功能,该方案的优点是系统结构紧凑,可以实现复杂的控制与测量,缺点是操作过程繁琐,成本昂贵。方案三:应用STM32单片机作为数据采集、处理发送端主控芯片。该单片机可以完成人机界面,系统控制、信号分析、处理、变换来完成采集控制逻辑,接收端采用ATmeg16单片机,利用其本身带有I2C硬件接口,硬件连接上更加简单易操作,也给软件设计上带来了方便。这种方案充分体现装置整体的性价比,充分发挥了单片机的功能,且其价格低廉,可靠性高等特点,开发也较为容易。通过以上对比,本次方案我选择方案三作为本次设计的最终方案,系统结构框图如图2.1所示。

22、系统主要有两部分组成,第一部分包括前端数据采集传感器、信号处理单元、主控制芯片和射频通信模块组成。第二部分由上位机、微控制器和无线通信模块组成。前端数据采集传感器主要包括三轴MEMS加速度传感器、三轴MEMS陀螺仪传感器和三轴MEMS电子指南针传感器,本文采用上述传感器和ST公司的STM32单片机组成一个嵌入式动作检测装置,陀螺仪由于动态性能好,用于获取实时的动作信息。但陀螺仪会产生偏移,而加速度传感器和电子指南针传感器其静态性能比较优越,所以可以用来对陀螺仪的动作检测数据进行相应的修正。图2.1 总体方案结构图2.2 硬件选择与论证2.2.1 微控制器的选择一个成功的加速度、角速度信号采集系

23、统,不但要具备基本信息的采集、存储功能,而且要求能够完成信息的处理,以及具备将数据传送至计算机终端功能等。目前,根据实现方案的核心处理器和传感器模块的不同,可以将其分为很多不同的组合方案。但经过对比和深入的了解,得知在以单片机为核心的系统中,所有的信号及系统处理过程都要经过单片机来处理完成。以单片机为核心对所有的信号进行控制,实现起来比较简单,系统容易构建。系统容易进行信息通信,实现了集中控制,控制精度高,开发周期短,成本较低。由于主要的功能及处理过程都由处理器来完成,所以系统集成度相当高,这就大大降低了系统各个部分相互干扰的可能,可以使整个系统安全稳定的运行。本系统选择STM32微控制器构建

24、整个数据采集系统,STM32微控制器具有以下优点:1. 哈佛结构;2. 1.25DMIPS/MHz和0.19mW/MHz;3. Thumb-2指令集以16位的代码密度带来32位的性能;4. 单周期乘法指令和硬件除法指令;5. 内置了中断控制器,提供优越的实时特性,中断间隔的延迟时间只需6个CPU 周期,从低功耗模式唤醒的时间也只需6个CPU周期;6. 与ARM7TDMI相比运行速度最多可快35%且代码最多可节省45%;STM32经过特殊处理,针对应用中三种主要的能耗要求进行了优化,这三种能耗需求分别是运行模式下高效率的动态耗电机制、待机状态时极低的电能消耗和电池供电时的低电压工作能力。为此,S

25、TM32提供了三种低功耗模式和灵活的时钟控制机制,用户可以根据自己所需的耗电/性能要求进行合理的优化。出众及创新的外设。STM32 的优势来源于两路高级外设总线(APB)结构,其中一个高速APB(可达CPU的运行频率),连接到该总线上的外设能以更高的速度运行,最大程度的集成整合。STM32内嵌电源监控器,减少对外部器件的需求,包括上电复位,低电压检测、掉电检测和自带时钟的看门狗定时器。一个晶振便可以驱动整个系统。416MHz的晶振便可以驱动CPU以及所有外设使用,内嵌PLL产生多种频率,可以为内部实时时钟选择32KHz的晶振。内嵌8MHzRC振荡电路,可作为主时钟源,额外的针对RTC或看门狗的

26、低频率RC电路。2.2.2 陀螺仪传感器的选择MEMS研究重要内容之一的微机械陀螺仪,已经成为近几十年来广泛研究和发展的主题。微机械陀螺与传统机械式陀螺相比,具有成本低、尺寸小、重量轻、可靠性高等优点,其精度正不断得到提高,应用领域也不断扩大。但到目前为止,大部分的研究集中于单轴和双轴微机械陀螺,它们一般只能测量惯性空间坐标轴一个或两个方向的角速度,但如果要进一步微型化,必然的趋势是集成能测量全空间三个方向的角速度的陀螺仪。因此提出三轴微机械陀螺仪23-24的设想,三轴微机械陀螺仪可以感知空间三个方向(X轴、Y轴、Z轴)的角速度。随着微惯性技术的发展,在微陀螺仪和硅微加速度计技术趋于成熟的今天

27、,不失时机地开展三轴微机械振动陀螺仪研究具有非常重要的现实意义,市场主流的三轴数字陀螺仪主要是ADI公司生产的AD系列陀螺仪和意大利半导体生产的L系列陀螺仪。方案一:ADXRS450(R)是ADI公司最近开发出高性能、低功耗、数字输出的陀螺仪,专门用于恶劣环境中的角速率(旋转)检测,以满足不断提高的精度、稳定度和抗振动抗冲击需求。MEMS(微机电系统)运动传感器在工业自动化、医疗和仪器市场的应用得到不断发展。与设计用于消费类应用的运动传感器相比,这些市场的MEMS传感器需要提供更高得多的性能。ADXRS450iMEMS(R)陀螺仪是基于ADI公司前三代业界领先的MEMS陀螺仪开发的第四代器件,

28、采用先进的差分四传感器设计,可在强烈冲击和振动状态下精确地工作。目前还没有其它MEMS陀螺仪能在这些恶劣条件下达到如此高的性能。这种MEMS陀螺仪具有鲁棒性能和仅6mA的低功耗特性,可有效地用于多种应用,如机器人、工业仪器、航空以及用于高速列车的平台稳定系统。方案二:意法半导体(ST)近日推出一款业界独创、采用一个感应结构检测3条正交轴向运动的3轴数字陀螺仪L3G4200D。现有的3轴陀螺仪解决方案依赖两个或3个独立的感应结构,顶多是在同一硅基片上,而意法半导体的陀螺仪则是3轴共用一个感应结构,这一突破性概念可以消除轴与轴之间的信号干扰,避免输出信号受到干扰信号的影响。上述两款陀螺仪从性能上来

29、说ADXR450比L3G4200D略胜一筹,但是从普遍性上来看,主流的应用是L3G4200D,成本上L3G4200D也有一定的优势。依据本次设计降低设计成本、能很好的满足设计要求即可的理念,此次设计我选择意大利半导体公司的L3G4200D传感器。2.2.3 加速度传感器的选择方案一:采用传统的模拟输出三轴加速度传感器,在硬件设计时我们需要对其输出进行滤波处理,进而得到稳定可靠地数据。但是这就无形的增加了硬件上的投入,而且硬件设计的合理性也是至关重要的,往往需要做好硬件参数的合理选择等工作。所以本设计不采用模拟输出的三轴加速度传感器。方案二:MMA8452Q是飞思卡尔公司的一款三轴数字加速度传感

30、器,应用领域是任何厂商都无法匹敌的,虽然其拥有强大的功能优势,但它的价格昂贵,性价比不高。方案三:ADXL345是美国模拟器件公司于2008年推出的采用MEMS技术具有SPl和数字输出功能的三轴加速度计,具有小巧轻薄、超低功耗、可变量程、高分辨率等特点,它只有3mmx5 mm1mm的外形尺寸,面大小相当于小拇指指甲盖的13。在典型电压Vs=25V时功耗电流约为25130A,比先期采用模拟输出的产品ADXL330功耗典型值低了约70。175p、At3J。最大量程可达16g,另可选择2、8g量程。可采用固定的4mg/tSB分辨率模式该分辨率可测得0.250的倾角变化。ADXL345提供一些特殊的运

31、动侦测功能,可侦测出物体是否处于运动状态。并能敏感出某一轴向加速度是否超过了用户自定义门限,可侦测物体是否正在跌落。此外还集成了一个32级FIFO缓存器,用来缓存数据以减轻处理器的负担。基于以上优点本次设计加速度传感器我选择的是ADI公司的ADXL345三轴加速度传感器。2.2.4 电子罗盘传感器的选择方案一:HMR3000是Honeywell公司的产品,它可以为导航定位系统提供航向、俯角、横滚等数据信息,输出端采用RS232接口。另一方面其串行通讯是根据NMEA0183标准制定的简单、异步的ASCII协议。从硬件角度的来看并不适合本系统的设计。方案二:多数的三轴数字电子罗盘都集成三轴加速度计

32、,在软件设计上相对复杂,并且根据本设计的需要来说,不需要这样的硬件配置,所以此次设计不选择该种型号的传感器例如LSM303DLH。方案三:HMC5883L采用霍尼韦尔各向异性磁阻(AMR)技术,该技术的优点是其他磁传感器技术所无法企及,这些各向异性传感器具有在轴向高灵敏度和线性高精度的特点。传感器带有的对于正交轴低敏感行的固相结构能用于测量地球磁场的方向和大小,其测量范围从毫高斯到8高斯(gauss)。霍尼韦尔的磁传感器在低磁场传感器行业中是灵敏度最高和可靠性最好的传感器。除上述优点外,HMC5883L还具有优点:1. 体积小高集成产品,只需添加一个微处理器接口;2. 外加两个外部SMT电容专

33、为大批量、成本敏感的OEM生产而设计,易于装配并与高速SMT装配件兼容;3. 能让罗盘航向精度精确到12;4. 产品组装后能进行低成本功能性测试,适用于电池供电的应用场合;5. 带置位/复位和偏置驱动器用于消磁、自测和偏移补偿;6. 适用于消费类电子设备应用中通用双线串行数据接口;通过上述的选择分析,我们最终决定采用方案三作为本设计的最后方案。2.2.5 无线传输芯片的选择无线传输模块的核心器件就是无线通信芯片,选择芯片的首要原则是根据系统的设计需要,其次可以参考以下的几个方面:数据传输的编码方式:若用曼彻斯特编码芯片,则在编码时会需要较高的技巧和经验,需要更多的内存和程序空间,并且曼彻斯特编

34、码会大大降低数据传输的速率。芯片所需外围元件的数量:芯片外围元件的数量决定了模块的体积和重量以及整个系统的复杂性,因此应选择外围器件少的芯片。功耗及发射功率:由于无线通信芯片常用于测控系统25-26,应该根据需要选择功耗较小的芯片。同时为了保障有效的通讯,我们还应该选择发射功率较高的芯片。方案一:nRF401是一个为433MHzISM频段设计的真正单片UHF无线收发芯片。它采用FSK调制解调技术。nRF401最高工作速率可以达到20K。发射功率可以调整最大发射功率是+10dBm。天线接口设计为差分天线,以便于使用低成本的PCB天线。nRF401还具有待机模式这样可以更省电和高效。nRF401的

35、工作电压范围可以从2.7V到5V。上述性能满足本设计的需求,但接口安排无法适合该设计的要求。方案二:nRF24L0127-30是由NORDIC出品的工作在2.4GHz2.5GHz的ISM频段的单片无线收发器芯片。无线收发器包括:频率发生器、增强型“SchockBurst”模式控制器、功率放大器、晶体振荡器、调制器和解调器。输出功率频道选择和协议的设置可以通过SPI接口进行设置。几乎可以连接到各种单片机芯片,并完成无线数据传输工作。当工作在发射模式下发射功率为0dBm时电流消耗为11.3mA,接收模式时为12.3mA,掉电模式和待机模式下电流消耗更低,通过比较选择我们最终决定把方案二作为最终方案

36、。2.3 本章小结本章介绍了基于STM32单片机和微机电系统传感器的人体动作设计的基本组成部分,同时也简单论述了各个模块的的基本功能和作用,通过各种方法的对比论证,最终选择以STM32单片机、ATmega16为控制核心,以三轴数据加速度传感器ADXL345、三轴数字陀螺仪L3G4200D、三轴数字罗盘HMC5883L为前端数据采集设备,同时结合无线传输模块NRF24L01来实现本装置的设计。第 3 章 系统硬件设计3.1 动作检测模块设计该部分主要是实现人体相关部位动作数据的采集和数据处理,并通过无线通信模块将数据传给接收端。核心控制器是现在性价比较高的STM32单片机。数据采集传感器均为数字

37、量输出,且内部都集成了对采集到数据的滤波电路,外围只需连接接口调理元件即可。3.1.1 核心控制芯片简介STM32系列32位闪存微控制器使用来自ARM公司具有突破性的Cortex-M3内核,该内核是专门设计与满足集高性能、低功耗、实时应用、具有竞争性价格于一体的嵌入式领域的要求。Cortex-M3在系统结构上的增强,让STM32受益无穷。Tumb-2指令集带来了更高的效率和更强的性能,既获得了传统32位代码的性能,又有16位的高代码密度。通过紧藕合的嵌套矢量中断控制器,对中断事件的相应比以往更迅速,所有的这些又都融入了业界领先的功耗水平。Cortex-M3内核为ARMv7架构,是建立在一个高性

38、能哈佛结构的三级流水线基础上的,可满足事件驱动的应用要求。通过广泛采用时钟选通等技术,改进了每个时钟周期的性能,包括单周期的32x32乘法和硬件除法,获得了优异的能效比。另外通过一个基于堆栈的异常模式的实现,显著地缩小了内核的物理尺寸。Cortex-M3处理器支持2种工作模式:线程模式和处理模式。在复位时处理器进入“线程模式”,异常返回时也会进入该模式,特权和用户(非特权)模式代码能够在“线程模式”下运行。出现异常模式时处理器进入“处理模式”,在处理模式下,所有代码都是特权访问的。关于工作状态Coretx-M3处理器有2种工作状态。Thumb状态是16位和32位“半字对齐”的Thumb和Thu

39、mb-2指令的执行状态。调试状态是处理器停止时要进入的状态。Cortex-M3内核指令和数据各使用一条总线,如图3.1所示。与Cortex-M3不同,ARM7系列处理器使用冯诺依曼(Von Neumann)架构,指令和数据共用信号总线以及存储器。由于指令和数据可以从存储器中同时读取,所以Cortex-M3处理器对多个操作并行执行,加快了应用程序的执行速度。图3.1 Cortex-M3内核结构图内核流水线分3个阶段:取指、译码和执行。当遇到分支指令时,译码阶段也包含预测的指令取指,这提高了执行的速度。处理器在译码阶段期间自行对分支目的地指令进行取指。在稍后的执行过程中,处理完分支指令后便知道下一

40、条要执行的指令。如果分支不跳转,那么紧跟着的下一条指令随时可供使用。如果分支跳转,那么在跳转的同时分支指令可供使用,空闲时间限制为一个周期。Cortex-M3内核包含一个适用于传统Thumb和新型Thumb-2指令的译码器、一个支持硬件乘法和硬件除法的先进 ALU、控制逻辑和用于连接处理器其他部件的接口。Cortex-M3处理器是一个32位处理器,带有32位宽的数据路径,寄存器库和存储器接口。其中有13个通用寄存器,两个堆栈指针,一个链接寄存器,一个程序计数器和一系列包含编程状态寄存器的特殊寄存器。针对Cortex-M3处理器支持两种工作模式:线程(Thread)和处理器(Handler)。两

41、个等级的访问形式:有特权或无特权,在不牺牲应用程序安全的前提下实现了对复杂的开放式系统的执行。无特权代码的执行限制或拒绝对某些资源的访问,如某个指令或指定的存储器位置。Thread是常用的工作模式,它同时支持享有特权的代码以及没有特权的代码。当异常发生时,进入Handler模式,在该模式中所有代码都享有特权。此外,所有操作均根据以下两种工作状态进行分类,Thumb代表常规执行操作,Debug代表调试操作。借助bit-banding技术,Cortex-M3处理器可以在简单系统中直接对数据的单个位进行访问。存储器映射包含两个位于SRAM的大小均为IMB的bit-band区域和映射到32MB别名区域

42、的外设空间。在别名区域中,某个地址上的加载/存储操作将直接转化为对被该地址别名的位的操作。对别名区域中的某个地址进行写操作,如果使其最低有效位置位,那么bit-and位为1,如果使其最低有效位清零,那么bit-band位为零。读别名后的地址将直接返回适当bit-band位中的值。除此之外,该操作为原子位操作,其他总线活动不能对其中断。另外系统时钟的选择是在启动时进行,复位时内部8MHz的RC振荡器被选为默认的CPU时钟,随后可以选择外部的、具失效监控的416MHz时钟;当检测到外部时钟失效时,它将被隔离,系统将自动地切换到内部的RC振荡器,如果使能了中断,软件可以接收到相应的中断。同样,在需要

43、时可以采取对PLL时钟完全的中断管理。STM32单片机引脚图如图3.2所示。图3.2 STM32单片机引脚图3.1.2 STM32最小系统介绍STM32单片机的最小系统由主芯片、晶体、复位电路、电源电路、程序仿真下载电路组成。如图所示,采用8M的晶体作为系统主时钟源,采用32.768K的晶体作为RTC晶体,采用由R26和C25组成的RC电路为系统的复位电路,C19、C20、C23为电源滤波电容。针对于STM32单片机最小系统硬件上要设置关于BOOT1和BOOT2两个引脚的控制开关,两个引脚通过高低电平的配置实现程序开始的起始位置,当系统复位后就可以设置上述的两个引脚,进而确定启动模式。STM3

44、2支持三种复位形式,分别为系统复位,上电复位和备份区域复位。上电复位如图所示通过按键实现电源复位,其特点是电源复位将复位除备份区域外的所有寄存器。晶振、系统复位电路如图3.3所示。图3.3 晶振、系统复位电路3.1.3 程序下载与仿真电路设计STM32的调试方式有两种,一种是用20pin的JTAG模式,另一种是用两线制的SWD模式,如果为了节约系统资源,可以采用SWD模式对STM32进行程序调试,如图3.4所示,其中R7、R8、R9、R10起到上拉作用。SWD模式比JTAG模式在高速模式下更加的可靠,在大量数据的情况下JTAG下载程序会失败,但SWD这种情况的几率很小,使用JTAG仿真模式的情

45、况下都能直接使用SWD模式,前提是仿真器支持这一功能。注意的是这里的仿真器和整个设计装置是供用GND和VCC的。硬件连线上SWD模式相对JTAG也是有优势的,一般情况下SWD模式只连接两根线,而后者却需要五根线。但对于不同的仿真起来说,JTAG模式还是存在相应的优势的。图3.4 JTAG仿真下载电路3.1.4 动作测量模块电源设计由于主控芯片和传感器需3.3v电压供电,通过锂电池(7.88.4V)和LM1117-3.3固定电压转化芯片进行3.3v电压的转换。本系统的电源部分通过LM1117-3V3芯片实现5V电压到3.3V电压的转换,图3.3中的C1、C2作为旁路电容接地,作用是为了增强对输入

46、电压中纹波的抑制,同时该旁路电容也可防止输出电压放大倍数的增加。C3、C4作为输出电容对于输出电压的稳定性起着非常重要的作用,输出电容值的增加提高了回路的稳定性和瞬态响应,它同时也满足最小电容值和ESR(等效串联阻值)的要求。D1、D2主要作用提示电源工作正常,电源转换电路如图3.5所示。图3.5 电源转换电路3.2 传感器电路设计3.2.1 陀螺仪传感器电路设计意法半导体(ST)近日推出一款业界独创、采用一个感应结构检测3条正交轴向运动的3轴数字陀螺仪L3G4200D31-33。这种创新的设计概念大幅提升运动控制式消费电子应用的控制精度和可靠性,为设备的用户界面实现前所未有的现场感。现有的3

47、轴陀螺仪解决方案依赖两个或三个独立的感应结构,顶多是在同一硅基片上。而意法半导体的陀螺仪则是3轴共用一个感应结构,这一突破性概念可以消除轴与轴之间的信号干扰,避免输出信号受到干扰信号的影响。同时该传感器是基于微机电系统的传感器,在采集外部信号时,提高了信号的可靠性,不会造成信号的过大的失真,这也是本传感器得到多数使用者认同的重要原因。陀螺仪传感器电路图如图3.6所示。图3.6 陀螺仪传感器电路图该陀螺仪传感器支持I2C和SPI通讯接口,本系统中我们通过STM32单片机的I2C硬件接口连接该传感器。PB6与PB7引脚分别和L3G4200D的11、10引脚相连接,11引脚是芯片时钟线,10引脚是数据传输线。这两条线分别连接连个10K的电阻了,电阻另一端连接正电源。如图3.7所示图3.7 I2C接口上拉电路图STM32的I2C总线接口,能够工作于多主模式或从模式,支持标准和快速模式。I2C接口支持7位或10位寻址,7位从模式时支持双从地址寻址。内置了硬件CRC发生器/校验器。它们可以使用DMA操作并支持SMBus总线2.0版/PMBus总线。灵活的7路通用DMA可以管理存储器设备到存储器数据传输,DMA控制器支持环形缓冲区的管理,避免了控制器传输到达缓冲区结尾时所产生的中断。每个通道都有专门的硬

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号