一,学习芯片有哪些资源:
-STM32F103ZET6:
-32位 高性能ARM Cortex-M3处理器。
-时钟:高达72M,实际还可以超频一点点。(实际达到80多M也可以,但是可能会有副作用,从而造成系统的不稳定性)
-单周期乘法和硬件除法。
2.IO口:
-STM32F103ZET6: 144引脚 112个IO。(一组有16个,从PA—>PG,共有7组)
-STM32F103RCT6:64引脚 51个IO。
-大部分IO口都耐5V(模拟通道除外)。(就是说IO口接5V的电压不会损伤IO口)
-支持调试:SWD和JTAG,SWD只要2根数据线。
3.存储器容量:
-STM32F103ZET6: 512K FLASH,64K SRAM。
-SM32F103RCT6: 256K FLASH,48K SRAM。
4.时钟,复位和电源管理:
-4~16M的外部高速。(一般情况下用8M)
-内部8MHz的高速RC振荡器。(一般不会用到,只有外部高速坏了,才会用到它)
-内部40KHz低速RC振荡器,看门狗时钟。
-内部锁相环(PLL,倍频),一般系统时钟都是外。
部或者内部高速时钟经过PLL倍频后得到。
-外部低速32.768K的晶振,主要做RTC时钟源。
-睡眠,停止和待机三种低功耗模式。
-可用电池为RTC和备份寄存器供电。
-3个12位AD【多达21个外部测量通道】。
-转换范围:0~3.6(电源电压)。
-内部通道可以用于内部温度测量。(内部有温度传感器)
-内置参考电压。
7.DA:
-2个12位DA。
-12个DMA通道(7+5=12; 7通道DMA1,5通道DMA2)(DMA控制器)
-支持外设:定时器,ADC,DAC,SDIO,I2S,SPI,I2C,和USART
-4个通用定时器
-2个基本定时器
-2个高级定时器
-1个系统定时器
-2个看门狗定时器
-2个I2C接口
-5个串口
-3个SPI接口
-1个CAN2.0
-1个USB FS
-1个SDIO
二,芯片的内部结构:
*特别注意:STM32的ISP下载,只能使用串口1,也就是对应串口发送接收引脚PA9,PA10。不能使用其他串口(例如串口2:PA2,PA3)用来ISP下载。
1.下载工具配置
STM32直接通过两个引脚Boot0和Boot1设置启动模式:
3. LSP一般下载步骤:
1) Boot0接3.3,Boot1接GND
2) 按复位按键,实现下载
4.程序执行的一般步骤:
1)mcuisp/flymcu勾选“编程后执行”,发送命令直接从 FLASH启动。
2)Boot0接GND,Boot1接任意,按一次复位。
5.原理
一键下载电路,则利用串口的DTR和RTS信号,分别控制STM32的复位和B0,配合上位机软件(mcuisp),设置:DTR的低电平复位,RTS高电平进BootLoader,这样,B0和STM32的复位,完全可以由下载软件自动控制,从而实现一键下载。
总结:芯片是个非常复杂的东西,我们要先打好基础,熟悉这些芯片的基本构造才能在日后学习更加复杂的知识打下基础。下载驱动和串口。