第六课 STM32微处理器及接口技术
stm32课程设计

6.实践项目:结合所学知识,设计并实现一个简易的温度监测与控制系统。
3、教学内容
在本章节的深入学习中,我们将重点拓展以下教学内容:
1.多任务编程:引入RTOS(实时操作系统)的基本概念,学习如何在STM32上使用FreeRTOS进行多任务编程。
3.嵌入式系统调试:教授使用调试工具如JTAG和逻辑分析仪进行STM32程序的调试和性能分析。
4.传感器接口:学习如何使用常见的传感器(如温湿度、光照、加速度等)与STM32接口,并处理传感器数据。
5.电源管理:探讨STM32的电源管理策略,学习如何在低功耗应用中优化电源使用。
6.安全性与稳定性:引入系统安全性和稳定性的概念,教授错误检测和处理方法,提高系统的鲁棒性。
2.用户界面设计:学习使用LCD显示屏、触摸屏等人机交互界面,提高用户体验。
3.数据存储与处理:探讨STM32系统中数据的存储方式,如SPI FLASH、SD卡等,并学习数据预处理和滤波算法。
4.实时控制算法:引入PID控制等实时控制算法,教授如何在STM32上实现闭环控制系统。
5.互联网连接:了解如何将STM32与互联网连接,学习使用MQTT、HTTP等协议进行数据上传和远程控制。
7.创新实践项目:鼓励学生结合现代科技趋势,如物联网、人工智能等,设计具有创新性的实践项目,将STM32技术应用于实际问题中,培养解决复杂工程问题的能力。
5、教学内容
在本章节的进阶学习中,我们将重点提升学生的综合应用能力,以下是具体的教学内容:
1.系统集成:教授如何将多个模块(如传感器、通信模块、显示模块等)集成到STM32系统中,实现复杂的功能。
stm32课程设计
基于STM32F103芯片的USB接口的研究与实现

基于STM32F103芯片的USB接口的研究与实现一、本文概述随着科技的飞速发展,USB接口作为一种便捷、高效的数据传输方式,在电子设备中得到了广泛应用。
STM32F103芯片作为STMicroelectronics公司推出的一款基于ARM Cortex-M3内核的32位微控制器,具有高性能、低功耗、易于编程等优点,被广泛应用于各种嵌入式系统中。
本文将围绕STM32F103芯片的USB接口展开研究,详细探讨其原理、设计与实现方法。
本文首先介绍了STM32F103芯片的基本特性和USB接口的基本原理,包括USB协议栈、数据传输方式等。
接着,对STM32F103芯片的USB 接口硬件设计进行了详细描述,包括硬件电路的选择、接口电路设计、电源管理等。
在软件设计方面,本文详细介绍了USB驱动程序的开发过程,包括驱动程序的架构、主要功能实现以及关键技术的处理等。
为了实现STM32F103芯片与USB设备之间的数据传输,本文还设计了基于USB HID类设备的通信协议。
该协议利用USB HID类设备的通用性,实现了STM32F103芯片与USB设备之间的无缝连接和数据传输。
本文还通过实验验证了USB接口设计与实现的正确性,并分析了在实际应用中的性能表现。
本文总结了STM32F103芯片USB接口的研究与实现过程,指出了其中存在的不足之处,并对未来的研究方向进行了展望。
通过本文的研究,旨在为嵌入式系统开发人员提供一种基于STM32F103芯片的USB接口设计与实现方案,推动嵌入式系统中USB接口技术的进一步发展。
二、STM32F103芯片USB接口基础知识STM32F103芯片是STMicroelectronics公司生产的一款基于ARM Cortex-M3核心的微控制器,它集成了丰富的外设接口,其中包括USB 接口。
对于STM32F103来说,其USB接口主要基于USB 0标准,提供了高速的数据传输能力。
STM32F103的USB接口主要由以下几个部分构成:USB外设控制器、USB收发器以及USB的电源管理。
stm32芯片简介

单片机存储器处理器成本STM32背景如果你正为项目的处理器而进行艰难的选择:一方面抱怨16位单片机有限的指令和性能,另一方面又抱怨32位处理器的高成本和高功耗,那么,基于ARM Cortex-M3内核的STM32系列处理器也许能帮你解决这个问题。
使你不必在性能、成本、功耗等因素之间做出取舍和折衷。
即使你还没有看完STM32的产品手册,但对于这样一款融合ARM和ST技术的“新生儿”相信你和我一样不会担心这款针对16位MCU应用领域的32位处理器的性能,但是从工程的角度来讲,除了芯片本身的性能和成本之外,你或许还会考虑到开发工具的成本和广泛度;存储器的种类、规模、性能和容量;以及各软件获得的难易,我相信你看完本专题会得到一个满意的答案。
对于在16位MCU领域用惯专用在线仿真器(ICE)的工程师可能会担心开发工具是否能够很快的上手?开发复杂度和整体成本会不会增加?产品上市时间会不会延长?没错,对于32位嵌入式处理器来说,随着时钟频率越来越高,加上复杂的封装形式,ICE已越来越难胜任开发工具的工作,所以在32位嵌入式系统开发中多是采用JTAG仿真器而不是你熟悉的ICE。
但是STM32采用串行单线调试和JTAG,通过JTAG调试器你可以直接从CPU获取调试信息,从而将使你的产品设计大大简化,而且开发工具的整体价格要低于ICE,何乐而不为?有意思的是STM32系列芯片上印有一个蝴蝶图像,据ST微控制器产品部Daniel COLONNA 先生说,这是代表自由度,意在给工程师一个充分的创意空间。
我则“曲解”为预示着一种蝴蝶效应,这种蝴蝶效应不仅会对方案提供商以及终端产品供应商带来举足轻重的影响,而且会引起竞争对手策略的改变……翅膀已煽动,让我们一起静观其变!STM32市面上流通的型号截至2010年7月1日,市面流通的型号有:基本型:STM32F101R6 STM32F101C8 STM32F101R8 STM32F101V8 STM32F101RBSTM32F101VB增强型:STM32F103C8 STM32F103R8 STM32F103V8 STM32F103RBSTM32F103VB STM32F103VE STM32F103ZESTM32系列的作用简介ARM公司的高性能”Cortex-M3”内核1.25DMips/MHz,而ARM7TDMI只有0.95DMips/MHz一流的外设1μs的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI,18MHz的I/O翻转速度低功耗在72MHz时消耗36mA(所有外设处于工作状态),待机时下降到2μA最大的集成度复位电路、低电压检测、调压器、精确的RC振荡器等简单的结构和易用的工具 STM32F10x重要参数2V-3.6V供电容忍5V的I/O管脚优异的安全时钟模式带唤醒功能的低功耗模式内部RC振荡器内嵌复位电路工作温度范围:-40°C至+85°C或105°C STM32F101性能特点36MHz CPU 多达16K字节SRAM 1x12位ADC温度传感器 STM32F103性能特点72MHz CPU多达20K字节SRAM 2x12位ADC 温度传感 PWM定时器 CAN USBSTM32互联型系列简介:全新STM32互连型(Connectivity)系列微控制器增加一个全速USB(OTG)接口,使终端产品在连接另一个USB设备时既可以充当USB主机又可充当USB 从机;还增加一个硬件支持IEEE1588精确时间协议(PTP)的以太网接口,用硬件实现这个协议可降低CPU开销,提高实时应用和联网设备同步通信的响应速度。
stm32课程教学大纲

