STM32 PWM功能在关闭时GPIO电平不确定的情况
刚开始接触STM32,遇到一个项目中出现在产品调试中出现在关闭PWM输出时,GPIO电平有不确定的情况。在网上查阅资料发现大神们是这样解释的:PWM在一个脉冲没有结束时关闭输出,会导致GPIO电平不确定。
解决方法:1、在关闭PWM输出时随即将相应GPIO强制为低(这个高/低看各人的需要)
tiM_Cmd(TIM3 ,DISABLE);//关闭PWM输出
TIM_ForcedOC1Config(TIM3, TIM_ForcedAction_InActive);//将PWM输出强制为低
2、在下次打开PWM时使用下面的函数
/*因前面使用PWM强制输出为低,此处需要重新打开PWM输出*/
TIM_SelectOCxM(TIM3, TIM_Channel_1, TIM_OCMode_PWM1);
TIM_CCxCmd(TIM3, TIM_Channel_1, TIM_CCx_Enable);
TIM_Cmd(GENERAL_TIM, ENABLE);//使能TIMER3,开始产生PWM
希望对奋斗在路上的大家有帮助。
同时也分享一些我看的资料在后续的学习中希望能够有所帮助
(stm32直流电机驱动)
http://www.makeru.com.cn/live/1392_1218.html?s=45051
(零基础电子产品设计)
http://www.makeru.com.cn/live/3727_1388.html?s=45051
1小时彻底掌握STM32中断
http://www.makeru.com.cn/live/3523_1666.html?s=45051
(定时器)
http://www.makeru.com.cn/live/1392_1199.html?s=45051
(stm32 温湿度采集)
http://www.makeru.com.cn/live/detail/1476.html?s=45051
STM32 PWM功能在关闭时GPIO电平不确定的情况的更多相关文章
- stm32 PWM输出学习
STM32 的定时器除了 TIM6 和 7,其他的定时器都可以用来产生 PWM 输出.其中高级定时器 TIM1 和 TIM8 可以同时产生多达 7 路的 PWM 输出.通用定时器也能同时产生多达 4路 ...
- STM32 PWM的输出与Keil软件仿真
导读:PWM(Pulse Width Modulation)控制——脉冲宽度调制技术,通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形(含形状和幅值). PWM控制技术在逆变电路中应用最广,应用 ...
- [nRF51822] 5、 霸屏了——详解nRF51 SDK中的GPIOTE(从GPIO电平变化到产生中断事件的流程详解)
:由于在大多数情况下GPIO的状态变化都会触发应用程序执行一些动作.为了方便nRF51官方把该流程封装成了GPIOTE,全称:The GPIO Tasks and Events (GPIOTE) . ...
- JavaScript当页面关闭时向后台发送请求
今天做项目时遇上一个需求,当浏览器或页面关闭时将数据存储到数据库内.实现思想是采用js监测onunload然后发送请求.结果失败,刷新可以发送但是关闭并不能,整了一整天并没有解决,最后找到了解决办法. ...
- CDLinux 自动休眠功能的关闭方法
CDLinux 自动休眠功能的关闭方法: 控制台下使用xset命令来完成. xset q 可以查看当前屏幕保护和电源管理的状态信息 具体设置时,常用的有以下参数: xset s //这个参数设置屏 ...
- Qt启动子进程,子进程关闭时通知主进程,实现主进程对子进程的管理
自己开发了一个股票智能分析软件,功能很强大,需要的点击下面的链接获取: https://www.cnblogs.com/bclshuai/p/11380657.html 1.需求描述 Qt主进程启动 ...
- WPF 子窗体关闭时显示父窗体
这个问题纠结了两天,今天在一个朋友的帮助下,解决了,其实很简单,但是可能作为新手,接触WPF时间还是短,因此作为一个问题困扰了我. 父窗体部分代码 private void EditInformati ...
- 刷新或关闭时调用onbeforeunload
Onunload,onbeforeunload都是在刷新或关闭时调用,可以在<script>脚本中通过window.onunload来指定或者在<body>里指定.区别在于on ...
- qt 单文档程序关闭时在delete ui处出现segmentation fault
做了个显示图片的单文档程序. qt 单文档程序关闭时在delete ui处出现segmentation fault. 调试发现调用两次mainwindow析构函数. http://blog.csdn. ...
随机推荐
- 处理器核、Core、处理器、CPU区别&&指令集架构与微架构的区别&&32位与64位指令集架构说明
1.处理器核.Core.处理器.CPU的区别 严格来说"处理器核"和" Core "是指处理器内部最核心的部分,是真正的处理器内核:而"处理器&quo ...
- 274 day04_Map,斗地主案例
day04 [Map] 主要内容 Map集合 教学目标 [ ] 能够说出Map集合特点 [ ] 使用Map集合添加方法保存数据 [ ] 使用"键找值"的方式遍历Map集合 [ ...
- Jmeter系列(19)- 常用配置文件
JMeter.properties :跟Jmeter配置相关的配置信息都在这边,比如:Jmeter GUI页面的语言.日志级别设置等 User.properties:用户自定义相关的所有变量,会复写J ...
- python学习笔记(十一)-python程序目录工程化
在一个程序当中,一般都会包含文件夹:bin.conf.lib.data.logs,以及readme文件. 所写程序存放到各自的文件夹中,如何进行串联? 首先,通过导入文件导入模块方式,引用其他人写好的 ...
- 网站优化之mysql优化
一,网站优化之mysql优化:1.前缀索引,可以通过前缀去识别唯一性,把这个前缀作为索引内容,可以节省存储索引的空间,从而提高索引的查询速度.distinct 排重操作2,2.in条件索引使用同时查询 ...
- python with 线程锁
import threading import time num = 0 # 全局变量多个线程可以读写,传递数据 mutex = threading.RLock() # 创建一个锁 class Myt ...
- 关于Python中的深浅拷贝
之前一直认为浅拷贝是拷贝内容的第一层,但是不开辟内存,只是增加新的指向原来的内容:深拷贝是拷贝是拷贝每一层并开辟内存. 其实这个是不严谨的不正确的. 从以上可以看出,浅拷贝中当时可变类型的时候,内存是 ...
- 关于open falcon 与nightingale 的一些调研
针对 open-falcon 与 nightingale 的调研 一.open-falcon 1.1 组件介绍 1.1.1 agent > agent用于采集机器负载监控指标,比如cpu.idl ...
- P3235-[HNOI2014]江南乐【整除分块,SG函数】
正题 题目链接:https://www.luogu.com.cn/problem/P3235 题目大意 \(T\)组游戏,固定给出\(F\).每组游戏有\(n\)个石头,每次操作的人可以选择一个数量不 ...
- IDEA快捷键(未使用)
1.ctrl Ctrl + Y 删除光标所在行 或 删除选中的行 Ctrl + W 递进式选择代码块.可选中光标所在的单词或段落,连续按会在原有选中的基础上再扩展选中范围 Ctrl + E 显示最近打 ...