关于STM32的计数和延时

读者*丽杰*问:问个问题,我想要获得比较准确的延时时间,用stm32哪个时钟,通过什么方法让他准确?我的回答:通过STM32的任意一个TIM定时器都可以达到比较精确的延时时间。Ⅰ关于STM32的计数和延时在STM32中,具有计数(或计时)功能的模块基本都能实现延时功能。如:系统滴答SysTick、定时器TIM、实时时钟RTC、看门狗WDG。精确延时一般使用...
📅 2023-07-10 阅读全文 →

STM32如何实现可调频率、占空比的PWM波形,且可指定输出脉冲个数?

读者朋友“*imYan*”问:pwm实现频率可调和占空比可调后怎么来实现输出10个脉冲呢?我这边看有门控或者单脉冲加重复计数,黄老师平时用的什么方法?我的回答:使用两个TIM定时器:一个输出可调频率、占空比的PWM,一个对输出PWM脉冲计数(计时)。1.门控方式能实现,但需要复杂的配置和计算,不推荐。2.脉冲计数是比较实际,也是比较简单的方式;对输出PWM...
📅 2023-07-10 阅读全文 →

定时器输出的PWM频率范围及占空比精度

我想要TIM定时器输出的PWM波形:0.1%精度占空比, 频率范围:200Hz - 10KHz。请问能实现吗? Ⅰ写在前面如果有朋友下载了上一篇文章我提供的例程,在“bsp_timer.h”文件下,你就会发现有如下一段被我注释了的【说明性文字】。这个工程是我从之前项目中提取出来(复制部分代码),从新整理的一个的工程。里面的这个被注释了的描述文字是...
📅 2023-07-10 阅读全文 →

MDK-ARM工程下如何创建多个Target(目标)?

在公众号列表中,长按我的公众号,置顶公众号,就可以随时看到我。读者朋友“*无止*”留言:看完了这个(MDK-ARM)系列的教程,还是没学会如何在一个工程下创建多个目标?我的回答:1.首先你要明白【一个Workspace(工作空间)下多个Project(工程)】与【一个Project下多个Target(目标)】的区别?2.创建多个目标大概有以下几步:a.创建...
📅 2023-07-10 阅读全文 →

STM8CubeMX你了解多少?

置顶公众号,不错过每一条消息!§§我发现关注我的朋友中,有很多是在学习STM8的初学者,后台也经常收到关于STM8的问题。所以,还是打算定期更新一点关于STM8的文章。关注ST官方微信公众号的朋友应该知道,前面出了一条关于STM8的新闻,大概意思:为了扩充STM8的产能,ST启动了新工厂。 这说明了什么:STM8的需求量比以往更大了。§§Ⅰ什么是...
📅 2023-07-10 阅读全文 →

基于STM32、FreeRTOS实现硬件看门狗+软件看门狗监测多任务的方法

置顶公众号,不错过每一条消息!我们都知道硬件看门狗的目的:是用来监测系统,防止系统死机,并在死机的情况下使系统复位重启。在RTOS操作系统中,如果任务(线程)较多,出现高优先级任务长时间占用CPU资源,低优先级任务长时间得不到执行这种想象,那么我们的系统就是具有Bug的系统。如上描述,假如我们的线程没有死机,只是长时间得不到执行。在这种异常情况下,我们又不...
📅 2023-07-10 阅读全文 →

你的STM32芯片FLASH容量真如ST官方选型手册那样吗?

置顶公众号,不错过每一条消息!    如果某一个天项目经理提出一个需求,要求在现有STM32产品基础上,内部FLASH增加64K字库,你脑海中首先会想到什么?1先说点其它一般对于初学者来说,内部FLASH完全足够,跑一个简单的裸机Demo,或者一个RTOS加上两个任务的Demo,对于现在的MCU完全没有压力。但是,一旦你接触到实际项目,...
📅 2023-07-10 阅读全文 →

下载资料推荐上官网,只为权威

