STM32F103标准外设库——认识STM32(一)

 个人名片:

🦁作者简介:一名喜欢分享和记录学习的在校大学生
🐯个人主页:妄北y

🐧个人QQ:2061314755

🐻个人邮箱:2061314755@qq.com
🦉个人WeChat:Vir2021GKBS
🐼本文由妄北y原创,首发CSDN🎊🎊🎊
🐨座右铭:大多数人想要改造这个世界,但却罕有人想改造自己。

专栏导航:

妄北y系列专栏导航:

C/C++的基础算法:C/C++是一种常用的编程语言,可以用于实现各种算法,这里我们对一些基础算法进行了详细的介绍与分享。🎇🎇🎇

C/C++刷题库:分享一些关于编程的练习基础题,也会后续加入一系列的算法题,分享自己的解题思路和方法。🥰🥰🥰

计算机网络:对计算机网络的基础知识框架有一个简单的学习与认识,对计算机网络中常见的题型进行一个总结与归纳。🍾🍾🍾

QT基础入门学习:对QT的基础图形化页面设计进行了一个简单的学习与认识,利用QT的基础知识进行了翻金币小游戏的制作🤹🤹🤹

Linux基础编程:初步认识什么是Linux,为什么学Linux,安装环境,进行基础命令的学习,入门级的shell编程。🍻🍻🍻

Linux的系统编程+网络编程:IO编程、进程、线程、进程间通讯(包括管道、信号、信号量、共享内存等)网络编程主要就是socket,poll,epoll,以及对TCP/IP的理解,同时要学会高并发式服务器的编写。🙌🙌🙌

Linux应用开发基础开发:分享Linux的基本概念、命令行操作、文件系统、用户和权限管理等,网络编程相关知识,TCP/IP 协议、套接字(Socket)编程等,可以实现网络通信功能。💐💐💐

Linux项目开发:Linux基础知识的实践,做项目是最锻炼能力的一个学习方法,这里我们会学习到一些简单基础的项目开发与应用,而且都是毕业设计级别的哦。🤸🤸🤸


非常期待和您一起在这个小小的互联网世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨ 

文章介绍:

🎉本篇文章对STM32单片机学习的相关知识进行分享!🥳🥳🥳

如果您觉得文章不错,期待你的一键三连哦,你的鼓励是我创作动力的源泉,让我们一起加油,一起奔跑,让我们顶峰相见!!!💪💪💪

🎁感谢大家点赞👍收藏⭐评论✍️

目录: 

一、什么是 STM32

STM32 诞生的背景

二、STM32 能做什么

1.STM32有什么?

2.身边常见的电子产品

三、STM32 怎么选型

1.STM8和STM32分类

 2.STM32 命名方法

3.选择合适的 MCU 

4.如何分配原理图 IO

5.开始分配原理图 IO 

6.PCB哪里打样


一、什么是 STM32

ST一意法半导体,是一个公司名,即SOC厂商
M— Microelectronics的缩写,表示微控制器,大家注意微控制器和微处理器的区别
32——32bit的意思,表示这是一个32bit的微控制器

STM32 诞生的背景

技术的更替,这个是最主要的原因。
市场的需求(成本、性能、功耗、GUI、操作系统),传统的8/16位的微控制器,久经岁月的洗礼,如今虽有余晖,当面对这些需求时更显的是捉襟见肘。
ST的努力(产品线丰富、开发简单易上手—基于固件库开发),让STM32在众多的基于Cortex-M内核的微控制器中脱引而出,成为最璀璨的新星。

二、STM32 能做什么

        STM32 属于一个微控制器,自带了各种常用通信接口,比如 USART、I2C、SPI 等,可接非常多的传感器,可以控制很多的设备。

1.STM32有什么?

(1)串口—USAR,用于跟跟串口接口的设备通信,比如:USB转串口模块、ESP8266WIFI、GPS模块,GSM模块,串口胖、指纹识别模块。
(2)内部集成电路—I2C,用于跟I2C接口的设备通信,比如:EEPROM、电容屏、陀螺仪MPU6050、0.96寸OLED模块
(3)串行通信接口—SPI,用于跟SPI接口的设备通信,比如∶串行FLASH、以太网W5500、音频模块VS1053
(4)SDIO、FSMC的超级、I2S、ADC、GPIO

2.身边常见的电子产品

        我们接触到的很多电器产品都有 STM32 的身影, 比如智能手环,微型四轴飞行器,平衡车、移动 POST 机,智能电饭锅,3D 打印机等等。

智能手环:

红圈:STM32F439ZIY6S 处理器,2048KB FLASH ,256KB RAM ,WLCSP143 封装。

