STM32单片机开发
STM32开发笔记
大谷呀
简答问题溯根源,复杂问题简单做。
展开
-
UART与USART区别
UART与USART都是单片机上的串口通信,他们之间的区别如下:UART:universal asynchronous receiver and transmitter通用异步收/发器USART:universal synchronous asynchronous receiver and transmitter通用同步/异步收/发器从名字上可以看出,USART在UART基础上增加了同步功能,即USART是UART的增强型,USART相对UART的区别之一就是能提供主动时钟,同步通信需要时钟来触发数据转载 2020-07-19 10:00:38 · 624 阅读 · 0 评论 -
STM32 printf重定向及输出指定长度字符串
注意:printf是在stdio.h中声明的int fputc(int ch, FILE* stream)#include <stdio.h>int fputc(int ch, FILE* stream){ USART_SendChar(USART1, (uint8_t)ch); return ch;}原创 2020-07-19 09:03:55 · 1234 阅读 · 0 评论 -
stm32cube 串口空闲中断接收(非DMA方式)
简述实际开发过程中,DMA通道全部占用,余下串口无DMA使用,改用空闲中断接收数据写入缓存区。配置过程void recv_handle(UART_HandleTypeDef *huart) { if ( __HAL_UART_GET_FLAG(huart, UART_FLAG_IDLE)) { __HAL_UART_CLEAR_IDLEFLAG(huart);...原创 2020-02-26 09:08:40 · 1822 阅读 · 3 评论 -
JLink 警告:The connected J-Link is defective,Proper operation cannot be guaranteed.
概述安装j-link较新版本(JLink_Windows_V632b.exe)的驱动,每烧录一次程序报一次警告,警告如下:“The connected J-Link is defective, Proper operation cannot be guaranteed.”参考网友的博客和使用方法,卸载新版本的驱动,采用低版本的驱动(JLink_Windows_V502f.exe)解决。附Jli...原创 2019-08-20 19:07:37 · 9035 阅读 · 5 评论 -
IAR调试there were warnings during download, see log window.异常
简介在iar编译器中下载程序时,弹出警告窗口⚠️there were warnings during download, see log window,随后程序工作异常,一顿操作(搜索)后找到未果,最后和硬件同事沟通找到原因,原因:芯片不匹配。引申一flash写保护,对于写保护可采用stm32 stvp工具解除写保护。工具学习后面再补上,先挖个坑。引申二遇事不要一脑子扎进去,多沟通多问问...原创 2019-07-01 17:19:14 · 6278 阅读 · 2 评论 -
STM32 Nucleo开发手册
链接:https://www.yiboard.com/thread-65-1-1.html转载 2018-05-30 11:16:50 · 4593 阅读 · 0 评论 -
STM32 中断函数SysTick_Handler理解
目的滴答定时器整理(STM32F103)。用了一段时间的滴答定时器,突然忘记其中配置方法,重新翻阅手册及博文,在此记录备忘。 SysTick的重装寄存器决定了定时器频率,若SysTick的时钟源是72M, SystemFrequency = 72000000Hz//1ms时基//HCLK_Frequency = 72000000Hz;//#define OS_TICKS_PE...原创 2017-11-27 16:57:20 · 57490 阅读 · 1 评论 -
STM32 25M晶振换8M
时钟配置从工程启动文件 system_stm32f4xx.c 中void SystemInit(void)的开始运行;主频配置 /* Configure the main PLL */ RCC->PLLCFGR = PLL_M | (PLL_N > 1) -1) (RCC_PLLCFGR_PLLSRC_HSE) | (PLL_Q 系数配置 使用外部时钟源,配原创 2018-01-09 16:45:23 · 4098 阅读 · 0 评论 -
STM32 软件按键消抖
引言通常按键所用的开关都是机械弹性开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上就稳定的接通,在断开时也不会一下子彻底断开,而是在闭合和断开的瞬间伴随了一连串的抖动,如图1所示。原创 2017-11-22 09:10:16 · 22751 阅读 · 14 评论 -
STM32F407 Flash操作笔记
简述STM32F4XX的闪存擦除方式分为两种:扇区擦除(最小单元16K)和整片擦除。在实际应用中,为满足重要信息的存储,需将信息存入FLASH中,针对以上两种擦除方式,扇区擦除更符合实际的需要。原创 2017-11-21 16:52:39 · 23939 阅读 · 4 评论 -
STM32 PWM调制信号关闭后端口电平不确定处理
在使用STM32的PWM做为调制信号时,遇到开关调制信号关闭后其信号不确定的问题,影响信号的调制,收集了些资料在这归纳整理。原创 2017-11-03 11:36:04 · 6812 阅读 · 2 评论 -
STM32 GPIO的8种工作模式
STM32的GPIO输入输出模式(1)GPIO_Mode_AIN模拟输入(2)GPIO_Mode_IN_FLOATING浮空输入(3)GPIO_Mode_IPD下拉输入(4)GPIO_Mode_IPU上拉输入(5)GPIO_Mode_Out_OD开漏输出(6)GPIO_Mode_Out_PP推挽输出(7)GPIO_Mode_AF_OD复用开漏输出(8)GPIO_Mode_AF_PP复用推挽输出转载 2017-10-14 17:27:24 · 336 阅读 · 0 评论 -
STM32 录制与播放空调/TV遥控器的红外信号
准备工作:(1)红外线接收管 IR receiver (2)红外线发射灯 IR transmitter (3)STM32控制板 (4)面包线 Jumper cables (5)空调/TV遥控器硬件1、 模块 IR发射管VCC,GND,DATA; IR接受管VCC,GND,DATA;软件为验证红外录制其录制可靠,先尝试录制大信号; 录制条件: 1、 录制过程循环捕捉PIN上电平;原创 2017-10-14 14:30:40 · 1288 阅读 · 0 评论 -
STM32 RTC时钟配置
"RTC"是Real Time Clock 的简称,意为实时时钟。stm32提供了一个秒中断源和一个闹钟中断源,修改计数器的值可以重新设置系统当前的时间和日期。转载 2017-10-12 09:22:56 · 1203 阅读 · 0 评论 -
KEIL编译器区分RW-data和ZI-data
KEIL工程的编译提示输出信息中有一个语句“Program Size:Code=xx RO-data=xx RW-data=xx ZI-data=xx”,它说明了程序各个域的大小,编译后,应用程序中所有具有同一性质的数据(包括代码)被归到一个域,程序在存储或运行的时候,不同的域会呈现不同的状态,这些域的意义如下:Code:即代码域,它指的是编译器生成的机器指令,这些内容被存储到ROM区。RO-d转载 2017-10-12 19:24:11 · 3907 阅读 · 4 评论 -
STM32 中断优先级(Cortex-M3)
一、概述 STM32(Cortex-M3)中有两个优先级的概念——抢占优先级和响应优先级,其属性编号越小,则优先级别越高。有人把响应优先级称作“亚优先级”或“副优先级”,每个中断源都需要被指定这两种优先级。 具有高抢占式优先级的中断可以在具有低抢占式优先级的中断处理过程中被响应,即中断嵌套,或者说高抢占式优先级的中断可以嵌套低抢占式优先级的中断。 当两个中断源的抢占式优先级相同时,这两原创 2017-10-11 11:00:28 · 909 阅读 · 1 评论 -
stm32cube 独立看门狗使用
看门狗的喂狗时间(看门狗溢出时间)计算公式:Tout=((4*2^prer)*rlr)/40其中Tout就是看门狗溢出时间(单位ms),prer是看门狗时钟预分频值(IWDG_PR值),范围为0~7,rlr位看门狗重载值(IWDG_RLR)。void IWDG_Configuration(void){ IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable)原创 2017-10-11 14:45:31 · 4089 阅读 · 1 评论 -
STM32 SD卡通信整理
SD卡从驱动到应用共分为4层,从下至上依次为:驱动层、物理层、文件系统层、应用层。下面一一来介绍各层的一些重要的操作。转载 2017-10-18 09:26:24 · 1297 阅读 · 1 评论