你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

另一种呼吸灯实验TIM4 PWM(硬石开发板)

[复制链接]
与龙共舞 发布时间:2018-4-28 11:10
本帖最后由 与龙共舞 于 2018-5-2 15:24 编辑

硬件准备:
PB8低电平则LED1亮起,现在PB8用于TIM4CH3
硬件原理图:
111.png
GPIO管脚图:
222.png
数学准备:
呼吸的的函数图用MATLAB生成,两个指数函数拼接,亮度全开的时候变化快。
333.png
444.png


软件准备:
11.png
22.png
33.png
44.png
QQ截图201804281056333333333333317.png
对生成的代码修改:
第一步:main死循环前加
HAL_TIM_Base_Start_IT(&htim4);
HAL_TIM_PWM_Start(&htim4,TIM_CHANNEL_3);

第二步:main.c最后实现函数
code.png
第三步:全局变量数组
uint8_t indexWave[] = {1,1,2,2,3,4,6,8,10,14,19,25,33,44,59,80,107,143,191,255,
                       255,191,143,107,80,59,44,33,25,19,14,10,8,6,4,3,2,2,1,1};

第四步:修改初始化的PWM初始值(可要可不要)

全部逻辑就是:设置定时器,更新的时候触发中断做一件事。
这个事就是修改PWM寄存器的值。
a.png
b.png
c.png

+++++++++++++++实际测试了一下 效果不是很好 我的板子是低电平亮灯  修改一下为定时器初始化 sConfigOC.OCMode = TIM_OCMODE_PWM2可以获得想要的效果+++++++++++++++


++++简化逻辑:设置定时器--打开定时器---更新的时候触发中断做一件事--这个事情自己定义,在回调函数中写(类似滴答定时器weak的回调函数)++++
1.png
2.png
3.png
4.png
5.png


此时在看文章:http://blog.csdn.net/anchises/article/details/52101512  神清气爽
9.png


PWM.zip

下载

8.65 MB, 下载次数: 18

工程

收藏 1 评论2 发布时间:2018-4-28 11:10

举报

2个回答
xmstudio 回答时间:2018-4-28 19:16:04
原来呼吸灯的函数不是直上直下的,呼吸灯有标准的函数形式吗?
与龙共舞 回答时间:2018-4-28 21:12:55
xmstudio 发表于 2018-4-28 19:16
原来呼吸灯的函数不是直上直下的,呼吸灯有标准的函数形式吗?

没有的  实际这个效果看起来 还不如sin函数好

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版