江科大stm32-概述

2023-05-16

第一章、STM32概述

1.1 资源介绍

STM32F103C8T6
STM32F103C8T6
51单片机使用的是5V供电,还有USB输出的电压也是5V,5V是不在这个供电电压范围内的,不能直接给STM32供电,如果是5V电压,那需要加一个稳压芯片,把电压降到3.3V,再给STM32供电。

片上资源/外设
片上资源/外设
在这个表中,前两个深颜色的,是位于Cortex-M3内核里面的外设,剩下的都是内核外的外设,这个芯片没有表中后面四个外设。

芯片的命名规则
在这里插入图片描述
列如:STM32F103RCT6,
这个RCT6的芯片是64脚、256K的Flash、
LQFP封装、-40~85摄氏度这样的参数

STMF103C8T6引脚定义
在这里插入图片描述

  • VSS是负极,接GND,VDD是正极,接3.3V。
  • 推荐优先使用这些加粗的IO口,没有加粗的IO口,可能需要进行配置或者兼具其他功能,使用时需要留意。
  • STM32内部采用了分区供电,供电口会比较多,在使用时,把VSS都接GND,VDD都接3.3V即可。

启动配置
启动配置
一般使用选择第一种,使用串口下载程序时,选择系统存储器模式。

最小系统电路
最小系统电路

  1. 在这个3.3V和GND之间,一般会连接一个滤波电容。这个电容可以保证供电电压的稳定,像我们在设计电路的时候
    一般只要遇到供电,都会习惯上的加上几个滤波电容。VBAT,是接备用电池的。
  2. 8MHz的主时钟晶振,STM32的主晶振一般都是8MHz,8MHz经过内部锁相环倍频,得到72MHz的主频。
  3. 如果需要RTC功能的话还需要再接一个32.768KHz的晶振,电路和这个一样,接在3、4号引脚这个OSC32就是32.768KHz晶振的意思。为什么要用32.768KHz的呢,因为32768是2的15次方内部RTC电路经过2的15次方分频,就可以生成1秒的时间信号了。

在这里插入图片描述

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

