历史上的今天
返回首页

历史上的今天

今天是:2025年03月06日(星期四)

正在发生

2020年03月06日 | PIC 脉冲调控PWM模块

2020-03-06 来源:eefocus

PWM的输出引脚通过PWMxCON寄存器的第7位 PWM 模块使能位(PWMxEN)配置为PWM输出


其中输出脚分别为   RC5-----PWM1    RC3-----PWM2    RA2-----PWM3    RC1-----PWM4

个人总结关于PIC的PWM模块配置的一般步骤,感觉数据手册推荐的配置方法略微麻烦。


①配置系统时钟


②配置PWM引脚为输出


③配置TIM2的预分频数


④配置计数器PR2和TMR2


⑤配置输出极性并且PWM引脚输出使能


⑥设置占空比


⑦使能PWM波输出


void main()

{

    OSCCON = 0x78;//16M

    __delay_ms(20);

    

    TRISCbits.TRISC5 = 0;//RC5配置为输出

    ANSELCbits.ANSC3 = 0;

    TRISCbits.TRISC3 = 0;//RC3配置为输出

    ANSELCbits.ANSC1 = 0;

    TRISCbits.TRISC1 = 0;//RC1配置为输出 

    ANSELAbits.ANSA2 = 0;

    TRISAbits.TRISA2 = 0;//RA2配置为输出   

    

    T2CONbits.TMR2ON = 1;//Timer2 使能

    T2CONbits.T2CKPS0 = 0;

    T2CONbits.T2CKPS1 = 0;//1:1分频

    

    PR2 = 199;

    TMR2 = 0;



    PWM1CONbits.PWM1POL = 0;//PWM 输出为高电平有效

    PWM2CONbits.PWM2POL = 0;//PWM 输出为高电平有效

    PWM3CONbits.PWM3POL = 0;//PWM 输出为高电平有效

    PWM4CONbits.PWM4POL = 0;//PWM 输出为高电平有效

    

    PWM1CONbits.PWM1EN = 1;//使能 PWM 模块

    PWM2CONbits.PWM2EN = 1;//使能 PWM 模块

    PWM3CONbits.PWM3EN = 1;//使能 PWM 模块

    PWM4CONbits.PWM4EN = 1;//使能 PWM 模块

    

    PWM1DCH = 0x19;

    PWM1DCL = 0x00;//12.5%

    PWM2DCH = 0x3c;

    PWM2DCL = 0x00;//30%

    PWM3DCH = 0x64;

    PWM3DCL = 0x00;//50%

    PWM4DCH = 0xa0;

    PWM4DCL = 0x00;//80%

    

    PWM1CONbits.PWM1OE = 1;//使能到 PWM引脚的输出

    PWM2CONbits.PWM2OE = 1;//使能到 PWM引脚的输出

    PWM3CONbits.PWM3OE = 1;//使能到 PWM引脚的输出

    PWM4CONbits.PWM4OE = 1;//使能到 PWM引脚的输出

    while(1)

    {

    }

}


理论上周期为 f=FOSC/4/PS/(PR2+1)=16M/4/1/(199+1)=20K


占空比为  D1=100/800=12.5%


                D2=240/800=30%


                D3=500/800=50%


                D4=640/800=80%


实际示波器测量得到波形如下图所示

实际与理论基本相符

推荐阅读

史海拾趣

CMOSIS公司的发展小趣事

随着CMOS图像传感器在智能手机、安防监控、汽车等领域的广泛应用,CMOSIS公司看到了巨大的市场潜力。公司加大了市场拓展力度,不仅在国内市场取得了显著成绩,还积极开拓海外市场。同时,公司注重品牌建设,通过提升产品质量、加强售后服务等方式,树立了良好的企业形象和口碑。

川土(Chipanalog)公司的发展小趣事

为了进一步提升品牌影响力和市场竞争力,川土微电子开始积极寻求国际合作。公司与多家国际知名企业建立了合作关系,共同开发新产品、拓展新市场。同时,川土微电子还通过参加国际展会、发布新品等方式不断提升品牌知名度。这些努力不仅为公司带来了更多的商业机会,也为其在全球模拟芯片市场中树立了良好的形象。

ASPEED Technology公司的发展小趣事

