STM32学习路线开启篇:芯片简介与课程简介

编写不易,请多多指教,觉得不错可以关注一下,相互学习

前言

一、课程配套资源

1、面包板

2、面包板专用的跳线

3、面包板的飞线

4、杜邦线

5、STM32F103C8T6最小系统板

6、0.96寸的OLED显示屏模块

7、电位器

8、按钮

9、LED灯

11、USB转串口(TTL)模块

12、源蜂鸣器模块

13、光敏电阻模块

14、热敏电阻模块

15、对射式红外模块

16、反射式红外模块

17、W25Q64Flash存储模块

18、MPU6050陀螺仪和加速度计

19、旋转编码器

20、直流电机、TB6612电机驱动模块

21、SG90舵机

二、STM32简介

1.STM32是干什么的?

1.1 ARM公司

1.2 STM32由来

1.3 ST公司系列产品

1.4 STM32F103C8T6

1.4.1 片上资源(外设(Peripheral))

1.5 STM32命名含义

1.6 STM32F103C8T6系统结构

1.7 STM32F103C8T6引脚定义

1.8 STM32F103C8T6最小系统电路

2、关于STM32与STLINK的连接

总结


前言

本篇文章为STM32入门篇,基于B站:江科大STM32视频前两节课,详细讲解课程中涉及到的关键点;关于课程简介、STM32简介


一、课程配套资源

基于STM32F103C8T6+面包板为基础,以及一些传感器,构建起硬件平台,具体可在课程评论区链接购买;接下来详细讲解每个配件:

1、面包板

相比较成品的开发板,使用面包板更有利于我们对硬件电路的学习,可避免一些开发版的问题,如:引脚冲突、引脚无法更改等

2、面包板专用的跳线

这种跳线比较短,可贴在面包板上插线,比较适合长时间插线的情况

3、面包板的飞线

比较长,方便挪动,适合经常挪动的接线情况

4、杜邦线

杜邦线分为两种:图片上边左右两边均为插口的叫作母对母杜邦线;图片下边左边为插口右边为尖刺的叫作公对母杜邦线;这种名称还是很形象的嘿嘿

5、STM32F103C8T6最小系统板

6、0.96寸的OLED显示屏模块

用于显示参数和变量,为4引脚版本

7、电位器

主要用于AD转换实验

8、按钮

两引脚,可跨接在面包板的引脚插孔和电源插孔之间,插接方便

9、LED灯

用于点灯实验

用来下载程序和供电

11、USB转串口(TTL)模块

可使STM32和电脑进行串口通信

12、源蜂鸣器模块

内置振荡源,接上电可响,相比较无源蜂鸣器需不断翻转IO口,比较方便

13、光敏电阻模块

四个引脚,两个用于供电,两个用于光敏电阻信号的模拟输出和数字输出;可用于进行IO口读取实验或者AD实验

14、热敏电阻模块

有模拟输出和数字输出

15、对射式红外模块

配合遮光片可以用来计次或者配合编码盘用来测速

16、反射式红外模块

向地面发射红外光,再用红外接收管接收地面反射的红外光,通过判断接收光的强度,就可以大体识别出地面的颜色变化

17、W25Q64Flash存储模块

用于存储数据或者用SPI总线进行通信的,本课程主要用于SPI通信

18、MPU6050陀螺仪和加速度计

测量芯片自身的姿态,如四轴飞行器,一般会配备有;该模块用于I2C总线通信,用于学习I2C总线通信

19、旋转编码器

可输出两路正交的方波信号,用于旋转的方向和速度;

注意:STM32中有专门的编码器电路,可以识别这种信号,该模块可当成一个快速按键来使用,该课程用于编码器的测速,现编码电机一般配备霍尔传感器或充电传感器这些传感器的输出和这种旋转编码器是一样的

20、直流电机、TB6612电机驱动模块
 

用来进行直流电机的PWM调速实验

21、SG90舵机

用PWM进行控制的输出端像舵机一样,根据给定的PWM信号的占空比固定在某一个角度上;可用来做机器人或者机械臂的关节

二、STM32简介

1.STM32是干什么的?

1.1 ARM公司

ARM公司是全球领先的半导体知识产权(IP)提供商,全世界超过95%的智能手机和平板电脑都采用ARM架构,ARM公司设计ARM内核,半导体厂商完善内核周边电路并生产芯片

1.2 STM32由来

  • ST公司基于ARM Cortex-M内涵开发出32位微控制(MCU)称为STM32
  • ST(该公司)、M(MCU)、32(32为操作系统)
  • ARM Cortex-M是STM32的核心部分,比如我们程序指令的执行、加减乘除运算都在内核中完成,相当于整个芯片的CPU,也就是大脑
  • ST公司拿着ARM公司设计的内核,再完善外围电路,就得到了STM32

