640|2

13

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

HXX320中pwm的占空比设置 [复制链接]

 

       HXX320和STM32有不同,要配置可定义的PWM,其完成是内部分硬件方式。只需对相关的硬件设定,其DSP将协同处理。

      首先,初始化完成后,确定相关的设定库。

 

     TIM_TimeBaseStructure.TIM_Period设为TIMx的时钟,除非APB1的时钟分频数设置为1,否则通用定时器TIMx的时钟是APB1时钟的2倍,这时的TIMx时钟为72MHz,用这个TIMx时钟72MHz除以(PSC+1),得到定时器每隔多少秒涨一次,这里给PSC赋7199,计算得定时器每隔0.0001秒涨一次,即此时频率为10KHz,再把这个值乘以(ARR+1)得出PWM频率。

 

     此例,假如ARR值为0,即0.0001*(0+1),则输出PWM频率为10KHz,再假如输出频率为100Hz的PWM,则将ARR寄存器设置为99即可。如果想调整PWM占空比精度,则只需降低PSC寄存器的值即可。设为100TIM_SetCompare2(20),就是20%占空比了。

 

相关代码下:

 

void TIM_Configuration(void)//TIM初始化函数
{
  TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;//定时器初始化结构
  TIM_OCInitTypeDef  TIM_OCInitStructure;//通道输出初始化结构

 

   //TIM1初始化
  TIM_DeInit(TIM2);
  TIM_TimeBaseStructure.TIM_Period = 719;                  //周期719
  TIM_TimeBaseStructure.TIM_Prescaler = 999;              //时钟分频  
  TIM_TimeBaseStructure.TIM_ClockDivision = 0;           //时钟分割点
  TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;//PWM模式
  TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);   //基本初始化
  // TIM_ITConfig(TIM2, TIM_IT_CC4, ENABLE);           //打开中断,中断需要这行代码
 
   //TIM1通道初始化
  TIM_OCStructInit(& TIM_OCInitStructure);                             //默认参数
  TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;                    //工作状态,;//配置为PWM1模式
  TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;         //设定为输出,需要PWM输出才需要这行代码
  TIM_OCInitStructure.TIM_Pulse = 800;                                 //占空长度
  TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;                 //高电平
  TIM_OC4Init(TIM2, &TIM_OCInitStructure);                         //使用P4脚
  TIM_Cmd(TIM2, ENABLE);                                                   //启动TIM1
}

输出的信号周期为5ms,单个周期内高电平持续时间为0.7ms; 见图

 

 

最新回复

nmg
HXX320是谁家的单片机?   详情 回复 发表于 2024-8-15 09:30
点赞 关注(1)
 
 

回复
举报

6587

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

占空比设置 效果看得见,挺好

 
 
 

回复

5218

帖子

239

TA的资源

管理员

板凳
 

HXX320是谁家的单片机?

加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
推荐帖子
ADSL 拨号错误代码分析

· Error 602 The port is already open指定的端口已打开 ...

大量单片机资料下载(收集了几年的东西)(里面绝对有你想找的)

大量单片机资料下载 废话不多说 上资料 1.KEIL入门学习的好资料 本帖最后由 melodyooo 于 2010-3-19 16:38 编辑 ]

helper2416_modbus_主从机测试_支持TCP/RTU

Modbus是一种串行通信协议,是Modicon于1979年为使用可编程逻辑控制器PLC而发表的. MODBUS是工业领域通信协议的业界标准,并且现 ...

【SAMR21新玩法】汇总

本帖最后由 dcexpert 于 2019-10-18 11:36 编辑 436737 与传统开发方法不同的用法,不需要IDE和编译器,使用python和图形 ...

Arduino发布 v1.8.11 版本

457463 https://www.arduino.cc/en/main/software

TI SimpleLink™ 无线 MCU 的恒温器参考设计

510581510582 大多数智能恒温器设计人员都希望设计出低功耗、联网、基于微控制器 (MCU) 并可将各种传感器安全地连接到云(从 ...

在MDK中如何生成bin格式的文件

在Realview MDK的集成开发环境中,默认情况下可以生成*.axf格式的调试文件和*.hex格式的可执行文件。虽然这两个格式的文件非常有 ...

【大学生电子竞赛题目分析】——2016年上海市TI杯B题 《短波频段数字通信系统设计》

一、任务 设计一个短波频段全数字收发通信演示系统,要求通信调制模式采用BPSK调制方式,调制符号率固定,调制载波通过程序设 ...

全志异核多构 AI智能视觉V853开发板测评 - V853 camera 媒体启动流程总结

全志V853 的相机的媒体的启动流程基本和瑞芯微的RV1109/RV1126 是类似的,以下是我总结的V853的camera媒体启动的流程: 6 ...

形影不离的好兄弟—X电容和Y电容

前言 只要是接有220V的电路板,一般都会看见安规电容的存在,黄色的是X电容,蓝色的是Y电容。 832090 ...

关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表