stm32f103介绍

2023-05-16

完整学习一遍stm32开发板开发,并打算坚持一直写笔记。
这是第一课,stm32的介绍

1.什么是STM32

从字面意义来看:
ST:意法半导体,是一个公司的名字。
M:Microelectronics的缩写,表示微控制器,要注意微控制器和微处理器的区别
32:32bit的意思,表示这是一个32bit的微控制器Cortex-M3采用ARMv7-M架构
ARMv7架构定义了三大分工明确的系列:
“A”系列:面向尖端的基于虚拟内存的操作系统和用户应用
“R”系列:针对实时系统;
“M”系列:对微控制器。

2.STM32与ARM的关系

ARM是英国的芯片设计公司,其最成功的莫过于32位嵌入式CPU核ARM系列,最常用的是ARM7和ARM9或arm11,ARM公司主要提供IP(Intellectual Property core知识产权的核心)核,就是CPU的内核结构,只包括最核心的部分,并不是完整的处理器。ARM把这个核卖给各大半导体公司,如 Philips 三星,ATMEL,甚至Intel等许多公司。ARM为了对付 8位机市场,推出了一系列 Cortex-M核,STM32就是将Cortex-M作为内核,通过一些外设等组合封装在一起就成了32位嵌入式处理器。

3,芯片型号名字每个部分代表的意思

在这里插入图片描述

4,stm32f103芯片资源

STM32F103ZET6芯片,其内部资源介绍如下:
(1)内核:32位 高性能ARM Cortex-M3处理器。
时钟:高达72M,可以超频一点。单周期乘法和硬件除
法。
(2)IO口:STM32F103ZET6: 144引脚 112个IO,大部分IO口都耐5V(模拟通道除外),支持调试:SWD和JTAG,SWD只要2根数据线
(3)存储器容量:512K FLASH,64K SRAM。
FLASH存放程序使用的常量,作用类似电脑的硬盘
SRAM存放程序运行时候产生的变量和一些中间变量,作用类似电脑里面的内存
(4)时钟,复位和电源管理:
2.0~3.6V电源和IO电压
-上电复位,掉电复位和可编程的电压监控强大的时钟系统
-4~16M的外部高速晶振
-内部8MHz的高速RC振荡器
-内部40KHz低速RC振荡器,看门狗时钟
-内部锁相环(PLL,倍频),一般系统时钟都是外部或者内部高速时钟经过PLL倍频后得到

  • 外部低速32.768K的晶振,主要做RTC时钟源
    (5)低功耗:
    -睡眠,停止和待机三种低功耗模式
    -可用电池为RTC和备份寄存器供电
    (6)AD:
    -3个12位AD(多达21个外部测量通道)
    -转换范围:0-3.6V(参考电源电压)
    -内部通道可以用于内部温度测量
    -内置参考电压
    (7)DA:2个12位DA
    (8)DMA:12个DMA通道(7通道DMA1,5通道DMA2),支持设:定时器,ADC,DAC,SDIO,I2S,SPI,I2C,和USART
    (9)定时器:多达11个定时器
    -4个通用定时器
    -2个基本定时器
    -2个高级定时器
    -1个系统定时器
    -2个看门狗定时器
    (10)通信接口:多达13个通信接口
    -2个I2C接口
    -5个串口
    -3个SPI接口
    -1个CAN2.0
    -1个USB FS
    -1个SDIO

5.STM32能做什么

STM32的用处取决于其内部资源,前面我们了解了STM32内部拥有非常多的通信接口。所以如果使用的模块拥有此接口都可以通信。
比如:
USART:ESP8266 WIFI模块、GSM模块、蓝牙模块、GPS模块、指纹识别模块等。
IIC:EEPROM、MPU6050陀螺仪、0.96寸OLED屏、电容屏等。
SPI:串行FLASH、以太网W5500、VS1003/1053音频模块、SPI接口的OLED屏、电阻屏等。
AD/DA:光敏传感器模块、烟雾传感器模块、可燃气体传感器模块、简易示波器等

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

