本节将向大家介绍ALIENTEKMi
iSTM32开发板的各部分硬件,让大家对该开发板的各部分硬件原理有个理解。121MCU
ALIENTEKMi
iSTM32选择的是STM32F103RBT6作为MCU,STM32F103的型号众多,我们选择这款的原因是看重其性价比,作为一款低端开发板,选择STM32F103RBT6是最佳的选择。128KFLASH、20KSRAM、2个SPI、3个串口、1个USB、1个CAN、2个12位的ADC、RTC、51个可用IO脚…,这样的配置无论放到哪里都是很不错的了,更重要的是其价格,18元左右的零售价,足以秒杀很多其他芯片了,所以我们选择了它作为我们的主芯片。MCU部分原理图如下:
图1211MCU部分原理图
上图中中上部的BOOT1用于设置STM32的启动方式,其对应启动模式如下表所示:
f表1211BOOT0、BOOT1启动模式表
我们用串口下载代码,则配置BOOT0为1,BOOT1为0即可,如果想让STM32一按复位键就开始跑代码,则需要配置BOOT0为0,BOOT1随便设置都可以。
P3和P1分别用于PORTA和PORTB的IO口引出,其中P2还有部分用于PORTC口的引出。PORTA和PORTB都是按顺序排列的,这样设计的目的是为了让大家更方便地与外部设备连接。
P2连接了DS18B20的数据口以及红外传感器的数据线,它们分别对应着PA0和PA1,只需要通过跳线帽将P2和P3连接起来就可以使用了。这里不直接连在一起的原因有二:1,防止红外传感器和DS18B20对这两个IO口作为其他功能使用的时候的影响;2,DS18B20和红外传感器还可以用来给其他板子提供输入,等于我们的板子为别的板子提供了红外接口和温度传感器,在调试的时候,还是蛮有用的。
P4口连接了PL2303的串口输出,对应着STM32的串口1(PA9PA10),在使用的时候,也是通过跳线帽将这两处连接起来。这样设计有2个好处:1,使得PA9和PA10用作其他用途使用的时候,不受到PL2303的影响。2,USB转串口可以用作他用,并不仅限这个板上的STM32使用,也可以连接到其他板子上,这样ALIENEKMi
iSTM32就相当于一个USB串口。
P5口是另外一个IO引出排阵,将PORTC和PORTD等的剩余IO口从这里引出。
在此部分原理图中,我们还可以看到STM32F103RBT6的各个IO口与外设的连接关系,这些将在后面给大家介绍。
这里STM32的VBAT采用CR1220纽扣电池和VCC33混合供电的方式,在有外部电源(VCC33)的时候,CR1220不给VBAT供电,而在外部电源断开的时候,则由CR1220给VBAT供电。这样,VBAT总是有电的,以保证RTC的走时以及后备寄存器的内容不丢失。
该部分还有JTAG,JTAG部分电路如下图:
f图1212JTAG原理图
这里采用的是标准的JTAG接法,但是STM32还有r