江科大stm32-概述 的相关文章

  • 51单片机 数码管中断操作

    实践目的 1 掌握中断的概念和思想 2 掌握51单片机中断系统和相关软硬件设计 实践内容 1 利用单片机的P0口接数码管的字段脚 P1 0脚接共阴极 P3 2 P3 3引脚接独立按键产生外部中断信号 编写程序 当程序正常运行时数码管显示H字
  • 如何在 Cortex-M3 (STM32) 上从 RAM 执行函数?

    我正在尝试从 Cortex M3 处理器 STM32 上的 RAM 执行函数 该函数会擦除并重写内部闪存 所以我肯定需要在 RAM 中 但我该怎么做呢 我尝试过的是 使用 memcpy 将函数复制到 RAM 中的字节数组 检查它是否正确对齐
  • 如何更改闪存的起始地址?

    我正在使用 STM32F746ZG 和 FreeRTOS Flash的起始地址是0x08000000 但我想把它改成0x08040000 我通过谷歌搜索了这个问题 但没有找到解决方案 我更改了链接器脚本 如下所示 MEMORY RAM xr
  • c项目makefile多重定义错误

    这个问题是一个对应于创建的repexthis问题 在我的嵌入式 C 项目中 我有两个独立的板 我想为每个板创建两个 c 文件 master c 和 Slave c 其中包含自己的特定main 功能 我使用 stm32cumbemx 生成带有
  • 以字符串形式接收数字(uart)

    我正在尝试通过 uart 接收一个包装为字符串的数字 我发送数字 1000 所以我得到 4 个字节 空字符 但是 当我使用 atoi 将数组转换为数字并将整数与 1000 进行比较时 我并不总是得到正确的数字 这是我用于接收号码的中断处理函
  • 139-基于stm32单片机老人居家监护报警系统Proteus仿真+源程序

    资料编号 139 一 功能介绍 1 采用stm32单片机 LCD1602显示屏 独立按键 MQ4传感器 电位器模拟 MQ2传感器 电位器模拟 蜂鸣器 电机 制作一个基于stm32单片机老人居家监护报警系统Proteus仿真 2 通过MQ2传
  • STM32F4 通过软复位跳转到引导加载程序,无需 BOOT0 和 BOOT1 引脚

    我问这个问题是因为可以在这里找到类似问题的答案 通过应用程序跳转到 STM32 中的引导加载程序 即从用户闪存在引导模式下使用引导 0 和引导 1 引脚 用户 JF002 JF002回答 当我想跳转到引导加载程序时 我在其中一个备份寄存器中
  • 匹配 STM32F0 和 zlib 中的 CRC32

    我正在研究运行 Linux 的计算机和 STM32F0 之间的通信链路 我想对我的数据包使用某种错误检测 并且由于 STM32F0 有 CRC32 硬件 并且我在 Linux 上有带有 CRC32 的 zlib 所以我认为在我的项目中使用
  • HAL 锁定和解锁函数如何使用以及为什么?

    我试图理解另一位程序员编写的代码 它使用了I C http en wikipedia org wiki I C2 B2C通信以将数据写入 STM32 微控制器的 EEPROM 一般来说 我理解他的代码是如何工作的 但我不明白他为什么使用HA
  • 在 Atollic TrueStudio、STM32CubeMX 中导入 C 库

    我目前正在开发 STM32F767ZI Nucleo 板和一个小安全芯片 microchip atecc508a 通过 i2c 连接进行连接 该芯片有一个可用的库加密验证库 https github com MicrochipTech cr
  • 跟着野火学FreeRTOS:第一段(任务定义,切换以及临界段)

    在裸机系统中 系统的主体就是 C P U CPU CP U 按照预先设定的程序逻辑在 m a i n
  • 擦除后无法写入闪存

    所以我不能在擦除后直接写入内部闪存 如果写操作之前没有擦除操作 那么我可以 有什么想法吗 编程函数返回 成功写入 值 但查看内存时 没有写入任何数据 这是代码 uint32 t pageAddress 0x08008000 uint16 t
  • 毕设开题分享 单片机智能教室系统(智能照明+人数统计)

    1 简介 Hi 大家好 今天向大家介绍一个学长做的单片机项目 单片机智能教室系统 智能照明 人数统计 大家可用于 课程设计 或 毕业设计 项目分享 https gitee com feifei1122 simulation project
  • STM32H5 Nucleo-144 board开箱

    文章目录 开发板资料下载 目标 点亮LD1 绿 LD2 黄 和LD3 红 三个LED灯 开箱过程 博主使用的是STM32CubeMX配置生成代码 具体操作如下 打开STM32CubeMX File gt New project 选择开发板型
  • Cortex-M3与M4权威指南

    处理器类型 所有的ARM Cortex M 处理器是32位的精简指令集处理器 它们有 32位寄存器 32位内部数据路径 32位总线接口 除了32位数据 Cortex M处理器也可以有效地处理器8位和16位数据以及支持许多涉及64位数据的操作
  • STM32 Nucleo 上的上升沿中断多次触发

    我正在使用 STM32 NUCLEO F401RE 微控制器板 我有一个扬声器 经过编程 当向上 向下推操纵杆时 可以按设定的量改变频率 我的问题是 有时 通常 当向上 向下推动操纵杆时 频率会增加 减少多次 这意味着 ISR 正在执行多次
  • 嵌入式 C++11 代码 — 我需要 volatile 吗?

    采用 Cortex M3 MCU STM32F1 的嵌入式设备 它具有嵌入式闪存 64K MCU固件可以在运行时重新编程闪存扇区 这是由闪存控制器 FMC 寄存器完成的 所以它不像a b那么简单 FMC 获取缓冲区指针并将数据刻录到某个闪存
  • STM32内部时钟

    我对 STM32F7 设备 意法半导体的 Cortex M7 微控制器 上的时钟系统感到困惑 参考手册没有充分阐明这些时钟之间的差异 SYSCLK HCLK FCLK 参考手册中阅读章节 gt RCC 为 Cortex 系统定时器 SysT
  • 在 Contiki 程序中使用 malloc

    考虑以下 Contiki 程序 include
  • 使用 STM32 USB 设备库将闪存作为大容量存储设备

    我的板上有这个闪存IC 它连接到我的STM32F04 ARM处理器 处理器的USB端口可供用户使用 我希望我的闪存在通过 USB 连接到 PC 时被检测为存储设备 作为第一步 我在程序中将 USB 类定义为 MSC 效果很好 因为当我将主板

