打印

PWM频率设置问题

[复制链接]
935|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
stly|  楼主 | 2020-10-12 20:33 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
PIC16F887的PWM工作频率能由外部晶振决定么?

使用特权

评论回复
沙发
ousj| | 2020-10-12 20:37 | 只看该作者

你有什么打算呢?或者你想知道什么?

使用特权

评论回复
板凳
stly|  楼主 | 2020-10-12 20:41 | 只看该作者
PWM周期=[(PR2+1)*4]*Tosc*预分频。这里的Tosc能由外部晶振确定么?

使用特权

评论回复
地板
zhuww| | 2020-10-12 20:44 | 只看该作者
应该是可以。我以前用这个也都是用外部晶振。

使用特权

评论回复
5
zhanglli| | 2020-10-12 21:01 | 只看该作者
Fosc就是系统时钟,
Fcy是指令周期,

所以, 这个完全取决于你系统时钟的选取, 你选外部晶振提供系统时钟, 那么...

使用特权

评论回复
6
stly|  楼主 | 2020-10-12 21:05 | 只看该作者

#define _LEGACY_HEADERS
#include <pic.h>       //Head File
__CONFIG(0X2CF2);   

unsigned int x;
unsigned int k;

main(void)
{

    OSCCON=0X78;            //clock
    TRISC=0B11111011;      //RC2--output
    PORTC=0B00000000;
    CCP1CON=0x3c;   //set CCP1 as PWM mode
    PR2=9;                // set intial frequence
    x=((4*PR2)+4)/2;
    k=x&0xFFFF;
    CCPR1L =(k>>2)&0xFE;
    T2CKPS1=0;
    T2CKPS0=0;          //divde as 1:1
    TMR2ON=1;         //start TIMER2
    while(1)
    {           
               
    }
}
  
这是我晶振连接方式,晶振设置为了16M

使用特权

评论回复
7
stly|  楼主 | 2020-10-12 21:11 | 只看该作者

使用特权

评论回复
8
真爱吴迪迪| | 2020-10-12 21:14 | 只看该作者
PWM周期=[(PR2+1)*4]*Tosc*预分频。这里的Tosc能由外部晶振确定么?

使用特权

评论回复
9
stly|  楼主 | 2020-10-12 21:18 | 只看该作者
求教大佬这个怎么该?我为什么用不了外部晶振做Fosc

使用特权

评论回复
10
stly|  楼主 | 2020-10-12 21:21 | 只看该作者
求教大佬看一下楼下我写的程序该怎么改?我为什么用不了外部晶振做Fosc

使用特权

评论回复
11
xxrs| | 2020-10-12 21:24 | 只看该作者
你这是用proteus仿真吧?

使用特权

评论回复
12
pangb| | 2020-10-12 21:28 | 只看该作者
如果是仿真的话,只与你双击MCU设置的时钟频率有关,与外部晶振设置频率无关。

使用特权

评论回复
13
kangzj| | 2020-10-12 21:33 | 只看该作者
当然实际线路就是使用外部晶振了,

使用特权

评论回复
14
yufe| | 2020-10-12 21:37 | 只看该作者
你研究一下, 配置字... configuration bits的看看.

使用特权

评论回复
15
stly|  楼主 | 2020-10-12 21:41 | 只看该作者
这样啊...我把改了MCU的时钟频率改了...确实行了...谢谢谢谢大佬...

使用特权

评论回复
16
stly|  楼主 | 2020-10-12 21:44 | 只看该作者
还有一个问题...我看PIC16F877的数据手册写最高外部晶振频率是20MHz...但是887的数据手册上没写。 那887的外部晶振最高频率也是20MHz么?

使用特权

评论回复
17
stly|  楼主 | 2020-10-12 21:49 | 只看该作者
我刚把MCU的时钟频率设置成64MHz了...它依旧能正常运行

使用特权

评论回复
18
renyaq| | 2020-10-12 21:53 | 只看该作者

http://ww1.microchip.com/downloads/en/DeviceDoc/40001291H.pdf 这数据手册里写了外部最高频率了. 看我的截图. 至于你设成64M也能运行,是因为仿真的原因吧

使用特权

评论回复
19
renyaq| | 2020-10-12 21:58 | 只看该作者

使用特权

评论回复
20
stly|  楼主 | 2020-10-12 22:01 | 只看该作者

嗯,我再好好缕一缕吧,有了好消息及时通知大家

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

433

主题

7058

帖子

0

粉丝