PWM(脉冲宽度调制PulseWidthModulation)原理..doc

PWM(脉冲宽度调制PulseWidthModulation)原理..doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PWM(脉冲宽度调制PulseWidthModulation)原理.

1、?PWM原理 2、调制器设计思想 3、具体实现设计 一、?PWM(脉冲宽度调制Pulse Width Modulation)原理: ??????? 脉冲宽度调制波通常由一列占空比不同的矩形脉冲构成,其占空比与信号的瞬时采样值成比例。图1所示为脉冲宽度调制系统的原理框图和波形图。该系统有一个比较器和一个周期为Ts的锯齿波发生器组成。语音信号如果大于锯齿波信号,比较器输出正常数A,否则输出0。因此,从图1中可以看出,比较器输出一列下降沿调制的脉冲宽度调制波。 ? ? ????? 通过图1b的分析可以看出,生成的矩形脉冲的宽度取决于脉冲下降沿时刻t k时的语音信号幅度值。因而,采样值之间的时间间隔是非均匀的。在系统的输入端插入一个采样保持电路可以得到均匀的采样信号,但是对于实际中tk-kTsTs的情况,均匀采样和非均匀采样差异非常小。如果假定采样为均匀采样,第k个矩形脉冲可以表示为: ??????????????????????????? (1) 其中,x{t}是离散化的语音信号;Ts是采样周期;?是未调制宽度;m是调制指数。 ?然而,如果对矩形脉冲作如下近似:脉冲幅度为A,中心在t = k Ts处,? 在相邻脉冲间变化缓慢,则脉冲宽度调制波xp(t)可以表示为: ??????????????????????????? (2) 其中,? 。无需作频谱分析,由式(2)可以看出脉冲宽度信号由语音信号x(t)加上一个直流成分以及相位调制波构成。当? 时,相位调制部分引起的信号交迭可以忽略,因此,脉冲宽度调制波可以直接通过低通滤波器进行解调。 二、?数字脉冲宽度调制器的实现: ????? 实现数字脉冲宽度调制器的基本思想参看图2。 ? ????? 图中,在时钟脉冲的作用下,循环计数器的5位输出逐次增大。5位数字调制信号用一个寄存器来控制,不断于循环计数器的输出进行比较,当调制信号大于循环计数器的输出时,比较器输出高电平,否则输出低电平。循环计数器循环一个周期后,向寄存器发出一个使能信号EN,寄存器送入下一组数据。在每一个计数器计数周期,由于输入的调制信号的大小不同,比较器输出端输出的高电平个数不一样,因而产生出占空比不同的脉冲宽度调制波。 ?? ????????????????? 图3 ?????? 为了使矩形脉冲的中心近似在t=kTs处,计数器所产生的数字码不是由小到大或由大到小顺序变化,而是将数据分成偶数序列和奇数序列,在一个计数周期,偶数序列由小变大,直到最大值,然后变为对奇数序列计数,变化为由大到小。如图3例子。 ???????奇偶序列的产生方法是将计数器的最后一位作为比较数据的最低位,在一个计数周期内,前半个周期计数器输出最低位为0,其他高位逐次增大,则产生的数据即为偶数序列;后半个周期输出最低位为1,其余高位依次减小,产生的数据为依次减小的偶序列。具体电路可以由以下电路图表示: ? 三、?8051中的PWM模块设计: 应该称为一个适合语音处理的PWM模块,输出引脚应该外接一积分电路。输出波形的方式适合作语音处理。设计精度为8位。 PWM模块应包括: 1、?比较部分(Comp): 2、?计数部分(Counter): 3、?状态及控制信号寄存/控制器(PWM_Ctrl); 1)?状态积寄存器:(Flags),地址:E8H ; EN:?PWM模块启动位,置位为‘1’将使PWM模块开始工作; (留空备用) 解调速率标志位:00 – 无分频;01 – 2分频;10 – 10分频;11 – 16分频。 (RESET后为00) (留空备用) (留空备用) (留空备用) (留空备用) 注意:该寄存器可以位操作情况下可写,不可读;只能在字节操作方式下读取。 2)?数据寄存器(DataStore),地址:F8H; 注意:该寄存器值不可读,只可写。 4、?端口: 1)?数据总线(DataBus);(双向) 2)?地址总线(AddrBus);(IN) 3)?PWM波输出端口(PWMOut);(OUT) 4)?控制线: CLK:时钟;(IN) Reset:异步复位信号;(IN 低电平有效) WR:写PWM RAM信号;(IN 低电平有效); RD:读PWM RAM信号;(IN 低电平有效) DONE:接受完毕反馈信号;(OUT 高电平有效) INT:中断申请信号;(OUT 低电平有效) IntResp:中断响应信号;(In低电平有效) ByteBit:字节/位操作控制信号(IN 1-BYTE 0-BIT); ? ??????? 中断占用相当于MCU8051的外部中断2,则可保证在5个指令周期之内,“读取数据”中断必定得到响应。 ?????? ?PWM模块使用方法:因为占用了8051外部中断1,所以在不使用该模块时,应该把外

文档评论(0)

bhzs + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档