stm32课程教学大纲一、课程介绍1.1课程背景与意义-介绍STM32是什么,它的硬件架构和特点,以及它在嵌入式系统开发中的重要性-分析STM32在各个领域中的应用场景和前景1.2课程目标-深入了解STM32的硬件结构和工作原理-掌握STM32的开发环境搭建和基本编程技巧-能够运用STM32开发嵌入式系统,并解决实际问题1.3教学方法与评估方式-采用理论与实践相结合的教学方法,注重动手实践-评估方式包括课堂表现、实验报告、项目作业等二、STM32基础知识2.1 STM32硬件结构- CPU、存储器、外设等组成及其功能- STM32的各个系列介绍2.2 STM32工作原理-系统时钟、中断控制、电源管理等基本原理-内存映射、外设映射等2.3 STM32开发环境搭建- STM32开发板的选择-开发工具的安装与配置-编写第一个程序并烧录到开发板上三、STM32编程基础3.1 STM32编程语言- C语言在STM32开发中的应用-基本的C语言语法和数据类型3.2 STM32编程模型-寄存器操作、位操作等-外设驱动编程3.3 STM32程序设计-简单的I/O操作-中断处理-定时器、PWM等外设的使用四、STM32外设应用4.1串口通信-串口通信原理- STM32串口编程实践4.2并口通信-基本的并行口通信原理- STM32并口编程实践4.3定时器应用-定时器的作用和工作原理- STM32定时器编程实践4.4 ADC/DAC应用-模数/数模转换原理- STM32 ADC/DAC编程实践五、STM32系统设计5.1实时操作系统(RTOS)介绍- RTOS的概念和特点- FreeRTOS在STM32上的应用5.2 STM32网络通信- TCP/IP协议栈的概念- STM32网络编程实践5.3 STM32应用案例分析-介绍一些基于STM32的实际应用案例-分析案例中的系统设计与实现原理六、课程实践与项目6.1实验设计与实践-配套实验设计,包括基本的I/O操作、定时器应用、串行通信等-实验操作指导和报告要求6.2课程项目设计-学生参与STM32系统设计和实现的项目设计-项目验收和成果展示七、课程总结与展望7.1课程总结-对本课程学习内容和实践经验进行总结-分析学生在课程学习过程中的问题和不足7.2 STM32发展展望-分析STM32在未来的发展趋势-探讨嵌入式系统领域的发展方向八、参考课程教材- 《嵌入式系统设计与应用:STM32单片机开发实战指南》- 《STM32单片机应用开发从入门到精通》- 《STM32单片机原理与实践》以上为STM32课程教学大纲,课程将着重介绍STM32的硬件结构、工作原理和开发环境搭建,以及基础的STM32编程知识和外设应用。
《单片机原理及接口技术——基于arm cortex-m3 的stm32系列》课件1.7

二进制表示数值。
优点:
以8位原码为例, 表示范围:1111 1111B ~ 0111 1111B
- 127 ~ +127
简单直观,与真值的对应直观,转换方便。
带符号整数的表示——原码
缺点: ① 0的表示不唯一
0000 0000B 1000 0000B
② 计算结果出错
1 0 0 0 0 0 1 1B + 0 0 0 0 0 0 1 1B
ARM Cortex-M3 的STM32系列 有符号数的表示
带符号整数的表示
机器数
在计算机中,无论数值还是符号,都是用0或1来表示。 机器数表示的真实值称为真值。
带符号整数的机器数
通常用最高位做符号位,0表示正数,1表示负数。 常用的表示方法有:
原码、 反码、 补码
带符号整数的表示——原码
原码
最高位表示符号(0正1负),其余位用真值绝对值的
带符号整数的表示——补码
问题与思考
[X]补码=01101101B [X]原码= B [X]补码=11010110B [X]原码= B 相同位数的有符号数比无符号数表示的范围大;(对or错 )
带符号整数的表示——补码
问题与思考
[X]补码=01101101B [X]原码= 01101101 B [X]补码=11010110B [X]原码= 10101010 B 相同位数的有符号数比无符号数表示的范围大;(错 )
码,负数的补码数值位是其原码按位取反再加1
以8位二进制码为例,表示范围为:
补码: 1000 0000B ~ 0111 1111B
反码:
0111 1111B
原码:
0111 11117
带符号整数的表示——补码
《单片机原理及接口技术——基于arm cortex-m3 的stm32系列》课件4.6

STM32的复位序列与启动过程
启动代码实现
首先对栈和堆的大小进行定义 栈区(stack)― 由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方 式类似于数据结构中的栈。 堆区(heap) ― 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。 注意类似于链表。
其在代码区的起始处建立中断向量表,其第一个表项是栈顶地址,第二个表项是复位中断 服务入口地址。
当STM32遇到复位信号后,则从0x8000004处取出复位中断服务入口 地址,继而执行复位中断服务程序,然后跳转__main函数,最后进入 main函数,来到C的世界。
Thanks
其他储存器
闪存 启动引导代码 其他异常向量 0×00000101 0×20008000
堆栈 内存
Reset Vector
MSP的初始值 0×20008000
堆栈向下生长
STM32的复位序列与启动过程
启动代码功能
启动代码文件名是STM32F10x.S,它的作用如下: 1.堆和栈的定义; 2.向量表定义; 3.复位入口程序定义,其它中断服务程序定义; 4.通过复位程序进入C的实时库_main; 5.由C的实时库实现堆栈的初始化,完成空间分配等工作; 6.进入C应用程序。
ARM Cortex-M3 的STM32系列 STM32复位序列与启动过程
STM32的复位序列与启动过程
复位入口
0×20008000 0×20007FFC 0×20007FF8
其他储存器 第一个入栈的元素 第二个入栈的元素
0×20007C00
0×00000100 0×00000004 0×00000000
然后在复位中断服务程序中跳转C/C++标准实时库的__main函数,完成用户堆栈等的初始化 后,跳转.c文件中的main函数开始执行C程序。
stm32课程教学大纲

