
STM32学习
文章平均质量分 88
总结所学
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
HAL 固件库
基于Cortex系列芯片采用的内核都是相同的,区别主要为核外的片上外设的差异,这些差异导致程序在同内核,不同外设的芯片上移植困难。为了解决不同的芯片厂商生产的Cortex微控制器软件兼容性问题,ARM与芯片厂商建立了CMSIS标准(CortexMicroControllerSoftware所谓CMSIS标准,实际是一个软件抽象层,一套函数库,提供用户程序与arm内核和厂商外设的接口CMSIS函数库主要包括•内核函数层其中包含用于访问内核寄存器。................................原创 2022-07-15 22:58:20 · 7744 阅读 · 0 评论 -
设计PCB线宽、过孔与电压、电流关系
自记:一、PCB电流与线宽:PCB载流能力的计算一直缺乏权威的技术方法、公式,经验丰富CAD工程师依靠个人经验能作出较准确的判断。但是对于CAD新手,不可谓遇上一道难题。PCB的载流能力取决与以下因素:线宽、线厚(铜箔厚度)、容许温升。大家都知道,PCB走线越宽,载流能力越大。假设在同等条件下,10MIL的走线能承受1A,那么50MIL的走线能承受多大电流,是5A吗?答案自然是否定的。请看以下来来自国际权威机构提供的数据:线宽的单位是:Inch英寸=1000mil(1inch=2.54cm=原创 2022-04-28 22:23:28 · 45660 阅读 · 6 评论 -
stm32控制超声波测距模块HC-SR04
1.HS-SR04模块实物图、原理图、尺寸图2.HC-SR04模块说明2.1 产品特点:HC-SR04超声波测距模块包括超声波发射器、接收器与控制电路;接口:VCC,GND,TRIG 触发控制信号输入,ECHO 回响信号输出。超声波模块HC-SR04电气参数 工作电压 DC 5 V 工作电流 15mA 工作频率 40kHz 最远射程 4m 最近射程 2cm 测距精度 3mm 测量角度...原创 2020-12-02 17:46:03 · 8916 阅读 · 9 评论 -
数字温湿度传感器DHT11模块
1.实物原理图2.模块说明2.1 DHT11产品概述DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检...原创 2020-11-30 12:14:23 · 81100 阅读 · 15 评论 -
红外避障模块
试验实现红外避障模块被遮挡时点亮LED功能。1.实物原理图2.模块描述电路板尺寸:3.2CM*1.4CM;3mm 的螺丝孔,便于固定、安装; 接通电源后,红色指示灯亮起,该传感器模块对环境光线适应能力强,其具有一对红外线发射与接收管,发射管发射出一定频率的红外线,当检测方向遇到障碍物(反射面)时,红外线反射回来被接收管接收,经过比较器LM393电路处理之后,绿色指示灯会亮起,同时信号输出接口输出数字信号(一个低电平信号),可通过电位器旋钮调节检测距离,顺时针调电位器,检测距..原创 2020-11-25 11:46:25 · 31814 阅读 · 2 评论 -
WIFI模块ESP8266-01S
1. 安信可公司物联网模块:ESP8266系列Wi-Fi模块一共有01~14十多款模块2.ESP-01S尺寸、管脚定义3.ESP-01S和ESP-01区别ESP8266-01简称ESP-01,ESP8266-01S简称ESP-01S3.1 外观区别:ESP8266-01S天线区域右下角只有一个指示灯,ESP8266-01天线区域右下角有两个指示灯。 ESP8266-01S背面有引脚说明,ESP8266-01背面有没有引脚说明。3.2 电路区别:..原创 2020-11-23 00:58:13 · 84928 阅读 · 6 评论 -
蓝牙模块HC05
1. USB-TTL驱动安装,连接蓝牙模块2. 蓝牙模块的调试2.1 两种工作模式:HC-05蓝牙串口通讯模块具有两种工作模式:命令响应工作模式和自动连接工作模式。在自动连接工作模式下模块又可分为主(Master)、从(Slave)和回环(Loopback)三种工作角色。当模块处于自动连接工作模式时,将自动根据事先设定的方式连接的数据传输; 当模块处于命令响应工作模式时能执行AT命令,用户可向模块发送各种AT 指令,为模块设定控制参数或发布控制命令。2.2...原创 2020-11-22 00:52:32 · 40121 阅读 · 8 评论 -
e-Link32用户手册
1. 概览2.硬件描述硬件连接说明:e-Link32在MDK环境下使用串口驱动安装:原创 2020-11-21 12:26:27 · 1339 阅读 · 1 评论 -
第9章 舵机控制
有一种电机可以在程序的控制下,在一定范围内连续改变输出轴角度并且可以保持住。这种电机最早被用在航模和船模等遥控模型中,控制各种舵面的转动,这就是舵机。现在舵机除了运用在遥控模型中,也大量的运用在各种机器人、机械臂的关节以及智能小车的转向机构中。下图就是一种标准舵机的外形。9.1 舵机分类1. 按照舵机的控制电路可以分为:模拟舵机和数字舵机。模拟舵机和数字舵机的机械结构可以说是完全相同的,模拟舵机的控制电路为纯模拟电路,需要一直发送目标信号,才能转到指定的位置,响应速度较慢,无反应区较大;数字舵原创 2020-11-20 23:31:01 · 24548 阅读 · 0 评论 -
STM32 F103 外部晶振8M改为12M
stm32 实现外部晶振变换有2种方法:第一种修改系统库函数: 第一步,打开stm32f10x.h,将 #define HSE_VALUE ((uint32_t)8000000) 修改为:#define HSE_VALUE ((uint32_t)12000000) 重要必须做 第二步,打开system_stm32f10x.c,修改PLL参数,将 RCC->CFGR &= (uint32_t)((uint32_t)~(R...原创 2020-11-19 22:17:04 · 3178 阅读 · 1 评论 -
STM32 F103 通用高级定时器
32.1 高级控制定时器高级控制定时器(TIM1 和TIM8)和通用定时器在基本定时器的基础上引入了外部引脚,可以实现输入捕获和输出比较功能。高级控制定时器比通用定时器增加了可编程死区互补输出、重复计数器、带刹车(断路)功能,这些功能都是针对工业电机控制方面。高级控制定时器时基单元包含一个16 位自动重装载寄存器ARR,一个16 位的计数器CNT,可向上/下计数,一个16 位可编程预分频器PSC,预分频器时钟源有多种可选,有内部的时钟、外部时钟。还有一个8 位的重复计数器RCR,这样最高可实现40原创 2020-11-19 13:10:55 · 5261 阅读 · 0 评论 -
STM32 F103 RCC 使用HSE配置时钟
STM32F10x中文参考手册 RCC设置寄存器H锁相环PLL使能、就绪标志位;外部高速时钟HSE使能、就绪标志位;PLLXTPRE:HSE分频器作为PLL输入;PLLSRC:PLL输入时钟源;PLLMUL:PLL倍频系数SW[1:0]:系统时钟切换;SWS[1:0]:系统时钟切换状态HPRE[3:0]: AHB预分频;PPRE1[2:0]:低速APB预分频;PPRE2[2:0]:高速APB预分频MCO: 微控制器时钟输出 (100 系统时钟(SYSCLK)输出).原创 2020-11-18 22:26:12 · 1558 阅读 · 0 评论 -
一种比较和谐的keil字体颜色设置
找到keil路径下的global.prop文件,将# C/C++ Editor files下的部分改为如下的设置即可。本人的路径为D:\Keil_v5\UV4\global.prop# C/C++ Editor filestemplate.cpp="#define","#define |";"#if","#if |\r\n\r\n#endif";\\ "#include","#include ";"Header","// Header:\r\n// File Name: |\r\n// ...原创 2020-11-18 16:12:51 · 1756 阅读 · 0 评论 -
STM32F103 基本定时器 (P2MDA-KM4)
27 基本定时器27.1 定时器分类STM32F1 系列中,除了互联型的产品,共有8 个定时器,分为基本定时器,通用定时器和高级定时器。基本定时器:TIM6 和TIM7 是一个16 位的只能向上计数的定时器,只能定时,没有外部IO。通用定时器TIM2/3/4/5 是一个16 位的可以向上/下计数的定时器,可以定时,可以输出比较,可以输入捕捉,每个定时器有四个外部IO。高级定时器TIM1/8 是一个16位的可以向上/下计数的定时器,可以定时,可以输出比较,可以输入捕捉,还可以有三相电机互补原创 2020-11-17 22:52:40 · 3743 阅读 · 0 评论 -
cube MX生成项目报 error: L6236E: No section matches selector - no section to be FIRST/LAST.解决方法
使用STM32 CubeMx工具生成MDK工程之后,初次编译,提示error: L6236E: No section matches selector - no section to be FIRST/LAST.分析:信息提示是关于启动文件的,打开MDK manage project items,查看后发现,当前项目中并未包含启动文件。添加startup_stm32f103xe.s,(在cube生成项目的MDK-ARM文件夹下)...原创 2020-11-14 14:53:51 · 1620 阅读 · 0 评论 -
数字舵机和模拟舵机的区别
买了个360度舵机才知道和180度舵机的区别:360度舵机只能控制方向和速度,不能控制角度,重新买一个,买舵机不就是控制角度。数字舵机Digital Servo和模拟舵机Analog Servo在基本机械结构方面是完全一样的,主要由马达、减速齿轮、控制电路等组成,而数字舵机和模拟舵机的最大区别则体现在控制电路上:数字舵机的控制电路比模拟舵机多了微处理器和晶振。不要小看这一点改变,它对提高舵机的性能有着决定性的影响。数字舵机与模拟舵机的不同主要体现在以下两个方面:...原创 2020-11-12 22:49:28 · 2765 阅读 · 0 评论 -
stm32之 GPIO_Remap_SWJ_Disable之后无法使用swd下载程序解决方法
在程序中加入GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);按下复位键,debug界面,选择setting,在connect选项选择with pre-reset,然后点击下载,搞定。原创 2020-08-22 01:41:17 · 2724 阅读 · 0 评论 -
超声波测距为什么除以58
常规算法 distance_cm = (定时器时间us* 34000cm)/1000000/2)=(us) * 34)/2000);//声速340m/s另一种算法:distance_cm=(us)/58声音在干燥、摄氏 20度的空气中的传播速度大约为343米/秒,合34,300厘米/秒。或者,我们作一下单位换算,34,300除以1,000,000厘米/微秒。即为:0.0343厘米/微秒再换一个角度,1/(0.0343 厘米/微秒)即:29.15 微秒/厘米。这就意味着,每291...原创 2020-08-13 17:27:56 · 7761 阅读 · 0 评论 -
NVIC_EnableIRQ(SysTick_IRQn)
I'm using a Cortex-M3 LPC1548 from NXP with uVision IDE.In themain()function, if I use:SysTick_Config(SystemCoreClock * SYSTICK_INT_FREQ); NVIC_EnableIRQ(SysTick_IRQn); // <--- HardFault happens in this line.I got a HardFault exception every..原创 2020-08-02 18:48:04 · 4338 阅读 · 0 评论 -
STM32 FSMC 16位寻址 地址移位的解读
一、当 Bank1 接的是 16 位宽度存储器的时候:HADDR[25:1] FSMC_A[24:0]。当 Bank1 接的是 8 位宽度存储器的时候:HADDR[25:0] FSMC_A[25:0]。二、//LCD 操作结构体typedef struct{ vu16 LCD_REG;vu16 LCD_RAM;} LCD_TypeDef;//使用 NOR/SRAM 的 Bank1.sector4,地址位 HADDR[27,26]=11 A10 作为数据命令区分线//注意 16 位.原创 2020-07-13 15:21:59 · 5169 阅读 · 2 评论 -
STM32 Systick实现us和ms定时的两种方式
第一种方式是野火的,第二种方式是正点原子的,正点原子的SysTick->LOAD=(u32)nms*fac_ms,应该再减1,作者本人应该也不知道,如果我有错误,大佬们请告知,谢谢。systick.h文件:#ifndef __SYSTICK_H#define __SYSTICK_H#include "stm32f10x.h"#include "core_cm3.h"//24位LOAD寄存器最大延时1864msvoid delay_init(void);void delay..原创 2020-07-12 19:59:35 · 8665 阅读 · 1 评论 -
上拉下拉
1.什么是上下拉电阻?上拉电阻:把一个不确定的信号通过电阻连接到高电平,是电信号初始化为高电平。下拉电阻:把一个不确定的信号通过电阻连接到低电平,使电信号初始为低电平。本质:上拉是对器件注入电流,下拉是输出电流2.上下拉电阻接线方法上拉电阻接线方法电阻R12将KEY1网路标识上拉到高电平,在按键s2没有按下的情况下key1将被钳制在高电平,从而避免了引脚悬空而引起...转载 2020-02-23 19:27:49 · 695 阅读 · 0 评论