社区
单片机/工控
帖子详情
一个定时器产生3路pwm
yoveldf
2015-06-22 02:46:05
现一单片机,有一个8bit定时器,其余普通IO口,先需利用定时器实现输出3路pwm,且占空比可变(从小变到大,再从大变到小),周期大概15ms
...全文
401
6
打赏
收藏
一个定时器产生3路pwm
现一单片机,有一个8bit定时器,其余普通IO口,先需利用定时器实现输出3路pwm,且占空比可变(从小变到大,再从大变到小),周期大概15ms
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
overlordmax
2015-08-09
打赏
举报
回复
为什么溢出后就归零呢?
yoveldf
2015-06-28
打赏
举报
回复
非常感谢,按照这思路我先编下代码 遇到问题再请教
yoveldf
2015-06-28
打赏
举报
回复
现在3路IO口都输出变占空比pwm 都是从低占空比到高占空比之后再变为低占空比这样子渐变,总的时长大概10s左右 1路开始渐变(2,3)保持不变,1路开始渐变6s后 2路开始渐变,2路渐变6s后3路开始渐变 ,3路开始输出占空比6s后1路开始渐变。整个一个循环
worldy
2015-06-22
打赏
举报
回复
在主循环中改变T1,T2,T3就可以得到不同的占空比
worldy
2015-06-22
打赏
举报
回复
T不需要另外处理,当其溢出之后就回0,又从0开始,60us*256=15.36ms
worldy
2015-06-22
打赏
举报
回复
定时器定时时间设置60us uchar T1,T2,T3;//定义三个变量,分别保存你需要的PWM高电平宽度 uchar T=0; 定时中断函数中: { T++; if(T==0) { P10=1;//三个输出都设高 P11=1; P12=1; } if(T==T1)P10=0;//P10高电平结束 if(T==T2)P10=0;//P11高电平结束 if(T==T3)P10=0;//P12高电平结束 }
STM32F1开发指南笔记15----
定时器
产生
PWM
输出——呼吸灯2
main函数 #include "led.h" #include "delay.h" #include "key.h" #include "sys.h" #include "usart.h" #include "timer.h" int main(void) { u16 led0
pwm
val=0; u8 dir=1; delay_init(); /...
利用高级
定时器
产生
6
路
互补
PWM
波形输出
STM32的MCU产品自带
定时器
资源十分丰富,既有专门用于电机控制的高级
定时器
(TIMER1/TIMER8),又有仅定时用的基本
定时器
(TIMER6/TIMER7) 和通用
定时器
(TIMER2/3/4/5/14/15/16/17) ,还有2个看门狗
定时器
和
一个
Systick
定时器
,真是十分强大哈。 这一篇文章就来讲解一下利用高级
定时器
TIMER1
产生
6
路
互补
PWM
波形输出。第一部分讲...
STM32CubeMX-
定时器
产生
PWM
驱动舵机
STM32CubeMX-使用cube配置
定时器
产生
PWM
驱动舵机
[HAL库]STM32F103C8T6--使用
定时器
3
产生
硬件
PWM
这篇博客介绍下我是如何使用CubeMX生成基础环境并调用HAL库来
产生
硬件
PWM
的。
STM32F103C8T6
定时器
产生
PWM
STM32F103C8T6使用
定时器
产生
PWM
的相关讲解
单片机/工控
27,522
社区成员
28,796
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章