stm32f103介绍 的相关文章

  • 使用RT-Thread studio(RT-Thread4.0.3)的PWM功能(STM32F103的PA15口)步骤

    打开PWM组件 修改board h的宏 这里注意移植的时候要将HAL TIM Base MspInit函数名改为HAL TIM PWM MspInit 修改board c xff0c 在文件最后增加以下内容 xff08 因为用的是PA15所
  • stm32f103 hal库中timer使用

    stm32f103 hal库中timer使用 使用步骤1 初始化定时器2 HAL TIM Base Init amp htim2 基本参数配置3 重写void HAL TIM Base MspInit TIM HandleTypeDef t
  • 基于STM32F103入门1——点亮LED灯

    今天学习了STM32固件库点灯程序 点灯也可以玩过很多好玩的东西 xff0c 在这里做一下总结 STM32点灯程序合集 1 xff1a 新建固件库工程文件1 1找到一个固件库模板1 2 xff1a 打开KEIL5新建工程1 3 xff1a
  • 【stm32f103】认识GPIO

    认识GPIO 什么是GPIOGPIO基本结构保护二极管输出模式推挽输出开漏输出 输出数据寄存器 xff08 参考手册8 2 xff09 GPIOx ODRGPIOx BSRR 输入模式 GPIO工作模式输入模式 xff08 模拟 浮空 上拉
  • STM32F103 舵机控制控制程序PWM配置

    上一篇博文我讲了如何按自己想的配置PWM定时器 下来发现会不会有同学根本不想用重映像 xff0c 原本的引脚就可以 xff0c xff1a xff09 xff0c 所以在开始这篇之前 xff0c 先把TIM2定时器的设置程序发一下 xff1
  • STM32F103 72MHz时钟设置

    将系统时钟初始化到72MHz的函数 根据数据手册和库函数 xff0c 设置STM32时钟为72MHz 这是 c文件 span class token macro property span class token directive key
  • STM32F103串口(ISP)下载

    1 ISP简介 ISP Iin System Programming 在系统可编程 xff0c 指电路板上的空白器件可以编程写入最终用户代码 xff0c 而不需要从电路板上取下器件 xff0c 已经编程的器件也可以用SP方式擦除或再编程 I
  • 花两天时间写的stm32f103串口BootLoader(有keil工程)

    因为在论坛和官网都没搜到完全合适的BootLoader xff0c 所以自己移植完成了一个BootLoader工程 另外附APP文件工程 xff0c 可做实验 用良心保证 xff0c 看完后可以做一个成功的实验 上位机选用SecureCrt
  • STM32F103笔记(二)——GPIO原理

    GPIO的工作原理与两个实验实例 一 STM32F103 GPIO说明1 stm32 GPIO引脚的主要功能2 GPIO相关配置寄存器的简介3 STM32F103 GPIO的8种工作方式4种输入模式4种输出模式 二 点亮LED实例 xff0
  • STM32F103移植FreeRTOS警告记录

    1 xff1a 新建MDK工程 xff0c 选择文件存放路径 xff0c 选择芯片型号 xff0c 创建一个USER文件 xff0c 复制自动创建的文件到USER文件中 xff0c 关闭程序 创建一个OBJ目标文件夹 xff0c 打开软件选
  • stm32f103之HC_SR04超声波测距

    参考资料 xff1a stm32与HC SR04超声波传感器测距 HC SR04超声波测距注意事项 STM32 驱动HC SR04超声波测距模块 HC SR04初识 HC SR04 超声波原理图讲解与时序分析与arduino使用 HC SR
  • MPU9250的MPL移植_HAL库(以STM32F103为主控)

    准备材料 xff1a 驱动库 xff1a motion driver 6 12 硬件 xff1a 正点原子MINI STM32f103RCT6硬件IIC PB8 PB9 GY 91模块 看图可知AD0接地 xff0c 地址是0X68 硬件连
  • STM32F103 PB3,PB4,PA15,IO不可控问题

    STM32默认启动时PB4 PB3 PA15三个引脚不是普通IO xff0c 而是JTAG的复用功能 xff0c 分别为JNTRST JTDI JTDO 由上可以知要使PB3可以用 须关闭JTAG DP SW DP 可以不管 添加以下配置即
  • STM32F103控制PCA9685产生16路PWM波控制SG90舵机

    STM32控制PCA9685产生16路PWM波控制SG90舵机 如果你能点开这篇文章 xff0c 说明你已经知道PCA9685是多么强大 xff0c NXP公司原本做这片芯片是为了提供给LED使用 xff0c 在其官方文档里也能看到所有PW
  • STM32 超声波模块测距

    目录 HC SR04模块 HC SR04超声波测距模块工作原理 HC SR04超声波模块的时序触发图 思路步骤 代码 实验结果 总结 HC SR04模块 HC SR04超声波测距模块工作原理 1 采用IO口TRIG触发测距 给至少10us的
  • STM32F103移植FreeRTOS必须搞明白的系列知识---3(堆栈)

    STM32F103移植FreeRTOS必须搞明白的系列知识 1 Cortex CM3中断优先级 STM32F103移植FreeRTOS必须搞明白的系列知识 2 FreeRTOS任务优先级 STM32F103移植FreeRTOS必须搞明白的系
  • STM32F103 GPIO输出模式2MHz,10MHz,50MHz波形对比

    在STM32F103中GPIO的输出模式有三种速度配置 如图所示 经过测试发现 这三种速度的输出模式与IO的翻转频率没有关系 它们影响的可能是驱动能力 下面是在IO极限频率 18MHz 下 三种模式的波形
  • STM32定时器-基本定时器

    目录 定时器分类 基本定时器功能框图讲解 基本定时器功能 时钟源 计数器时钟 计数器 自动重装载寄存器 定时时间的计算 定时器初始化结构体详解 实验 定时器分类 STM32F1 系列中 除了互联型的产品 共有 8 个定时器 分为基本定时器
  • STM32基本IO的寄存器介绍

    STM32基本IO的寄存器介绍 说明 简介 端口配置低寄存器 32位 数据寄存器 32位 置位 复位寄存器 32位 复位寄存器 16位 锁存寄存器 32位 说明 最近自己在学习STM32 跟着原子哥的STM32教学视频学习 参考的资料有来自
  • 解决keil中 点击setting 程序中断问题

    自己写了一个LED常亮的程序 入门嘛 但是程序在下载后 点击 debug setting 在软件识别J link后 程序是成功的 但是LED不亮了 下面是解决方法 记住把2标记处的对勾去掉就可以了 这个功能是 在你连接完成时自动在Reset

