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

news2024/11/17 17:35:20

 个人名片:

🦁作者简介:一名喜欢分享和记录学习的在校大学生
🐯个人主页:妄北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 样板上的阻容贴好给你,打样贴片一条龙。

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

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

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

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

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

相关文章

SSH远程访问与控制

目录 ssh优点 作用 SSH的 软件 公钥首次连接原理 ssh远程登录 shh命令 远程连接 直接连接先输入ssh IP 连接指定用户 在 /etc/ssh/sshd_config下面修改端口号 修改服务端配置文件 ​编辑 白名单,只能登录本机的mcb用户 SSH服务的最佳实践 openSSH 服…

Vue.js轻量级框架:快速搭建可扩展的管理系统

一、前言 在项目实战开发中,尤其是大平台系统的搭建,针对不同业务场景,需要为用户多次编写用于录入、修改、展示操作的相应表单页面。一旦表单需求过多,对于开发人员来说,算是一种重复开发,甚至是繁杂的工作…

NetCore部署微服务(三)

接上文,服务端部署完成之后,同样我们也需要修改一下客户端代码 Blocking Queries 1.1 服务发现 在客户端代码中使用Nuget安装consul包 修改配置文件,我们首先需要把consul的请求地址配置在配置文件中 修改control方法 using Consul; usin…

第七在线荣获百灵奖 Buylink Awards 2023零售圈年度卓越服务商品牌

1月11日,由零售圈主办、20零售连锁协会协办、30零售行业媒体支持的中国零售圈大会暨2024未来零售跨年盛典在西安落下帷幕,在这个零售行业盛典中,第七在线凭借其高精尖产品和卓越的服务质量成功入选,并荣获了“百灵奖 Buylink Awar…

旧路由重置新路由设置新路由设置教程|适用于PPPoE拨号

前言 前几天朋友说路由器想要重置,但不知道怎么弄。所以就想着只帮忙重置路由器的话,只能帮到一个人。但把整个过程写成图文,就可以帮助更多人。 本文章适合电脑小白,请注意每一步哦! 注意事项 开始之前需要确认光猫…

深度学习环境常用命令(持续更新......)

深度学习涉及常用命令 在深度学习过程中常涉及的命令记录备查。 本文中涉及命令均在windows上,使用Anaconda管理环境的情况下。 显卡环境相关命令 1.pytorch下查看cuda版本,查看cudnn版本 import torch print(torch.version.cuda) print(torch.back…

Docker 如何安装 MySQL 并实现远程连接

Hello各位小伙伴们大家好!我是咕噜铁蛋!随着云计算和容器化技术的兴起,Docker 已经成为现代软件开发的核心工具之一。它提供了一种轻量级、可移植、自包含的部署方式,使得开发人员可以更加便捷地构建、测试和发布应用程序。而 MyS…

docker安装部署Elasticsearch(ES)以及相关配置

Elasticsearch简介 mysql用作持久化存储,ES用作检索 基本概念:index库>type表>document文档 index索引(相当于MySQL的数据库) 动词:相当于mysql的insert 名词:相当于mysql的db Type类型&#xff…

Rust-借用检查

Rust语言的核心特点是:在没有放弃对内存的直接控制力的情况下,实现了内存安全。 所谓对内存的直接控制能力,前文已经有所展示:可以自行决定内存布局,包括在栈上分配内存,还是在堆上分配内存;支…

【开发篇】三、并发下的OOM分析

文章目录 1、并发下的OOM分析2、Jmeter模拟并发 1、并发下的OOM分析 用户请求过来, 后端查询数据库后封装Vo对象返回给前端后,然后正常这个Vo就可以被GC清理掉了。 但并发时,如果数据处理时间很长,大量对象存于内存,或…

开源28181协议视频平台搭建流程

最近项目中用到流媒体平台,java平台负责信令部分,c平台负责流媒体处理,找了评分比较好的开源项目 https://gitee.com/pan648540858/wvp-GB28181-pro 流媒体服务基于 c写的 https://github.com/ZLMediaKit/ZLMediaKit 说明文档:h…

web前端(第二次作业)

1、计算用户指定的数值内的奇数和。例如用户输入的是 10&#xff0c;则计算 1 3 5 7 9 的和 <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><script>var nprompt("请输入数值&#xff1a;&…

基于信号完整性的一些PCB设计建议

最小化单根信号线质量的一些PCB设计建议 1. 使用受控阻抗线&#xff1b; 2. 理想情况下&#xff0c;所有信号都应该使用完整的电源或地平面作为其返回路径&#xff0c;关键信号则使用地平面作为返回路径&#xff1b; 3. 信号的返回参考面发生变化时&#xff0c;在尽可能接近…

抖店搬运同行产品截流后,还是不出单?优化主图和链接的方法如下

我是王路飞。 跟品、搬运同行店铺内的爆品上架到自己的店铺&#xff0c;公认是起店最快的方法。 因为有流量的产品&#xff0c;同行已经替你选出来了&#xff0c;你只需要上架去卖就可以了。 但很多新手采用跟品方法的时候&#xff0c;自己店铺还是没什么流量&#xff0c;也…

phpstorm配置ftp

1 选择设置ftp 2设置自动上传

MySQL运维篇(一)日志

一、错误日志 错误日志是 MySQL 中最重要的日志之一&#xff0c;它记录了当 mysqld 启动和停止时&#xff0c;以及服务器在运行过程中发生任何严重错误时的相关信息。当数据库出现任何故障导致无法正常使用时&#xff0c;建议首先查看此日志。 该日志是默认开启的&#xff0c;默…

Web Animation API

工作中经常会遇到需要动画的场景&#xff0c;连贯动画都是用CSS实现&#xff0c;&#xff0c;但是如果遇到需要用户互动介入的动画&#xff0c;那纯CSS很比较吃力&#xff0c;也不是不能实现&#xff0c;需要动态修改CSS变量&#xff0c;而且动画容易被JS代码阻塞&#xff0c;导…

C语言中的浮点数存储

首先明确一个概念&#xff1a;C语言中整形是按照二进制存储在内存中&#xff0c;浮点型是按科学计数法存储在内存中&#xff08;本质上存储的还是二进制数据0和1&#xff09;。 如果没看懂这句话&#xff0c;没关系&#xff01;看完以下正文&#xff0c;你就会豁然开朗&#x…

基于开源组件自主开发工作流引擎系统

目前基于Java语言开发的主流开源工作流引擎有osworkflow、jbpm、activiti、flowable、camunda。其中osworkflow、jbpm技术较老已经过时&#xff0c;activiti包括activiti5、activiti6、activiti7三个版本&#xff0c;flowable分开源版和商业版&#xff0c;camunda包括camunda7和…

【深蓝学院】移动机器人运动规划--第1章 运动规划介绍与地图构建--笔记

文章目录 1. Course introduction2. Course Outline2.1 课程概览2.2 课程算法概览2.2.1 基于搜索的前端2.2.2 基于采样的前端2.2.3 满足动力学约束的路径搜索2.2.4 后端轨迹优化 3. 地图表示3.1 Occupancy grid map占用栅格地图3.2 八叉树地图3.3 Voxel hashing&#xff08;体素…