STM32入门_江协科技_1~2_OB记录的自学笔记_STM32简介

2024-04-29 07:28

本文主要是介绍STM32入门_江协科技_1~2_OB记录的自学笔记_STM32简介,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.综述

  • 1.1. 课程简介
    手打代码是加入了实操,增加学习效果;
    STM最小系统板+面包板的硬件平台;
    配套0.96寸的显示屏,便于调试;
    因为使用面板板,所以如果程序现象不出来也有可能是硬件连接的问题;
    在这里插入图片描述

  • 1.2. 硬件设备:
    •STM32面包板入门套件
    •Windows电脑
    •万用表(检查接线)、示波器(虚拟和台式示波器都可以)、镊子、剪刀等

  • 1.3. 编程软件
    Keil 5 MDK (ARM)
    参考资料链接: https://jiangxiekeji.com/download.html#32
    安装参考: https://wenku.csdn.net/answer/5gyk1qirke

  • 1.4. STM32套件的介绍
    面包板
    STM32最小开发板
    0.96寸OLED(4引脚版本)
    电位器,薄膜按键
    ST-LINK程序下载用并供电
    串口模块
    有源蜂鸣器模块
    光敏电阻模块
    热敏电阻模块
    对射式红外模块
    反射式红外模块
    W25Q64 FLASH存储模块 SPI总线通讯
    MPU6050 陀螺仪加速度计 I2C总线通讯
    旋转编码器
    直流电机 电机驱动模块
    舵机 PWM控制
    在这里插入图片描述

2. STM32简介

2.1. STM32简介
•STM32是ST公司基于ARM Cortex-M内核开发的32位微控制器
•STM32常应用在嵌入式领域,如智能车、无人机、机器人、无线通信、物联网、工业控制、娱乐电子产品等
•STM32功能强大、性能优异、片上资源丰富、功耗低,是一款经典的嵌入式微控制器

高性能系列:F2,F4,F7
主流性能系列:F0,F1,F3(教程用STM32F1)
超低功耗系列:
无线系列:

在这里插入图片描述

  • 2.2. ARM介绍:
    •ARM既指ARM公司,也指ARM处理器内核
    •ARM公司是全球领先的半导体知识产权(IP)提供商,全世界超过95%的智能手机和平板电脑都采用ARM架构,ARM提供设计,授权,不生产芯片;
    •ARM公司设计ARM内核,半导体厂商完善内核周边电路并生产芯片
    下图A系列用于高端产品领域(例如手机)(苹果M1芯片将ARM推入电脑领域)
    M系列用于嵌入式领域较多
    在这里插入图片描述

  • 2.3. 本套课程使用的STM32F103C8T6
    •系列:主流系列STM32F1
    •内核:ARM Cortex-M3
    •主频:72MHz
    •RAM:20K(SRAM)
    •ROM:64K(Flash)
    •供电:2.0~3.6V(标准3.3V)(对比51单片机是5V供电)
    •封装:LQFP48(48针引脚)
    在这里插入图片描述

  • 2.4. STM32F103C8T6的片上资源(片上资源/外设)
    先了解后续再仔细学习;
    下表是STM32系列的所有外设,具体到STM32F103C8T6芯片后4个外设(DAC~USB OTG)是没有的,具体需要参考芯片手册

英文缩写名称英文缩写名称
NVIC嵌套向量中断控制器(内核内外设)CANCAN通信
SysTick系统滴答定时器(内核内外设)USBUSB通信
RCC复位和时钟控制RTC实时时钟
GPIO通用IO口CRCCRC校验
AFIO复用IO口PWR电源控制
EXTI外部中断BKP备份寄存器
TIM定时器IWDG独立看门狗
ADC模数转换器WWDG窗口看门狗
DMA直接内存访问DAC数模转换器
USART同步/异步串口通信SDIOSD卡接口
I2CI2C通信FSMC可变静态存储控制器
SPISPI通信USB OTGUSB主机接口

在这里插入图片描述

  • 2.5. 命名规则
    在这里插入图片描述

  • 2.6. 系统结构

  • DMA数据搬运辅助,节省CPU的时间
    在这里插入图片描述

  • 2.7. 引脚定义(非常重要)

    • 橘红色标记为电源相关引脚,S电源,I输入,O输出,FT容忍5V电压
    • 蓝色标记为最小系统相关引脚
    • 绿色为IO口相关引脚
    • 1-VBAT备用电源3V
    • 2-侵入报警
    • 3,4-接晶振
    • 5,6-接主晶振8MHz
    • 7-复位N代表低电平复位
    • 8,9-内部模拟部分的电源,VSS接GND或负极,VDD接正极
    • 10~19为IO口
    • 20-IO/BOOT,用于配置启动模式
    • 21,22-也都是IO口
    • 23-VSS主电源负极
    • 24-VDD主电源正极
    • 35-VSS主电源负极
    • 36-VDD主电源正极
    • 47-VSS主电源负极
    • 48-VDD主电源正极
    • 以上电源采用分区供电方式
    • 34~40-IO或调试端口(默认调试功能为主功能)
    • 教程用的ST-LINK方式,只占用PA13(24),PA14(37)两个口, 否则需要(34,37,38,39,40这5个口用于SWD调试)
    • 44-BOOT0与BOOT1一样用于启动配置

