工程stm 32

STM32CubeMx LL库BUG之一

STM32CubeMx是目前最新的V5.5 STM32F407,输出LL库,使用FreeRTOS, 任务堆栈大小错误: 在STM32CubeMx上任务堆栈的单位是word,即4个byte。但是实际上这里的单位是byte,就是说你设置256的话(即1024 bytes),实际上给你生成的代码只有256 ......
CubeMx STM BUG 32

STM32F103内部FLASH及地址表

在我们应用开发时,经常会有一些程序运行参数需要保存,如一些修正系数。这些数据的特点是:数量少而且不需要经常修改,但又不能定义为常量,因为每台设备可能不一样而且在以后还有修改的可能。将这类数据存在指定的位置,需要修改时直接修改存储位置的数值,需要使用时则直接读取,会是一种方便的做法。考虑到这些数据量比 ......
地址 FLASH F103 STM 103

STM32HAL库使用SPI驱动1.44寸TFTLCD

关于STM32F4单片机,使用HAL库自带的SPI,驱动TFTLCD屏幕的资料网上好像不太多,正好最近我做了这项工作,把成果分享给大家。我的代码实现了这些功能:任意坐标画点,指定首尾坐标画线,画方框,指定区域显示彩图,显示16* 16或者12* 12的汉字、ASCII码,并附带ASCII码表与少量的 ......
TFTLCD 1.44 STM HAL SPI

Hal库下使用32f4系列DSP运算功能

在网上很多人都已经写了如何用cubemx和mdk5打开f4系列的FPU功能,但是最后添加 #include “arm_math.h” #include “core_cm4.h” 这两个头文件会报错 同时类似arm_sqrt_f32()这种dsp库函数仍然找不到位置。所以在此做一些补充。 对于CUBE ......
功能 32f4 Hal 32f DSP

基于STM32封装的HTTP请求

使用STM32封装HTTP协议 通过封装HTTP头,向服务器发送GET请求,通过GET请求上传数据,并获取返回值 #include <string.h> #include <stdio.h> #include <stdint.h> char text[30]; char temp[10]; /** ......
HTTP STM 32

cJSON在STM32中的应用

写在前面: 将JSON应用在STM32上面已经很普遍了,但还是有很多问题在网上找不到答案,毕竟自己造轮子和找轮子造车还是有点差别。 今天就总结一下最近在STM32上使用cJSON所遇到的一些问题。 正文开始线 什么是cJSON: JSON的C语言版,一种常用的轻量级数据交换格式,详情见 JSON介绍 ......
cJSON STM 32

STM32F0 HAL库软件模拟串口发送数据

