基于stm32的自行车转向刹车灯-生本科学位论文.doc
《基于stm32的自行车转向刹车灯-生本科学位论文.doc》由会员分享,可在线阅读,更多相关《基于stm32的自行车转向刹车灯-生本科学位论文.doc(39页珍藏版)》请在咨信网上搜索。
1、 河南师范大学本科毕业论文 学号: 1102424021 基于STM32的自行车转向刹车灯 学院名称: 物理与电子工程学院 专业名称: 电气工程及其自动化 年级班别: 2011 级 姓 名: 指导教师: 2015年5月基于STM32的自行车转向刹车灯摘 要本课题选用了STM32F103C8T6单片机和ADXL345三轴加速度传感器,来控制全彩灯珠和红外线激光灯,达到指示自行车的刹车或者转向的功能。本文首先介绍了STM32系列芯片和ADXL345加速度芯片的功能和特点。之后详细介绍了刹车灯系统的硬件和软件设计。难点是硬件设计中的问题与思考,重点软件设计中运用模块化编程的方法组建代码的过程。经过调
2、试运行结果分析,该设计实现了刹车时全彩灯珠自动亮起,转向前主动触发,使红外线激光灯产生显著的转向信号的功能,满足了设计的要求。论文最后总结了设计中出现的问题以及解决方法。关键字:STM32,ADXL345,自行车刹车灯,转向灯 The Bicycle Break Light and Steering Lamp Based on STM32 AbstractThis subject selects the STM32F103C8T6 micro-controller and ADXL345 three axis acceleration sensor, to control the RGBLED
3、 and infrared laser light, to indicate a bicycle braking or steering function.First this paper introduces some information and characteristics of STM32 series chip and ADXL345 acceleration chip. And then introduces the design of hardware and software of the system. The difficulty is the problem and
4、thinking in the process of hardware design, using the method of modular programming key software design building code. Through the detailed analysis of the operation result, the design and implementation of the RGBLED automatically lights up when braking,active triggering makes the infrared laser li
5、ght generated signal function significantly before steering,in accordance with the design requirements. The thesis finally summarizes the problems occurred in design and their solutions.Keywords:STM32,ADXL345,the bicycle break lights ,steering lampIII目 录 基于STM32的自行车转向刹车灯I摘 要I前 言11 . Cortex-M3与STM32简
6、介31.1Cortex-M3与STM32的关系31.2 STM32的优越性31.3 STM32的系统结构、内核及指令集示意图:41.4 STM32F103C8T6的基本参数、内设与引脚位52. ADXL345与SPI简介72.1 ADXL345简介72.2 SPI介绍83 硬件设计103.1 硬件设计概述103.2 电源部分的硬件设计123.3 STM32和ADXL345硬件设计133.4 全彩灯珠的设计153.5转向按键与红外线激光灯的设计163.6其它硬件设计184 软件设计214.1 STM32固件库开发概述214.2 程序代码结构214.3 main.c结构说明224.4 按键功能软件
7、设计234.5 ADXL345的软件设计264.6 模式切换的软件设计275 总结305.1 在调试过程中出现的问题和解决办法305.2 在软件设计中总结的技巧315.3 个人成长31参考文献33致 谢34前 言 骑自行车既是一种环保的出行方式,又是一种健康的运动方式。对于个人来说,骑自行车不仅可以减肥,使身体匀称,同时可以强化心脏功能,有避免高血压等疾病的功能。骑自行车可以使骑行者血液循环加速,主动吸入大量新鲜空气,从而使骑行者脑筋更清楚。有研究显示,骑自行车上班或者上学,可以提升人的幸福感。特别是在风景优美的地方骑行,会让人觉得心旷神怡,充分感受到运动的快乐和自然的美好。对于自然来说,骑自
8、行车出行可节约能源、降低噪音、减少污染,生态效应明显。建设“资源节约型、环境友好型”社会是我国经济社会发展的客观要求。个人开车上下班会对环境产生巨大危害,给城市交通也带来巨大压力。因此积极提倡自行车出行,是利国利民的好事。然而,中国的自行车骑行氛围非常不乐观。中国曾是自行车的王国,却像一些发达国家一样过度强调汽车经济,各个城市汽车保有量连年上升,冷落自行车成为常见社会现象,鄙视普通骑行者更是成为大众心理。另外,由于汽车尾气,工厂排污等造成的环境污染,导致许多城市适合户外运动的天数越来越少。加之中国司机普遍素质不高,在驾驶机动车行车过程中常常占用自行车道。特别是从自行车道超车这种行为,给骑行者带
9、来很大的威胁。尤其是在夜间,机动车占道超车的危害更大。与机动车不同,自行车出现刹车、转向等行驶状态的变化时,没有显著的指示。如果在转向或者刹车时自行车道被机动车占用的话,对于骑行者来说将是非常危险的事情。本设计可以归类为骑行装备的一种,设计初衷是为了给骑行者提供一种较为显著的可以警示转向或者刹车的工具。与头盔、护膝之类传统的骑行装备相比,可以在危险发生前提供预警,减小危险发生的几率。按照实现方法来说的话,本设计属于基于STM32单片机的一个小型电子设备。与常见的长亮型市售刹车灯相比,更加智能,功耗也更低。与无光源反射式的后座警示灯相比,本设计的警示方式更加显眼,也更加时尚。综上,本设计与其它骑
10、行装备相比,是具有一定的独创性的智能化警示设备。本设计虽然只是为了检验学习情况,而做的一个小制作性质的发明,但其设计思路却以正规产品思路为指导,没有追求一味地多添加功能,以增加其技术含量,而是真正考虑到如果要作为实际产品的话,需要考虑的功能、成本和功耗。因此,本设计最大程度追求降低功耗,裁去多余硬件,功能求专而不求多。本文共分为5部来写,首先介绍了STM32系列芯片的和ADXL345芯片的特点,然后是系统硬件设计和系统软件设计,最后是总结设计中出现的问题及其解决办法,个人收获。1 . Cortex-M3与STM32简介1.1Cortex-M3与STM32的关系STM32是采用Cortex-m3
11、的内核的一种CPU,Cortex-M3是ARM架构的一种。Cortex-M3采用ARM V7构架,支持Thumb-2指令集,同时具有很多强大的特性。较之ARM7 TDMI,Cortex-M3不仅拥有更强的性能、更高的代码密度、而且可以位带操作、中断嵌套、低成本、低功耗。国内 Cortex-M3 市场,意法半导体公司的STM32是毋庸置疑的领跑者,不论是在市场占有率,技术支持还是使用氛围等方面,都远超其他对手。所以本设计在Cortex-M3芯片的时候,自然而然地就考虑了STM32。1.2 STM32的优越性STM32 的优越性体现在以下几个方面:1. 超低的价格。几乎与8位单片机的价格持平是ST
12、M32最大的优势。就本设计所选的STM32F103C8T6而言,在北京中发电子市场买10片的话,每片仅需10.5元。而一块STC89C52RC就需要9元。两者的性能差别却非常之大。2. 丰富的外设。STM32 拥有包括:TIMER定时器、SPI通讯协议、I2C总线、USB通讯协议、CAN总线、数模转换器、 模数转换器、RTC、DMA 等众多外设或者功能,具有很高的集成度。本设计中单片机通过SPI与ADXL345三轴加速度芯片进行通信。3. 丰富的型号。STM32中的M3系列内核拥有多个系列上百种型号,十分丰富。其封装库也有较多的选择,如QFN、LQFP、BGA 等。本设计选取了LQFP48L封
13、装,是一种方便手工焊接,且体积较小的封装。4. 优异的实时性能。由于STM32芯片的多数IO口都可以通过不同的映射设置,来作为中断输入,所以提供了较多的中断数量,最多可达84个,且具有16级可编程的优先级,合理地规划中断数量和优先级可以有效保障实时性能。5. 杰出的功耗控制。STM32所有的外设都有自身的独立时钟开关,相应外设的时钟被设置为关闭的话可以有效降低功耗。本设计充分应用了STM32的这个特性,所有的外设全部以中断的方式来控制,在不使用的时候关闭相应时钟,追求最大程度降低功耗。6. 较快的开发速度。ST将各个寄存器的操作集成了一个官方固件库,将寄存器的使用方法封装到不同的函数中,开发者
14、通过API直接调用这些函数即可操作寄存器,不需要深入底层注重这些寄存器的操作细节,因此大大提升了开发速度。 7. 极低的开发成本。STM32的官方仿真器价格很低,且国产的仿真器质量也可以接受,不像某些单片机仿真器动辄上千,另外支持SWD和JTAG两种调试办法,方便使用。本设计使用SWD调试,只需要2个IO口,即可实现仿真调试。 1.3 STM32的系统结构、内核及指令集示意图:图1-1 STM32的系统结构图1-2 Cortex-M3处理器内核与Cortex-M3芯片的关系 图1-3 Thumb-2指令集与Thumb指令集的关系示意图1.4 STM32F103C8T6的基本参数、内设与引脚位基
15、本参数:类别:集成电路(IC)所属:嵌入式微控制器位数:32位最高速度:72MHz输入/输出IO数:37程序存储器容量:中型64K 程序存储器类型:Flash闪存RAM容量:20K x 8电源电压:2 V-3.6 VADC:10x12b工作温度:-40C-85C封装/外壳:LQFP-48L贴片式图1-4 STM32F103C8T6内设与引脚图2. ADXL345与SPI简介2.1 ADXL345简介概述 ADXL345是一种体积小巧的低功耗三轴加速度芯片传感器,拥有可达13位的分辨率和16g的测量范围。输出16位补码数据,可通过SPI或I2C接口访问。ADXL345可以在倾斜检测中测量静态重力
16、加速度,由于高达3.9mg/LSB的分辨率,小于1度的倾斜角变化可以检测到。还可以测量运动或冲击导致的动态加速度。本设计中使用的功能就是在运动状态中检测动态加速度,属于移动设备应用的ADXL345,可以说是恰如其分的选择。该器件提供以下几种特殊检测功能:活动与否检测功能:通过比较某轴上的加速度与用户自定义的值来检测是否运动。震动检测功能:检测任意方向的有无震动。掉落检测功能:判断传感器是否处在在掉落过程中。这些功能可以独立映射到两个中断输出引脚(第8脚和第9脚)中的一个。参数功耗:测量模式23uA(VS=2.5V),待机模式0.1uA分辨率:10位固定分辨率,最大可调分辨率13位电源电压VS:
17、2V-6.3V引脚高电平:1.7V-VS工作温度:-40C至+85引脚结构与功能 图2-1 引脚配置图表2-1 引脚功能描述表2.2 SPI介绍SPI是串行外设接口(Serial Peripheral Interface)的缩写,SPI是一种简单易用的通讯协议,正在被越来越多的芯片采用,它可进行全双工通讯,所以速度很快,可同步。只占用四根线,不但节省了宝贵的芯片IO口资源,而且有利于进行PCB布局设计。 表2-2 SPI功能描述表名称功能描述SDO数据输出主要的通讯线,负责输入主设备的数据,输出从设备的数据SDI数据输入主设备数据输出,从设备数据输入,在单向传输时可以不使用此线SCLK时钟时钟
18、信号,主设备负责提供时钟脉冲,允许数据按位传输,共数据输入线和输出线按照这个脉冲传输数据CS片选从设备使能信号,由主设备控制某从设备是否被选中,因此同一总线上可以连接多个SPI从设备。SPI是串行通讯协议,即数据是按位的传输的。由SCLK提供时钟脉冲。从设备向主设备的数据输出通过SDO线,数据在时钟上升沿(或下降沿时)改变,在下一个下降沿(或上升沿)被读取。这样,在SCKL提供不少于8次脉冲时,就可以完成一个8位数据的传输。一个满足SPI协议的设备中,至少需要一个主设备。只可以主设备控制SCKL,从设备不允许控制。当主设备未曾控制SCKL时钟信号线产生跳变时,从设备不进行数据的采集和传输。这样
19、的好处是,主设备只需要控制SCKL时钟线就可以控制与从设备的通讯。时序介绍图2-2 SPI时序图3 硬件设计3.1 硬件设计概述本设计的硬件设计经历了两个版本,V1.0和V2.0。本设计采用的设计流程是:1. 考虑预期功能,进行器件的类别选择。2. 广泛搜集资料,设计原理图。3. 考虑板子与器件大小,设计PCB。4. 焊接第一版PCB,调试程序。5. 修改错误,优化布局,设计第二版PCB。本设计的硬件电路设计软件是altium designer 13。最初的想法是设计一个自行车的刹车灯,看上去要酷炫。当时有两个方案:其1是直接改装自行车的刹车手柄,使手柄的活动处与车把的固定端导电连通,刹车的时
20、候这两处分离,则电气连接断开。这样子几乎可以保证百分之百亮起刹车灯。缺点是不具备普适性,每个自行车需要不同的改装,另外技术含量也大大降低。其2是使用加速度传感器芯片。通过MCU控制传感器芯片,读取加速度值来判断刹车状态。这种方案是很难达到很高的准确率的,因为对于芯片来说,它无法判断产生的加速度是在加速还是在刹车。假设自行车匀速前进的时候,三轴加速度的值与静止状态是一样的,因此无法判断此时的加速度值与前进方向的关系。本设计选择方案2,选择加速度芯片。考虑到酷炫,所以采用了全彩灯珠。根据色光三原色原理,红绿蓝三种颜色的LED灯珠足以产生绚丽的色彩。在设计原理图的时候,主要参考了正点原子的战舰STM
21、32开发板和github上的项目ProgrammableLED。在设计PCB的时候,首先考虑了板子的尺寸。由于要使用电池供电,所以板子的大小就有了限制。查阅到电池盒的尺寸后,确定了板子的尺寸为3.3cm*6cm,双面板,单面放置贴片元器件。在确定器件封装的时候,充分考虑了手工焊接的限制和本人焊接的水平,多数阻容器件采用了0805这样的较大封装。值得一提的是,在PCB设计过程中得到了专业硬件工程师的指导,在确定板子尺寸和器件封装后,器件采用了手工布局,具体的布局和布线流程是这样的:1. 将MCU放在最中间的位置上。2. 根据接插件的特殊要求放置接插件。比如电源接入口必须放在左端,而红外激光灯放在
22、上端。3. 放置有特殊要求的器件,如为了美观,要将两个全彩灯珠对称放在MCU两端。易发热的器件离其它器件远一点。4. 将电源相关的器件放置在电源接入口的附近。主要是一些电容,将这些电容排列整齐并且大容值的放在前边。5. 根据与MCU管脚的连接关系,选取器件的放置区域。如某器件与芯片连接的管脚在右边,则尽量将此器件放置在芯片右边。6. 考虑到减小焊接难度,将相似器件放在一块。完成布局以后一定要手工布线。一是因为手工布线可以加深对板子的理解,调试的时候效率会高很多。二是因为自动布线会产生较多的过孔,而打过孔的钻头是易坏部件,会增加成本,并且如果大批量生产的话板子摆放层数较多,则下层的过孔可能很小,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 stm32 自行车 转向 刹车灯 本科 学位 论文
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【胜****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【胜****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。