1.3 ST公司系列产品

该课程STM32F103C8T6为主流系列,CoreMark是内核跑分,跑分越高,性能越好

1.4 STM32F103C8T6

系列:主流系列STM32F1

内核:ARM Cortex-M3

主频:72MHz

RAM(运行内存):20KSRAM存储介质

ROM(程序存储器):64KFlash山存

供电:2.0~3.6V(标准3.3V

注意:USB输出的电压是5V,不能直接给板子供电,需要加一个稳压芯片降到3.3V再供电,不过现在的板子一般都内置有

封装:LQFP48(48个引脚,需要画板子需要了解封装)

1.4.1 片上资源(外设(Peripheral))

可查看文章资源附件了解每个外设的大致作用,该课程学习的内容就是通过程序配置外设,来完成我们想要的功能

注意:这是STM32F1系列全部外设,不是所有型号都拥有,具体可以看对应的数据手册中外设资源部分:

可以看到我们的板子没有后四个外设,这是正常的

1.5 STM32命名含义

列如STM32F103C8T6可以对照图中进行解读,以后遇到其它STM32系列的板子可参考

1.6 STM32F103C8T6系统结构

1.7 STM32F103C8T6引脚定义

先简要了解,后续会详细讲解

1.8 STM32F103C8T6最小系统电路

2、关于STM32与STLINK的连接

需要一一对照

注意连接STLINK下面的插口


总结

这就是关于江科大STM32前两个视频的介绍,写的不好请多多指教,加以改进,后续会持续更新,请多多支持

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

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

相关文章

图像直方图

图像直方图就是用来统计图像像素值分布的。灰度图分布读取灰度图phone cv2.imread(phone.png, cv2.IMREAD_GRAYSCALE) a phone.ravel() plt.hist(a, bins256) plt.show()如何可以获得当前像素值分布读取各通道的像素值分布img cv2.imread(phone.png) colors (b, g, r) for …

分类别柱状图(Vue3)

效果图&#xff1a;需求&#xff1a;男女年龄段占比<template><div class"go-ClassifyBar01"><v-chartref"vChartRef":option"option"style"width: 100%; height: 800px"></v-chart></div> </templa…

Apache Dubbo学习笔记-使用Dubbo发布、调用服务

Apache Dubbo经常作为一个RPC框架来使用&#xff0c;这篇文章主要介绍使用Dubbo配合注册中心来发布和调用服务。 Apache Dubbo和Spring Boot、JDK的版本对应关系。 Dubbo 分支最新版本JDKSpring Boot组件版本详细说明3.3.x (当前文档)3.3.08, 17, 212.x、3.x详情- 版本变更记录…

Python学习——字典和文件

前面python的学习中我们已经学习了python的函数和列表元组相关的内容&#xff0c;接下来我们来学习剩下的python语法&#xff1a;字典和文件 相关代码已经上传到作者的个人gitee&#xff1a;楼田莉子/Python 学习喜欢请点个赞谢谢 目录 字典 创建字典 查找key 新增/修改元素 …

swiper插件的使用

官方网址&#xff1a;https://www.swiper.com.cn/ 1、点击导航栏&#xff0c;获取Swiper里边的下载Swiper 2、选择要下载的版本【本次案例版本5.4.5】&#xff0c;然后解压缩文件夹&#xff0c;拿到swiper.min.js和swiper.min.css文件&#xff0c;放到项目对应的css文件和js文…

Vue3+JS 组合式 API 实战:从项目痛点到通用 Hook 封装

Vue3 组合式 API 的实战技巧 —— 组合式 API 帮我解决了不少 Options API 难以应对的问题&#xff0c;尤其是在代码复用和复杂组件维护上。一、为什么放弃 Options API&#xff1f;聊聊三年项目里的真实痛点​刚接触 Vue3 时&#xff0c;我曾因 “惯性” 继续用 Options API 写…

把 AI 塞进「电梯按钮」——基于 64 kB 零样本声纹的离线故障预测按钮

标签&#xff1a;零样本声纹、电梯按钮、离线 AI、TinyML、RISC-V、低功耗、GD32V303、故障预警 ---- 1. 背景&#xff1a;为什么按钮要「听声音」&#xff1f; 全国 700 万台电梯&#xff0c;按钮故障率 0.3 %/年&#xff0c;却常出现&#xff1a; • 机械卡滞、触点氧化&…

清华大学联合项目 论文解读 | MoTo赋能双臂机器人:实现零样本移动操作

研究背景 移动操作是机器人领域的核心挑战&#xff0c;它使机器人能够在各种任务和动态日常环境中为人类提供帮助。传统的移动操作方法由于缺乏大规模训练&#xff0c;往往难以在不同任务和环境中实现泛化。而现有操作基础模型虽在固定基座任务中表现出强泛化性&#xff0c;却无…

go webrtc - 2 webrtc重要概念

webrtc是一套音视频传输技术生态&#xff0c;不是一个协议或一个什么东西。3种模式本文基于 SFU 形式阐述&#xff01;重要概念&#xff1a;sfu 服务负责&#xff1a;信令 服务负责&#xff1a;peerConnection&#xff1a;track&#xff1a;房间&#xff1a;虚拟分组概念用户&a…

“下游任务”概念详解:从定义到应用场景

“下游任务”概念详解&#xff1a;从定义到应用场景 一、什么是“下游任务”&#xff1f; 在机器学习&#xff08;尤其是深度学习&#xff09;中&#xff0c;“下游任务”&#xff08;Downstream Task&#xff09;是相对“上游过程”而言的目标任务——可以理解为&#xff1a;我…

视频怎么做成 GIF?用 oCam 一键录制 GIF 动画超简单

GIF 动图因其生动直观、无需点击播放的特点&#xff0c;越来越受欢迎。你是否也曾看到一段有趣的视频&#xff0c;想把它做成 GIF 发给朋友或用在PPT里&#xff1f;其实&#xff0c;将视频片段转换为 GIF 并不需要复杂的视频剪辑技术&#xff0c;使用一款支持直接录制为 GIF 的…

Vue.config.js中的Webpack配置、优化及多页面应用开发

Vue.config.js中的Webpack配置、优化及多页面应用开发 在Vue CLI 3项目中&#xff0c;vue.config.js文件是工程化配置的核心入口&#xff0c;它通过集成Webpack配置、优化策略和多页面开发支持&#xff0c;为项目构建提供高度可定制化的解决方案。本文将从基础配置、性能优化、…

行业学习【电商】:直播电商的去头部化、矩阵号?

声明&#xff1a;以下部分内容含AI生成这两个词是当前直播电商和MCN领域的核心战略&#xff0c;理解了它们就理解了行业正在发生的深刻变化。一、如何理解“去头部化”&#xff1f;“去头部化” 指的是平台或MCN机构有意识地减少对超头部主播&#xff08;如曾经的李佳琦、薇娅&…

【MFC视图和窗口基础:文档/视图的“双胞胎”魔法 + 单文档程序】

大家好&#xff0c;我是你的MFC编程小伙伴&#xff01;学MFC就像探险古墓&#xff1a;到处是神秘的“房间”&#xff08;窗口&#xff09;和“宝藏”&#xff08;数据&#xff09;。今天咱们聊聊核心概念 – 视图、窗口和文档。这些是MFC的“骨架”&#xff0c;懂了它们&#x…

深度学习(六):代价函数的意义

在深度学习的浩瀚世界中&#xff0c;代价函数&#xff08;Cost Function&#xff09;&#xff0c;又称损失函数&#xff08;Loss Function&#xff09;或目标函数&#xff08;Objective Function&#xff09;&#xff0c;扮演着至关重要的角色&#xff0c;它就像一个导航员&…

Kable使用指南:Android BLE开发的现代化解决方案

概述 Kable&#xff08;com.juul.kable:core&#xff09;是一个专为Android蓝牙低功耗&#xff08;BLE&#xff09;开发设计的Kotlin协程友好库。它通过提供简洁的API和响应式编程模式&#xff0c;极大地简化了BLE设备交互的复杂性。本文将详细介绍Kable的使用方法&#xff0c;…

Android图案解锁绘制

使用到的库是Pattern Locker,根据示例进行了修改,把默认样式和自定义样式进行了合并调整。 设置密码 布局 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xm…

Kotlin 协程之 Flow 的理解使用及源码解析

前言 在前面的文章中&#xff0c;我们已经讨论了 Channel 的概念和基本使用以及 Channel 的高阶应用。这篇我们来看日常开发中更常用的Flow。 “冷流” 和 “热流” 的本质 先来梳理一下所谓的 “冷流” 和 “热流”。 核心概念 我们已经知道 Channel 是 “热流”&#xff…

简述ajax、node.js、webpack、git

本系列可作为前端学习系列的笔记&#xff0c;HTML、CSS和JavaScript系列文章 已经收录在前端专栏&#xff0c;有需要的宝宝们可以点击前端专栏查看&#xff01; 点赞关注不迷路&#xff01;您的点赞、关注和收藏是对小编最大的支持和鼓励&#xff01; 系列文章目录 简述ajax、…

经营帮会员经营:全方位助力企业高效发展,解锁商业新可能

在商业竞争愈发激烈的当下&#xff0c;企业若想脱颖而出&#xff0c;高效的经营管理体系至关重要。经营帮的会员经营板块&#xff0c;凭借丰富且实用的功能&#xff0c;为企业打造了一站式的经营助力平台&#xff0c;从多维度赋能企业&#xff0c;让发展之路更顺畅。会员经营与…