STC PCA高速脉冲输出哪位高手玩过 技术交流区 电子园51单片机学习网 单片.docx

STC PCA高速脉冲输出哪位高手玩过 技术交流区 电子园51单片机学习网 单片.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
STC PCA 高速脉冲输出哪位高手玩过 - 技术交流区 - 电子园 51 单片机学习网 单片... STC PCA 高速脉冲输出 //+--***--+--***-PWM 初始化-+--***--+--*****--+--***--+- void pca_init(void) //PWM 初始化,输出 25%占空比(全 0) { CMOD =0x02; //设置PCA 定时器,空闲模式下停止PCA 计数, 时钟源 f/2,禁止 PCA 计数器溢出中断 CCON= 0x00; //禁止PCA 计数器工作,清除中断标志-溢出标志CCON=PCA 模块中断标志 CL = 0x00; //PCA 计数器低 8 位,清计数器 CH = 0x00; //PCA 计数器高 8 位 CCAPM0 = 0x4D; /* PWM 高速方波输出 7 6 5 4 3 2 1 0 //禁止引脚翻转 ECOMn,CAPPn,CAPNn,MATn,TOGn,PWMn,ECCFn ECOMn 比较器使能 CAPPn 正捕获 CAPNn 负 捕获 MATn 匹配,=1 置位 CCFn TOGn=1 翻转引脚 PWMn=1 脉冲调节输出 ECCFn=1 使能CCFn 中断*/ CCAP0L=0x4F; //输出为 38K 方波 CCAP0H=0x00; // //CCAPM1 = 0x31; //上/下沿捕获IP = 0x40; //PCA 中断唯一优先IPH = 0x40; EPCA_LVD=1; //开 PCA 中断 CR = 1; //PCA 计数器 EA = 1; } //--+-+-+-+-+-+-+-+-+- PCA 中断 pwm 方波输出 --+-+-+-+-+-+-+-+-+--- void FangBo() interrupt 6 //方波 { count++; /* if(flag==0) { OP = 0 ; } // 输出 低电平 */ //输出 38K 载波 CCF0=0;//清匹配中断标志 CCF1 if(CCAP0Llt;=(255-CCAP0L_val)) CCAP0L= CCAP0L+CCAP0L_val; else { CCAP0L=CCAP0L_val-(256-CCAP0L); if (CCAP0Hlt;255) CCAP0H++; else CCAP0H=0; } // irled = OP; // P3.4 } // =-=-=-=-=-=-=- 主程序 -=-=-=-=-=-=-=-=-=-=-=-=-=-=- void main(void) { pca_init(); // 初始化 PCA CCAPM0 = 0x49; //禁止翻转 led0=0; // 测试指示灯 // -+-+-+--- -+-+-+--- -+-+-+--- -+-+-+--- -+-+-+--- while(1) { Delay_ms(1000); if(count==500){led2=!led2;} } } 注: 12M 晶体, 利用送 0X49 禁止 P3.7 引脚翻转. 38K 频率 应该 26US 进 PCA 中断一次 即 count 26us 加 1 , 可实验中 发现 if(count==500){led2=!led2;} led2 闪烁还算正常. 可 count==5000 时, led2 取反的 周期就不是 26us * 5000 要比这长很多了. [localimg=161,150]1[/localimg] wang1jin (2009-8-24 11:11:25) if(count==500){led2=!led2;} 是否改为 led2 = ~led2? count 定义是不是定义成 int 类型的...burningphoenix (2009-8-24 12:04:51) 普通的 52 单片机有这个功能?slaoliu (2009-8-24 16:19:39) 是 STC12C2052 单片机 有这功能,, unsigned int count; //延时计数器 这已定义成 slaoliu (2009-8-24 16:31:50) [localimg=229,219]1[/localimg]slaoliu (2009-8-24 16:31:52) [localimg=229,219]1[/localimg]yaoyb_27 (2009-8-24 22:52:56) 没玩过,看看增加见识 yaoyb_27 (2009-8-24 22:53:32) 没玩过,看看增加见识 jxmdzj (2009-8-24 23:00:41) 我只记得 PCA 的速度是非常快的,好好看看你设置的值是不是太接近临界了程序我就不看了

文档评论(0)

tianya189 + 关注
官方认证
内容提供者

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

认证主体阳新县融易互联网技术工作室
IP属地上海
统一社会信用代码/组织机构代码
92420222MA4ELHM75D

1亿VIP精品文档

相关文档