当前位置: 首页 > news >正文

STM32F40EZT6 PWM可控制电压原理

PWM可控制电压原理

        主要通过PWM 输入模式根据控制单位时间内输出的平均电压,以调节电压大小。而PWM输出模式通过调节占空比,控制平均电压大小;

设置TIM为PWM输出模式

        第一步:时钟使能:

                                GPIO,TIM;

        第二步:设置引脚为复用模式

        第三步:复用为指定TIM的PWM输出模式

        第四步:定时器时基单元的配置

        第五步:配置定时器的输出比较功能

void timeer14PWM_init(){
//  开启时钟RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM14,ENABLE);//设置PWM输出引脚位复用模式GPIO_InitTypeDef GPIO_InitStruct;GPIO_InitStruct.GPIO_Pin=GPIO_Pin_9;GPIO_InitStruct.GPIO_Mode= GPIO_Mode_AF;GPIO_InitStruct.GPIO_OType=GPIO_OType_PP;GPIO_InitStruct.GPIO_Speed=GPIO_Low_Speed;GPIO_InitStruct.GPIO_PuPd=GPIO_PuPd_NOPULL;GPIO_Init(GPIOF,&GPIO_InitStruct);//设置配置GIPOGPIO_PinAFConfig(GPIOF,GPIO_PinSource9,GPIO_AF_TIM14);TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStruct;
//	设置分频 将84MH降为10000HzTIM_TimeBaseInitStruct.TIM_Prescaler=84-1;
//	设置计数模式往上加,还是往下减TIM_TimeBaseInitStruct.TIM_CounterMode=TIM_CounterMode_Up;
//	设置自动复位计数器为10000,恰好为1秒,2000相当于0.2秒TIM_TimeBaseInitStruct.TIM_Period=2000-1;
//	设置通用定时器分频为1TIM_TimeBaseInitStruct.TIM_ClockDivision=TIM_CKD_DIV1;
//	初始化定时器TIM_TimeBaseInit(TIM14, &TIM_TimeBaseInitStruct);//设置寄存器模式TIM_OCInitTypeDef TIM_OCInitStruct;
//设置位PWM输出模式TIM_OCInitStruct.TIM_OCMode=TIM_OCMode_PWM1;TIM_OCInitStruct.TIM_OutputState=TIM_OutputState_Enable;TIM_OCInitStruct.TIM_Pulse=100;TIM_OCInitStruct.TIM_OCPolarity=TIM_OCPolarity_Low;TIM_OC1Init(TIM14, &TIM_OCInitStruct);//	开启定时器TIM_Cmd( TIM14, ENABLE);}

http://www.lryc.cn/news/214334.html

相关文章:

  • 信号灯集,消息队列
  • 我在Vscode学OpenCV 初步接触
  • [threejs]让导入的gltf模型显示边框
  • YOLOv5优化:独家创新(SC_C_Detect)检测头结构创新,实现涨点 | 检测头新颖创新系列
  • 作物模型--土壤数据制备过程
  • 学习笔记|单样本t检验|无统计学意义|规范表达|《小白爱上SPSS》课程:SPSS第四讲 | 单样本T检验怎么做?很单纯很简单!
  • Bug管理规范
  • 剑指JUC原理-8.Java内存模型
  • Azure 机器学习 - 使用 AutoML 和 Python 训练物体检测模型
  • 【深度学习】pytorch——快速入门
  • git本地项目同时推送提交到github和gitee同步
  • 结构体数据类型使用的一些注意点
  • Serverless化云产品超40款 阿里云发布全球首款容器计算服务
  • 最小化安装移动云大云操作系统--BCLinux-R8-U2-Server-x86_64-231017版
  • 索引创建的原则
  • 动态表单生成Demo(Vue+elment)
  • JMeter断言之JSON断言
  • LuatOS-SOC接口文档(air780E)--mqtt - mqtt客户端
  • 安装Python环境
  • [nodejs] 爬虫加入并发限制并发实现痞客邦网页截图
  • GEE——Publisher Data Catalogs发布者数据目录
  • 计算10的阶乘
  • 6.卷积神经网络
  • postgresql|数据库|SQL语句冲突的解决
  • overflow溢出属性、定位、前端基础之JavaScript
  • 【JS】Chapter6-Dom 获取属性操作
  • 太极培训机构展示服务预约小程序的作用如何
  • node使用path模块的基本使用
  • 我和云栖大会有个约会
  • Linux各个发行版之间的关系