精华内容
下载资源
问答
  • 本文档主要描述的是STM32 利用TIM定时器/计数器进行PWM输入模式捕捉4路PWM的周期和占空比
  • 找电调的适合周期和占空比

    千次阅读 2016-09-19 14:22:34
    对于无人机遥控器来说:周期为15ms,占空比7%为关闭 13%...循环得到电调的周期和占空比: 周期从1ms开始到100ms  占空比从90%到10%(可继续分)     int main( ) {  int i,j;  HAL_Init();  System

    对于无人机遥控器来说:周期为15ms,占空比7%为关闭     13%为最大


    使用stm32f745的HAL库:

    循环得到电调的周期和占空比:

    周期从1ms开始到100ms

        占空比从90%到10%(可继续分)

     

     

    int main( )

    {

             int i,j;


             HAL_Init();
             SystemClock_Config();
             MX_GPIO_Init();
             MX_USART6_UART_Init();

     

     

             while (1)
             {

     

                  //PWM  PD12 
                       for(i=1;i<100;i++)
                       { 
                               
                                for(j=9;j>0;j--)
                                {
                                         TIM4_PWM_Init(i*1000-1,108-1);   //周期是n  ms
                                         TIM_SetTIM4Compare1(i*100*j);   
                               
                                 printf("i=%d\r\n",i);       
                                         printf("j=%d\r\n",j);       
                                         HAL_Delay(5000);                                   
                                }
                       }
                      

           }

    }

    展开全文
  • 源:分享PWM输入模式捕捉4路PWM波形的周期和占空比 转载于:https://www.cnblogs.com/LittleTiger/p/10324117.html

    源:分享PWM输入模式捕捉4路PWM波形的周期和占空比

    转载于:https://www.cnblogs.com/LittleTiger/p/10324117.html

    展开全文
  • PWM的周期和占空比是如何计算

    万次阅读 多人点赞 2017-07-23 20:37:15
     PWM意为脉冲宽度调制,可用于调整输出直流平均电压,对于矩形波而言,输出平均压等于峰值电压×占空比占空比是一个脉冲周期内高电平时间与周期的比值,例如,峰值电压等于5V,占空比等于50%的方波信号平均电压...
    

    4、脉宽调节模式
       PWM意为脉冲宽度调制,可用于调整输出直流平均电压,对于矩形波而言,输出平均压等于峰值电压×占空比,占空比是一个脉冲周期内高电平时间与周期的比值,例如,峰值电压等于5V,占空比等于50%的方波信号平均电压等于2.5V,也就是万用表直流档测量得到的电压值


      脉宽调制(PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。

    • 模拟电路

           模拟信号的值可以连续变化,其时间和幅度的分辨率都没有限制。9V电池就是一种模拟器件,因为它的输出电压并不精确地等于9V,而是随时间发生变化,并可取任何实数值。与此类似,从电池吸收的电流也不限定在一组可能的取值范围之内。模拟信号与数字信号的区别在于后者的取值通常只能属于预先确定的可能取值集合之内,例如在{0V, 5V}这一集合中取值。

           模拟电压和电流可直接用来进行控制,如对汽车收音机的音量进行控制。在简单的模拟收音机中,音量旋钮被连接到一个可变电阻。拧动旋钮时,电阻值变大或变小;流经这个电阻的电流也随之增加或减少,从而改变了驱动扬声器的电流值,使音量相应变大或变小。与收音机一样,模拟电路的输出与输入成线性比例。

           尽管模拟控制看起来可能直观而简单,但它并不总是非常经济或可行的。其中一点就是,模拟电路容易随时间漂移,因而难以调节。能够解决这个问题的精密模拟电路可能非常庞大、笨重(如老式的家庭立体声设备)和昂贵。模拟电路还有可能严重发热,其功耗相对于工作元件两端电压与电流的乘积成正比。模拟电路还可能对噪声很敏感,任何扰动或噪声都肯定会改变电流值的大小。

    • 数字控制

           通过以数字方式控制模拟电路,可以大幅度降低系统的成本和功耗。此外,许多微控制器和DSP已经在芯片上包含了PWM控制器,这使数字控制的实现变得更加容易了。

           简而言之,PWM是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。只要带宽足够,任何模拟值都可以使用PWM进行编码。


           图1显示了三种不同的PWM信号。图1a是一个占空比为10%的PWM输出,即在信号周期中,10%的时间通,其余90%的时间断。图1b和图1c显示的分别是占空比为50%和90%的PWM输出。这三种PWM输出编码的分别是强度为满度值的10%、50%和90%的三种不同模拟信号值。例如,假设供电电源为9V,占空比为10%,则对应的是一个幅度为0.9V的模拟信号。

           图2是一个可以使用PWM进行驱动的简单电路。图中使用9V电池来给一个白炽灯泡供电。如果将连接电池和灯泡的开关闭合50ms,灯泡在这段时间中将得到9V供电。如果在下一个50ms中将开关断开,灯泡得到的供电将为0V。如果在1秒钟内将此过程重复10次,灯泡将会点亮并象连接到了一个4.5V电池(9V的50%)上一样。这种情况下,占空比为50%,调制频率为10Hz。

           大多数负载(无论是电感性负载还是电容性负载)需要的调制频率高于10Hz。设想一下如果灯泡先接通5秒再断开5秒,然后再接通、再断开……。占空比仍然是50%,但灯泡在头5秒钟内将点亮,在下一个5秒钟内将熄灭。要让灯泡取得4.5V电压的供电效果,通断循环周期与负载对开关状态变化的响应时间相比必须足够短。要想取得调光灯(但保持点亮)的效果,必须提高调制频率。在其他PWM应用场合也有同样的要求。通常调制频率为1kHz到200kHz之间。

    • 硬件控制器

           许多微控制器内部都包含有PWM控制器。例如,Microchip公司的PIC16C67内含两个PWM控制器,每一个都可以选择接通时间和周期。占空比是接通时间与周期之比;调制频率为周期的倒数。执行PWM操作之前,这种微处理器要求在软件中完成以下工作:

               * 设置提供调制方波的片上定时器/计数器的周期

               * 在PWM控制寄存器中设置接通时间

               * 设置PWM输出的方向,这个输出是一个通用I/O管脚

               * 启动定时器

               * 使能PWM控制器

           虽然具体的PWM控制器在编程细节上会有所不同,但它们的基本思想通常是相同的。

    • 通信与控制

           PWM的一个优点是从处理器到被控系统信号都是数字形式的,无需进行数模转换。让信号保持为数字形式可将噪声影响降到最小。噪声只有在强到足以将逻辑1改变为逻辑0或将逻辑0改变为逻辑1时,也才能对数字信号产生影响。

           对噪声抵抗能力的增强是PWM相对于模拟控制的另外一个优点,而且这也是在某些时候将PWM用于通信的主要原因。从模拟信号转向PWM可以极大地延长通信距离。在接收端,通过适当的RC或LC网络可以滤除调制高频方波并将信号还原为模拟形式。

           PWM广泛应用在多种系统中。作为一个具体的例子,我们来考察一种用PWM控制的制动器。简单地说,制动器是紧夹住某种东西的一种装置。许多制动器使用模拟输入信号来控制夹紧压力(或制动功率)的大小。加在制动器上的电压或电流越大,制动器产生的压力就越大。

           可以将PWM控制器的输出连接到电源与制动器之间的一个开关。要产生更大的制动功率,只需通过软件加大PWM输出的占空比就可以了。如果要产生一个特定大小的制动压力,需要通过测量来确定占空比和压力之间的数学关系(所得的公式或查找表经过变换可用于控制温度、表面磨损等等)。

           例如,假设要将制动器上的压力设定为100psi,软件将作一次反向查找,以确定产生这个大小的压力的占空比应该是多少。然后再将PWM占空比设置为这个新值,制动器就可以相应地进行响应了。如果系统中有一个传感器,则可以通过闭环控制来调节占空比,直到精确产生所需的压力。

           总之,PWM既经济、节约空间、抗噪性能强,是一种值得广大工程师在许多设计应用中使用的有效技术。

    摘自:[Embedded Systems Programming]

           作者Michael Barr是《嵌入式系统编程》杂志总编辑,也是《使用C和C++对嵌入式系统进行编程》(O'Reilly出版公司,1999年)一书的作者以及马里兰大学的客座教师。可以通过电子邮件与他联系。

    
    展开全文
  • /*------------------------------ Function: generate pulse signal Author: Zhang Kaizhou Date: 2019-5-15 22:50:43 ------------------------------*/ #include <reg51.h> #define uchar unsigned char ...
    /*------------------------------
    Function: generate pulse signal
    Author: Zhang Kaizhou
    Date: 2019-5-15 22:50:43
    ------------------------------*/
    #include <reg51.h>
    #define uchar unsigned char
    
    sbit output = P1^0;
    uchar period = 250;
    uchar high = 50;
    uchar tcount = 0;
    
    void timer0() interrupt 1 using 1
    {
    	TH0 = (65536 - 10000) / 256;
    	TL0 = (65536 - 10000) % 256;
    	tcount++;
    	if(tcount == high)
    	{
    		output = 0;
    	}else if(tcount == period){
    		tcount = 0;
    		output = 1;
    	}
    }
    
    void main()
    {
    	TMOD = 0x01; // set Timer1, working at mode 1(16 bit timer)
    	
    	TH0 = (65536 - 10000) / 256; // set initial value
    	TL0 = (65536 - 10000) % 256;
    	
    	EA = 1; // open global interrupt
    	ET0 = 1; // open Timer0 interrupt
    	TR0 = 1; // start Timer0
    	while(1);
    }
    
    展开全文
  • PWM输入是输入捕获的一个...与输入捕获不同的是PWM输入模式会将同一个输入信号(TI1或TI2)连接到两个捕获装置(IC1IC2)。这两个捕获装置一个捕获上升沿一个捕获下降沿。TI1FP1、TI2FP2它们中的一个被选择为触发输
  • 【嵌入式底层知识修炼】软件捕获PWM获取周期和占空比 的测试用例: 软件模拟 Period = 10ms, High = 4ms 软件模拟 Period = 20ms, High = 14ms 软件模拟 Period = 100ms, High = 56ms 软件...
  • 这是我的错误,这次就将源码我的心得体会分享出来,供大家下载测试成长。我其实也是菜鸟一个,如果讲解的地方有啥不对,或是程序设计的不好,欢迎大家提出意见,让我们一起来学习进步。fficeffice" /> PWM输入...
  • 音调、响度 周期(频率) 占空比 的关系音调VS周期 频率高=音调高=周期小 音调固定=周期固定响度VS占空比占空比大=响度大用单片机控制时,必须注意周期(既频率)的大小,如果频率太小,会造成滴答滴答而不是...
  • 用ECAP模块来捕获PWM周期,频率和占空比,可以自检自发。
  • 本资源为stm32f103输入捕获得到占空比周期源代码,keil5工程,在原子哥代码基础上改的,增加了一个获得周期的逻辑,可以得到周期时间高电平时间,进而得到占空比。亲测准确无误
  • 利用不同的占空比来调整数码管和LED的亮度,仅用1个定时器即可 ...让4组led灯保持同一个周期和占空比就是解决问题的关键。 定时器中断用作周期和调整占空比: 四位led灯 0.1占空比,数码管最暗时 效...
  • 博文基于STM32F103ZET6芯片,标准固件库3.5.0MDK5编写; 博文并不讨论PWM的基础知识,而是直接去谈对PWM灵活的控制问题;想全面了解的可以看看我写的专门针对PWM的博客: ...
  • pwm的频率和占空比

    2018-05-11 11:47:00
    pwm的频率是指每秒钟信号从高电平到低电平再回到高电平的次数,占空比是高电平持续时间低电平持续时间之间的比例。pwm的频率越高,其对输出的响应就会越快,频率越低输出响应越慢。pwm的调节作用来源于对“占周期...
  • PWM占空比和分辨率

    千次阅读 2015-09-04 11:12:42
    占空比是接通时间与周期之比 冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同 占空比:就是输出的PWM中,高电平保持的时间与该PWM的时钟周期的时间之比,如一个PWM的频率是1000Hz,那么它的时钟...
  • 频率表示了信号移动的快慢,拿正弦信号来说,发电厂发出一个波形,于是我们获得这个信号并将其向下传输,美国的频率为60赫兹,即一秒完成60个周期,EU欧盟为50赫兹,而如果你工作于航空系统,它们的频率为400赫兹,...
  • 采用定时器中断实现,测量频率时中断过于频繁,虽然可以通过设置多个待测信号周期产生一次定时器中断,来降低中断频率,但是这种方式测量出来的频率和占空比会出现跳动,数据不是很稳定。 改进方案:用PWM输入模式,...
  • 本系统以单片机为核心设计了一种用于测量频率、周期、脉宽、占空比、峰峰值的简易信号测量仪,其中还可分辩正弦波与方波,利用单片机的数学运算控制功能,结合部分中规模数字电路,实现测量中的功能自动切换。...
  • 占空比是接通时间与周期之比 冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同 占空比:就是输出的PWM中,高电平保持的时间与该 PWM的时钟周期的时间之比,如一个PWM的频率是1000Hz,那么它的...
  • 整篇都是关于定时器计数器的,原理在此不做赘述,只总结看到这类题该怎么算。 题型1: 1.假定单片机内部定时器T0工作在方式1下,要求从P2.0产生频率为20HZ的方波脉冲信号,已知单片机的晶振频率为12MHZ。 解法...
  • 占空比是接通时间与周期之比冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同占空比:就是输出的PWM中,高电平保持的时间与该PWM的时钟周期的时间之比,如一个PWM的频率是1000Hz,那么它的时钟周期...
  • STM32的PWM波的频率和占空比

    千次阅读 2016-10-20 19:30:29
    网上看到一篇文章,不是很完整,但是有助于我理解,个人觉得还可以,具体的...这里配置的这两个定时器确定了PWM的频率,我的理解是:PWM的周期(频率)就是ARR寄存器值与PSC寄存器值相乘得来,但不是简单意义上的相乘,
  • 只需传递频率和占空比 参数范围:频率:1hz~1Mhz 占空比(高电平时间/周期):1-99 (代表1%~99%) 2、设计方式 思路手稿: 结论: 最后设计的方式为:利用高精度定时器,设计两...
  • STM32中的PWM的频率和占空比的设置

    万次阅读 多人点赞 2013-01-10 21:25:01
    网上看到一篇文章,不是很完整,但是有助于我理解,个人觉得...这里配置的这两个定时器确定了PWM的频率,我的理解是:PWM的周期(频率)就是ARR寄存器值与PSC寄存器值相乘得来,但不是简单意义上的相乘,例如要设置P...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 716
精华内容 286
关键字:

周期和占空比