stm32课程教学大纲第一部分:课程介绍1.1课程背景和意义-简要介绍STM32是一款什么样的芯片,以及在微控制器领域的重要性和应用范围。
-介绍学习STM32的好处和意义,以及对提升学生综合能力的重要性。
1.2课程目标-确定学生应该在课程结束时所达到的基本能力和知识。
-概述课程内容和教学方法,以及学生的评估方式。
第二部分:STM32基础知识2.1 MCU概述-介绍MCU的基本概念和原理。
-简要介绍STM32的特点和应用领域。
2.2 STM32系列介绍-详细描述不同系列的STM32芯片,包括性能参数、外设配置和适用领域。
-比较不同系列的优缺点,以及如何选择适合的芯片。
2.3 STM32开发环境配置-介绍STM32开发环境的搭建,包括软件和硬件设备。
-演示如何搭建开发环境并进行简单的测试。
第三部分:STM32应用开发3.1 STM32编程语言-介绍在STM32开发中常用的编程语言,包括C语言和汇编语言。
-演示如何在STM32平台上进行C语言编程和简单的汇编语言编程。
3.2 STM32外设驱动-介绍STM32芯片上常用的外设,包括GPIO、USART、I2C、SPI等。
-演示如何配置和驱动这些外设,以及如何进行简单的外设通讯。
3.3 STM32应用开发实例-参考一些实际项目案例,演示如何在STM32上进行应用开发。
-包括LED灯控制、温度传感器读取、无线通讯等实例。
第四部分:STM32高级应用4.1 STM32中断与定时器-介绍STM32的中断处理和定时器配置方法。
-演示如何利用中断和定时器进行系统控制和定时任务处理。
4.2 STM32通讯协议-介绍STM32上常用的通讯协议,包括UART、SPI、I2C等。
-演示如何在STM32上实现这些通讯协议,并进行通讯数据交换。
4.3 STM32网络通讯-介绍如何在STM32上实现网络通讯,如以太网通讯、WiFi通讯等。
-演示如何利用STM32进行简单的网络数据传输和通讯。
stm32基础教程.pdf

理解嵌入式系统
– 嵌入式系统是与应用紧密结合的,是面 向用户、面向产品、面向应用的。
– 嵌入式系统是一个技术密集、资金密集、 高度分散、不断创新的知识集成系统。
– 嵌入式系统可定制、可裁减。 – 嵌入式系统中的软件一般都固化在存储
嵌入式系统的开发过程
芯片选择 配置硬件平台 Bootloader移植 操作系统裁减 操作系统移植 应用程序开发
如何成为嵌入式开发人员
– 要想成为一个比较优秀的嵌入式开发人 员,应该牢记“博、专、实践”的原则。
•博 •专 • 实践
嵌入式操作系统概述
– 嵌入式操作系统的发展历史
• 第一阶段(简单操作系统) • 第二阶段(通用的嵌人式实时操作系统) • 第三阶段(Intemet嵌入式系统)
器芯片或单片机本身中。 – 嵌入式系统本身不具备自主开发能力。
嵌入式系统的基本结构
• 嵌入式系统可以笼统地分为硬件和软 件两部分。
嵌入式处理器
– 嵌入式微处理器EMPU – 嵌入式微控制器MCU – 嵌入式数字信号处理器EDSP – 片上可编程系统SOPC
嵌入式系统的特点
– 嵌入式系统是与应用紧密结合的。 – 嵌入式系统具有很强的专用性,可定制、可裁减,且
stm32嵌入式开发
第一讲:嵌入式系统开发概述
课程安排
– 何为嵌入式系统 – 嵌入式系统的特点及发展趋势 – 嵌入式系统的开发过程 – 如何成为嵌入式开发人员
何为嵌入式系统
– 嵌入式系统,英文全称为Embeded System。 – IEEE 的定义:嵌入式系统是“控制、监视或
嵌入式单片机STM32应用技术(课本)