置顶公众号,不错过每一条消息!今天给大家分享几点内容:1.讲讲上一篇文章讨论的问题2.STM8CubeMX更新到了V1.3.0版本;3.在ST官网(www.st.com)下载登录问题;1讲讲上一篇文章讨论的问题上一篇文章讨论了这么个话题:某些MCU内部FLASH容量为什么会大于标称的容量呢?(如:FLASH标称768K,实际有1M大小)从留言中很多朋友都说...
📅 2023-07-10 阅读全文 →

定制属于自己喜欢的IAR工具栏

置顶公众号,不错过每一条消息!有的朋友喜欢使用快捷键做一些操作,而有的朋友喜欢使用快捷按钮做一些操作。本文给大家带来一点小知识:定制属于自己的IAR工具栏。1什么是IAR工具栏简单来说;IAR工具栏就是在菜单下面哪一行具有快捷功能的图标栏。IAR 的工具栏 ToolBar 共有两种: Main 主工具栏和 Debug 调试工具栏。 在编辑(默认) 状态下只...
📅 2023-07-10 阅读全文 →

我的原创内容被大量抄袭了

置顶公众号,不错过每一条消息!今天分享几点内容:1.我的原创内容被大量抄袭了;2.昨天首次分享读者的原创文章;3.感谢大家的支持与认可;1我的原创内容被大量抄袭了第一种:将我原创内容大部分(几乎全部)拷贝过去,不经过我同意,也没有标明作者和出处;第二种:将我大部分转载内容过去,标记为自己的原创;给大家看下我随手截取了两张盗版我原创内容,标记为自己原创文章的...
📅 2023-07-10 阅读全文 →

利用STM32 ST-LINK Utility查看内核运行状态,助你判断程序是否跑飞

中置顶公众号,不错过每一条消息本文围绕STM32 ST-LINK Utility讲几点主要功能及相关拓展知识:1.STM32编程下载;2.利用该编程工具查看内核运行状态;3.Option Bytes选项字配置;1STM32编程下载STM32 ST-LINK Utility一个最重要的功能就是对STM32进行编程。支持常见的hex、bin文件,还有早期摩托罗...
📅 2023-07-10 阅读全文 →

STM32标准外设库SPL转换成Cube LL

置顶公众号,不错过每一条消息!今天分享几点内容:1.介绍ST推出的三种库;2.直接操作寄存器及三种ST库的代码性能对比;3.STM32CubeMX直接生成Cube LL库函数的方法;4.STM32标准外设库SPL转换成Cube LL的方法;1介绍ST推出的三种库1.标准外设库:Standard Peripheral Libraries,简写SPL.2.Cu...
📅 2023-07-10 阅读全文 →

关于STM32时钟配置的那些坑

置顶公众号,不错过每一条消息!今天分享以下两点内容:1.为什么我们要先开启STM32外设模块时钟;2.关于STM32的 I/O 复用功能及什么时候开启AFIO时钟;1为什么我们要先开启STM32外设时钟讲述本节内容之前先说一个案例:前段时间,有一个朋友为配置EXTI的代码折腾了一天,最终没有结果。于是问了我这样一个问题:“你用过STM32F051C8T6的...
📅 2023-07-10 阅读全文 →

IAR在线调试查看各种变量的不同方法

置顶公众号,不错过每一条消息!你知道IAR的View视图菜单中Watch、 Live Watch、 Quick Watch、 Auto、 Locals、 Statics这几个子菜单的含义和区别吗?下面带你全面了解这6个子菜单的意思,让你不再为调试查看各种变量而烦恼。1简述IAR的View视图菜单View这个菜单的意思就是打开(已关闭的)视图窗口,比如我们的...
📅 2023-07-10 阅读全文 →

关于STM32的几点内容

置顶公众号,不错过每一条消息!每天后台都会收到各种各样的问题,其实我每天都会抽空回答一下问题。所以,今天写几个后台朋友问的问题。主要内容:1.为什么STM32F0没有AFIO时钟呢?2.关于STM32中的各种电源3.IAR中如何查看外设寄存器4.关于问问题1为什么STM32F0没有AFIO时钟呢?前面写过一篇文章【关于STM32时钟配置的那些坑】里面有讲述...
📅 2023-07-10 阅读全文 →

