微控制器、MCU、单片机:
内核:core 这个如果是指的硬件,就是相当于说CPU,执行代码就是靠这个。
ST意法半导体公司:
STM32 是 STMicroelectronics( ST) 的一系列 32 位微控制器, 其基于 ARM Cortex-M 系列的处理器内核设计。它们广泛应用于各种嵌入式系统, 如物联网设备、 汽车电子、 工业自动化等领域。
“ST” 是指制造商 STMicroelectronics 的缩写。
“M” 表示其是基于 ARM 的 Cortex-M 系列核心。
“32” 则代表其为 32 位 微控制器(使用32个比特位来表示一个地址)。
用最小的电路组成单片机可以工作的系统称为最小系统。
stm32 芯片型号: stm32f103zet6 最小系统有 5 部分组成(电源电路、 时钟电路、 boot 电路、 下载/调试接口、 复位电路)
我们看到的 STM32 芯片是已经封装好的成品,主要由内核和片上外设组成。若与电脑类比,内核与外设就如同电脑上的 CPU 与主板、内存、显卡、硬盘的关系。
芯片(这里指内核,或者叫 CPU)和外设之间通过各种总线连接,其中驱动单元有 4 个,被动单元也有 4 个,具体见下面系统架构图示。
ICode 总线(ICode Bus) :
1)内核(core):32位,高性能ARM Cortex-M3处理器,时钟:72M,实际可超频一点
2)IO口: STM32F103ZET6,144引脚,112个IO,大部分IO口都耐5V(模拟通道除外),支持调试:SWD 和 JTAG,SWD只要2根数据线
3)存储器容量:512K FLASH,64K SRAM
4)时钟,复位和电源管理:
5)低功耗:
6)AD:
7)DA:2个12位DA
8)DMA:12个DMA通道(7通道DMA1, 5通道DMA2),挂在AHB
9)支持外设:定时器、ADC、DAC、SDIO、I2S、SPI、I2C 和 USART
10)定时器:11个定时器
11)通信接口:13个通信接口
数据手册(DSxxx):规格书,产品的具体参数
参考手册(RMxxx):产品的使用方法
在STM32F10xxx里,可以通过 BOOT[1:0] 引脚选择三种不同启动模式
跳帽: BOOT0: BOOT1: 0 0 启动方式从 Flash 中启动。
startup_stm32f10x_hd.s 文件,它里边使用 汇编语言 写好了基本程序,当STM32 芯片上电启动的时候,首先会执行这里的汇编程序,从而建立起 C 语言的运行环境,所以我们把这个文件称为启动文件。
启动文件主要功能总结如下,不用详细了解里面的代码:
主要理解 最后两点,在启动文件中有一段复位后立即执行的程序
翻译成 c 语言:
当STM32上电,就会发生复位,CPU首先执行启动文件里的复位中断函数 Reset_Handler,调用 SystemInit 函数初始化系统时钟,然后调用 C 库函数_main,最终调用 main 函数去到 C 的世界。
安装要点:
1)、右键管理员模式运行,安装路径不要带中文
2)、一路next,关键点截图
选中芯片支持包:直接双击运行下一步
新建 demo/User 文件夹,方便以后移植。
1)、解压:挑选需要的素材
2)、剪切 Libraries 文件夹至 demo 文件夹下,与 User 同级目录
3)、3个.c 2个.h 文件剪切到 demo/User文件夹下
4)、MDK keil软件创建工程、选择芯片
5)、工程中新建文件夹
6)、添加工程素材
工程中的 User 添加 3个.c 文件
工程中的 Lib 添加 demo\Libraries\STM32F10x_StdPeriph_Driver\src 路径下所有.c 文件
因为添加的标准库是 STM32F10x 系列芯片,为了适配 更详细的 STM32F103ZET6 所以要添加宏 和头文件
USE_STDPERIPH_DRIVER,STM32F10X_HD
后续直接 复制使用即可,不用在创建工程
代码:
通过STM32串口,直接烧录,这种烧录方式,好处省钱,缺点只能把程序下载进去不能在线仿真调试,相对仿真器下载速度慢一些
1)、编译前设置生成HEX 文件
通过仿真器下载(STlink仿真器 JLink下载器 Ulink下载…),可以下载、也可以在线调试仿真、下载速度也快 缺点单独华清 20~100不等。 通过JTAG下载口进行下载
1)、编译程序
2)、ST-link 仿真器
3)、下载
请填写红包祝福语或标题
红包个数最小为10个
红包金额最低5元
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。