学STM32(STM32F103RCT6)

系列文章目录

第一章 了解STM32


文章目录

  • 系列文章目录
  • 前言
  • 一、STM32基本系统
    • 1.STM32基本(最小)系统板
    • 2.使用STM32为核心器件的基本(最小)系统构成单元
  • 二、主控制器(CPU)
    • 1.STM32F103RCT6微控制器参数
    • 2.STM32F103RCT6微控制器引脚分布
  • 三、启动电路设计
    • 启动模式设置
  • 四、电源电路设计
    • 1. 电源
    • 2. 末级电源电路:使用LM1117-3.3
  • 五、调试电路设计
    • 调试接口
  • 六、复位电路设计
    • 1.复位电路
    • 2.阻容复位电路
    • 3.复位电路设计注意事项
  • 七、时钟电路设计
  • 总结


前言

为什么使用STM32而不是8051? 是因为51的频率太低,无法满足计算需求?是51的管脚太少,无法满足众多外设的IO? 是51的功耗太大,电池挺不住?是51的功能太弱,而你要使用SPI、I2C、ADC、DMA? 是51的内存太小而你要存储的东西太多?

当你需要使用STM32某些功能,而51实现不了的时候, 那STM32自然不需要学习,你会直接去寻找STM32某方面的使用方法。比如要用spi协议的网卡、要使用串口通信、要使用rtos等等…

什么是STM32?
STM32单片机是ST(意法半导体)公司使用arm公司的cortex-M3为核心生产的32bit系列的单片机


一、STM32基本系统

1.STM32基本(最小)系统板

STM32基本(最小)系统是指仅包含必需的元器件,仅可运行最基本软件的简化系统,也就是用最少的元件组成,但可以工作的系统。

无论多么复杂的嵌入式系统,都可以认为是由基本(最小)系统和扩展功能组成。基本(最小)系统是嵌入式系统硬件设计中复用率最高,也是最基本的功能单元。

2.使用STM32为核心器件的基本(最小)系统构成单元

STM32的最小系统框图

二、主控制器(CPU)

1.STM32F103RCT6微控制器参数

STM32F103RCT6芯片参数

2.STM32F103RCT6微控制器引脚分布

STM32F103RCT6引脚图

STM32F103RCT6引脚图(原理图)

三、启动电路设计

启动模式设置

在设计时,必须确定启动时使用的芯片引脚。改变启动方式会使STM32存储空间的起始地址对齐到不同的内存空间上,从而选择在闪存、内部SRAM或系统存储区上运行代码。
例如如果选择从用户闪存启动,即BOOT0设置为0,可以通过连接限流电阻实现。
启动模式对应关系

四、电源电路设计

1. 电源

1.STM32F103系列微控制器使用单电源供电,其电压范围必须为2.0-3.6V,同时通过内部的一个电压调整器,可以给Cortex-M3核心提供1.8V的工作电压。
2.通常正常电源为5V,可以采用转换电路。电路设计可采用5V电源插头将220V降压到5V,再采用LMS1117-3.3V稳压芯片将5V电压降压输出3.3V电压。
3.STM32F103芯片的电源引脚连接电容以增强稳定性。

2. 末级电源电路:使用LM1117-3.3

LM1117一共有4种封装可以选择,如图 所示。为了减小PCB面积,我们选择SOT-223(M3)封装。

在这里插入图片描述

五、调试电路设计

调试接口

STM32的调试系统支持JTAG 和SWD两种接口标准,这两种接口都要使用GPIO(普通I/O口)来供给调试仿真器使用。选用其中一个接口即可将在PC宿主机上编译好的程序下载到单片机中进行运行调试。

我选用SWD模式。

六、复位电路设计

1.复位电路

复位电路的主要作用是把特殊功能寄存器的数据刷新为默认数据,单片机在运算过程中由于干扰等外界原因造成寄存器中数据混乱不能使其正常继续执行程序(称死机)或产生的结果不正确时均需要复位,以使程序重新开始运行。单片机在刚上电时也需要复位电路,系统上电时复位电路提供复位信号,直至电源稳定后,撤销复位信号,以使单片机能够正常稳定的工作。