随机推荐

  • [019] [STM32] 利用定时器输出比较模式的翻转功能实现不同占空比和频率的PWM输出

  • C语言中define的用法总结

    1 宏定义的一般形式为 xff1a 宏定义 xff1a span class token macro property span class token directive keyword define span 标识符 常量 span s
  • 在simulink中使用串口模块接收数据并解帧延迟性问题解决

    山重水复疑无路 xff0c 柳暗花明又一村 最近在simulink中搭了一个模型 xff0c 需要通过串口将外部惯导模块的数据读进来 xff0c 解帧后输入模型中进行计算 xff0c 算是半物理仿真 起初烦恼于不知道如何将这种实时更新的数据
  • Simulink中从Workspace中读取时序数据的方法

    1 首先 xff0c 我从adams得到是时长5秒的500组加速度数据 xff0c 将其存为txt格式 并放入matlab路径中 xff0c 其第一列为时间序号 xff0c 234列为三轴的加速度数据 2 在workspace中使用 tex
  • 简单聊聊Betaflight的三种飞行模式

    大概查了一下网上介绍Betaflight飞行模式的文章很多 xff0c 讲了很多很全面 xff0c 但这里我们去粗取精 xff0c 只谈常用的三种模式Angle xff0c Horizon和Acro模式 下面的内容全部翻译自这个英文网站 1
  • Vim中快速定位到某一行的方法

    1 定位到第一行 xff1a 1 43 shift 43 G 2 定位到最后一行 xff1a shift 43 G 3 定位到第x行 xff1a x 43 shift 43 G 或在Vim中 xff1a xff1a x 补充 xff1a 在
  • PX4源码学习(一):结构概述

    最近在做PX4固件的移植开发工作 xff0c 由于之前没有这方面开发经验 xff0c 加之PX4源码又比较庞杂 xff0c 所以想要通过一点一点的学习梳理和实践 xff0c 使这部分工作能够尽快开展起来 博客中如有错误 xff0c 恳请大家
  • PX4(Pixhawk)和Audupilot(APM)的区别与联系

    一 各自的简要介绍 pixhawk是硬件平台 xff0c PX4是pixhawk的原生固件 xff0c 专门为pixhawk开发 APM xff08 Ardupilot Mega xff09 也是硬件 xff0c Ardupilot是APM
  • Makefile和Cmake的区别和联系

    最近在搞无人机飞控的学习 xff0c 大致了解了下PX4的文件结构和编译 xff0c 它的文件中有许多Makefile和Cmake文件 xff0c 对其在整个文件编译过程中的作用不甚了解 在进行一番查询后 xff0c 终于有了个大致的认识
  • 浮点数在计算机中的表示,程序中浮点数的取值和比较。

    小数的十进制 二进制转换 十进制 gt 二进制 整数部分除2取余 xff0c 小数部分乘2取整 考虑 8 25 整数部分8进行除2取余 xff0c 除2商4余0 除2商2余0 除2商1余0 除2商0余1 所以结果是1000 最后一个余数在最
  • 关于PX4系统移植的新的硬件平台一些尝试总结

    最近尝试将PX4的firmware v1 11 0移植到某stm32h7的飞控平台上 xff08 该飞控硬件 xff0c 适配ardupilot和betaflight的固件 xff0c 但不支持PX4 xff0c 跟厂家沟通过 xff0c
  • RTK中浮点解、固定解的区别

    1 RTK固定解 xff08 fix xff09 简言之 xff0c 拥有固定解意味着解算出了正确的解 在常规条件下 xff0c 你拥有了1 3cm的测量精度 2 RTK浮点解 xff08 float xff09 又称差分解 xff0c 此
  • 飞机的姿态角总结

    飞机的俯仰 横滚 航行角统称姿态角 是飞机机体系相对地理系的相对转角 1 航向角为机体纵轴OYb轴在水平面上投影与OYt之间的夹角 xff0c 取值范围为 0 xff0c 360 xff0c 以机体从北向东偏转为正 2 俯仰角为机体纵轴OY
  • Matlab一些设置记录

    在使用matlab时经常要查一些命令 xff0c 索性在这里整理做一个集合 1 设置figrue背景为白色 xff08 默认为灰色 xff0c 直接截图贴图使用时有一丢丢影响效果 xff09 set 0 39 defaultfigureco
  • 如何学好嵌入式的嵌入式

    近来嵌入式挺火 xff0c 于是大家都往这里挤 我想提醒大家的是 xff0c 嵌入式马上也会成为如今的软件业 在你进来之前请先考虑清楚 但只要我们真的学精了一样东西 xff0c 不管它将来变成什么样 xff0c 哪怕最后只剩下一个人 xff
  • Python全局变量和局部变量(超详细,纯干货,保姆级教学)

    全局变量定义 在函数外部定义的变量 所有函数内部都可以使用这个变量 局部变量定义 在函数内部定义的变量 这个变量只能在定义这个变量的函数内部使用 第一种 xff1a global定义全局变量在自定义函数内部 定义看起来一愣一愣的 xff0c
  • stm32——手动移植HAL库以及错误解决方案(以STM32F103ZE为例)

    寄存器编程的缺点 xff1a 代码可读性差 xff0c 二次开发难度大 xff0c 而且要每次都查阅用户手册 xff0c 非常麻烦 HAL库 xff1a HAL库封装出了一层通用性的接口 xff0c 标准化了一套通用性的接口 xff0c 大
  • MATLAB在线编辑器online

    话不多说直接上网址 https matlab mathworks com 这个和下载的MATLAB功能一模一样 xff0c 这是我找了几个例子运行出来的结果 xff0c 和我想要的一模一样 xff0c 不过对于大多数人而言 xff0c 这个
  • stm32——使用结构体描述寄存器映射

    将地址信息放在一个头文件中方便管理 xff0c 存放地址和偏移量 STM32的外设寄存器的组织形式是 基于基地址 43 寄存器偏移地址 比如 xff0c 在RCC的基地址基础上 xff0c 偏移0x00得到RCC CR寄存器 xff0c 偏
  • 江科大stm32-概述

    第一章 STM32概述 1 1 资源介绍 STM32F103C8T6 51单片机使用的是5V供电 xff0c 还有USB输出的电压也是5V xff0c 5V是不在这个供电电压范围内的 xff0c 不能直接给STM32供电 xff0c 如果是