在这里插入图片描述

  • 2.8. STM32 启动配置
    • BOOT0接0(接地)最常用
    • BOOT1接地(0),BOOT0接电源(1),BOOT LOADER启动模式,串口下载程序
    • BOOT1接电源(1),BOOT0接电源(1),主要用于程序调试,本套教程不涉及
    • 表下注释的意思,机器复位或上电一瞬间,BOOT1引脚值锁存,之后恢复PB2的IO口模式。
    • 至此,如果需要芯片正常工作,需要将电源与表格中蓝色的最小系统的部分连接好;

在这里插入图片描述

  • 2.9. 最小系统电路
  • 3.3V与GND之间的电源加的电容为滤波电容,用以保持电源稳定;
  • VBAT备用电源接的时候需要注意,正极接VBAT,负极接地;悬空也可以;
  • 晶振接8MHz,内部锁相环倍频后为72MHz,20pf的电容为起振电容;接5,6口
  • 如果需要RTC功能,还需要接一个32.768KHz的晶振,电路同晶振电路,接3,4口,因为32768为2的15次方,内部电路分频后直接可以得到1s的时钟信号。
  • 复位接NRST为低电平复位,按下K1信号接地复位,松开K1,C3充电,电阻R1上拉NRST信号
  • 启动配置是通过最小开发板上面的跳线帽来实现的;
  • 以下都包含在最小系统板上面了,最小系统板的原理图可在资料中找到《模块资料.zip》核心板原理图中

在这里插入图片描述

这篇关于STM32入门_江协科技_1~2_OB记录的自学笔记_STM32简介的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/945459

相关文章

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

Spring Boot 配置文件之类型、加载顺序与最佳实践记录

《SpringBoot配置文件之类型、加载顺序与最佳实践记录》SpringBoot的配置文件是灵活且强大的工具,通过合理的配置管理,可以让应用开发和部署更加高效,无论是简单的属性配置,还是复杂... 目录Spring Boot 配置文件详解一、Spring Boot 配置文件类型1.1 applicatio

MySQL INSERT语句实现当记录不存在时插入的几种方法

《MySQLINSERT语句实现当记录不存在时插入的几种方法》MySQL的INSERT语句是用于向数据库表中插入新记录的关键命令,下面:本文主要介绍MySQLINSERT语句实现当记录不存在时... 目录使用 INSERT IGNORE使用 ON DUPLICATE KEY UPDATE使用 REPLACE

Python 中的异步与同步深度解析(实践记录)

《Python中的异步与同步深度解析(实践记录)》在Python编程世界里,异步和同步的概念是理解程序执行流程和性能优化的关键,这篇文章将带你深入了解它们的差异,以及阻塞和非阻塞的特性,同时通过实际... 目录python中的异步与同步:深度解析与实践异步与同步的定义异步同步阻塞与非阻塞的概念阻塞非阻塞同步

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1

Spring Boot中定时任务Cron表达式的终极指南最佳实践记录

《SpringBoot中定时任务Cron表达式的终极指南最佳实践记录》本文详细介绍了SpringBoot中定时任务的实现方法,特别是Cron表达式的使用技巧和高级用法,从基础语法到复杂场景,从快速启... 目录一、Cron表达式基础1.1 Cron表达式结构1.2 核心语法规则二、Spring Boot中定

国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)

《国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)》本文给大家利用deepseek模型搭建私有知识问答库的详细步骤和遇到的问题及解决办法,感兴趣的朋友一起看看吧... 目录1. 第1步大家在安装完ollama后,需要到系统环境变量中添加两个变量2. 第3步 “在cmd中

Python FastAPI入门安装使用

《PythonFastAPI入门安装使用》FastAPI是一个现代、快速的PythonWeb框架,用于构建API,它基于Python3.6+的类型提示特性,使得代码更加简洁且易于绶护,这篇文章主要介... 目录第一节:FastAPI入门一、FastAPI框架介绍什么是ASGI服务(WSGI)二、FastAP