在这里插入图片描述

2.阻容复位电路

在这里插入图片描述

3.复位电路设计注意事项

复位电路非常重要,如果没有特别的要求,可以采用阻容复位电路。如果要求比较严格的应用场合,一定要使用复位芯片来设计复位电路。
如果不需要看门狗,可以不用SP706S的WDI脚,并且不焊接R2电阻。当然也可以换成没有看门狗的复位芯片,如SP708S等。
如果用看门狗,在调试时一定要关闭看门狗,在完成调试后才打开看门狗,否则将不能调试。

七、时钟电路设计

时钟电路是单片机的心脏,它控制着单片机的工作节奏。单片机就是通过复杂的时序电路来完成不同的指令功能的。实际选用8M时钟。
在这里插入图片描述


总结

反正我是马上要实习了,就想重新回顾一遍32,错的地方见谅见谅
加一个STM32F103RCT6各字段的含义
STM32(芯片系列):STM32代表ARM Cortex-M 内核的32位微控制器
103(芯片子系列):101基本型,102USB基本型(USB2.0),103代表增强型系列,105或107互联型
F(产品类型):F代表通用系列
R(引脚数量):T=36, C=48, R=64, V=100 ,Z =144
C(闪存容量):4=16K,6=32K,8=64K,B=128K,C=256K,D=384K,E=512K

T(表封装):
H代表BGA封装
T代表LQFP封装
U代表VFQFPN封装
Y代表WLCSP64

6(工作温度范围):6代表-40 — 85℃,7代表-40 —105℃

STM32F10xxx参考手册 开始就有介绍
其他的区别请看2个芯片的数据手册

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/20126.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

简单:Windows中的文本与Linux中CentOS的vim编辑器相互复制粘贴方法

简单:Windows中的文本与Linux中vim编辑器中的文本相互复制粘贴的方法 1.从Windows下到vim中: 1,选中windows中文档内容按Ctrlc。 2,进入vi编辑器,在插入模式下,用鼠标点击右键再点击粘贴。 3&#xff0…

linux中vim命令详解(操作大全)

光标的移动 1.用h, j,k,l 来表示光标的移动 vim的金如何退出 2.如何退出vim编辑器操作行 先打出esc推出选项然后shift冒号 ,然后输入q!就可以了 3.如果想进虚拟机中编辑器看操作的话,需要输入vimtutor命令就可以进入vim虚拟器教程了 vim的编辑 4.x代…

Vim的配置 和 windows与Linux之间的复制粘贴

# 在Linux下编程对vim的简单配置,便于编程! 在终端下使用vim进行编辑时,默认情况下,编辑的界面上是没有显示行号、语法高亮度显示、智能缩进 等功能的。为了更好的在vim下进行工作,需要手动设置一个配置文件&#xff1…

如何将剪贴板中的内容复制到linux的vim中

1.按i进入insert模式 2.使用shiftinsert键,即可将你在windows系统中复制的内容粘贴到linux系统中

如何修改linux下的vim复制行数限制

vim-如何修改linux下的vim复制行数限制 来自北方的小强 正在努力成为资深数字IC搬砖工的搬砖工 个人根目录下的.vimrc (~/.vimrc)添加如下内容: set viminfo1000,<600 linux下&#xff0c;默认最多复制50行&#xff0c;上述修改即将限制改为600行。 注意&#xff1a; 1 如果…

Linux vim多行操作

同时注释多行 首先&#xff0c;将光标放在要注释的行首&#xff0c;然后按CTRLV进入列(也叫区块)模式&#xff1b;在行首使用上下键选择要注释的多行&#xff1b;用大写“I”(shifti)进入插入模式&#xff1b;然后输入注释符#(任一符号、字母、数字都可以插入)&#xff1b;最后…

【每日一题】缓存穿透、缓存击穿、缓存雪崩及解决方案

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 当下ChatGPT很火&#xff0c;让人心痒痒想试一试好不好用&#xff0c;因此我就试着借它写一篇文章&#xff0c;但是试了几次最终还是没有…

只需这一篇博客就能完全弄懂LSM树