嵌⼊式单⽚机STM32应⽤技术(课本)⽬录SAIU R20 1 6 第1页第1 章. 初识STM32 (1)1.1. 课前预习 (1)1.2. 概述 (1)1.3. 什么是STM32 (1)1.4. STM32 能做什么 (2)1.5. STM32 怎么选型 (3)1.5.1. STM32 分类 (3)1.5.2. STM32 命名⽅法 (4)1.5.3. 选择合适的MCU (4)1.5.4. PCB 哪⾥打样 (6)1.6. 总结 (7)1.7. 课后练习 (7)第2 章. STM32 的结构和组成 (8)2.1. 课前预习 (8)2.2. 概述 (8)2.3. 什么是寄存器 (8)2.4. STM 32 长啥样 (8)2.5. 芯⽚⾥⾯有什么 (10)2.5.1. ICode 总线 (10)2.5.2. 驱动单元 (10)2.5.3. 被动单元 (11)2.6. 存储器映射 (13)2.7. 寄存器映射 (14)2.7.1. STM32 的外设地址映射 (15)2.7.2. 总线基地址 (15)2.7.3. 外设基地址 (15)2.7.4. 外设寄存器 (16)2.8. C 语⾔对寄存器的封装 (16)2.8.1. 封装总线和外设基地址 (16)2.8.2. 封装寄存器列表 (17)2.9. 课后练习 (20)第3 章. 初识STM32 标准库 (21)3.1. 课前预习 (21)3.2. 概述 (21)3.3. 库⽬录、⽂件简介 (21)3.4. STM32F10x_StdPeriph_Driver ⽂件夹 (24)3.5. 库各⽂件间的关系 (26)3.6. 初识库函数 (28)⽬录第2 页SAIUR201 6陈德⾦⽼师编著3.7. 课后练习 (29)第4 章. GPIO 的使⽤ (30)4.1. 课前预习 (30)4.2. 概述 (30)4.3. GPIO 简介 (30)4.4. GPIO 框图剖析 (31)4.4.1. 保护⼆极管及上、下拉电阻 (31)4.4.2. P-MOS 管和N-MOS 管 (31)4.4.3. 输出数据寄存器 (33)4.4.4. 复⽤功能输出 (34)4.4.5. 输⼊数据寄存器 (34)4.4.6. 复⽤功能输⼊ (34)4.4.7. 模拟输⼊输出 (34)4.5. GPIO ⼯作模式 (35)4.5.1. 输⼊模式(模拟/浮空/上拉/下拉) (35)4.5.2. 输出模式(推挽/开漏) (35)4.5.3. 复⽤功能(推挽/开漏) (35)4.6. 点亮LED-硬件设计 (37)第5 章. STM32 RCC 时钟系统 (43)5.1. 课前预习 (43)5.2. 概述 (43)5.3. RCC 主要作⽤—时钟部分 (43)5.4. RCC 框图剖析—时钟部分 (43)5.5. 系统时钟 (44)5.5.1. HSE ⾼速外部时钟信号 (44)5.5.2. PLL 时钟源 (45)5.5.3. PLL 时钟PLLCLK (45)5.5.4. 系统时钟SYSCLK (45)5.5.5. AHB 总线时钟HCLK (45)5.5.6. APB2 总线时钟HCLK2 (45)⽬录SAIU R20 1 6 第3页5.5.7. 总线时钟HCLK1 (46)5.6. 设置系统时钟库函数 (46)5.7. 其他时钟 (47)5.7.1. USB 时钟 (47)5.7.2. Cortex 系统时钟 (47)5.7.3. ADC 时钟 (48)5.7.4. RTC 时钟、独⽴看门狗时钟 (48)5.7.5. MCO 时钟输出 (48)5.8. 配置系统时钟实验 (48)5.8.1. 使⽤HSE (48)5.8.2. 使⽤HSI (48)5.8.3. 硬件设计 (49)5.8.4. 软件设计 (49)5.8.5. 编程要点 (49)5.8.6. 代码分析 (49)5.8.7. 下载验证 (54)第6 章. STM32 中断应⽤概览 (55)6.1. 课前预习 (55)6.2. 概述 (55)6.3. 异常类型 (55)6.4. NVIC 简介 (56)6.5. NVIC 寄存器简介 (56)6.6. NVIC 中断配置固件库 (57)6.7. 优先级的定义 (58)6.7.1. 优先级定义 (58)6.7.2. 优先级分组 (58)6.8. 中断编程 (59)6.9. 课后练习 (60)第7 章. EXTI—外部中断/事件控制器 (61)7.1. 课前预习 (61)7.2. 概述 (61)7.3. EXTI 简介 (61)7.4. EXTI 功能框图 (61)7.5. 中断/事件线 (63)7.6. EXTI 初始化结构体详解 (64)7.7. 外部中断控制实验 (65)7.7.1. 硬件设计 (65)7.7.2. 软件设计 (65)⽬录第4 页SAIUR201 6陈德⾦⽼师编著7.7.3. 编程要点 (65)7.7.4. 代码分析 (65)7.7.5. 下载验证 (69)7.8. 课后练习 (69)第8 章. SysTick 系统定时器 (70)8.5.4. 代码分析 (73)8.6. 课后练习 (79)第9 章. USART—串⼝通讯 (80)9.1. 课前预习 (80)9.2. 概述 (80)9.3. 串⼝通讯协议简介 (80)9.3.1. 物理层 (80)9.3.2. 协议层 (84)9.4. STM32 的USART 简介 (85)9.5. USART 功能框图 (85)9.6. USART 初始化结构体详解 (90)9.7. USART1 接发通信实验 (91)9.7.1. 硬件设计 (92)9.7.2. 软件设计 (92)9.7.3. 编程要点 (92)9.7.4. 代码分析 (93)9.7.5. 下载验证 (97)9.8. 课后练习 (97)第10 章. DMA 直接存储区访问 (98)10.1. 课前预习 (98)10.2. 概述 (98)10.3. DMA 简介 (98)10.4. DMA 功能框图 (98)10.5. DMA 数据配置 (100)10.6. DMA 初始化结构体详解 (101)⽬录SAIU R20 1 6 第5页10.7. DMA 存储器到存储器模式实验 (103)10.7.1. 硬件设计 (103)10.7.2. 软件设计 (103)10.7.3. 编程要点 (103)10.7.4. 代码分析 (104)10.7.5. 下载验证 (107)10.8. 课后练习 (107)第11 章. TIM 基本定时器 (108)11.1. 课前预习 (108)11.2. 概述 (108)11.3. 定时器分类 (108)11.4. 基本定时器功能框图讲解 (109)11.5. 定时器初始化结构体详解 (110)11.6. 基本定时器定时实验 (111)11.6.1. 硬件设计 (111)11.6.2. 软件设计 (111)11.6.3. 编程要点 (111)11.6.4. 软件分析 (111)11.6.5. 下载验证 (114)11.7. 课后练习 (114)第12 章. TIM ⾼级定时器 (115)12.1. 课前预习 (115)12.2. 概述 (115)12.3. ⾼级控制定时器 (115)12.4. ⾼级控制定时器功能框图 (116)12.4.1. 时钟源 (117)12.4.2. 外部时钟模式1 (117)12.4.3. 外部时钟模式2 (118)12.4.4. 内部触发输⼊ (119)12.4.5. 输⼊捕获 (121)12.4.6. 输出⽐较 (122)12.4.7. 断路功能 (125)12.5. 输⼊捕获应⽤ (125)⽬录第6 页SAIUR201 6陈德⾦⽼师编著12.7.2. PWM 边沿对齐模式 (128)12.7.3. PWM 中⼼对齐模式 (129)12.8. 定时器初始化结构体详解 (129)12.8.1. TIM_TimeBaseInitTypeDef (130)12.8.2. TIM_OCInitTypeDef (130)12.8.3. TIM_ICInitTypeDef (131)12.8.4. TIM_BDTRInitTypeDef (132)12.9. PWM 互补输出实验 (133)12.9.1. 硬件设计 (133)12.9.2. 软件设计 (133)12.9.3. 编程要点 (133)12.9.4. 软件分析 (134)12.9.5. 下载验证 (136)第13 章. I2C 通讯 (138)13.1. 课前预习 (138)13.2. 概述 (138)13.3. I2C 协议简介 (138)13.3.1. I2C 物理层 (139)13.3.2. 协议层 (140)13.3.3. 通讯的起始和停⽌信号 (141)13.4. STM32 的I2C 特性及架构 (144)13.4.1. STM32 的I2C 外设简介 (144)13.4.2. STM32 的I2C 架构剖析 (145)13.4.3. 通讯过程 (147)13.5. I2C 初始化结构体详解 (149)13.6. I2C—读写EEPROM 实验 (150)13.6.1. 硬件设计 (150)13.6.2. 软件设计 (151)13.6.3. 编程要点 (151)13.6.4. 代码分析 (152)13.6.5. 下载验证 (167)13.7. 课后练习 (168)第14 章. SPI 通讯 (169)14.1. 课前预习 (169)14.2. 概述 (169)14.3. SPI 协议简介 (169)14.3.1. SPI 物理层 (169)14.3.2. 协议层 (171)⽬录SAIU R20 1 6 第7页14.4. STM32 的SPI 特性及架构 (173)14.4.1. STM32 的SPI 外设简介 (173)14.4.2. TM32 的SPI 架构剖析 (174)14.4.3. 通讯过程 (175)14.5. SPI 初始化结构体详解 (177)14.6. SPI—读写串⾏FLASH 实验 (178)14.6.1. 硬件设计 (179)14.6.2. 软件设计 (179)14.6.3. 编程要点 (180)14.6.4. 代码分析 (180)14.6.5. 下载验证 (198)14.7. 课后练习 (198)第15 章. 陀螺仪姿态检测 (199)15.1. 课前预习 (199)15.2. 概述 (199)15.3. 姿态检测 (199)15.3.1. 基本认识 (199)15.3.2. 坐标系 (200)15.4. 利⽤陀螺仪检测⾓度 (201)15.5. 利⽤加速度计检测⾓度 (202)15.9.2. MPU6050 模块的引脚功能说明 (205)15.9.3. MPU6050 模块的硬件原理图 (205)15.10. MPU6050 模块的特性参数 (206)15.11. MPU6050—获取原始数据实验 (207)15.11.1. 硬件设计 (207)15.11.2. 配套程序简介 (208)15.11.3. 软件设计 (209)15.11.4. 程序设计要点 (209)15.11.5. 代码分析 (209)15.11.6. 下载验证 (215)15.12. MPU6050—利⽤DMP 进⾏姿态解算 (216)15.12.1. 硬件设计 (216)15.12.2. 软件设计 (216)15.12.3. 程序设计要点 (216)⽬录第8 页SAIUR201 6陈德⾦⽼师编著15.12.4. 代码分析 (216)15.12.5. 下载验证 (226)15.13. MPU6050—使⽤第三⽅上位机 (227)15.13.1. 硬件设计 (227)15.13.2. 软件设计 (227)15.13.3. 程序设计要点 (227)15.13.4. 代码分析 (227)15.13.5. 下载验证 (231)第1 章.初识STM32SAIU R20 1 6 第1页第1 章. 初识STM321.1. 课前预习在书上找到答案。
嵌入式单片机stm32原理及应用

