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

石大远程网页设计与网站建设答案互联网公司名字大全参考

石大远程网页设计与网站建设答案,互联网公司名字大全参考,提升网站建设品质价位,做百度网站排一、实验目标 使用TIM定时器的PWM模式控制LED亮度实现LED渐亮渐灭的呼吸灯效果掌握HAL库的TIM配置方法 二、硬件准备 开发板:STM32F103C8T6LED模块:LED串联220Ω电阻两组USB-TTL调试器硬件连接 三、软件配置(STM32CubeMX) 打开…

一、实验目标

  1. 使用TIM定时器的PWM模式控制LED亮度
  2. 实现LED渐亮渐灭的呼吸灯效果
  3. 掌握HAL库的TIM配置方法

二、硬件准备

  • 开发板:STM32F103C8T6
  • LED模块:LED串联220Ω电阻两组
  • USB-TTL调试器
  • 硬件连接

三、软件配置(STM32CubeMX)

  • 打开STM32CubeMX

  • 选择MCU型号:STM32F103C8T6

  • 设置SYS调试接口:Serial Wire(SWD)

  • 设置TIM参数

对照参数设置

按设置生成的波形

  • 设置RCC参数

  • 生成项目

四、代码编写

在生成代码的mian函数中编写如下代码

HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL1);//启动PWM正常输出
HAL_TIMEx_PWM_Start(&htim1,TIM_CHANNEL1);//启动PWM互补输出while(1){//修改
float t = HAL_GetTick() * 0.001;//获取当前时间float duty = 0.5 * sin(2*3.14*t) + 0.5;//计算占空比uint16_t arr = __HAL_TIM_GET_AUTORELOAD(&htim1);//获取ARR寄存器的值uint16_t ccr = duty * (arr + 1);//计算CRR寄存器的值__HAL_TIM_SET_COMPARE(&htim1,TIM_CHANNEL_1,ccr);//将计算结果写入CCR
}

 

五、代码解析

关键函数说明


HAL_TIM_PWM_Start 

HAL_StatusTypeDef HAL_TIM_PWM_Start(TIM_HandleTypeDef *htim, uint32_t Channel);

功能作用

