STM32
文章平均质量分 93
STM32学习笔记
夏沫の浅雨
arachnid.cc
展开
-
STM32笔记之 SDRAM
STM32笔记之 SDRAM原创 2022-11-12 17:40:34 · 4491 阅读 · 5 评论 -
STM32笔记之 Boot(自举模式)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、自举配置二、自举模式各简述1、Main Flash memory(BOOT1=x BOOT0=0)2、System memory(BOOT1=0 BOOT0=1)3、Embedded Memory(BOOT1=1 BOOT0=1)4、总结扩展:ISP、ICP、ICSP、IAP编程方式1、ISP(In-System Programming)原创 2021-05-23 16:57:50 · 4272 阅读 · 9 评论 -
STM32笔记之特殊地址(识芯)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、唯一 ID号二、芯片容量三、器件 ID号四、其它一、唯一 ID号在 STM32的全系列 MCU中均有一个 96位的唯一设备标识符。在 ST的相关资料中,对其功能的描述有 3各方面:用作序列号(例如 USB 字符串序列号或其它终端应用程序)在对内部 Flash 进行编程前将唯一 ID 与软件加密原语和协议结合使用时用作安全密钥以提高原创 2021-04-16 22:13:27 · 3721 阅读 · 2 评论 -
STM32笔记之 IWDG(独立看门狗)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、介绍二、配置参数三、配置代码四、设计思维一、介绍在 STM32系列中,是内置有两种看门狗的,分别是 IWDG和 WWDG,本次要分析的是 IWDG独立看门狗;从层面上来讲,IWDG和 WWDG都属于硬件看门狗,如果程序上跑了多线程,需要在每个线程上进行检测而另外设计看门狗保护程序,那么这种就属于软件看门狗,..原创 2021-01-24 15:55:48 · 1289 阅读 · 0 评论 -
STM32cubeMX之 uart问题汇总
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、gcc环境下输入输出重定向问题二、gcc环境下的输出流刷新三、HAL库上的一些函数理解四、未完待续。。。一、gcc环境下输入输出重定向问题在 gcc环境下,printf重定向跟以往的在 IDE上的重定向有点不同。在以往的 Keil、IAR等 IDE上面,都是用以下方式重定向的:int fputc(int ch, FILE *f)i原创 2020-11-03 23:46:12 · 1402 阅读 · 0 评论 -
STM32开发之 VS Code + GDB下载调试
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。在完成上一篇的 STM32开发之 VS Code + gcc环境编译后,那么就可以根据以下的环境搭建实现下载及在线调试了。目录一、软件下载二、搭建调试链接三、下载配置四、调试配置五、DEBUG调试一、软件下载OpenOCD:https://gnutoolchains.com/arm-eabi/openocd/一个开源的片上调试器(Op原创 2020-10-03 00:20:26 · 3339 阅读 · 0 评论 -
STM32开发之 VS Code + gcc环境编译
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、程序安装二、CubeMX工程生成三、VSCode环境部署四、工程编译五、编译清除一、程序安装1、VSCode:https://code.visualstudio.com/Download好用到爆的文本编辑器,配合强大的插件,使你的开发效率大大提高。2、Java:https://www.java.com/zh-CN/download/原创 2020-10-01 01:09:34 · 2987 阅读 · 0 评论 -
STM32笔记之 SWJ(JTAG-DP和 SW-DP)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。一、调试支持(DBG)在 STM32F10x中,支持两种调试接口:1、串行接口;2、JATAG调试接口其调试框图如下:由以下几部分组成:SWJ-DP:串行/JTAG调试端口 AHP-AP:AHB访问端口 ITM:执行跟踪单元 FPB:闪存指令断点 DWT:数据触发 TPUI:跟踪单元接口(仅较大封装的芯片支持) .原创 2020-09-16 00:59:37 · 19461 阅读 · 7 评论 -
STM32笔记之 PWM(脉宽调制)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、PWM简介二、STM32F1中对 PWM的支持三、PWM计数模式四、工作原理五、PWM输出的模式六、例程演示一、PWM简介脉冲宽度调制(英语:Pulse Width Modulation,缩写:PWM),简称脉宽调制,是将模拟信号变换为脉冲的一种技术,一般变换后脉冲的周期固定,但脉冲的工作周期会依模..原创 2020-09-12 14:52:10 · 16181 阅读 · 0 评论 -
STM32笔记之 GUI(LittlevGL移植)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。一、LittlevGL GUILittlevGL是一个免费的开放源代码图形库,它提供创建嵌入式GUI所需的一切,它具有易于使用的图形元素,精美的视觉效果和低内存占用;功能强大且易于使用的嵌入式GUI,具有许多小部件,高级视觉效果(...原创 2020-05-02 00:21:51 · 11995 阅读 · 7 评论 -
STM32笔记之 Fatfs(文件系统移植)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。一、介绍FatFs是用于小型嵌入式系统的通用 FAT / exFAT文件系统模块。FatFs模块是按照 ANSI C(C89)编写的,并且与磁盘 I / O层完全分开。因此,它独立于平台。它可以并入资源有限的小型微控制器中,例如8...原创 2020-04-24 20:37:51 · 3408 阅读 · 0 评论 -
STM32笔记之 SDIO(SD Card操作)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。一、SDIO接口...原创 2020-04-22 21:29:41 · 3942 阅读 · 0 评论 -
STM32笔记之 I2C(硬件 or 模拟实现)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。一、I2C协议还是一样,在实现 I2C之前必须要了解 I2C协议的实现,请看之前的文章:UART/ USRAT、I2C、SPI通信方式扫盲,这里就不费劲再说一遍了二、AT24Cxx芯片为了加深对 I2C协议的理解以及...原创 2020-04-19 15:36:56 · 10839 阅读 · 1 评论 -
STM32笔记之 SPI(硬件 or 模拟实现)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、SPI协议二、W25Qxx芯片三、硬件的 SPI四、模拟的 SPI五、对 W25Q64的实际应用一、SPI协议在实现 SPI功能之前,我们必选先了解好 SPI协议是怎么实现的,当我们知道它是怎...原创 2020-04-19 12:06:10 · 15008 阅读 · 2 评论 -
STM32笔记之 FLASH(内存)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、内存大小二、STM32F103xx系列内存大小三、闪存概述四、写和擦除闪存五、读操作六、总代码实现一、内存大小内存的容量一般都是 2的整次方倍,系统对内存的识别是以Byte(字节)为单位,...原创 2020-01-30 12:31:56 · 2959 阅读 · 0 评论 -
STM32笔记之 DMA(直接存储器访问)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、DMA介绍二、工作过程三、功能特性四、DMA请求映像五、代码实现过程六、代码注释总分析一、DMA介绍直接内存访问(DirectMemoryAccess,DMA)是计算机科学中的一种内存...原创 2020-01-29 22:10:43 · 1074 阅读 · 1 评论 -
STM32笔记之 ADC(模数转换)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、模拟量和数字量二、ADC介绍三、功能特征四、转换模式五、数据对齐方式六、数据计算七、代码实现一、模拟量和数字量在开篇之前,先来了解点硬件知识模拟(类比)信号:在时间和数值上均具有连...原创 2020-01-28 20:48:17 · 3723 阅读 · 0 评论 -
STM32笔记之 Timer(定时器)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、定时器简单介绍二、高级控制定时器(TIM1 & TIM8)三、通用定时器(TIM2-TIM5)四、基本定时器(TIM6& TIM7)五、代码实现一、定时器简单介绍 ...原创 2020-01-28 16:59:42 · 9852 阅读 · 0 评论 -
STM32笔记之 USART(串口)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、串口通讯方式二、USART收发功能框图三、USART模式配置四、代码实现过程五、printf()函数重定向六、总工程代码一、串口通讯方式这里就不再累赘阐释了,看以前的篇章UART/ US...原创 2020-01-28 13:14:50 · 4317 阅读 · 0 评论 -
STM32笔记之 stm32f10x_conf.h分析
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、各外设库文件对应关系二、取消编译器对当前源文件编译在编译过程中,我们往往会需要等待很长时间,可能刚开始工程量小的时候不会有太大差别,但是到后面工程量大的时候,你就会觉得编译的时间过长了;要知道,因为我们是把...原创 2020-01-28 11:36:23 · 5669 阅读 · 0 评论 -
STM32笔记之 NVIC(嵌套向量中断控制器)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、NVIC简单解释二、抢占优先级与子优先级三、抢占优先级和子优先级的区分(白话文)四、NVIC配置分析 在STM32笔记之 EXIT(外部中断)篇章中,已经了解到 EXIT的配置,但是...原创 2020-01-27 17:47:03 · 3595 阅读 · 0 评论 -
STM32笔记之 EXIT(外部中断)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、EXIT控制原理二、外部中断的 I/O映像三、中断服务四、配置流程(代码解析)五、中断函数处理在上一篇STM32笔记之 GPIO引脚中,有用到 EXIT外部中断作为 Key输入触发,所以本篇来...原创 2020-01-27 11:38:04 · 7320 阅读 · 0 评论 -
STM32笔记之 GPIO(通用输入输出引脚)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、GPIO模式二、外设 I/O配置模式选择三、GPIO配置代码实现四、总工程实现一、GPIO模式STM32的 GPIO模式有以下几种: GPIO_Mode_AIN --模拟输入 GPI...原创 2020-01-26 21:46:04 · 11178 阅读 · 1 评论 -
STM32笔记之 Systick(滴答定时器)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、Systick介绍二、Systick时钟分析三、Systick时钟节拍代码实现一、Systick介绍在 ARM Cortex-M3内核中有一个 Systick定时器,它是一个 24bit的定时器,...原创 2020-01-26 19:34:27 · 3851 阅读 · 0 评论 -
STM32笔记之 RCC(时钟控制)
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、时钟树分析二、SystemInit() 函数执行分析三、高速外部时钟输入频率更改(依旧是做成 72MHz输出)四、时钟频率确认五、结语在单片机中时钟就相当于人的心脏,以提供心跳(后面我们再去了解...原创 2020-01-26 15:14:25 · 2517 阅读 · 0 评论 -
STM32笔记之工程建立
写在前面:本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。目录一、工程文件夹建立(以便管理)二、STM32外设标准固件库获取及提取三、工程导入四、工程配置五、没有了,看下一篇吧 1、开发环境:Keil uVision5 V5.21 2、标准固件...原创 2020-01-25 18:18:52 · 460 阅读 · 1 评论