橙圈:Macronix MX69V28F64 16 MB 闪存,基于 MCP 封装的存储器,是一种包含了 NOR 和 SRAM 的闪存,这在手环手机这种移动设备中经常使用,优点是体积小,可以减小 PCB 的尺寸。这个闪存用的 439 的 FSMC 接口驱动。

黄圈:InvenSense MPU-6500 陀螺仪/加速度计,用 439 的 I2C 接口驱动。

绿圈:博通 BCM4334WKUBG 芯片,支持 802.11n,蓝牙 4.0+HS 以及 FM 接收芯片,用 439 的 SDIO 或者 SPI 接口驱动。

显示:1.84”可弯曲屏幕 (Super AMOLED),432 x 128 像素。触摸部分用 439 的 I2C 接口驱 动,OLED 显示部分用 LTDC 接口驱动。 

 微型四轴飞行器:

        现在无人机非常火热,高端的无人机用 STM32 做不来,但是小型的四轴飞行器用 STM32 还是绰 绰有余的。如图微型四轴飞行器 所示飞行器的基本都可以用 STM32 搞定。

        上面的是属于产品,如果想自己 DIY,可以在入门 STM32 之后,买一本飞行器 DIY 的书,边做边学。

三、STM32 怎么选型

1.STM8和STM32分类

 2.STM32 命名方法

3.选择合适的 MCU 

在确定项目需求的情况下,一般按照下面的顺序来选择合适的MCU

选择哪种内核的芯片,内核越高意味着功耗也越高

选择多少引脚的芯片,引脚多少决定了资源的多少,也影响价格

选择多少RAM和FLASH的芯片,FLASH越大,价格越贵

还要考虑所选型号采购是否容易,供货是否稳定

4.如何分配原理图 IO

在画原理图之前,一般的做法是先把引脚分类好,然后才开始画原理图,引脚分类具体见表格画

 在数据手册中,有关引脚定义的部分

5.开始分配原理图 IO 

        比如我们的 F103“指南者”使用的 MCU 型号是 STM32F103VET6,封装为 LQFP100,我们在数据手册中找到这个封装的引脚定义,然后根据引脚序号,一个一个复制出来,整理成 excel 表。具体整理方法按照表格画原理图时的引脚分类 画原理图时的引脚分类即可。分配好之后就开始画原理图。

6.PCB哪里打样

        设计好原理图,画好 PCB 之后,需要把板子做出来,进行软硬件联调。首先得 PCB 打样,这里我推 荐一家我经常打样的厂家,深圳嘉立创(JLC),行业标杆,良心价格,网址:嘉立创。 一块 10CM*10CM 以内的板子,三天做好,50 块就可以搞定,还包邮,简直便宜到掉渣。如果你 足够懒,不想自己焊接电阻电容二三极管什么的,嘉立创还可以帮你把 PCB 样板上的阻容贴好给你,打样贴片一条龙。

大佬觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥任务在无形中完成,价值在无形中升华,让我们一起加油吧!🌙🌙🌙

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【单片机】STM32 ARM Cortex-M0 微控制器特性概述 双排 TSSOP封装好手工焊接的STM32芯片,双排

STM32F070CB STM32F070RB STM32F070C6 STM32F070F6 在嵌入式系统和物联网应用中,ARM Cortex-M0 微控制器以其强大的性能和丰富的功能而备受瞩目。本文将介绍该微控制器的主要特性,使读者更好地了解其适用范围和潜在应用。 核心特性 ARM 32位 Cortex…

rime中州韵小狼毫 联想词组 滤镜

教程目录:rime中州韵小狼毫须鼠管安装配置教程 保姆级教程 100增强功能配置教程 在 rime中州韵小狼毫 自定义词典 一文中,我们分享了如何在rime中州韵小狼毫须鼠管输入法中定义用户自定义词典;通过自定义词典,我们可以很方便的在…

Github仓库使用方式

主要参考: 「详细教程」使用git将本地项目上传至Github仓库(MacOS为例)_github上传代码到仓库-CSDN博客 新建文件夹参考: GitHub使用指南——建立仓库、建立文件夹、上传图片详细教程-CSDN博客 一、新建一个 github 仓库&#…

鸿蒙生态,对开发者来说有什么机遇?

在之前的文章中,我们探讨了鸿蒙应用开发中ArkTS的重要性。作为TypeScript的超集,ArkTS不仅继承了TypeScript的优秀特性,还具备自身独特的优势。 随着鸿蒙原生应用的全面开启,开发者们将迎来无数的机遇和挑战。本文将深入剖析鸿蒙…

强化学习应用(二):基于Q-learning的无人机物流路径规划研究(提供Python代码)

一、Q-learning简介 Q-learning是一种强化学习算法,用于解决基于马尔可夫决策过程(MDP)的问题。它通过学习一个价值函数来指导智能体在环境中做出决策,以最大化累积奖励。 Q-learning算法的核心思想是通过不断更新一个称为Q值的…