随机推荐

  • 虚拟机LNMP操作记录(三)

    nginx配置多站点之端口访问 查看nginx conf文件 lnmp 已经默认添加了引入vhost下所有文件的准备 复制server里面的内容 server listen 80 default server reuseport liste
  • workerman+TP6实战网站客服系统之前端页面部署

    前端演示效果 主攻后端和workman所以本次前端页面比较简单 后续会有聊天高级版的教程敬请期待 Layui下载 Layui 经典开源模块化前端 UI 组件库 nbsp nbsp 粘贴到tp6项目里面 nbsp 然后创建模板页面
  • PHP多进程(一)之pcntl_fork

    知识来源 nbsp nbsp nbsp nbsp 知识无价 拒绝白嫖 Linux下PHP多进程编程 共44课时 PHP课程 51CTO学堂 多进程的作用是一个程序启动多个进程 一个程序启动起来本应该是一个进程 但它可作为父进程启动多个子进程
  • PHP多进程(二)之pcntl_wait

    知识来源 nbsp nbsp nbsp nbsp 知识无价 拒绝白嫖 Linux下PHP多进程编程 共44课时 PHP课程 51CTO学堂 上篇文章我们说到父进程应该回收子进程结束之后产生的数据 这样才会不浪费系统资源 一个程序启动之后 变
  • PHP前后分离接口加密探讨( AES+RSA )

    参考文章 php之RSA加密解密 小吴 斌的博客 CSDN博客 php rsa加密 RSA和AES的区别 LC超人在良家的博客 CSDN博客 aes rsa PHP实现非对称加密的方法 私钥及公钥加密解密的方法 php 公钥 私钥 Lord
  • Deep Learning 最优化方法之RMSProp

    本文是Deep Learning 之 最优化方法系列文章的RMSProp方法 主要参考Deep Learning 一书 整个优化系列文章列表 xff1a Deep Learning 之 最优化方法 Deep Learning 最优化方法之S
  • PHP多进程(三) 理解多进程

    知识来源 nbsp nbsp nbsp nbsp 知识无价 拒绝白嫖 Linux下PHP多进程编程 共44课时 PHP课程 51CTO学堂 本篇是一个过渡篇 重在理解多进程 以及进程执行过程和进程执行后的数据 nbsp 废话不多说直接上代码
  • 深入springboot原理——一步步分析springboot启动机制(starter机制)

    前言 使用过springboot的同学应该已经知道 xff0c springboot通过默认配置了很多框架的使用方式帮我们大大简化了项目初始搭建以及开发过程 本文的目的就是一步步分析springboot的启动过程 xff0c 分析sprin
  • dependencies和dependencyManagement区别

    文章目录 dependenciesdependencyManagement使用场景 区别 xff1a 总结 xff1a dependencies 父项目中的dependencies xff0c 子项目都会自动引入 xff0c 默认被所有的子
  • 【Git】解决Ctrl+V无法粘贴文本的问题

    解决Ctrl 43 V无法粘贴文本的问题 问题 xff1a 在我们使用Git Bash将项目克隆至本地时 xff0c 经常需要复制网址 xff0c 但此时却出现问题 xff1a Ctrl 43 V无反应 或是如下图只有 V xff1a 解决
  • 操作系统引导(开机过程)

    操作系统安装在C盘中 xff0c 其一步步启动的过程如下 xff1a 操作系统要启动 xff0c 操作系统的数据需要先被放入主存里 如图所示 xff0c 计算机的主存由RAM和ROM组成 xff0c ROM芯片被集成在电脑主板上 xff0c
  • igh ethercat master及简单介绍

    接触ethercat也有一段时间了 xff0c 做些小总结吧 1 xff0c 关于ethercat ethercat是基于工业以太网的一种总线协议 我接触的igh ethercat master for linux是以用ethercat协议
  • Linux下IGH Ethercat Master安装

    引言 简单igh ethercat master安装 1 xff0c 准备工作 xff08 1 xff09 一个Linux系统 xff0c 在虚拟机里面也可以 xff0c 不过如果在虚拟机里面需要一些其他的设置 xff0c 这个最后再说 L
  • 在树莓派/4.x内核下安装IgH EtherCAT master主站

    树莓派安装ethercat主站 环境 xff1a 4 14 91 rt49 v7 下载源码 xff0c 解压 tar xvf ethercat 1 5 2 tar bz2 cd ethercat 1 5 2 configure enable
  • C语言中static修饰函数和变量用法

    static修饰函数 xff0c 局部变量和全局变量的用法 在c语言中static关键字可以修饰函数和变量 修饰变量又可以分为修饰全局变量和局部变量 static作用是限定变量的生命周期 xff0c 限定变量或函数的作用域 写在前面 xff
  • SOEM控制io超简洁程序

    SOEM控制io超简洁程序 我想用SOEM简单控制io模块 xff0c 因为我的io模块每个出入输出旁边都会有一个小灯 xff0c 所以这也算是点灯程序 xff0c 但是我看了例子并不知道怎么修改 xff0c 都说igh麻烦 xff0c 我
  • Deep Learning 最优化方法之Adam

    本文是Deep Learning 之 最优化方法系列文章的Adam方法 主要参考Deep Learning 一书 整个优化系列文章列表 xff1a Deep Learning 之 最优化方法 Deep Learning 最优化方法之SGD
  • SOEM控制伺服电机

    我只完成了pv模式 xff0c 对于csp模式我不知道是哪里出现了问题 xff0c 有知道的可以在下方评论 这个代码我的pv模式可以正常运行和控制电机 xff0c csp模式可以使能电机 xff0c 但是电机不转 span class to
  • c语言常用的打印/输出函数

    c语言中除了最开始接触的printf 函数 xff0c 还经常遇到其他函数 xff0c sprintf printk fprintf 等 1 xff0c printf 这个函数应该是用的最多的 xff0c 或者是最先接触的 xff0c 至少
  • stm32f103介绍

    完整学习一遍stm32开发板开发 xff0c 并打算坚持一直写笔记 这是第一课 xff0c stm32的介绍 1 什么是STM32 从字面意义来看 xff1a ST xff1a 意法半导体 xff0c 是一个公司的名字 M xff1a Mi