又好久没泡一下了哈,唉最近时下是忙唉,单位一堆事,回家也一堆事,搞搞东西时在是不容易啊!
唉!
有人说你忙得糊涂了,PWM怎么能点亮段显LCD,嘿嘿!我还真没糊涂清楚的很啊!!!
来真格地:
脉冲宽度调制(PWM,Pulse-Width Modulation),也简称为脉宽调制,是一项功能强大的技术,它是一种对模拟信号电平进行数字化编码的方法。在脉宽调制中使用高分辨率计数器来产生方波,并且可以通过调整方波的占空比来对模拟信号电平进行编码。PWM通常使用在开关电源和电机控制中。Stellaris系列ARM提供4个PWM发生器模块和一个控制模块。每个PWM发生器模块包含1个定时器(16位递减或先递增后递减计数器)、2个比较器、1个PWM信号发生器、1个死区发生器,以及一个中断/ADC触发选择器。而控制模块决定了PWM信号的极性,以及将哪个信号传递到管脚。
PWM发生器模块产生两个PWM信号,这两个PWM信号可以是独立的信号(基于同一定时器因而频率相同的独立信号除外),也可以是一对插入了死区延迟的互补(complementary)信号。PWM发生器模块的输出信号在传递到器件管脚之前由输出控制模块管理。
Stellaris系列单片机的PWM模块具有极大的灵活性。它可以产生简单的PWM信号,如简易充电泵需要的信号;也可以产生带死区延迟的成对PWM信号,如半-H桥(half-H bridge)驱动电路使用的信号。
Stellaris系列ARM的PWM特性
4个PWM发生器,产生8路PWM信号;
灵活的PWM产生方法;
自带死区发生器;
灵活可控的输出控制模块;
安全可靠的错误检测保护功能;
丰富的中断机制和ADC触发。
PWM功能概述
PWM模块每个PWM发生器都有一个16位定时器,两个比较器,可以产生两路PWM。在PWM发生器运作时,定时器在不断计数并和两个比较器的值进行比较,可以在和比较器相等时或者定时器计数值为零、为装载值时对输出的PWM产生影响。在使能PWM发生器之前,配置好定时器的计数速度、计数方式、定时器的转载值、两个比较器的值、以及PWM受什么事件的影响,有什么影响后,就可以产生许多复杂的PWM波形(配置过程见本文后面章节介绍)。
Stellaris系列ARM提供的PWM模块功能非常强大,可以应用于众多方面:
PWM作为16为高分辨率D/A
16位PWM信号+低通滤波器+ 输出缓冲器,如图1.1所示:
PWM调节LED亮度
不需要低通滤波器,通过功率管还可以控制电灯泡的亮度。
PWM演奏乐曲、语音播放
PWM方波可直接用于乐曲演奏。作为D/A经功放电路可播放语音。
PWM控制电机
直流电机
交流电机
步进电机
PWM定时器
PWM定时器有两种工作模式:递减计数模式或先递增后递减计数模式。在递减计数模式中,定时器从装载值开始计数,计数到零时又返回到装载值并继续递减计数。在先递增后递减计数模式中,定时器从0开始往上计数,一直计数到装载值,然后从装载值递减到零,接着再递增到装载值,依此类推。通常,递减计数模式是用来产生左对齐或右对齐的PWM信号,而先递增后递减计数模式是用来产生中心对齐的PWM信号。
PWM定时器输出3个信号,这些信号在生成PWM信号的过程中使用。一个是方向信号(在递减计数模式中,该信号始终为低电平,在先递增后递减计数模式中,则是在高低电平之间切换)。另外两个信号为零脉冲和装载脉冲。当计数器计数值为0时,零脉冲信号发出一个宽度等于时钟周期的高电平脉冲;当计数器计数值等于装载值时,装载脉冲也发出一个宽度等于时钟周期的高电平脉冲。
PWM比较器
PWM发生器含两个比较器,用于监控计数器的值。当比较器的值与计数器的值相等时,比较器输出宽度为单时钟周期的高电平脉冲。在先递增后递减计数模式中,比较器在递增和递减计数时都要进行比较,因此必须通过计数器的方向信号来限定。这些限定脉冲在生成PWM信号的过程中使用。如果任一比较器的值大于计数器的装载值,则该比较器永远不会输出高电平脉冲。
号,延迟时间可编程。第二个输出PWM信号为输入信号的反相信号,在输入信号的下降沿和这个新信号的上升沿之间增加了可编程的延迟时间。对电机应用来讲,延迟时间一般仅需要几百纳秒到几微秒。
PWM死区发生器
从PWM发生器产生的两个PWM信号被传递到死区发生器。如果死区发生器禁能,则PWM信号只简单地通过该模块,而不会发生改变。如果死区发生器使能,则丢弃第二个PWM信号,并在第一个PWM信号基础上产生两个PWM信号。第一个输出PWM信号为带上升沿延迟的输入信号,延迟时间可编程。第二个输出PWM信号为输入信号的反相信号,在输入信号的下降沿和这个新信号的上升沿之间增加了可编程的延迟时间。对电机应用来讲,延迟时间一般仅需要几百纳秒到几微秒。
到这里有人会问这同LCD一点关系也没有啊
好上资料
EDS812.pdf
(51.62 KB, 下载次数: 51)
这款大连的液晶有一个特点,只要第一个脚输入方波信号,我问他们的技术支持必须大于100HZ吧
其余管脚给高电平就显示,低电平就不显示,
由于LM3S8962的管脚有限我就接PORTB的第二,第三脚连接第8,17脚,PWM2连LCD第一脚
上图:(什么有图就有真象)
上面是PWM2波形
下面是点亮的LCD
上程序:
eepwm.zip
(179.85 KB, 下载次数: 113)
[
本帖最后由 ddllxxrr 于 2010-12-31 21:50 编辑 ]