此函数用于启动定时器(TIM)的指定通道输出PWM信号。其核心操作包括:

  • 使能定时器的计数器(TIMx->CR1 |= TIM_CR1_CEN
  • 启用指定通道的PWM输出(配置通道的CCxE位,如TIMx->CCER |= TIM_CCER_CC1E

参数解析

参数类型说明
htimTIM_HandleTypeDef*指向TIM外设的句柄(包含定时器配置信息,如预分频、计数模式等)
Channeluint32_t指定PWM输出的通道号(TIM_CHANNEL_1 到 TIM_CHANNEL_4

HAL_TIMEx_PWM_Start 
HAL_StatusTypeDef HAL_TIMEx_PWM_Start(TIM_HandleTypeDef *htim, uint32_t Channel);

功能作用

此函数是HAL库中针对高级定时器(TIM1/TIM8)或复杂PWM场景的扩展函数,用于启动定时器的PWM输出。与HAL_TIM_PWM_Start的主要区别在于:

  • 支持高级定时器的互补通道(如CH1N、CH2N等)
  • 包含刹车(Break)和死区时间(Dead Time)控制逻辑
  • 适用于电机控制、逆变器等需要安全保护的场景

参数解析

参数类型说明
htimTIM_HandleTypeDef*指向高级定时器(TIM1/TIM8)的句柄
Channeluint32_t支持互补通道的选项:
TIM_CHANNEL_1
TIM_CHANNEL_1N

HAL_TIM_GET_AUTORELOAD
#define HAL_TIM_GET_AUTORELOAD(__HANDLE__) 

功能作用

此宏用于直接读取定时器自动重装载寄存器(AutoReload Register, ARR)的当前值
核心功能

  • 获取定时器的周期设定值(决定PWM频率或定时溢出时间)
  • 适用于动态调整定时参数时的参数校验
  • 调试时验证配置是否生效
参数类型说明
__HANDLE__TIM_HandleTypeDef*指向TIM外设的句柄(包含定时器配置信息)

HAL_TIM_SET_COMPARE
#define __HAL_TIM_SET_COMPARE(__HANDLE__, __CHANNEL__, __COMPARE__) 

功能作用

此宏用于直接设置定时器的捕获/比较寄存器(CCRx)值,从而控制PWM占空比或定时触发点。
核心功能

  • 动态调整PWM输出的占空比(如呼吸灯、电机调速)
  • 设置输入捕获的触发阈值
  • 配置输出比较模式的匹配值
参数类型说明
__HANDLE__TIM_HandleTypeDef*指向TIM外设的句柄(包含定时器配置信息)
__CHANNEL__uint32_t指定通道:
TIM_CHANNEL_1-TIM_CHANNEL_4
__COMPARE__uint32_t比较值(0 ≤ COMPARE ≤ AutoReload)

关于CCR的值

在while循环中我们要向外输出一个PWM信号, 满足呼吸灯的现象可以用一个正弦波来做输出

占空比是CCR和ARR+1的比值

我们想得到CCR的值根据上述公式可以得到

那么就得到CCR的表达式

uint16_t ccr = duty * (arr + 1);//计算CRR寄存器的值

六、实验现象

烧录程序后,LED呈现渐变呼吸效果


文章转载自:

http://65FaJICQ.csnch.cn
http://L1RL4T1G.csnch.cn
http://H8KUEQvZ.csnch.cn
http://NjoYMI3m.csnch.cn
http://3TFlZ474.csnch.cn
http://dyMXBVr9.csnch.cn
http://wQJcYXhS.csnch.cn
http://ohNkZ5Ni.csnch.cn
http://1CBhn2xF.csnch.cn
http://s8b90a01.csnch.cn
http://WQcxERmv.csnch.cn
http://7hIqaXKa.csnch.cn
http://PD5w5V5b.csnch.cn
http://GmUTh7S8.csnch.cn
http://4sQFAsTm.csnch.cn
http://bW6ZK4DR.csnch.cn
http://5AxZDmGX.csnch.cn
http://tudaoVE9.csnch.cn
http://DkzIp3xy.csnch.cn
http://GDJ8gMGk.csnch.cn
http://yGxCts8z.csnch.cn
http://TJ79Q4E0.csnch.cn
http://NNoGYmcY.csnch.cn
http://AQvIGWm3.csnch.cn
http://I81C6pEr.csnch.cn
http://41036YG1.csnch.cn
http://oxsDKSXV.csnch.cn
http://IHkoQvSu.csnch.cn
http://q6RGevRl.csnch.cn
http://uRT4XNr3.csnch.cn
http://www.dtcms.com/wzjs/728711.html

相关文章:

  • 浙江省建设银行网站关于公司网站怎么做
  • 莱州哪有做网站的微信分销是什么
  • 手机免费建设网站制作网站 建立目录出错
  • 网站建设 起飞网站管理助手
  • c#做交易网站东莞网站设计的公司
  • 可以直接进入网站的正能量照片赣州企业网
  • phpcms网站打开空白郴州网签查询
  • 网站维护收费如何用python开发网页
  • 自己建网站百度到吗前端开发和网站建设
  • 石家庄市城乡建设学校网站建立网站时要采用一定的链接结构
  • 东莞龙舟制作技艺建湖网站优化公司
  • 在线模版下载网站网站建设頰算
  • 赣州网站建设哪家便宜视频网站代理
  • 网站图片设置链接html 动漫网站
  • 手机下载视频网站模板下载失败网站后台管理系统制作教程
  • 长沙哪里有网站制作微网站模板怎么用
  • 海南七星彩网站建设做体育类网站素材
  • seo外链高质量网站网站制作的公
  • 网站开发与运营怎么查询企业邮箱账号
  • 洛阳建站哪家好优设网简介
  • 南京做网站建设搭建的公司手机网站域名m.
  • 网站地图 设计天眼查企业查询在线查询
  • 企业品牌推广营销方案北京seo关键词排名
  • 个人网站域名备案流程做动态效果的网站
  • 保定建设信息网站如何保证网站安全
  • 连云港品牌网站建设专业做小程序公司有哪些
  • 住房城乡建设行业证书查询官网怎样给网站做关键词优化
  • 网站建设策划方案怎么写html做网站例子
  • 长春建站模板展示推广平台排名
  • 网站开发实现顺序php免费网站空间