1、CRC计算公式 所有的STM32芯片都内置了一个硬件的CRC计算模块
原创
2021-08-23 11:37:44
929阅读
上一篇文章《STM32基础定时器详解》中有提到影子寄存器,下文将详细介绍影子寄存器。 01、概述 在定时器框图中,有个小细节,有些寄存器下有个阴影 有这些阴影的表示这些寄存器存在影子寄存器。 在图例中也有对影子寄存器的说明: 根据控制位,在发生U事件后,预装载寄存器内容转移到有效寄存器。这也就是对影 ...
转载
2021-02-05 19:39:00
668阅读
2评论
介绍两部分内容:什么是存储器映射什么是寄存器及寄存器映射 为了让大家对存储器与寄存器有一个更清楚的认识,并且为之后使用 C 语言来访问 STM32 寄存器内容打下基础。等明白了如何使用 C 语言封装底层寄存器,也就为后面学习库函数的开发做好了铺垫。什么是存储器映射 程序存储器、数据存储器、寄存器和I/O端口
转载
2024-06-13 20:48:31
139阅读
寄存器讲解:原理讲解芯片讲解STM32F103芯片存储器映射寄存器映射STM32的外设地址映射操作实例C语言对寄存器的封装封装总线和外设基地址
原创
2021-06-07 17:53:46
3075阅读
STM32通用IO 寄存器一、端口配置寄存器 CRH、CRL1、MODE2、CNF二、数据寄存器 ODR、IDR1、ODR2、IDR三、置位/复位寄存器 BSRR1、BSRR四、复位寄存器 BRR1、BRR五、锁存寄存器 LCKR1、LCKR六、ODR、BSRR、BRR之间的联系与区别**既然ODR寄存器既可以输出高电平也可以输出低电平那么为什么还需要BSRR和BRR呢?****为什么BSRR寄
了解了GPIO口的工作原理,我们下一步的操作就是如何去配置GPIO,今天我将分享一下我对GPIO配置的了解(参考资料:正点原子开发手册)配置每组IO口的寄存器:(每一组一套寄存器)1、两个32位的配置寄存器;GPIOx_CRL,GPIOx_CRH 2、两个32位的数据寄存器:GPIOx_IDR,GPIOx_ODR 3、一个32位置位/复位寄存器:GPIOx_BSRR 4、一个16位的复位寄存器GP
参考资料: GPIO相关介绍 STM32 GPIO的配置寄存器(CRL、CRH)快速学习 stm32的寄存器都是32位的。GPIO_TypeDef /**
* @brief General Purpose I/O
*/
typedef struct
{
__IO uint32_t CRL;
__IO uint32_t CRH;
__
转载
2024-03-15 19:40:05
217阅读
[野火]《STM32库开发实战指南》系列程序文章目录main.cstm32f10x.hstartup_stm32f10x_hd.smain.c#include "stm32f10x.h"int main (void){}void SystemInit(void){ // 函数体为空
原创
2021-09-16 17:38:53
285阅读
00. 目录文章目录00. 目录01. 概述02. IO补偿单元03. SYSCFG寄存器3.1 SYSCFG存储器重映射寄存器 (SYSCF
原创
2022-03-16 14:37:47
587阅读
一、内存管理简介1、如何在LCD上实现SD卡文件浏览?需要读取所有文件名到内存,然后显示到LCD。一般的方法是定义一个数组来存储所有文件名。1)需要知道最大文件名的长度。(比如255字节)2)需要知道文件的个数。(如果没有内存管理,则需要定义一个很大的数组来存储文件名。这样的话会让单片机运行起来鸭梨很大,而且单片机内存也有限)2、什么是内存管理?内存管理是指软件运行时对MCU内存资源的分配和使用的
本文希望在上一节的基础上,把指针操作过渡到寄存器的使用,来帮助读者深入理解寄存器。引入头文件主函数里出现了强制转换与指针的操作,程序不那么容易理解。我们把寄存器的地址进行宏定义,可以增强可读性。#define RCC_APB2ENR (*(unsigned int *)0x40021018)#define GPIOB_CRH (*(unsigned int *)0x40010c04)#de
原创
2023-01-11 12:00:11
246阅读
00. 目录文章目录00. 目录01. 概述02. IO补偿单元03. SYSCFG寄存器3.1 SYSCFG存储器重映射寄存器 (SYSCFG_MEMRMP)3.2 外设模式配置寄存器 (SYSCFG_PMC)3.3 外设模式配置寄存器(SYSCFG_PMC)3.4 外部中断配置寄存器1 (SYSCFG_EXTICR1)3.5 外部中断配置寄存器2 (SYSCFG_EXTICR2)3.6 外部中断配置寄存器3 (SYSCFG_EXTICR3)3.7 外部中断配置寄存器4 (SYSCFG_EXTICR4)
原创
2021-09-02 14:27:58
2063阅读
/ #include "stm32f10x_lib.h" /
原创
2021-08-23 11:38:10
374阅读
本文通过介绍GPIO寄存器,介绍寄存器编程方法,实现与前一章库函数编程类似的控制功能。
原创
精选
2024-03-17 14:54:58
1050阅读
使用BRR和BSRR寄存器可以方便地快速地实现对端口某些特定位的操作,而不影响其它位的状态。 比如希望快速地对GPIOE的位7进行翻转,则可以: GPIOE->BSRR = 0x80; // 置'1' GPIOE->BRR = 0x80; // 置'0' 如果使用常规'读-改-写'的方法: GPIO ...
转载
2021-07-26 10:44:00
626阅读
2评论
什么是寄存器提到单片机,就不得不提到寄存器。根据百度百科介绍,寄存器是中央处理器内的组成部分。寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和地址。 简单来说,寄存器就是存放东西的东西。从名字来看,跟火车站寄存行李的地方好像是有关系的。只不过火车站行李寄存处,存放的行李;寄存器可能存放的是指令、数据或地址。 存放数据的寄存器是最好理解的,如果你需要读取一个数据,直接到这个寄存
原创
2023-01-11 12:00:22
3857阅读
源:STM32串口寄存器操作//USART.C/*********************************************************************************************************//* USART 收发 *//* 陈鹏...
转载
2015-07-28 09:38:00
193阅读
2评论
在keil5中新建STM32的工程文件,该工程基于STM32F103。1.新建一个文件夹,自己根据所要进行的项目进行命名“超声波测距”,同样在内部新建“USER”;2.打开keil,从“Project”选择“New μVision Project...”,如下图:
3.将项目定位到“超声波测距”的“USER”目录下,然后按照自己的需求进行命名;
4.然后会弹出选择框,我们根据自己手中的STM32选
原创
2022-06-17 00:10:17
757阅读
点赞
先来回顾一下,前两篇Linux下开发stm32(一) | 使用gcc-arm-none-eabi工具链编译和Linux下开发stm32(二) | 使用openocd下载与调试中,我们介绍了如何创建一个空的裸机工程(只有启动文件和main文件),并编译工程生成elf文件,然后将其转为bin格式或hex格式,使用openocd下载,最后编写了一个makefile雏形,并成功点亮了一个LED~但是这个...
原创
2021-07-09 10:33:39
483阅读
用MDK软件仿真的时候,无外部下拉,GPIO管脚初始化之后IDR寄存器的值为0,这是软件仿真的BUG。 下面也是一个例子:软件仿真的时候会死在等待松手部分,实际却是正常通过。
转载
2016-09-18 13:24:00
292阅读
2评论