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

长沙网站开发微联讯点官网网站全屏图片怎么做

长沙网站开发微联讯点官网,网站全屏图片怎么做,微信公众平台小程序登录,wordpress搜索框选择分类系列文章目录 嵌入式|蓝桥杯STM32G431#xff08;HAL库开发#xff09;——CT117E学习笔记01#xff1a;赛事介绍与硬件平台 嵌入式|蓝桥杯STM32G431#xff08;HAL库开发#xff09;——CT117E学习笔记02#xff1a;开发环境安装 嵌入式|蓝桥杯STM32G431#xff08;…系列文章目录 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记01赛事介绍与硬件平台 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记02开发环境安装 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记03G4时钟结构 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记04从零开始创建工程模板并开始点灯 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记05Systick滴答定时器 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记06按键输入 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记07ADC模数转换 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记08LCD液晶屏 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记09EEPROM 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记10USART串口通讯 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记11数字电位器MCP4017 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记12DAC数模转换 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记13RTC实时时钟 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记14PWM捕获 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记15PWM输出 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记16蓝桥杯编程手册 嵌入式|蓝桥杯STM32G431HAL库开发——CT117E学习笔记17第十四届省赛真题 前言 上节课讲解了PWM捕获这节课讲解一下PWM的输出也就是用STM32进行编程让在特定的管脚上产生PWM信号这个信号的占空比和频率是可调节的。 我们知道开发板上有两个排针 这些排针上对应的是相应的管脚其中PA1-7都是可以用作PWM输出的当然也可以用作捕获不同管脚对应TIM的不同通道只需要在CubeMX中配置引脚就可以看到对应的通道了。上一节我们PWM捕获也用到TIM这里我们PWM输出的时候就不要用相同的TIM了比方说上一届我们用的TIM2捕获这节我们可以用其他的TIM输出如TIM16和TIM17他们对应的是PA6和PA7管脚。我们本节以PA7为例。 一、基础知识 我们先了解一下PWM输出的基本原理。 PWM输出的本质也是定时器只要开启TIM定时器CNT计数器就开始了然后我们根据配置一般还是1us来计时。在捕获中我们一嘴带过了一下ARRARR是自动重装载寄存器相当于计数的周期计数到了周期之后会自动溢出重新计数。在捕获中我们是不需要溢出的所以直接设置的最大值0xFFFFFFFF但是在PWM输出里面我们是需要它溢出的因为这样就可以通过ARR让CNT隔一段时间清零实现了信号的周期变化。CNT每数到数就重新计数比如ARR固定为1000那么周期就是1000us即1ms。 除此之外还有一个CCRx比较寄存器用于控制高电平的时间当CNT计数到CCRx时输出极性会翻转这样我们就可以控制PWM的占空比了。其中的x对应不同的通道比如CCR1就对应通道1因为定时器有很多个通道这样不同的通道就有不同的比较值可以设置。但是ARR是整个定时器都共用的。 比如我们可以设置CNTCCRx时引脚输出1CNTCCRx时引脚输出0这样通过调整CCRx就可以调节占空比了。至于这个谁是高电平谁是低电平我们是可以自己设置的。 二、产生一路PWM信号 1.CubeMX配置 我们用PA7也就是定时器17的通道1来输出PWM我们来看一下怎么配置。 先勾选PA7。 然后找TIM17点Activated激活并在通道1选择PWM输出模式。不选择输出比较模式是因为这里PWM输出模式更为方便可以直接调整周期和占空比 PWM输出就不用选择中断了。然后开始配置Configuration。 Prescaler分频我们还是选择79。Counter Mode依然是up向上计数模式不用更改。 Counter Period就是我们的ARR寄存器用来控制周期和频率的。我们假设要生成的频率是1kHz那么周期就是1ms那么就需要1000个CNT所以Counter Period我们设置成999。还有一个auto-reload preload是选择是否打开预装载我们将其使能。其他的保持默认即可。 最下面的PWM输出通道1还需要更改一下里面有一个选择PWM模式1还是模式2这两个的区别就是模式1代表CNTCCR1的时候为活跃状态在底下的CH Polarity可以设置活跃状态是high还是low如果是high就代表高电平模式2代表CNTCCR1的时候为非活跃状态。所以我们推荐配置模式1活跃状态是high这样配合起来的效果就是CNTCCR1时为高电平CNTCCR1时为低电平。 而这里的Pulse就是我们所说的CCRx寄存器用于控制PWM的占空比如果按照上面的设置Pulse就是高电平的时间。因为前面设置了周期是1000那么如果这里设置200就代表着20%的占空比。 所以我们总结一下要改的地方先勾选一下激活然后选择模式为PWM输出模式然后预分频设置为79每1us计数一次然后设置Counter Period为999周期为1000us然后打开预装载然后设置Pulse高电平时间。 这样我们就配置好了生成工程即可。 2.程序设计 配置完之后我们可以看一下TIM17的初始化代码这里我们可以看到刚刚配置的周期和高电平时间都已经生成好了分别用htim17.Init.Period和sConfigOC.Pulse表示。 然后我们就可以进行程序设计了先调用一下TIM17的初始化函数MX_TIM17_Init()然后开启PWM输出HAL_TIM_PWM_Start(htim17,TIM_CHANNEL_1)。 我们编译下载到开发板就直接可以输出了。 当然我们也可以改变PWM的周期和占空比直接用对应的寄存器改就行了ARR、CCR1比如 TIM17-ARR 499;//周期改为500us频率为2kHz TIM17-CCR1 250;//占空比为50% 因为是操作寄存器的所以可以直接改比较方便。 也可以设置一个变量然后通过按键调占空比等等。 u16 cycle 499; u16 high_time 250 void PWM_Out_Process() {TIM17-ARR cycle;//周期为cycle1500us频率为2kHzTIM17-CCR1 high_time;//占空比为high_time/(cycle1),即50% }三、产生二路PWM信号
http://www.w-s-a.com/news/313603/

