广西大学学士学位论文
迅速;所有这些又都融入了业界领先的功耗水准。
在Cortex-M3内核开发期间,意法半导体是ARM公司的一个主要合作伙伴,现在也是第一个领先的MCU供应商宣布基于这个核的产品面世。STM32产品系列基于行业标准的ARM 32位精简指令结构——ARM公司最新的内核Cortex-M3。Cortex-M3瞄准单片机领域和嵌入式应用,得益于其先进的结构特性,以减少的代码占用空间和行业领先的高超性能,为我们带来了一个小巧、低能耗的理想平台,将特性差异的不同应用从传统的平台引领到32位的微控制器世界。
STM32的主要优点:
(1)使用ARM最新的、先进架构的Cortex-M3内核; (2)优异的实时性能; (3)杰出的功耗控制; (4)出众及创新的外设; (5)最大程度的集成整合;
(6)易于开发,可使产品快速进入市场;
STM32F103是增强型系列,工作在72 MHz,带有片内RAM和丰富的外设。STM32F101是基本型系列, 工作在36 MHz。两个系列的产品拥有相同的片内闪存选项,在软件和引脚封装方面兼容。
本文采用STM32F103是增强型系列STM32F103ZET6微处理器,完全能满足本系统的要求。它拥有3个12位模数转换器,1μs转换时间(多达输入通道);多达4个16位定时器,每个定时器有多达4个用于输入捕获/输出比较/PWM或脉冲计数的通道,2个16位6通道高级控制定时器,多达6路PWM输出,带死区控制;还包含标准和先进的通信接口:多达2个I2C、3个SPI、2个I2S、1个SDIO、5个USART、一个USB和一个CAN;内置高速存储器(高达512K字节的闪存和64K字节的SRAM),丰富的增强I/O端口和联接到两条APB总线的外设。这些丰富的外设配置,使得STM32F103ZET6微处理器增强型微控制器更适合于电机驱动和应用控制
[10]
。
9
广西大学学士学位论文
2.2.2 STM32F103系列软件开发平台
意法半导体以及众多第三方为32位STM32微控制器提供了从低成本到高端的全套开发工具,包括简单易用的入门套件,完整的开发工具方案,编程工具以及嵌入式操作系统,所有这些都是为基于ARM Cortex-M3内核的STM32专门定制的。用户可从全系列开发方案中选择开发工具,它将帮助用户自始至终地在单一集成环境下完成应用开发。第三方的开发环境包含适合STM32和其它ARM内核产品的C/C++编译器和在线仿真器[10] [11]。
在本系统的软件开发中采用了ARM公司于2007年推出的嵌入式开发工具MDK(Microcontroller Development Kit),是用来开发基于ARM内核微控制器的嵌入式应用程序开发工具。MDK集ARM公司的RealView编译工具RVCT3.1和Keil公司的IDE环境uVision3两者的优势于一体,适合不同层次的开发者使用,包括专业的应用程序开发工程师和嵌入式软件开发的入门者。作为ARM嵌入式的主流开发工具,MDK也是目前为数不多的完全支持Cortex-M3处理器开发的企业级开发工具,并内含STM32F103x系列处理器片上外围接口固件库和完整的数据手册[11]。
2.3 电源模块
本小车的总电源采用两节3.7V锂电池供电,总共是7.4V的电源。小车需供电的模块包括:单片机最小系统、路径识别传感电路、车速检测传感电路、伺服转向电机电路、直流电机驱动电路。整个系统的电源供电方框图如下图2.2所示:
10
广西大学学士学位论文
7.4V电池LM2576_6V舵机电机驱动减速电机LM2576_3.3VSTM32最小系统路径识别传感电路车速检测传感电路图2.2电源模块结构图
首先应该选择稳压芯片。因为电池的电压仅为7.2V而传统的线性稳压器,如78xx系列的芯片都要求输入电压要比输出电压高出2V-3V以上,否则就不能正常工作。 而此时若要稳压器输出+5V的电压,则输入输出的差值仅为2.2V。当电路会产生干扰波动时可能会不满足此类芯片的使用,可能会导致单片机的频繁复位,所以显然不能选用通常的78系列芯片。
特别是在可能会产生脉冲电流干扰的电路中,如驱动电机的干扰。我们知道电池的输出电压为U=E-IR,其中R为电池的内阻,当电机的H驱动桥电路刚接通的瞬间,会产生很大的瞬时电流。从而此时电池的输出在瞬间内会产生波动(变小),因为当I增大,R不变,则输出U则会变小。从而可能会造成系统不能正常工作。故本系统必须选用一些LDO芯片。LDO即low dropout regulator,意为低压差线性稳压器。
本小车中选定LM2576(低压差)芯片, LM2576系列的稳压器是单片的集成电路,能提供降压开关稳压器的各种功能,能驱动3A的负载,有优异的线性和负载调整能力。本系统选定LM2576芯片的输出电压可调的型号LM2576T-ADJ。由于控制器STM32采用的是3.3V的工作电压,因此,我们选择一片为控制器及其它外设供电,另一片调到6V为舵机供电,直流减速电机直接采用7.4V的电源供电。
LM2576T-ADJ的封装管脚图如下图2.3所示,LM2576T-ADJ组成的可调电压输出的电路如下图2.4所示。
11
广西大学学士学位论文
图2.3 LM2576T-ADJ的封装管脚图
图2.4 LM2576T-ADJ可调电压输出电路
由图2.4所示,改变LM2576T-ADJ的4脚上的电压大小就可以改变输出电压Vout的大小,输出电压的公式如下:
Vout?Vref(R2R1?1) (式2-1)
其中Vref=1.23V,即输出的电压Vout大于或等于1.23V,R2等于可调变阻器W1的阻值,所以本电源电路的设计完全可以满足整个系统的供电要求。
12