自定义SpringBoot项目启动时控制台图标(如来佛祖,永不宕机)

自定义SpringBoot项目启动时控制台图标(如来佛祖,永不宕机) 默认的启动图标(spring) 自定义下载喜欢的banner.txt文件,将其放到resources目录下,springboot启动时会自动扫描更换启动图标 banner生成网站:…

工智能基础知识总结--神经网络

什么是神经网络 逻辑回归、感知机均只包含一个输入层以及一个输出层,只能处理线性可分问题。如果在输入层与输出层之间加入一层到多层的隐藏层,就会得到神经网络结构。 神经网络一般由输入层、隐藏层、输出层构成,下图展示了其一般结构: 隐藏层之所称之为隐藏层,是因为在…

git切换到另一分支更改也会随之过去

一次的修改如果没有 commit如果切换到另一分支就会把修改带到另一个分支 这时可以使用 git stash 其他使用场景 切换分支:当正在一个分支上工作,但需要临时切换到另一个分支处理一些紧急任务时,可以使用 git stash 保存当前的工作进度。完成…

2024年烟花爆竹储存证考试题库及烟花爆竹储存试题解析

题库来源:安全生产模拟考试一点通公众号小程序 2024年烟花爆竹储存证考试题库及烟花爆竹储存试题解析是安全生产模拟考试一点通结合(安监局)特种作业人员操作证考试大纲和(质检局)特种设备作业人员上岗证考试大纲随机…

排序算法6---快速排序(非递归)(C)

回顾递归的快速排序,都是先找到key中间值,然后递归左区间,右区间。 那么是否可以实现非递归的快排呢?答案是对的,这里需要借助数据结构的栈。将右区间左区间压栈(后进先出),然后取出…

web自动化实现登录的几种方式

目录 前言 一、pythonunittest框架实现登录功能 二、pythonselenium实现登录功能 三、pythonrequests库实现登录功能 前言 今天主要想介绍python语言不同的自动化测试框架的结合方式来模拟登录功能。想了解自动化测试框架的同学不要错过哦! 一、pythonunittest框…

软件测试|selenium 元素无法选择异常的原因及解决

简介 在进行 Web 自动化测试时,使用 Selenium 可能会遇到各种异常情况。其中之一就是 ElementNotSelectableException 异常,该异常通常意味着在尝试选择一个不可选元素时出现了问题。本文将详细介绍这个异常的原因、可能的解决方法,并提供示…

十四.变量、异常处理

变量、异常处理 1.变量1.1系统变量1.1.1系统变量分类1.1.2查看系统变量 1.2用户变量1.2.1用户变量分类1.2.2会话用户变量1.2.3局部变量1.2.4对比会话用户变量与局部变量 补充:MySQL 8.0的新特性—全局变量的持久化 2.定义条件与处理程序2.1案例分析2.2定义条件2.3定义处理程序2…

vector扩容机制

在学习了vector的时候,总说linux下是以二倍扩容的,VS是以1.5倍扩容的。 但是想一想为什么扩容是这样的呢,为什么不能是3倍或者其他倍数呢? 所以带着这些疑问,接着往下看。 首先,我们要知道vector的扩容机…

SpringBoot新手入门完整教程和项目示例

文章目录 SpringBoot新手入门完整教程和项目示例1、SpringBoot简介2、Spring Boot的核心功能?(优点)3、SpringBoot与SpringMVC 的区别?4、构建SpringBoot项目4.1、在官网自动生成下载spring boot项目4.2、手动使用maven创建Spring…

中国社科院与新加坡社科大联合培养博士——单证还是双证?

有关博士学位,我想不用多说相信很多人都清楚,博士是我国学位等级中目前为止的最高学位,拥有了博士学位就相当于拥有了最高荣誉,但是,我国教育形式另开设了学历教育,对于学历教育的形式,在职博士…

软件测试|如何使用selenium处理下拉框?

简介 下拉框是网页表单中常见的元素之一,通常用于选择不同的选项。对于我们的自动化测试工作来说,操作下拉框是我们经常需要处理的元素,selenium作为我们最常使用的web自动化测试框架,也是支持我们对下拉框进行操作的。本文我们就…

SpringBoot介绍

1.什么是SpringBoot Spring Boot是由Pivotal团队提供的全新框架,其中“Boot”的意思就是“引导”,Spring Boot 并不是对 Spring 功能上的增强,而是提供了一种快速开发 Spring应用的方式。 1.1.Spring Boot 特点 • 嵌入的 Tomcat&#xff…

案例128:基于微信小程序的在线视频教育系统

文末获取源码 开发语言:Java 框架:SSM JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序…