嵌入式单片机stm32原理及应用1 什么是STM32嵌入式单片机STM32嵌入式单片机是一款高性能的微控制器,由全球领先的半导体制造商ST公司设计生产。
它是一款使用ARM Cortex-M内核的处理器,具有独特的低成本、低功耗和高性能的优势。
STM32微控制器具有多种特殊功能,如实时时钟,多种接口,内存,存储器,ADC和DAC,等等。
2 STM32嵌入式单片机的特点1. STM32嵌入式单片机具有低功耗特性,可以在相同温度和频率情况下节省大量的能耗。
2. STM32具有高度灵活性,除了物联网应用外,它还可以用于航空航天,家用电子,医疗保健,工业控制和可穿戴设备等多个应用领域。
3. STM32具有灵活的内存,内部带有SDRAM、SRAM和Flash memory等存储介质,可根据应用的需要自由切换。
4. STM32拥有卓越的外围接口性能,具有多种通信接口,如USB、SPI、I2C、CAN、SPI等,可以广泛用于各种设备之间的通信。
5. STM32具有强大的扩展性,可以通过各种接口和外设单元实现各种复杂的功能,使得嵌入式开发变得更加简单。
3 STM32嵌入式单片机的应用STM32嵌入式单片机的应用十分广泛,它可以广泛用于控制系统,运动控制,检测控制,低功耗模式,模拟信号处理等,并能将复杂电子系统简化和变得更加可靠,以增强实时性能和可重用性,因此它成为人们了解微控制器技术和更深入开发新应用的首选设备。
此外,STM32嵌入式单片机还可用于汽车应用,医疗设备,智能家居,消费电子,工业控制和人机界面等。
4 小结STM32嵌入式单片机具有高性能、低功耗、灵活的内存、强大的外围接口性能和良好的扩展性,可以满足各种应用领域的需求,广泛应用于控制系统,运动控制,检测控制,低功耗模式,模拟信号处理,汽车应用,医疗设备,智能家居,消费电子,工业控制和人机界面等。
嵌入式系统(STM32微处理器)实训指导书