相关文章:

  • 加强统计局网站的建设和管理广州微信网站建设价格
  • 华宁网站建设设计公司 网站
  • 简历网站免费怎么查在哪个网站做的备案
  • 响应式网站 价格网站用哪些系统做的比较好用
  • 高端网站案例360做的网站
  • 瑞安地区建设网站公众号开发者工具是干嘛的
  • 请解释网站开发的主要流程.wordpress主体上传
  • 网站方案组成要素饰品公司网站建设方案
  • 网站改版被降权赣州景文网络科技有限公司
  • 吉林省网站建设推广图片模版
  • 如何做网站热力图佛山 网站关键词优化
  • 个人网站建设论文中期报告申报网站建设理由 模板
  • 岫岩做网站软件开发和app开发的区别
  • 邯郸质量一站式服务平台上线如何做国外销售网站
  • 内蒙古工程建设协会网站sem优化策略
  • Linux网站建设总结建设电子商务平台
  • 公司网站背景图片课程网站如何建设
  • 用js做简单的网站页面互联网技术对人力资源管理的影响有哪些
  • 银川做网站贵德县wap网站建设公司
  • 深圳网站建设zvge山西省煤炭基本建设局网站
  • 佛山网页网站设计线上怎么做推广和宣传
  • 多个域名绑定同一个网站案例
  • 建设网站都需要准备什么代理加盟微信网站建设
  • 网站备案没有了wordpress 添加按钮
  • 湖南建设银行宣传部网站福田蒙派克空调滤芯安装位置图
  • wap网站搜索wordpress工作室模板
  • 青岛金融网站建设如何提交网站地图
  • 制作简单门户网站步骤网站建设论文的摘要
  • 可以直接进入网站的正能量照片学做静态网站
  • 织梦做社交网站合适吗网站的市场如何制作