试验STM32F0官方提供的例程的时候,希望看到程序中某些变量的值,但是程序中往往没有串口发送部分,自己加又非常麻烦。 而点亮LED的程序基本上每个例程都有。所以用点亮LED引脚模拟串口发送数据就很方便,不用再去初始化串口IO,初始化串口等等。 /** * @brief 软件模拟串口发送数据 * @ ......
串口 数据 软件 STM 32F

stm32按键 长按 短按 函数 一

在stm32工程中,长按和短按的代码书写, 调用的读取按键状态的底层函数。封装成的按键函数代码。下面是函数的头文件,和.c文件的代码。使用定时器来扫描按键。 #define KEY_ON 1#define KEY_OFF 0#define KEY_NULL 0#define KEY_SHORT 1# ......
按键 函数 stm 32

STM32的IIC存储和读取整形数据

STM32的IIC存储和读取整形数据, 下面的程序代码是使用stm32F03ZET6的I2C1(PB6,PB7)和AT24C02的EEPROM来测试的。希望对于需要的朋友有帮助。 主要代码如下: #include "delay.h"#include "stm32f10x.h"#include "us ......
数据 STM IIC 32

STM32 用定时器产生1Mhz 脉冲,

STM32 用定时器产生1Mhz 脉冲,PWM宽度可调,四路输出 源码:记得要加入文件 gpio rcc tim 等c文件 #include "stm32f10x_conf.h" void GPIO_CFG(void); void RCC_CFG(void); void TIM_CFG(void); ......
定时器 脉冲 1Mhz STM Mhz

STM32CubeMX ADC单通道和多通道DMA转换

ADC单通道DMA转换 主要选项说明(绝大部分工程设置下面参数即可): Clock Prescaler:ADC时钟;时钟不超过36M(从ABP2时钟分出)。 Resolution:分辨率;例如我们选12bits,即使把3.3V电压分成2^12。不可测量超过3.3V的电压,必须分压。 Data Ali ......
通道 CubeMX STM ADC DMA

EC11旋转编码器、stm32f103驱动程序

1、EC11手册的要点 注意:旋转的速度、RC滤波 手册中推荐的电路(已含有RC滤波): 输出波形特点: 2、硬件电路 加上RC滤波电路 做法是两个端点都采用10pF电容接地,10KΩ电阻接VCC。 实测100pF电容也行。 用示波器看看波形有无噪声 另外,看看不同旋转速度时的延时要求(具体见下面的 ......
编码器 驱动程序 编码 程序 f103

【STM32+cubemx】0024 HAL库开发:IAP(在应用编程)的实现

IAP在应用编程(In-Application Programming),指的是MCU在运行应用程序时,能接收新的烧写文件,并更新到自身的程序存储器中。即可以在应用程序运行时在线升级。 本节我们通过一个简单的例子,来实现STM32的IAP功能。这个例子有两部分程序,boot部分包含IAP功能,运行后 ......
cubemx 0024 STM HAL IAP

【HAL】stm32F103 DAC+DMA+TIM6查表法产生正弦波

一、平台 二、配置 1、DAC的配置 输出缓冲Output Buffer建议关闭。DAC的输出缓存可以用来减小输出阻抗,无需外部运放即可直接驱动外部负载。但输出不能达到0(会出现底部失真),不推荐开启。具体参考官方手册,缓冲器打开时低端的DAC输出电压大概0.2V(不同型号可能不同,暂未考证) 2、 ......
正弦 F103 TIM6 HAL 103

【STM32】HAL库 STM32CubeMX教程十一---DMA (串口DMA发送接收)

前言: 本系列教程将 对应外设原理,HAL库与STM32CubeMX结合在一起讲解,使您可以更快速的学会各个模块的使用 所用工具: 1、芯片: STM32F407ZET6/ STM32F103ZET6 2、STM32CubeMx软件 3、IDE: MDK-Keil软件 4、STM32F1xx/STM ......
串口 STM DMA 教程 CubeMX

stm32 ADC理解

神通广大的各位互联网的网友们、大家早上中午晚上好好好、今早起来很准时的收到了两条10086的扣月租的信息、心痛不已、怀着这心情、又开始了STM32的研究、早上做了计算机控制的PID实验,又让我想起了飞思卡尔的电磁小车、、曾经的电感电压采集让我心碎的多少次、又让我开心了多少次、但已经成为过去、(软件和 ......
stm ADC 32

STM32F407串口

#include "stm32f4xx.h" #include "usart.h" void My_USART1_Init(void) { //GPIO结构体定义 GPIO_InitTypeDef GPIO_InitStructure; //串口结构体定义 USART_InitTypeDef USA ......
串口 F407 STM 32F 407

STM32串口中断接收一个完整的数据帧

代码运行条件: (1) 大端发送; (2) 上位机发送一帧数据的时间间隔不能大于主循环周期; (3)数据帧满足下面格式: 帧头部(Head) 类型(Type) 长度(Length) 值(Value) CRC校验 2字节 1字节 1字节 X字节 2字节 0xaa 0x55 X void USART6_ ......
串口 数据 STM 32

使用HAL库开发STM32:系统时间基础及进阶使用

文章目录 目的基础使用进阶使用总结 目的 HAL库默认提供了系统时间,系统时间默认情况下由SysTick定时器计数产生。系统时间一方面用于HAL库自身调用,另一方面用户也可以使用,为开发带来便利。(本文提到的相关使用主要应用于未使用OS(操作系统)的情况下。) 基础使用 一般的系统时间使用方面常用到 ......
时间 基础 系统 HAL STM

STM32CubeMX HAL库串口+DMA数据发送不定长度数据接收

参考资料:1、ST HAL库官网资料 2、https://blog.csdn.net/u014470361/article/details/79206352#comments 一、STM32CubeMX配置外部时钟 注意在进行外部时钟配置时,即“High Speed Clock”和“Low Spee ......
数据 串口 长度 CubeMX STM

STM32中通过普通延时函数来精确延时

在STM32中处处会用到延时函数,一般而言,对于普通的控制延时,并不会要求特别精确,所以可以使用普通的延时函数,例如 void delay(u32 time){ while(time--);} 但是在某些情况下,例如读取传感器数据,就 需要精确的延时,对于这种,这时候可以考虑使用软件定时器或者系统定 ......
函数 STM 32

STM32F407定时器时钟频率和时钟源

(1)高级定时器timer1, timer8以及通用定时器timer9, timer10, timer11的时钟来源是APB2总线 (2)通用定时器timer2~timer5,通用定时器timer12~timer14以及基本定时器timer6,timer7的时钟来源是APB1总线 (3)当APB1和 ......
时钟 定时器 频率 F407 STM

STM32模拟GPS输出PPS、GPRMC与VLP16时钟同步

这里写目录标题 1.VLP16与GPS相关的管脚:2.利用GPS信息完成时间同步 TimeSynchronization3.查找同步关系4.修改ROS代码结论 1.VLP16与GPS相关的管脚: GPS-RECEIVE 接收GPS的GPRMC语句,注意是RS232电平(high 3-15V,low ......
时钟 GPRMC STM GPS PPS

STM32系列修改外部晶振以及代码的修改(f103、f105为例)

此文章为引用 正点原子详细讲解 刚刚接触STM32的时候,用的都是8M晶振。比如你想更换到为外部晶振为12M,但是主频仍想用72M的。该如何设置?或者想倍频到更高的主频该怎么修改? 例子就直接直接拿<正点原子>的例子吧! 属性原来现在外部晶振8M12M倍频96主频72M72M 想从原来的8M修改到现 ......
代码 f103 f105 STM 103

STM32CubeIDE HAL库函数操作RTC实时时钟 及 定时闹钟中断

目录 一、MX配置 二、软件生成的关键代码 三、 用户代码 附:回调函数的配置方法 一、MX配置 1. 设置LSE 2. 配置RTC - 激活时钟源 - 激活日历 - 配置2020年2月3日09:40:0 (HAL库的年份从2000年开始计算,Year变量可以填写0至99的数) 3. 使能闹钟中断( ......
闹钟 时钟 函数 实时 CubeIDE

vue-day32--一个重要的内置关系

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>一个重要的 ......
vue-day vue day 32

32位无符号整数的加法

使用32个元素的数组代表unsigned int型数字(32 bit)的加法。 1 #include <stdbool.h> 2 #include <stdio.h> 3 4 unsigned int num1[32]; 5 unsigned int num2[32]; 6 unsigned int ......
加法 整数 符号

报from PyQt5.QtWidgets import * ImportError: DLL load failed: %1 不是有效的 Win32 application(解决办法)

导入时,报from PyQt5.QtWidgets import * ImportError: DLL load failed: %1 不是有效的 Win32 application! 查了很多资料,发现原来PyQt5安装包也是区分电脑位数的,我的电脑是32位的,装的PyQt5确是64位的,由于我这 ......

STM32的PID温控

STM32的 PID和PWM墨水温度控制系统 1 控制方案: K_SENSOR热电偶作为温度传感器,50w电烙铁作为加温设备作为控制对象,预先设定一个温度值,微处理器为ARM公司Cortex-M3内核,STM32F103ZET6型号,开发板需用3.3v供电运行。采用MAX6675芯片作为K型热电偶信 ......
STM PID 32