030f gpio stm
STM23学习记录2:外部中断,串口通信,定时器
外部中断: 向量表:异常+中断 所有端口的PIN0对应着EXTI0中短线,PIN1对应EXTI1中断线,依次类推 16个外部中断线,对应7个外部中断入口地址 配置中断优先级的4位要同时完成抢占优先级和响应优先级(子优先级或副优先级)的配置:两组优先级 2+2,2^2抢占,2^2响应比较常用 使用NV ......
Stm32 | TIM固件库函数整理
1.TIM_TypeDef 相关函数 void TIM_DeInit(TIM_TypeDef* TIMx) - 将定时器的所有寄存器和配置参数重置为默认值 - 清除任何挂起的中断状态和中断标志 - 关闭定时器的时钟和相关外设 void TIM_Cmd(TIM_TypeDef* TIMx, Funct ......
STM32深入学习2:定时器和嵌套向量控制器
定时器 8个定时器,高级定时器TIM1+TIM8,通用定时器TIM2-TIM5,基础定时器TIM6+TIM7; 定时器PWM输出 每个定时器有4路输出通道:OC1-OC4 涉及的固件库:stm32f10x_tim.c/stm32f10x_tim.h 1.定时器初始化: void TIM_TimeBa ......
1.2 STM32的GPIO
一、GPIO的8种输入输出模式: 1. 输入: GPIO_Mode_AIN // 模拟输入:用于ADC GPIO_Mode_IN_FLOATING //浮空输入 GPIO_Mode_IPD //下拉输入 GPIO_Mode_IPU //上拉输入 2. 输出: GPIO_Mode_Out_OD //开 ......
stm32 tim adc
ADC可以实现硬件去触发ADC采样,以下两种方式 1、ADC选择Trigger Out Event, TIM的TRGO选择Update Event 2、ADC选择Timerx Capture Compare 1 Event, TIM需要选择Channel 1, 选择 PWM Generation N ......
ROS小车STM32底板代码学习
用的是幻尔科技的新推出的ROS小车的STM32控制底板价格 他的代码是用HAL库写的,而且资料很少,刚开始连ROS1功能包都还在测试。 代码有300多M,编译一次,直接吃席。所以我用轮趣科技的ROS小车代码移植,采用的FreeRTOS写的,跟我学的代码风格几乎一致 移植过程中你会发现,电路很多地方都 ......
【STM32】2_0 GPIO
注:凡是有 FT 标志的,都是兼容 5V 电平的 IO 口,可以直接接 5V 的外设(注意:如果引脚设置的是模拟输入模式,则不能接 5V!,凡是不带 FT 标志的,不可与无5V链接,可能烧坏 MCU。 根据数据手册中列出的每个 I/O 端口的特性,可通过软件将通用 I/O (GPIO) 端口的各个端 ......
STM32深入学习1:时钟系统和GPIO
RCC(复位和时钟控制): 系统复位的因素: 1.NRST按键复位 2.看门狗复位 3.软件复位 4.低功耗管理复位 SYSCLK系统时钟: 1.HSI时钟 2.HSE时钟:外部晶振 3.PLL时钟 系统时钟: PCLK1:APB1分频,最大36mhz PCLK2,ADC,TIM1,TIM8:APB ......
CAN通信知识梳理及在Stm32上的应用(HAL库)
![](https://img-blog.csdnimg.cn/f5a5efd5ec9144d58c357caff7f349dd.gif#pic_center) ### 文章目录 - [一.CAN通信简介](#CAN_5) - [二.硬件连接](#_15) - [三.CAN总线上的电平信号](#CA ......
STM32 Wifi开发
##一、 ###1.用到的资源说明 ####1.1 wifi模块:ESP8266EX ####1.2 串口,串口接收不定长数据采用定时器超时的方式判断一帧数据是否接收完成,定时器1ms中断一次; ####2.采用AP+Station模式,这种模式比较实用。 AP用来设置wifi信息的,连接ESP82 ......
嵌入式开发软件安装教程(STM32CubeMX+MDK)
1. STM32CubeMX,图形化配置工具 安装STM32CubeMX必须具备的条件 (1)JRE(Java Runtime Environment):JAVA运行环境。 (2)STM32CubeMX软件:图形化配置,生成初始化代码。 (3)HAL库 PACK包:F0、F1、F3、H7等Corte ......
gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;含义
gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>; 第一个参数是GPIO编号 第二个参数是GPIO引脚 一般GPIO有32个引脚 定义在 kernel-4.19\include\dt-bindings\pinctrl\rockchip.h #define RK_GPIO ......
RK3399驱动开发 | 01 -RK3399 gpio的使用(用户态和设备树两种方式)
一、RK3399的GPIO RK3399有5组GPIO,GPIO0-GPIO4,每一组GPIO成为一个GPIO bank,每组GPIO包含32个引脚,需要注意,不是所有 bank 都有全部编号,例如 GPIO4 就只有 C0-C7,D0-D2,所以一共有122个可用GPIO 二、计算GPIO编号Fr ......
关于 STM32 在使用 C++ 进行编程时无法进行中断(触发中断就死循环)的问题
他妈的!!!就因为这破事导致我浪费了两天的时间!!! 都是基础不扎实的锅,导致我没能第一时间想到问题的关键 好了,平复一下心情,快速的写一篇博客来记录这个叼问题 ## 解决方法 先把结论放在这里:用`extern "C" {}`把中断函数包起来 ```C++ // 就像这样 extern "C" { ......
12 pinctrl 和 gpio 子系统实验
一、pinctrl 子系统 1. 什么是 pinctrl 子系统? 首先回顾一下如何初始化 LED 所使用的 GPIO: ①、修改设备树,添加相应的节点,节点里面重点是设置 reg 属性, reg 属性包括了 GPIO相关寄存器。 ②、获取 reg 属性中 GPIOI_MODER、 GPIOI_OT ......
GPIO输入
按键:按下导通,松手断开 按键抖动:由于案件内部使用的是机械式弹簧片来进行通断的,所以在按下和松手的瞬间会伴随有一连串的抖动,比如有5-10ms的时间,对于单片机来说这个抖动是漫长的,所以在程序中,要对这个抖动进行过滤。否则就会出现按键按一下,单片机反应了多次的现象。 解决方法:加一段延时。 ......
STM32学习记录1:GPIO配置
GPIO按照ABC进行分组管理,每组GPIO都有自己独立的配置寄存器: GPIOX_CRL/GPIOx_CRH:输入输出模式配置 GPIOx_IDR:数据输入 GPIOx_ODR:数据输出 RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOC, ENABLE); ......
GPIO寄存器及工作模式/F4
GPIO寄存器(general-purpose I/O port)(registers) GPIO port mode register GPIOx_MODER 端口模式 MODERy[1:0] 00:input //输入( 默认) 01:general purpose output mode // ......
t visual develop STM8 软件配置教程
打开STVD软件,点击Debug instrument→targat setting,Target选择Swim ST-Link,将Restart the application…勾选上,Target Port Selection 选择usb://usb,将Show the selected …勾选上 ......
nuttx-on-the-stm32f103c8t6
https://microcontrollerelectronics.com/nuttx-on-the-stm32f103c8t6/ ![](https://img2023.cnblogs.com/blog/79238/202308/79238-20230816093358501-592691937 ......
STM32单片机实现固件在线升级(IAP)
## 固件升级方案综述 单片机的固件升级方式有很多种, 1、ICP:In Circuit Programing,简单说就是在单片机开发时使用烧录器升级程序,比如使用J-Link烧录单片机程序。 2、ISP:In System Programing,在单片机内部实现了基于通信接口(如串口、I2C、SP ......
STM32F103C8T6测试点亮小灯
[TOC](STM32F103C8T6第一次点灯) # 代码 ``` #include "stm32f10x.h" // Device header int main(void){ // 寄存器操作,stm32有很多寄存器,操作不方便,推荐使用标准库或HAL库 // RCC->APB2ENR = 0 ......
STM32F103C8T6第一次点灯
@[TOC](STM32F103C8T6第一次点灯) # 代码 ``` #include "stm32f10x.h" // Device header int main(void){ // 寄存器操作,stm32有很多寄存器,操作不方便,推荐使用标准库或HAL库 // RCC->APB2ENR = ......
GPIO
一、GPIO General Purpose Input/Output 通用目的输入输出 输入: 通过IO引脚读取外部输入电平的高或低 输出: 通过IO引脚向外输出高电平或者低电平 1.GPIO八种工作模式 ![](https://img2023.cnblogs.com/blog/37870/202 ......
RCC & GPIO库函数&传感器输入
RCC: Reset and Clock Control,即复位和时钟控制。 一般在.h文件的末尾都是一些函数声明,RCC常用的三个函数(外设时钟控制,没有时钟外设不工作): void RCC_AHBPeriphClockCmd(uint32_t RCC_AHBPeriph, FunctionalS ......
GPIO
通过编程读写相关寄存器。就可以实现对引脚的控制 先看两个32位的配置寄存器 假设点亮某个LED灯,需要先设置端口配置高寄存器(GPIOx_CRH) (x=A..E)(配置成推挽输出) 这个配置就是GPIOC->CRH=0x00300000 PS: 输出速度一般按最低的就行,当然要求不高直接拉满 对应 ......
野火stm32指南者开发板点亮LED
[toc] ### 1.芯片手册中的LED电路图 ![图1](https://img-blog.csdnimg.cn/34c2a95aa89c4cbe8a7904429d889564.png) ### 2.官网手册 ![图2](https://img-blog.csdnimg.cn/e9b1131d ......
01-了解STM32以及ARM
[toc] ### 一. ARM概念 >1.ARM全称Acorn RISC Machine (英国Acorn公司精简指令集机器). ARM处理器本身是32位设计, 但也配备16位指令集, 一般来讲比等价32位代码节省35%, 却能保留32位系统的所有优势. >2.Acorn公司在英国, 它本身并不生 ......
STM32 对编码器读数进行线性化处理
使用 STM32 的标准库和 HAL 库的函数读取编码器的数值,如果车轮向前转,编码器的数值从 1 往上增加,如果车轮向后转,则编码器的数值从 65535 往下减小,原因是定时器用于存储计数值的寄存器 TIMx_CNT 是一个 16 位的寄存器,可以正向或者反向计数,当 TIMx_CNT 从 0 开 ......