解读STM32位带操作,让你快速了解并掌握它的用途

置顶公众号,不错过每一条消息!今天重温一下经典的位带操作,主要结合Cortex-M3内核(STM32)来讲述,相信许多朋友在初学的时候都被绕晕过。关于位带操作,它的难点其实在于需要理解或掌握较多基础知识。当你掌握这些基础知识,它其实就不难了。接下来带领大家掌握关于Cortex-M3的位带操作,顺便让大家回顾一下这些基础知识。1初识位带操作Bit-bandi...
📅 2023-07-10 阅读全文 →

指针变量,位带指针,LSB最低有效位······

置顶公众号,不错过每一条消息!上一篇文章【STM32位带操作】牵涉到的内容相对比较多,后台有许多朋友也问了很多相关的问题。不知道那些问过的朋友下来有没有总结,其实那些问题都是一些基础问题。主要内容:1.指针变量及例子2.指针变量---位带操作3.位带别名区最低有效位4.位带操作另一种宏定义1指针变量及例子前面文章【STM32位带操作】牵涉到的一个重要知识点...
📅 2023-07-10 阅读全文 →

Keil MDK-ARM V5.26预览版更新的几条重要内容

置顶公众号,不错过每一条消息!本文由作者「strongerHuang」原创发布,转载请公众号联系作者授权。经常使用Keil MDK-ARM的朋友, 这次更新的几条重要内容你应该了解。Keil MDK-ARM V5.26目前只是预览版(pre-release),相信经过测试之后没问题就会推送正式版。所以说,后面更新的内容一般都会包含预览版里面更新的...
📅 2023-07-10 阅读全文 →

STM32 IAP应用编程几个要点

置顶公众号,不错过每一条消息!我们常看到ISP、ICP、IAP等缩写词组,它们的主要作用就是对程序代码进行更新(编程)。下面将介绍关于编程的基础知识,以及结合STM32官方提供的Demo讲述一下关于编程的内容。1关于ISP、ICP、IAP1.ISPISP:In System Programing,在系统编程。比如:使用STC-ISP对STC芯片编程,利用F...
📅 2023-07-10 阅读全文 →

STM32四行【跳转程序】引申出来的几条重要知识点

置顶公众号,不错过每一条消息!本文分享以下几点(引申出来的)重要知识点:1.STM32是如何实现程序跳转的?2.复位向量表3.理解__set_MSP语句关键字帮助堆栈指针SP控制寄存器CONTROL1写在前面上一篇文章《STM32 IAP应用编程几个要点》讲述的内容很多朋友都了解过,也都使用过ST官网提供的代码。但使用过的人有许多都没有深入了解,仅仅只是把...
📅 2023-07-10 阅读全文 →

介绍PWM、PPM、S-BUS这三者的区别

置顶公众号,不错过每一条消息!公司同事之前购买了一个遥控器,当时主要是想用来遥控运动电机。我最近好奇,也去看了一下相关资料,并折腾了一下。那个接收器就是用到了一个叫S-BUS的通信口(这里肯定有许多朋友都明白,就是飞行控制器上用的遥控)。因为想到那个S-BUS和PWM有一定的相关性,我就想着顺便写一点基础内容,让关注我的朋友涨一点知识(了解一下)。所以,就...
📅 2023-07-10 阅读全文 →

IAR中IDE Options的Project配置选项

置顶公众号,不错过每一条消息!有关注我的老铁问:我代码中有警告(有黄色叹号),但为什么我IAR编译之后没有警告提示信息呢?原因在于关闭了警告提示。解决办法很简单,在build窗口右键 -> 选择All,如下图:这里说到编译工程,我这里就再拓展一下编译工程相关的配置:菜单Tools -> Options -> Project配置选...
📅 2023-07-10 阅读全文 →

从Cortex-M到Cortex-A认识ARM处理器