嵌入式系统(STM32微控制器)实训指导书意法半导体公司的STM32微控制器具有32位字长的CPU,使用精简指令系统(RISC)。
精简指令系统的指令字长固定,译码方便,相对于复杂指令系统(CISC),精简指令系统的处理效率更高。
具有32位字长CPU的STM32系列微控制器的处理能力远高于8位和16位单片机,同时集成了与32位CPU相适应的强大外设(如双通道ADC、多功能定时器、7通道DMA、SPI等),能够完成过去一般单片机所无法达到控制功能。
现在,已经形成了以8位单片机为主流的低端产品和以32位微控制器为主流的高端产品两大市场。
对于自动化领域的从业人员,了解32位微控制器的结构、特点,掌握其使用方法,是很有必要的。
一、关于学习方法此前,我们已经学习过《C语言程序设计》、《微机原理》、《单片机原理及应用》等相关课程。
这些课程的学习是系统的、完整的、全面的,是有老师讲授的。
这种学习方法,适合在学校学习一些重要的基础理论课程。
在工作中,我们常常会遇到新的东西,需要以已有的知识作为基础,去解决问题、完成任务。
这就需要不同于前述的另一种学习方法。
这种方法是建立在自学基础上的,以解决实际问题为目的,允许通过局部的、模仿性的手段,来实现既定目标。
这种方法在工程实践中的应用是非常普遍的。
“白猫黑猫,能抓住老鼠就是好猫”。
能解决问题的方法就是好方法。
本次实训采取的方法是:将参考资料发给同学,同学自学其中需要的部分。
在指导教师引导下,体验各个控制项目、理解各组成部分,再以原控制软件为基础进行修改和移植,获得要达到的控制效果。
在本次实训中,我们使用的微控制器型号为STM32F103RB。
STM32F103RB是STM32微控制器系列中的一种,内部具有128KB程序存储器、20KB随机读写存储器、1个16位高级定时器、3个16位通用定时器、2个SPI、2个I2C、3个USART、1个USB、1个CAN、2个ADC。
芯片为64引脚LQFP封装,有51个I/O引脚。
STM32单片机原理及应用PPT幻灯片课件

设计模式
基础型:做好需要专业的软硬件知识 智能型:在搭建的程序框架下设计 高级型:在操作系统管理下,专注应用。 介绍特色、扩展内容,比较学习。需要大家
课下认真消化资料,掌握基础内容。 STM32F10x参考手册_cn.pdf
11
二、硬件—特色接口
I/O
低功耗模式、定时器/计数器、输入捕获
7
实际工程应用的一般步骤
了解--- 背景:工艺流程,技术发展情况论述. 掌握---原理论述、同类方案比较。 设计--- 方案:系统框图,功能描述. 实现---软件流程、功能实现。
8
实际工程应用的一般步骤
9
一、STM32微控制器系列_cn.pdf
STM32的主要优点 ■ 使用ARM最新的、先进架构的Cortex-M3内核 ■ 优异的实时性能 ■ 杰出的功耗控制 ■ 出众及创新的外设 ■ 最大程度的集成整合 ■ 易于开发,可使产品 ■ 快速进入市场
IMUST B&E LAB5 ©
第一部分
STM32单片机原理及应用
6
需要掌握
掌握单片机的一般设计方法。 目前典型接口电路原理及应用。 开发环境Keil 及编程工具的使用。 能够设计建立基于单片机的系统。 设计完成一个基于STM32单片机的应用系统。
完成:系统描述,软硬件设计,调试结果并写出 报告。
引导程序,自展程序 (=bootstrap))
12
13
14
15
通用输入输出(General
) Purpose Input/Output
16
17
通用同步异步收发机 (Universal Synchronous Asynchronous Receiver Transmitter)
stm32 教学大纲

stm32 教学大纲STM32教学大纲引言:在现代科技领域中,嵌入式系统的应用日益广泛,而STM32系列微控制器作为其中的佼佼者,具有高性能、低功耗、丰富的外设和易用性等优势,备受开发者的青睐。
为了更好地推广和普及STM32的应用,制定一份全面而系统的STM32教学大纲势在必行。
一、介绍STM32系列微控制器1. STM32系列微控制器的概述- STM32系列的起源和发展历程- STM32系列的产品线和分类- STM32系列的特点和优势2. STM32系列微控制器的硬件架构- 内核和处理器- 存储器系统- 外设接口和功能模块3. STM32系列微控制器的软件支持- 开发环境和工具链- HAL库和标准外设库- CMSIS和RTOS支持二、STM32编程基础1. 开发环境的搭建- STM32CubeIDE的安装和配置 - 开发板和调试器的选择与连接2. STM32项目的创建与配置- 新建STM32项目- 硬件资源的配置- 编译、下载和调试3. STM32的GPIO编程- GPIO的基本概念和功能- GPIO的初始化和配置- GPIO的输入和输出操作4. STM32的中断编程- 中断的基本概念和原理- 中断优先级和中断向量表- 中断的编写和处理三、STM32外设应用1. 定时器的应用- 定时器的基本原理和分类- 定时器的配置和使用- 定时器的中断和DMA应用2. 串口通信的应用- 串口通信的基本原理和协议 - 串口的初始化和配置- 串口的发送和接收数据3. ADC和DAC的应用- ADC和DAC的基本原理和工作模式 - ADC和DAC的初始化和配置- ADC和DAC的数据采集和输出4. PWM的应用- PWM的基本概念和原理- PWM的初始化和配置- PWM的输出和控制四、STM32高级应用1. 外部中断的应用- 外部中断的基本概念和工作原理- 外部中断的初始化和配置- 外部中断的应用案例2. DMA的应用- DMA的基本概念和工作原理- DMA的初始化和配置- DMA的应用案例3. USB的应用- USB的基本概念和工作原理- USB的初始化和配置- USB的应用案例4. 以太网的应用- 以太网的基本概念和工作原理- 以太网的初始化和配置- 以太网的应用案例五、STM32项目实践1. 基于STM32的LED控制系统设计- 系统需求和功能设计- 硬件电路设计和连接- 软件程序设计和调试2. 基于STM32的智能家居控制系统设计- 系统需求和功能设计- 硬件电路设计和连接- 软件程序设计和调试3. 基于STM32的机器人控制系统设计- 系统需求和功能设计- 硬件电路设计和连接- 软件程序设计和调试结语:通过本教学大纲的学习,学员将全面了解STM32系列微控制器的硬件架构和软件支持,掌握STM32的基础编程和外设应用,进一步了解STM32的高级应用和项目实践。
第5章 STM32系列微控制器开发基础

