1、山东交通学院毕业设计(论文)山东交通学院毕业论文汽车预警系统院(部)别 信息科学与电气工程学院 专 业 电气工程及其自动化 届 别 2015 学 号 110812302 姓 名 王岩全 指导教师 杨仁明 摘要 随着我国社会主义市场经济的快速发展和人们生活水平的不断提高,购买车辆的用户越来越多。与此同时,盗窃汽车犯罪每年以惊人的速度不断飙升,车辆防盗产品已经成为必不可少的装备。而传统的汽车报警系统存在很多问题,如作用距离短、报警器产生的噪声污染环境、且误报现象经常发生。而基于GPS全球定位系统的汽车防盗报警器有运营商,有监控中心。车主入网成本高,不适宜中、低档车,不易普及因此有必要研制一种新的功
2、能强、价格相对便宜的远程遥控和定位汽车报警器,没有运营监控中心,仅依托GSM公众网,利用GSM无线通信业务及短消息服务业务,对车辆进行远程监控和定位来解决上述各种问题。本文用华为生产的GTM900C模块,借用无线发送和接收、基带处理等功能,来实现无线数据传输和短信收发任务。课题通过介绍单片机开发的理论和对现代远程通信方式的讨论,提出了利用现有GSM网络的短消息业务实现的远程监控的种种优势,并将这种方式应用于车载防盗系统。系统采用先进的GTM900C通信模块和AT89C52单片机实现互连,通过AT指令,完成利用手机对车载防盗系统各项功能的实现。随着我国社会主义市场经济的快速发展和人们生活水平的不
3、断提高,购买车辆的用户越来越多。与此同时,盗窃汽车犯罪每年以惊人的速度不断飙升,车辆防盗产品已经成为必不可少的装备。而传统的汽车报警系统存在很多问题,如作用距离短、报警器产生的噪声污染环境、且误报现象经常发生。而基于GPS全球定位系统的汽车防盗报警器有运营商,有监控中心。车主入网成本高,不适宜中、低档车,不易普及因此有必要研制一种新的功能强、价格相对便宜的远程遥控和定位汽车报警器,没有运营监控中心,仅依托GSM公众网,利用GSM无线通信业务及短消息服务业务,对车辆进行远程监控和定位来解决上述各种问题。本文用华为生产的GTM900C模块,借用无线发送和接收、基带处理等功能,来实现无线数据传输和短
4、信收发任务。课题通过介绍单片机开发的理论和对现代远程通信方式的讨论,提出了利用现有GSM网络的短消息业务实现的远程监控的种种优势,并将这种方式应用于车载防盗系统。系统采用先进的GTM900C通信模块和AT89C52单片机实现互连,通过AT指令,完成利用手机对车载防盗系统各项功能的实现。随着我国社会主义市场经济的快速发展和人们生活水平的不断提高,购买车辆的用户越来越多。与此同时,盗窃汽车犯罪每年以惊人的速度不断飙升,车辆防盗产品已经成为必不可少的装备。而传统的汽车报警系统存在很多问题,如作用距离短、报警器产生的噪声污染环境、且误报现象经常发生。而基于GPS全球定位系统的汽车防盗报警器有运营商,有
5、监控中心。车主入网成本高,不适宜中、低档车,不易普及因此有必要研制一种新的功能强、价格相对便宜的远程遥控和定位汽车报警器,没有运营监控中心,仅依托GSM公众网,利用GSM无线通信业务及短消息服务业务,对车辆进行远程监控和定位来解决上述各种问题。本文用华为生产的GTM900C模块,借用无线发送和接收、基带处理等功能,来实现无线数据传输和短信收发任务。课题通过介绍单片机开发的理论和对现代远程通信方式的讨论,提出了利用现有GSM网络的短消息业务实现的远程监控的种种优势,并将这种方式应用于车载防盗系统。系统采用先进的GTM900C通信模块和AT89C52单片机实现互连,通过AT指令,完成利用手机对车载
6、防盗系统各项功能的实现。 随着我国社会主义市场经济的快速发展和人们生活水平的不断提高,购买车辆的用户越来越多。与此同时,盗窃汽车犯罪每年以惊人的速度不断飙升,车辆防盗产品已经成为必不可少的装备。而传统的汽车报警系统存在很多问题,如作用距离短、报警器产生的噪声污染环境、且误报现象经常发生。而基于GPS全球定位系统的汽车防盗报警器有运营商,有监控中心。车主入网成本高,不适宜中、低档车,不易普及因此有必要研制一种新的功能强、价格相对便宜的远程遥控和定位汽车报警器,没有运营监控中心,仅依托GSM公众网,利用GSM无线通信业务及短消息服务业务,对车辆进行远程监控和定位来解决上述各种问题。本文用华为生产的
7、SIM900模块,借用无线发送和接收、基带处理等功能,来实现无线数据传输和短信收发任务。课题通过介绍单片机开发的理论和对现代远程通信方式的讨论,提出了利用现有GSM网络的短消息业务实现的远程监控的种种优势,并将这种方式应用于车载防盗系统。系统采用先进的SIM900通信模块和STM32单片机实现互连,通过AT指令,完成利用手机对车载防盗系统各项功能的实现。 关键词:SIM900模块,单片机,短消息,无线通信,车辆监控 1AbstractAlong withourcountrysocialistmarketeconomysfastdevelopmentandtheimprovementofpeop
8、leslivingstandard,thepurchaseofvehiclesmoreandmoreusers.Atthesametime,crimesofstealingcarseachyearatanalarmingratesoaring,vehicleanti-theftproductshavebecomeessentialequipment.Whilethetraditionalcaralarmsystemhasmanyproblems,suchasroleinashortdistance,thealarmnoiseenvironment,andthefalsealarmphenome
9、nonoftenoccurs.BasedontheglobalpositioningsystemGPScaranti-theftalarmoperator,amonitoringcenter.Ownersofnetcosthigh,notsuitable,cheapcar,noteasytopopularize.Thereforeitisnecessarytodevelopanewfunctionisstrong,relativelycheappriceofremotecontrolandpositioningofthecaralarm,nooperationmonitorcenter,onl
10、yrelyingontheGSMpublicnetwork,theuseofGSMwirelesscommunicationservicesandshortmessageservices,ofremotevehiclemonitoringandpositioningtosolvethevariousproblems.Inthispaper,withHuaweiproductionSIM900module,borrowthewirelesstransmissionandreception,basebandprocessingfunction,torealizewirelessdatatransm
11、issionandmessagingtasks.ThesubjectthroughtheintroductionofMCUdevelopmenttheoryandthemodernwayofremotecommunicationisdiscussed,theuseofexistingGSMnetworkshortmessageservicetorealizeremotemonitoringofavarietyofadvantages,andinthiswaytheapplicationinvehicleanti-theftsystem.ThesystemusesadvancedSIM900co
12、mmunicationmoduleandSTM32chipinterconnection,throughtheATinstruction,iscompletedbytheuseofmobilephoneinvehicleanti-theftsystemfunctionstoachieve.Keywords :TheSIM900module,Singlechipmicrocomputer,Shortmessage,Wirelesscommunication,Vehiclemonitoring目 录1 前言1.1课题背景 1.2研究意义 1.3课题的主要内容 2.STM32 2.1 产品介绍 2.
13、2 历史2.3 STM32F103. STM32之RCC 3.1 时钟系统框图3.2 STM32标准固件库4 GPIO与AFIO 4.1 GPIO功能描述 4.2 复用功能(AF) 4.3 GPIO代码分析5 UART 5.1 UART的配置步骤 结论致谢参考文献 附录A1前 言1.1课题背景随着车辆安全防范“道高一尺、魔高一丈”的形势变化,车辆防盗产品不断发展,目前,现有的车防盗装置主要包括机械式防盗装置、电子防盗报警装置和GPS汽车防盗系统等三大类最先出现的是机械防盗装置,机械式防盗装置分为机械式防盗锁和断电断油装置两种。它是利用机械装置将方向盘、制动踏板、挡把锁住,或是切断点火线路、油路
14、而使汽车不能开动。结构简单应用最为广泛,但每次使用都要拆装,较为麻烦,而且对于偷车高手,往往不能奏效。随后出现的是电子(机电)防盗报警装置,电子防盗报警装置包括电子警报器和无线电跟踪装置,当车辆遭到非正常打开机盖、行李厢、车门,或是被碰撞时,警报器都会发出警报求救。无线电跟踪装置是在车辆安装一种小型无线电发射器,当车子被盗时,警方利用特殊装置探测出车子的下落,但是可控范围很小,并且受环境影响很大,常会出现“虚警”现象。目前市场上多数中高档车辆使用的是出现的联网防盗防劫报警(定位、跟踪)系统,也称为GPS汽车防盗系统。GPS汽车防盗系统是利用GPS全球卫星定位系统、GIS地理信息系统、计算机网络
15、技术对车辆进行主动式实时监控、追踪定位,它能实现防盗、防动、导航等多项功能。很显然,机械防盗装置技术简单实用,通常靠自身的强度和结构实现防护,伴以锁具的某些技术难度体现了以“物防”为主、以“技防”为辅;电子(机电)防盗报警装置增多了功能、增大了技术难度,伴以一定的自身强度和结构防护体现了以“技防”为主、以“物防”为辅,同时以报警功能召唤“人防”;GPS汽车防盗系统车辆上除了防盗报警装置,还有通信装置,有的还有定位(导航)装置,因此车辆和驾驶员被置于网络监控之下,它们综合了“物防”、“技防”、“人防”三个方面,特别是车辆报警直达网络以及对车辆定位功能,使随时随地的监控成为可能,人力救援能及时介入
16、,极大提升了“人防”的作用。当前,已经开通运营的联网防盗防劫报警系统多为报警服务公司的专业网络系统,它们的作用毋庸置疑,不仅本地防护连连得胜,还频频跨省市追捕成功。但是,和所有的网络运营面临同样的问题,即这样的网络必须有足够的入网用户数量的支撑,才能获得价格优势,在发展的初期,报警服务价格必然有个逐渐降低的过程。受到价格的影响,期望提高防范的广大车主有些观望了。能不能避开入网的价格障碍呢?我国目前已建成了覆盖全国的GSM数字蜂窝移动通信网,是我国公众陆地移动通信网的主要方式。GSM的短消息业务SMS(ShortMessageService)与话音传输及传真一样,为GSM数字蜂窝移动通信网络提供
17、的主要电信业务,它通过无线控制信道进行传输,是GSM通信网所特有的。短消息业务不需拨号建立连接,利用短消息业务中心的存储和转发功能,直接把要发的信息加上目的地址发送到短消息中心,由短消息中心再发送给最终的信宿,这种方式非常适合于利用移动电话(手机)组合汽车防盗报警装置的方案,在这种方案里,汽车防盗报警装置内置移动通信电路,与指定的车主手机以短信沟通,通过无所不在的公共通信网络,实现随时随地监控车辆的状况,并且使手机既是日常通1信工具、又是以短信遥控汽车防盗报警装置的远程遥控器,还是接受报警短信信号的接收器。装备了手机控制的汽车防盗报警装置的汽车,可以既得到车主“关注”,也可以由专业报警服务公司
18、接收入网,其费用主要是短信费用和适当的服务费用,当然,加入专业报警服务网络,比车主的“关注”能够得到更及时、更强大的人力救援。在短消息业务快速发展的背景下,短消息在无线监控与数据采集方面的应用作为硕士论文的研究课题就有着极为重要的现实意义和实际价值。12研究意义基于SIM900手机的汽车防盗防盗报警系统运用汽车防盗报警技术与移动通信技术集成,在符合我国的车辆防盗报警系统标准的防盗报警系统主机基础上,将其与具有信息产业部进网许可证的GSM移动通讯模块通过标准串口相连,在车上的系统主机感知到发生被盗时,一方面控制发动机防止车辆被未经授权非法启用,一方面发出警情信息,又可以通过GSM移动通信网络及时
19、、准确、有针对性地向车主的用户手机振铃、发送短信报警,向专业报警服务公司的中心电话发出报警;而车主通过用户手机向GSM移动通讯模块发送控制指令,传送给系统主机实现汽车防盗的警戒和解除、报警、开关车门,甚至可以使汽车强制熄火防止汽车被歹人驾驶,制止车辆被盗、被劫;在得到车主的授权时,专业报警服务公司的中心电话也可以发出控制指令实现这些控制。由此,可以归结基于SIM900手机的汽车防盗报警系统的特点如下:1)有无专业报警服务中心的中介,都可以突破地域限制,实现通信网络内的有效监控,覆盖范围广,反应快,而且实施与运行费用低,只需增加终端控制系统,运行时,短消息实行包制或按每条010(选用中国移动)元
20、计费,整体费用低。2)实现车主对汽车的远距离直接控制和远距离获取车辆安全信息,车主的自主性、安全性都有保障3)由车主用户手机发送控制信息实现在移动通信网范围下对汽车的远距离监控,再加上无线遥控器的近距离遥控,兼有双遥控通道,既增加了车主操作使用的便利,也提高了整个系统的安全、可靠性。4)车上的系统主机感知到汽车被盗时,自动向车主的用户手机振铃、发送短信报警,报警信息表达准确,具有针对性,这样的报警也是“无声报警”,避免误报警导致扰民噪音;而车主可以回发短信查询、核实汽车的状况,及时制止误报警;整个系统的报警范围达移动通信网的覆盖区域,并且是一种“环保”型的设计。5)车主的用户手机发送短信可以远
21、程指令汽车实现“强制熄火”、发出报警、使车钥匙和遥控器暂时失效等功能,车主也可以授权专业报警服务中心发出这些远程指令,使车辆控制权仅限于车主的用户手机和报警服务中心,有效防止汽车在本地或异地被盗、被劫。6)在开通移动定位服务的区域,依托移动通信网,通过与车上的移动通讯模块保持联络,可以对车辆进行定位。7)可扩展性强,依托GSM公众网,建立的远程遥控和定位汽车报警器,监控范围广,系统成本低,功能较多。除了我们研制的功能终,以后还可根据市场发展和用户需要,扩展其它功能如:火灾报警、医疗求助、气体安全等。因此,该项目有较好的市场发展前景,将产生较好的经济效益和社会效益。总之,提高汽车防护能力的重要途
22、径是发展网络化、信息化的汽车防盗报警系统,使车辆具有强大的防盗、防劫功能,并且能够随时得到人的关注和救援。我们研制的基于GSM手机的汽车防盗报警器正是符合这一发展方向的产品,它充分发挥公共通信网的覆盖优势以及利用在我国已经广为普及的手机,实现了网络化、信息化的汽车防盗报警系统,整个系统无需建立专门的报警网络,用户无需另外的高费用,只用随身携带的手机就获得了车主、汽车之间的远程双向控制,并且能够随时随地召唤报警服务中心的支援,是一种既可以由用户单独使用,又可以被汽车制造厂商和报警服务运营企业成批使用的产品,推动行业性的发展。13课题的主要内容本文围绕“单片机控制SIM900块收发短信”这一热点课
23、题,阐述了如何利用GSM模块结合PC机和单片机系统,将短消息业务与数据传输结合起来,实现了远端单片机数据采集、通讯,主控端数据接收、控制与计算机接口通信等相关技术,在设计中利用ATMEL公司的8位STM32单片机和华为公司的GSM模块SIM900实现了一款具有短信收发功能的汽车防盗报警系统。1 stm321.1 stm32简介STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M内核按内核架构分为不同产品: 其中STM32F1系列有: STM32F103“增强型”系列 STM32F101“基本型”系列 STM32F105、STM32F107“互联型”系列
24、 增强型系列时钟频率达到72MHz,是同类产品中性能最高的产品;基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是32位产品用户的最佳选择。两个系列都内置32K到128K的闪存,不同的是SRAM的最大容量和外设接口的组合。时钟频率72MHz时,从闪存执行代码,STM32功耗36mA,是32位市场上功耗最低的产品,相当于0.5mA/MHz。在STM32F105和STM32F107互连型系列微控制器之前,意法半导体已经推出STM32基本型系列、增强型系列、USB基本型系列、互补型系列;新系列产品沿用增强型系列的72MHz处理频率。内存包括64KB到256KB闪存和 2
25、0KB到64KB嵌入式SRAM。新系列采用LQFP64、LQFP100和LFBGA100三种封装,不同的封装保持引脚排列一致性,结合STM32平台的设计理念,开发人员通过选择产品可重新优化功能、存储器、性能和引脚数量,以最小的硬件变化来满足个性化的应用需求。 截至2010年7月1日,市面流通的型号有: 基本型:STM32F101R6、STM32F101C8、STM32F101R8、STM32F101V8、STM32F101RB、STM32F101VB 增强型:STM32F103C8、STM32F103R8、STM32F103V8、STM32F103RB、STM32F103VB、 STM32F1
26、03VE、STM32F103ZE STM32型号的说明:以STM32F103RBT6这个型号的芯片为例,该型号的组成为7个部分,其命名规则如下: 1 STM32 STM32代表ARM Cortex-M内核的32位微控制器。 2 F F代表芯片子系列。 3 103 103代表增强型系列。 4 R R这一项代表引脚数,其中T代表36脚,C代表48脚,R代表64脚,V代表100脚,Z代表144脚,I代表176脚。 5 B B这一项代表内嵌Flash容量,其中6代表32K字节Flash,8代表64K字节Flash,B代表128K字节Flash,C代表256K字节Flash,D代表384K字节Flash
27、,E代表512K字节Flash,G代表1M字节Flash。 6 T T这一项代表封装,其中H代表BGA封装,T代表LQFP封装,U代表VFQFPN封装。 7 6 6这一项代表工作温度范围,其中6代表-4085,7代表-40105。1.2 历史意法半导体 (STMicroelectronics) 集团于1987年6月成立,是由意大利的SGS 微电子公司和法国Thomson 半导体公司合并而成。1998年5月,SGS-THOMSON Microelectronics 将公司名称改为意法半导体有限公司,意法半导体是世界最大的半导体公司之一。从成立之初至今,ST 的增长速度超过了半导体工业的整体增长速
28、度。自1999年起,ST 始终是世界十大半导体公司之一。据最新的工业统计数据,意法半导体 (STMicroelectronics) 是全球第五大半导体厂商,在很多市场居世界领先水平。例如,意法半导体是世界第一大专用模拟芯片和电源转换芯片制造商,世界第一大工业半导体和机顶盒芯片供应商,而且在分立器件、手机相机模块和车用集成电路领域居世界前列。 意法半导体 (STMicroelectronics) 整个集团共有员工近 50000 名,拥有16 个先进的研发机构、39 个设计和应用中心、15 主要制造厂,并在 36 个国家设有 78 个销售办事处。公司总部设在瑞士日内瓦,同时也是欧洲区以及新兴市场的
29、总部;公司的美国总部设在德克萨斯州达拉斯市的卡罗顿;亚太区总部设在新加坡;日本的业务则以东京为总部;中国区总部设在上海,负责香港、大陆和台湾三个地区的业务。 自1994年12月8日首次完成公开发行股票以来,意法半导体已经在纽约证券交易所 (交易代码:STM) 和泛欧巴黎证券交易所挂牌上市,1998年6月,又在意大利米兰证券交易所上市。意法半导体拥有近 9 亿股公开发行股票,其中约 71.1% 的股票是在各证券交易所公开交易的。另外有 27.5% 的股票由意法半导体控股 II B.V. 有限公司持有,其股东为 Finmeccanica 和 CDP 组成的意大利 Finmeccanica 财团和
30、Areva 及法国电信组成的法国财团;剩余 1.4% 的库藏股由意法半导体公司持有。 ST 超低功耗 ARM Cortex-M3 微控制器 STM32L 系列产品基于超低功耗的 ARM Cortex-M3 处理器内核,采用意法半导体独有的两大节能技术:130nm 专用低泄漏电流制造工艺和优化的节能架构,提供业界领先的节能性能。该系列属于意法半导体阵容强大的 32 位 STM32 微控制器产品家族,该产品家族共有 180 余款产品,全系列产品共用大部分引脚、软件和外设,优异的兼容性为开发人员带来最大的设计灵活性。 ST 超低功耗 ARM Cortex-M0 微控制器 STM32F0 系列产品基于
31、超低功耗的 ARM Cortex-M0 处理器内核,整合增强的技术和功能,瞄准超低成本预算的应用。该系列微控制器缩短了采用 8 位和 16 位微控制器的设备与采用 32 位微控制器的设备之间的性能差距,能够在经济型用户终端产品上实现先进且复杂的功能。1.3 STM32F10ARM公司的高性能”Cortex-M3”内核1.25DMips/MHz,而ARM7TDMI只有0.95DMips/MHz一流的外设1s的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI,18MHz的I/O翻转速度低功耗在72MHz时消耗36mA(所有外设处于工作状态),待机时下降到2A最大的集成度复位电路、低电压检
32、测、调压器、精确的RC振荡器等简单的结构和易用的工具参数2V-3.6V供电容忍5V的I/O管脚优异的安全时钟模式带唤醒功能的低功耗模式内部RC振荡器内嵌复位电路工作温度范围:-40C至+85C或105C101性能36MHz CPU多达16K字节SRAM 1x12位ADC温度传感器103性能特点内核:ARM32位Cortex-M3 CPU,最高工作频率72MHz,1.25DMIPS/MHz。单周期乘法和硬件除法。存储器:片上集成32-512KB的Flash存储器。6-64KB的SRAM存储器。时钟、复位和电源管理:2.0-3.6V的电源供电和I/O接口的驱动电压。POR、PDR和可编程的电压探测
33、器(PVD)。4-16MHz的晶振。内嵌出厂前调校的8MHz RC振荡电路。内部40 kHz的RC振荡电路。用于CPU时钟的PLL。带校准用于RTC的32kHz的晶振。低功耗:3种低功耗模式:休眠,停止,待机模式。为RTC和备份寄存器供电的VBAT。调试模式:串行调试(SWD)和JTAG接口。DMA:12通道DMA控制器。支持的外设:定时器,ADC,DAC,SPI,IIC和UART。3个12位的us级的A/D转换器(16通道):A/D测量范围:0-3.6 V。双采样和保持能力。片上集成一个温度传感器。2通道12位D/A转换器:STM32F103xC,STM32F103xD,STM32F103x
34、E独有。最多高达112个的快速I/O端口:根据型号的不同,有26,37,51,80,和112的I/O端口,所有的端口都可以映射到16个外部中断向量。除了模拟输入,所有的都可以接受5V以内的输入。最多多达11个定时器:4个16位定时器,每个定时器有4个IC/OC/PWM或者脉冲计数器。2个16位的6通道高级控制定时器:最多6个通道可用于PWM输出。2个看门狗定时器(独立看门狗和窗口看门狗)。Systick定时器:24位倒计数器。2个16位基本定时器用于驱动DAC。最多多达13个通信接口:2个IIC接口(SMBus/PMBus)。5个USART接口(ISO7816接口,LIN,IrDA兼容,调试控
35、制)。3个SPI接口(18 Mbit/s),两个和IIS复用。CAN接口(2.0B)。USB 2.0全速接口。SDIO接口。ECOPACK封装:STM32F103xx系列微控制器采用ECOPACK封装形式。系统作用1、集成嵌入式Flash和SRAM存储器的ARM Cortex-M3内核。和8/16位设备相比,ARM Cortex-M3 32位RISC处理器提供了更高的代码效率。STM32F103xx微控制器带有一个嵌入式的ARM核,所以可以兼容所有的ARM工具和软件。2、嵌入式Flash存储器和RAM存储器:内置多达512KB的嵌入式Flash,可用于存储程序和数据。多达64KB的嵌入式SRA
36、M可以以CPU的时钟速度进行读写(不待等待状态)。3、可变静态存储器(FSMC):FSMC嵌入在STM32F103xC,STM32F103xD,STM32F103xE中,带有4个片选,支持四种模式:Flash,RAM,PSRAM,NOR和NAND。3个FSMC中断线经过OR后连接到NVIC。没有读/写FIFO,除PCCARD之外,代码都是从外部存储器执行,不支持Boot,目标频率等于SYSCLK/2,所以当系统时钟是72MHz时,外部访问按照36MHz进行。4、嵌套矢量中断控制器(NVIC):可以处理43个可屏蔽中断通道(不包括Cortex-M3的16根中断线),提供16个中断优先级。紧密耦合
37、的NVIC实现了更低的中断处理延迟,直接向内核传递中断入口向量表地址,紧密耦合的NVIC内核接口,允许中断提前处理,对后到的更高优先级的中断进行处理,支持尾链,自动保存处理器状态,中断入口在中断退出时自动恢复,不需要指令干预。5、外部中断/事件控制器(EXTI):外部中断/事件控制器由用于19条产生中断/事件请求的边沿探测器线组成。每条线可以被单独配置用于选择触发事件(上升沿,下降沿,或者两者都可以),也可以被单独屏蔽。有一个挂起寄存器来维护中断请求的状态。当外部线上出现长度超过内部APB2时钟周期的脉冲时,EXTI能够探测到。多达112个GPIO连接到16个外部中断线。6、时钟和启动:在启动
38、的时候还是要进行系统时钟选择,但复位的时候内部8MHz的晶振被选用作CPU时钟。可以选择一个外部的4-16MHz的时钟,并且会被监视来判定是否成功。在这期间,控制器被禁止并且软件中断管理也随后被禁止。同时,如果有需要(例如碰到一个间接使用的晶振失败),PLL时钟的中断管理完全可用。多个预比较器可以用于配置AHB频率,包括高速APB(PB2)和低速APB(APB1),高速APB最高的频率为72MHz,低速APB最高的频率为36MHz。7、Boot模式:在启动的时候,Boot引脚被用来在3种Boot选项种选择一种:从用户Flash导入,从系统存储器导入,从SRAM导入。Boot导入程序位于系统存储
39、器,用于通过USART1重新对Flash存储器编程。8、电源供电方案:VDD ,电压范围为2.0V-3.6V,外部电源通过VDD引脚提供,用于I/O和内部调压器。VSSA和VDDA,电压范围为2.0-3.6V,外部模拟电压输入,用于ADC,复位模块,RC和PLL,在VDD范围之内(ADC被限制在2.4V),VSSA和VDDA必须相应连接到VSS和VDD。VBAT,电压范围为1.8-3.6V,当VDD无效时为RTC,外部32KHz晶振和备份寄存器供电(通过电源切换实现)。9、电源管理:设备有一个完整的上电复位(POR)和掉电复位(PDR)电路。这条电路一直有效,用于确保从2V启动或者掉到2V的时
40、候进行一些必要的操作。当VDD低于一个特定的下限VPOR/PDR时,不需要外部复位电路,设备也可以保持在复位模式。设备特有一个嵌入的可编程电压探测器(PVD),PVD用于检测VDD,并且和VPVD限值比较,当VDD低于VPVD或者VDD大于VPVD时会产生一个中断。中断服务程序可以产生一个警告信息或者将MCU置为一个安全状态。PVD由软件使能。10、电压调节:调压器有3种运行模式:主(MR),低功耗(LPR)和掉电。MR用在传统意义上的调节模式(运行模式),LPR用在停止模式,掉电用在待机模式:调压器输出为高阻,核心电路掉电,包括零消耗(寄存器和SRAM的内容不会丢失)。11、低功耗模式:ST
41、M32F103xx支持3种低功耗模式,从而在低功耗,短启动时间和可用唤醒源之间达到一个最好的平衡点。休眠模式:只有CPU停止工作,所有外设继续运行,在中断/事件发生时唤醒CPU;停止模式:允许以最小的功耗来保持SRAM和寄存器的内容。1.8V区域的时钟都停止,PLL,HSI和HSE RC振荡器被禁能,调压器也被置为正常或者低功耗模式。设备可以通过外部中断线从停止模式唤醒。外部中断源可以使16个外部中断线之一,PVD输出或者TRC警告。待机模式:追求最少的功耗,内部调压器被关闭,这样1.8V区域断电。PLL,HSI和HSE RC振荡器也被关闭。在进入待机模式之后,除了备份寄存器和待机电路,SRA
42、M和寄存器的内容也会丢失。当外部复位(NRST引脚),IWDG复位,WKUP引脚出现上升沿或者TRC警告发生时,设备退出待机模式。进入停止模式或者待机模式时,TRC,IWDG和相关的时钟源不会停止。2 STM32之RCC2.1 时钟系统框图STM32 RCC复位与时钟配置,忽略掉复位,首先学习时钟配置,复位以后用到再学习。STM32有多个时钟源,分别是HSI:上电默认启动,因精度不高所以先不采用,以后如果需要再使用HSE:外部高速时钟,系统时钟一般采用它,经过PLL倍频作为系统时钟LSE:外部低速时钟,一般专门用于RTC,等到RTC模块时再使用LSI:内部低速时钟,精度不高,一般用于IWDGC
43、LK 时钟系统框图如下:STM32中各个模块都有自己的时钟,当使用相应的模块时首先记得把此模块时钟开启2.2 STM32标准固件库void RCC_Configuration(void) ErrorStatus HSEStartUpStatus; /SystemInit();/完全可以使用此函数配置,但是为了学习先不用RCC_DeInit();/复位RCC模块的寄存器,复位成缺省值RCC_HSEConfig(RCC_HSE_ON);/开启HSE时钟,用HSE的时钟作为PLL的时钟源HSEStartUpStatus = RCC_WaitForHSEStartUp();/获取HSE启动状态if(H
44、SEStartUpStatus = SUCCESS)/如果HSE启动成功 FLASH_PrefetchBufferCmd(ENABLE);/开启FLASH的预取功能 FLASH_SetLatency(FLASH_Latency_2); /FLASH延迟2个周期 RCC_HCLKConfig(RCC_SYSCLK_Div1); /配置HCLK,PCLK2,PCLK1,PLLRCC_PCLK2Config(RCC_HCLK_Div1); RCC_PCLK1Config(RCC_HCLK_Div2);RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9); RCC_PLLCmd(ENABLE);