pt2262解码程序-c语言含实测波形图-read.docVIP

pt2262解码程序-c语言含实测波形图-read.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
pt2262解码程序-c语言含实测波形图-read

PT2262?解码程序-C语言(含实测波形图)/blog/user1/8920/archives/2007/21552.html 图为我实测的波形图,PT2262一次发射4组相同的编码,每组码之间用同步码分开,考虑到用A4纸打印,每行只有一组码,共四行,第五行是把同步码单独切出来,方便看。 /****************************************************************************************** ??????? 项目名称:?????? 意大利无线门铃 ??????? 程序功能:?????? PT2262解码程序 ??????? 晶??? 振:?????? 4 MHz ??????? 作??? 者:????? 123mcu? ??????? 电子邮箱:????? 123mcu@163.com ??????? QQ????? :?????? 104076687 ??????? 日??? 期:?????? 2007-03-19 ??????? 版??? 本:?????? V1.0 ??????? ??????? PT2262震荡电阻为4.7M,如电阻不一样需改一下程序时间 ??????? 本程序是用来做无线收发所用,如果用于红外发光管请将震荡电阻改为430K-470K ??????? 当然程序里的时间也要改哦 ??????? 我的连接方法是将PT2262的数据输出端经过三极管反向后直接接到AT89C2051的P3.2, ??????? PT2262与AT89C2051同一个5V电源 ??????? PT2262是两个脉冲代表一位,我解码是将每个脉冲当成一位,宽的为1,窄的为0, ??????? 这样就是24位,解码结果放在receive[3]里 ??????? 本程序刚刚写完,用仿真器试解码结果没有问题,还没有接高频发射线路试, ??????? 先把它贴上来再说。 ??????? *******************************************************************************/ #i nclude reg51.h sbit RemPin? =?? P3^2? ; unsigned char receive[3]; void RemIn(void) interrupt 0 using 1 { ??? unsigned char i,j; ??? unsigned int temp; ?EA=0; ?TH0=0; ? ?TL0=0; ? ?while (!RemPin); //等待高电平 ??? TR0=1; ??? while (RemPin)? //等待低电平 ??????? if (TF0==1)? goto RemExit;??//超时就退出; ??? TR0=0; ??? temp=TH0; ??? temp=(temp8)+TL0; ??? if (temp6000 || temp4000)?? //判断同步码的宽度 ??? { ??????? temp=TH0; ??goto RemExit; ??? } //同步码检测成功 ??? for (i=0; i3; i++) //解 3*8=24 位码 ??? for (j=0; j8; j++) ??? { ??????? while (!RemPin);? //等待高电平 ??????? TH0=0; ? ??TL0=0; ??TR0=1; ??????? while (RemPin)? //等待低电平 ??????????? if (TF0==1)?goto RemExit;?//超时就退出 ??TR0=0; ??????? temp=TH0; ??????? temp=((temp8)+TL0); ? //????? /* ??????? if (temp400 temp600) ??????? { ??????????? receive[i]=receive[i]1; ??????????? receive[i]=receive[i]+1; //保存 1 ??????? } ??????? else if (temp100 temp234) ??????????? { ??????????????? receive[i]=receive[i]1;?? //保存0 ??????????? } ??????????? else goto RemExit; ??? } ??? temp=0;//在这里设置一个断点,运行到这里后看看receive里的三个字节数据就是解码的结果 ??? RemExit: ??? { ?

文档评论(0)

ailuojue + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档