ASPEED与Audinate建立了合作伙伴关系,共同开发Dante AV-A。这一合作使得ASPEED的SoC能够支持Dante AV-over-IP芯片组,为专业AV行业的制造商提供了更加便捷、高效的解决方案。通过合作,ASPEED进一步巩固了其在专业AV市场的地位,并拓宽了公司的业务范围。

Enovation Controls LLC公司的发展小趣事

ASPEED的AST2600 BMC与瑞萨电子的I3C器件相结合,为客户提供了设计便捷、带宽增强且系统成本优化的解决方案。这一合作不仅展示了ASPEED在服务器管理领域的实力,还进一步推动了DDR5解决方案对I3C标准的推广使用。通过双方的努力,共同客户在实现向全新高速总线接口飞跃发展的过程中,获得了更加信心满满的设计体验。

Advanced Thermal Solutions公司的发展小趣事

为了进一步扩大市场份额,ATS开始实施全球化战略。公司先后在北美、欧洲和亚洲等地设立了分公司或办事处,以便更好地服务全球客户。同时,ATS还积极参与国际展览和交流活动,与全球各地的合作伙伴建立紧密的合作关系。这些举措使ATS的产品和服务得以覆盖更广泛的地域,公司的知名度和影响力也不断提升。

上海国芯(Gcore)公司的发展小趣事
根据实际需求设定超速阈值,通过调整电路中的电阻和电容值来实现。

问答坊 | AI 解惑

汽车点烟器输出电压和电流是多少呢?

汽车点烟器输出电压和电流是多少呢? 电脑的光驱有多少的电压和电流呢? 如果把光驱放到车上要接多大的电阻呢? 接什么东西 能把电流降到 1.5A 呢?  光驱的电流是1.5A  如果电流大了,光驱会坏吗? [ 本帖最后由 sunsonglin 于 2009-2-2 ...…

查看全部问答>

冰箱:高端驶入快车道 中国成全球“风向标”

本帖最后由 jameswangsynnex 于 2015-3-3 19:57 编辑 然国际金融危机给家电业带来了不小的冲击,但是受益于家电下乡、以旧换新等一系列利好政策,2009年我国的高端冰箱市场出现了快速增长的态势。另外,随着低碳理念的深入人心,企业节能技术不断 ...…

查看全部问答>

ARM Pc寄存器的一个问题

我在看书看到这样一段话: 对于arm指令集来说,PC指向当前指令的下两条指令的地址,由于ARM指令是字对齐的,PC值的第0位和第一位总为0, 这句话全不懂,谁能解释下呢…

查看全部问答>

问一下MSP430f42xx里的SAD( Sigma-Delta A/D)怎么用啊?

本帖最后由 paulhyde 于 2014-9-15 09:44 编辑 Sigma-Delta A/D 原理基本不懂····和逐次比较的有什么不同?还有怎样操作它?  …

查看全部问答>

基于ARM与SD卡的大容量数据存储技术的应用研究

0 引言   在现场测控系统中,RTU(远程测控终端)存储容量、存储数据的转移问题始终是RTU的重要环节。RTU的存储容量一般为几十K~几百K字节,数据转移通常采用不掉电静态RAM、EEPROM存储模块,或采用便携式计算机通过串行口读取RTU数据。 ...…

查看全部问答>

【悬赏求助】launchpad捕获按键按下的时间

最近在学习launchpad,中断方面困难重重。。。我想实现这样一个功能:P1.1设为输入,连接一个按键,然后利用中断判断按键按下的时间,要是短按的话就LED1翻转,长按的话LED2翻转。这样的话,我知道应该用捕获模式获取时间信息对吧,但是实现过程一 ...…

查看全部问答>

MSP430硬件I2C程序

MSP430硬件I2C程序,已测试通过,有兴趣的可探讨探讨…

查看全部问答>

今年刚大一下学期,学的电子信息专业,我应该入手怎样51单片机,本人小白,

刚刚进入大学,不想时间都被浪费,想自学51单片机,不知道怎么下手,     论坛的帖子也下了一些,也看了有一些,大二大三的学长要我先看书,    我到底是应该是先看书,还是边理论边实践,实践的话,应该买个什么样的51单片 ...…

查看全部问答>