系统总线
连接Cortex-M3内核的系统总线(外设总线)到总线矩阵,总线矩阵协调着内核和DMA间 的访问。
DMA总线
将DMA的AHB主控接口与总线矩阵相联,总线矩阵协调着CPU的DCode和DMA到 SRAM、闪存和外设的访问。
总线矩阵
协调内核系统总线和DMA主控总线之间的访问仲裁,仲裁利用轮换算法。AHB外设通过 总线矩阵与系统总线相连,允许DMA访问。
时钟和启动
• 在启动的时候还是要进行系统时钟选择,但复位的 时候内部8MHz的晶振被选作CPU时钟。可以选择一 个外部的4-16MHz的时钟,并且会被监视判定是否 成功。
嵌入式系统原理与接口技术
11
5.2 STM32F103系列微控制器
功能概述
Boot模式
• 在启动的时候,boot引脚被用来在三种boot选项中的 选择一种:从用户Flash导入;从系统存储器导入; 从SRAM导入。boot导入程序位于系统存储器,用于 通过USART1重新对Flash存储器进行编程。
• STM32F103xx系列微控制器嵌入了一个嵌套矢量中 断控制器,可以处理43个可屏蔽中断通道(不包括 Cortex-M3的16根中断线),提供16个中断优先级。
嵌入式系统原理与接口技术
10
5.2 STM32F103系列微控制器
功能概述
外部中断/事件控制器(EXTI)
• 外部中断/事件控制器由用于19条产生中断/事件请 求的边沿探测器线组成。每条线可以被单独配置用 于选择触发事件(上升沿,下降沿或者两者都可 以),也可以被单独屏蔽。
嵌入式系统原理与接口技术
第5章 STM32系列微控制器开发基础
教师:姓名
5.1 STM32系列微控制器概述
stm32课程教学大纲

