OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4767|回复: 3

C8051F120 PCA 产生PWM请教

[复制链接]

11

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
135
金钱
135
注册时间
2014-1-3
在线时间
0 小时
发表于 2014-3-7 22:56:37 | 显示全部楼层 |阅读模式

extern unsigned int CEX0_Compare_Value;   

void pca_init (void)
{   
    char data SFRPAGE_SAVE = SFRPAGE;        // preserve SFRPAGE
    SFRPAGE   =SFR_PAGE_0;
    PCA0CN    = 0x00;  //PCA定时器使能
    PCA0MD = 0x08;                      // Use SYSCLK as time base
PCA0CPM0  = 0xC2;  //使能16位PWM
     //PCA0L = 0x00;/*定时/计数器初值为0000H*/
    //PCA0H = 0x00;
    CEX0_Compare_Value = 65536 - 65536;
    PCA0CPL0 = (CEX0_Compare_Value & 0x00FF);
    PCA0CPH0 = (CEX0_Compare_Value & 0xFF00)>>8;                                           
    SFRPAGE = SFRPAGE_SAVE;             // restore SFRPAGE
}

void Port_IO_Init()
{
    SFRPAGE   = CONFIG_PAGE;
    XBR0      = 0x0c;//使能了PCA的 CEX0口,在P0.4产生PWM P0.0 P0.1接UART0的TX RX
XBR1      = 0x00;
XBR2      = 0x44;//交叉开关使能,P0.2 P0.3接UART1的TX RX
P0MDOUT   = 0x15;
}

void Oscillator_Init()
{
    SFRPAGE   = CONFIG_PAGE;
    OSCICN    = 0x83;
}
就是不能出波形,P0.4只在高电平显示

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2014-3-8 20:35:57 | 显示全部楼层
回复 支持 反对

使用道具 举报

11

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
135
金钱
135
注册时间
2014-1-3
在线时间
0 小时
 楼主| 发表于 2014-3-10 09:30:43 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
哈哈,谢谢原子哥,我已经整出来了
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2014-3-11 23:45:46 | 显示全部楼层
回复【3楼】jidian0177:
---------------------------------
恭喜
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-23 10:31

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表