早期LSM树 为什么需要LSM树 B树的数据都存储在叶子节点中&#xff0c;而叶子节点一般都存储在磁盘中。因此&#xff0c;每次插入的新数据都需要随机写入磁盘&#xff0c;而随机写入的性能非常慢。如果是一个日志系统&#xff0c;每秒钟要写入上千条甚至上万条数据&#xff0c…

数据库/MySQL - 深入探究 - 1

1.应用场景 主要用于了解和掌握数据库/MySQL - 更新操作详细流程。 2.学习/操作 1.文档阅读 主要来自于AI的对话【geek chat&#xff0c; chatgpt】 以及官方文档资料&#xff0c;以及其他技术文章&#xff0c;专栏等。 2.整理输出 抛出问题&#xff1a; 数据库【这里以mysql…

EMQX在Windows系统下的开机自启与异常自动重启脚本

目录 0.前言 1.介绍 2.运行与停止 2.1 运行批处理程序 2.2 停止批处理程序 2.3 开机自启动 3.运行结果 4.详细介绍 5.前台运行版本 0.前言 由于为某万年老项目做运维&#xff0c;但源码遗失以及项目遗留问题导致emqx经常崩溃&#xff0c;故无法追根溯源&#xff0c;迫于…

量化工具使用介绍——Tushare

Tushare ID:497485 今年年初的时候&#xff0c;我和几位小伙伴一起合作打花旗杯&#xff0c;项目和量化交易有关。不可避免地会使用到一些常规的量化工具&#xff08;尤其是python的第三方库&#xff09;&#xff0c;虽然决赛还没有开始&#xff0c;我们已经确定进入了二十强。…

BigQuant策略做量化真的能赚钱吗?

BigQuant策略做量化可以赚钱&#xff0c;但是是建立在一些前提条件基础之上的。量化策略本身存在的意义就是通过数量化模型建立科学投资体系&#xff0c;获取稳定收益&#xff0c;相比传统投资&#xff0c;其具备纪律性、系统性、及时性、准确性等诸多优势&#xff0c;所以一个…

自己做量化交易软件(45)小白量化实战18--直接使用通达信自编指标公式进行分析绘图和回测

自己做量化交易软件(45)小白量化实战18–直接使用通达信自编指标公式进行分析绘图和回测 小白量化一代提供了Python公式算法模式来写量化程序。 小白量化二代提供了仿通达信公式的模式来写量化程序。 小白量化三代除了仿通达信公式的模式来写量化程序外&#xff08;见前几篇博客…

自己做量化交易软件(16)用小白通通量化AI框架打造自己的量化平台

最近一段时间&#xff0c;我主要学习python3和tkinter的窗口开发&#xff0c;对tkinter编程逐步了解。 此外&#xff0c;应广大朋友要求&#xff0c;我写了 一本学习python3学习书籍<小白学Python3实战搭建量化投资平台>. <小白学Python3实战搭建量化投资平台>内容…

Chat GPT是什么,初学者怎么使用Chat GPT,需要注意些什么

目录 Chat GPT是什么 初学者怎么使用Chat GPT 使用Chat GPT需要注意什么 一些简单的prompt示例 Chat GPT是什么 Chat GPT是由OpenAI开发的一种大型语言模型&#xff0c;它基于GPT&#xff08;Generative Pre-trained Transformer&#xff09;架构。GPT是一种基于深度学习的…

从GPT到chatGPT(一):GPT1

GPT1 文章目录 GPT1前言正文模型架构无监督学习有监督学习处理不同特定任务 实验训练细节实验结果 分析预训练层参数转移的影响zero-shot的表现消融实验 总结 前言 GPT1&#xff0c;出自于OpenAI的论文《Improving Language Understanding by Generative Pre-Training》&#…

ChatGPT+MindShow快速制作ppt

一、ChatGPT&MindShow简介 1、什么是ChatGPT? ChatGPT是一种基于自然语言处理和深度学习技术的人工智能语言模型&#xff0c;使得人们可以更加方便地与计算机进行交互&#xff0c;如智能问答等。 2、什么是MindShow? MindShow只需要在网页上登录即可&#xff0c;可以…