stm32课程教学大纲一、课程简介1.1课程背景及意义1.2目标学生群体1.3教学目标二、嵌入式系统基础知识2.1嵌入式系统概念2.2嵌入式系统结构与分类2.3嵌入式系统的发展历程三、STM32介绍3.1 STM32系列概述3.2 STM32系列特点与应用领域3.3 STM32系列产品线介绍四、STM32开发环境搭建4.1开发工具介绍4.2 STM32开发环境配置4.3软件开发流程五、STM32硬件结构与外设5.1 STM32引脚分配与功能5.2 STM32核心结构5.3 STM32外设介绍及应用六、STM32固件库介绍6.1固件库特点与优势6.2固件库模块介绍6.3固件库的使用与调试技巧七、定时器与计数器7.1定时器与计数器概念7.2 STM32定时器与计数器配置7.3定时器中断与中断处理八、串行通信接口8.1串行通信接口种类与应用8.2 USART配置与使用8.3 SPI配置与使用8.4 I2C配置与使用九、模数转换器9.1模数转换器基础知识9.2 STM32模数转换器配置9.3模数转换器中断与DMA传输十、时钟控制与低功耗模式10.1时钟控制与配置10.2低功耗模式介绍10.3时钟与低功耗模式的应用十一、中断与异常处理11.1中断概念与分类11.2 STM32中断处理机制11.3异常处理与中断优先级十二、RTOS介绍与应用12.1实时操作系统介绍12.2 FreeRTOS基础知识12.3 FreeRTOS任务管理与互斥信号量十三、实战项目开发13.1项目需求分析与系统架构设计13.2项目模块开发与调试13.3项目测试与应用演示十四、课程总结与展望14.1课程总结14.2学生作品展示14.3 STM32未来发展趋势十五、实验环节15.1 STM32实验室介绍15.2实验项目安排与实施15.3实验结果分析与讨论以上为本课程的大纲内容,整个课程将分为理论课、实验课以及项目实践课程。
理论课主要讲解相关的理论知识,包括嵌入式系统基础知识、STM32介绍、硬件结构与外设、固件库介绍等内容。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Chapter 6:STM32微处理器及接口技术鑫海宝贝 整理王紫豪-XiaomaGee(15959622) 20:26:19大家好,我是 XiaomaGee,这是我的第六次群课了,感谢大家对我的支持! 王紫豪-XiaomaGee(15959622) 20:26:56由于是四个群直播,可能稍微有点慢,请大家谅解!IC爱好者(446136066)20:27:12王这些图片只有放大了才能看清楚,大家把窗王从上图我们可以看出,从产品的角度来说,是arm 内核版本不断进化的结果。
王紫豪-XiaomaGee(15959622) 20:36:很多初学者问过我,要学arm,嵌入式,我向他们推荐 的是arm,不想学 cortex;这个,其实是一回事哦。
n_i_o_s(534625052) 20:36:45呵呵王紫豪其实,从内核的先进性来说,cortex 内核已王紫豪-XiaomaGee(15959622) 20:37:28当然,先进性不一定代表性能就比前期的产王紫豪-XiaomaGee(15959622) 20:38:23热心的网友对cortex-M3内核跟他上一代类比,我截个图给大家看看。
王紫豪-XiaomaGee(15959622)紫豪-XiaomaGee(15959622) 20:33:55口最大化一下紫豪-XiaomaGee(15959622) 20:35:16arm7,arm9,arm11,cortex 内核18学cortex,他们说我学-XiaomaGee(15959622) 20:37:02经是最先进的了。
品高。
这个是两码事的。
似应用领域的 ARM7,做了一个对 20:38:45王紫豪-XiaomaGee(15959622) 20:39:48这个表只是比较了部分功能,当然也不能绝对的代表全部。
但是从表中可以看出来,cortex内核的确“进化”了。
王紫豪-XiaomaGee(15959622) 20:40:34最关键的几点:性能、功耗、代码密度、硅片面积等等都有大规模的改善。
王紫豪-XiaomaGee(15959622) 20:41:34arm7时代的产品,我也使用过多个,从我个人主观感觉上,cortex-m3内核的cpu比arm7在外设、中断响应、代码密度等方面有较大的进步!王紫豪-XiaomaGee(15959622) 20:42:11当然,在国内做产品最重要的一点就是成本,也降低了很多。
王紫豪-XiaomaGee(15959622) 20:43:21就拿今天我们主讲的微处理器 STM32F103VCT6 这个来说,单片零售价格都能到 16 CNY ,真的不可思议。
王紫豪-XiaomaGee(15959622) 20:45:05话题转回来,有不少网友还没有使用arm,我先贴个图,给大家一个感性的认识。
20:46:01王紫豪-XiaomaGee(15959622)王紫豪-XiaomaGee(15959622) 20:46:15这个就是我们的主角王紫豪-XiaomaGee(15959622) 20:47:35其实讲微处理器的应用,是没什么东西可说的,也没什么理论,所以跟上几节课不一样,我只能大概表达下我个人的观点和一些看法王紫豪-XiaomaGee(15959622) 20:48:14王紫豪-XiaomaGee(15959622) 20:49:33这个是stm32f103xc数据手册的表头,也能大概表现出他的一些资源。
王紫豪-XiaomaGee(15959622) 20:49:39不好意思,接了个电话。
王紫豪-XiaomaGee(15959622) 20:50:31我们就用datasheet上的第一页,简单地说一下,这个cpu的资源。
王紫豪-XiaomaGee(15959622) 20:50:47王紫豪-XiaomaGee(15959622) 20:51:30首先我们可以看到,stm32f103是基于 arm cortex-M3 内核的微控制器。
王紫豪-XiaomaGee(15959622) 20:51:58其实 arm cortex 家族,包含了三个系列,分别为 A系列,R 系列和 M 系列。
王紫豪-XiaomaGee(15959622) 20:52:43A 系列就是我们手机里、pad里等等场合用的东西,性能较高,主频上GHz, 王紫豪-XiaomaGee(15959622) 20:53:19R 系列是面向实时系统场合的,这个我了解的不多;目前来说产品线也不是太广。
王紫豪-XiaomaGee(15959622) 20:53:55M 系列是面向“深度嵌入”的场合,我们可以理解成“微控制器”这个四个字所代表的方向。
王紫豪-XiaomaGee(15959622) 20:54:53当然,每个子系列也不是简单的一种而是一个庞大的产品线。
例如 A8, A15;M0,M3、M4等。
王紫豪-XiaomaGee(15959622) 20:55:21重新回到这个图上:王紫豪-XiaomaGee(15959622) 20:56:18乍一看,资源多的有点吓人,3个 12bit adc,2个12bit adc,11个定时器,13个通信端口(spi,i2c,uart,usb,can,sdio)应有尽有,王紫豪-XiaomaGee(15959622) 20:57:26我们的惊讶就是他的优势所在,就这样的微处理器,48脚的价格可以到 10CNY 内,怎么可能不火呢?王紫豪-XiaomaGee(15959622) 20:58:40以上我对 stm32f103这个微处理器做了一个大概的介绍,让大家有个感性的认识,下面结合着《iBoard 电子学堂》原理图,来详细了解下这一部分的应用。
王紫豪-XiaomaGee(15959622) 20:59:15没有原理图的网友们,请去下面地址下载,pdf版本:/xiaomagee/iboard.reva.pdfRouter-广东<alexischat@> 20:59:5648脚的价格可以到 10CNY 内,怎么可能不火呢?10.00元钱内??这样少。
王紫豪-XiaomaGee(15959622) 21:00:13对的。
王紫豪-XiaomaGee(15959622) 21:00:36大家同时下载,可能把 cnblog的服务器拖垮了★嵌入式学习者(1326703841) 21:00:56我刚买的RB才14.王紫豪-XiaomaGee(15959622) 21:01:40《iBoard 电子学堂》是一个综合型的学习系统;微处理器以cortex-M3为主导;fpga以 飓风四代为学习对象,包含了大量的模拟电路和代码。
王紫豪-XiaomaGee(15959622) 21:02:29下面我们要讲的,就是这货的原理图。
道可道共享文件1个21:02:48iboard原理图.pdf立即下载|查看全部王紫豪-XiaomaGee(15959622) 21:03:11我们把原理图打开到第四页。
王紫豪-XiaomaGee(15959622) 21:05:00第四页是 stm32部分的原理图,他仅包含微控制器和他的外围,不实现其他功能。
王紫豪-XiaomaGee(15959622) 21:06:38首先,这张图最重要的一个,也是最大的一个就是微处理器了,他牢牢地霸占了原理图中央的位置。
王紫豪-XiaomaGee(15959622) 21:07:34从一个通用的微控制器角度来说,我们设计的时候要把握好以下几点:王紫豪-XiaomaGee(15959622) 21:08:43①供电微处理器的电源就相当于我们的口粮,吃不饱饭是干不了活的;所以,电源电路稳定性、质量的重要性,关系到整个系统可靠地运行。
王紫豪-XiaomaGee(15959622) 21:09:30再延伸一点,电源引脚的处理,也关系到系统能否可靠运行。
空灵(36886052) 21:09:49小马哥 你打字也太快了吧空灵(36886052) 21:10:01牛逼!n_i_o_s(534625052) 21:10:02还快啊王紫豪-XiaomaGee(15959622) 21:10:04我记得当初 stm32 推广的时候,有个广告语,叫:只需要x个电容,既能可靠地运行。
王紫豪-XiaomaGee(15959622) 21:10:17我同时说四个群,很累的。
王紫豪-XiaomaGee(15959622) 21:10:44可以从侧面反映出,电源的重要性。
iBoard 客服0021(1908998067) 21:10:58大家先安静点王紫豪-XiaomaGee(15959622) 21:11:58电源方面的问题,请大家参考我的第一篇群课《嵌入式系统电源的设计》,这篇群课,我介绍了我们常用电源的拓扑结构及特征。
王紫豪-XiaomaGee(15959622) 21:13:09stm32f103仅仅使用一个 3.3V电源既可,简化了我们的设计。
(其实很多高级的玩意,需要很多组电源,就拿iboard上面用的fpga来说,cycloneIV,使用了 3.3V,2.5V,1.2V三个)王紫豪-XiaomaGee(15959622) 21:14:00王紫豪-XiaomaGee(15959622) 21:14:21这一部分,就是 stm32f103的供电口;王紫豪-XiaomaGee(15959622) 21:14:32去耦电容在上面。
王紫豪-XiaomaGee(15959622) 21:15:00电源说完了,下面说第二个。
王紫豪-XiaomaGee(15959622) 21:16:06②时钟时钟是微处理器运行的动力,就像我们的心脏跳动一样。
王紫豪-XiaomaGee(15959622) 21:17:10从大的框架来说,微处理器我们可以认为是一个庞大的时序逻辑,所以他的每一部动作,几乎都需要时钟来驱动;时钟不稳定,微处理器当然也就不稳定了。
王紫豪-XiaomaGee(15959622) 21:17:57刚才我说过,stm32f103最大可以工作到 72MHz,这个就是他的驱动时钟的最大频率,也就是我们常说的主频。
王紫豪-XiaomaGee(15959622) 21:19:15为了增强电路的电磁环境,高速的微处理器一般都内建 PLL(也就是锁相环),输入较低的时钟,倍频后再给cpu使用。
王紫豪-XiaomaGee(15959622) 21:19:59stm32其实包含了两个时钟输入,一个是高频的,用于主时钟,一个是低频的,用于 RTC 等。
王紫豪-XiaomaGee(15959622) 21:20:11我们就使用了一个。