置顶公众号,不错过每一条消息!ARM处理器应用非常广泛 - 从传感器到服务器。ARM是业界领先的微处理器技术供应商,提供最广泛的微处理器内核,可满足几乎所有应用市场的性能、功耗和成本要求。ARM的技术将一个充满活力的生态系统与超过1000个合作伙伴相结合,提供芯片,开发工具和软件,以及超过900亿个处理器,ARM的技术是计算和连接革命的核心,正在改变人们的...
📅 2023-07-10 阅读全文 →

宏定义“中断函数接口”的注意事项

置顶公众号,不错过每一条消息!今天周六,写点轻松一点的内容,相信很多朋友都有使用宏定义的经历。宏定义写得好,你的代码修改、调试、移植等都方便;相反,写的不好,可能你的头脑会炸掉。1问题来源我前面移植一部分代码,忽略了一些细节问题,直接测试,一有数据(正常应该是进入中断),程序就挂了,进入了“B .”处,如下图:这代表什么意思呢? 网上一搜B .的...
📅 2023-07-10 阅读全文 →

MDK-ARM代码格式化插件AStyle

置顶公众号,不错过每一条消息!今天分享两点内容:1.一个代码格式化插件【AStyle】 --- 来自关注我的朋友推荐!2.STM32时钟及注意事项;1AStyle插件前两天,一位关注我的朋友(*inbun Yi*)给我推荐了这款AStyle插件,我当时看了下感觉还可以。于是,下来就下载并添加到MDK-ARM中试用了一下,挺好用的。所以,这里也给大家推荐一下...
📅 2023-07-10 阅读全文 →

一款可以在STM8上运行的实时操作系统Atomthreads

置顶公众号,不错过每一条消息!    前面有朋友大概了问了这样一个问题:我想在STM8单片机上,不跑操作系统,在需要处理一些业务逻辑时,还需要检测按键短按、长按、多个按键同时按下,我要如何实现?不跑操作系统,这个问题其实是一个“很难”的问题,在单线程(裸机)情况下,处理多件事情,这个逻辑处理必须要严谨才行。但是,有了操作系统,这个问题就...
📅 2023-07-10 阅读全文 →

新版IAR调试查看寄存器问题、STM8代码大小优化问题

置顶公众号,不错过每一条消息!今天写两个后台问的较多的问题,如标题所示:1.新版IAR调试查看寄存器问题;2.STM8代码大小优化问题;1新版IAR调试查看寄存器问题从去年上半年开始,IAR将各开发环境逐渐进行了大升级,首先是将EWARM从V7升级到了V8。然后,陆续将EW430、EWAVR等进行了升级。什么是新版IAR?图标是黑色那种,如EWARM V8...
📅 2023-07-10 阅读全文 →

CANOpen系列教程01_初识CAN与CANOpen及相关内容

置顶公众号,不错过每一条消息!    本教程由作者strongerHuang于2018年09月原创发布。标签:CAN、 CANOpen、 CanFestival版权所有:禁止商用申明:该文档仅供个人学习使用,转载请公众号联系作者授权。1写在前面我之前学习CANOpen的时候,网上有用的资料极少,走了不少弯路。到目前为止,网上关于CANO...
📅 2023-07-10 阅读全文 →

CANOpen系列教程02_理解CAN总线协议

置顶公众号,不错过每一条消息!    本教程由作者strongerHuang于2018年09月原创发布。标签:CAN、 CANOpen、 CanFestival版权所有:禁止商用申明:该文档仅供个人学习使用,转载请公众号联系作者授权。1写在前面上一篇文章讲述了CAN和CANOpen,相信大家CAN和CANOpen有一定理解了。本文说的C...
📅 2023-07-09 阅读全文 →

CANOpen系列教程03_CAN收发器功能、原理及作用

置顶公众号,不错过每一条消息!    本教程由作者strongerHuang于2018年09月原创发布。标签:CAN、 CANOpen、 CanFestival版权所有:禁止商用申明:该文档仅供个人学习使用,转载请公众号联系作者授权。1写在前面前面文章是从大方向介绍了CAN网络,让大家对CAN网络有一定的认识。本文将范围缩小,讲述整个C...
📅 2023-07-09 阅读全文 →