一个用手机红外控制电视的程序.docVIP

  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文档。上传文档
查看更多
一个用手机红外控制电视的程序手机和电脑的红外协议是IrDA,这是以数据通讯为主的协议。IrDA的实现包括光电转化转换部分和红外解码译码部分,红外解码译码是通过专用芯片完成的。手机和电脑都遵循标准的IrDA协议,才能进行数据通讯。注意了,我们通常所说的家电红外遥控不是IrDA!虽然光电转化转换部分基本是一样的,但是,红外解码译码部分可不遵循IrDA协议,通常只是一个简单的低速编解码电路。那么是否能够使IrDA兼容家电红外遥控的编解码呢?这两者相去太远了,实际上它们除了红外光电转化转换部分相似外,没有太多共同语言。 2 l/ T, J- H9 s e??s9 ?- ~: a * L3 F! r, Z) u W5 T 8 k1 C. l+ G/ D I+ t 2 a _2 g5 S: n6 i 加上一些硬件电路应该可能的吧。比如外接一个usb设备什么的8 \6 Z4 V$ k- o- h ^0 z( N 要写一个程序来,还要看电视机的型号1 J! `0 w8 u7 G7 Z. L9 B! E% U0 P 下面是51控制的程序 , m, O- c- w( y9 F2 k N2 H: t. s% ]% B. l b1 LC51程序代码: + T* X! i8 f$ T* x. r: E$ M??l# a* f7 E* v #include AT89X51.h 6 w8 k9 g9 f4 W( J% U. u i8 P7 B??Z P5 w* w; Tstatic bit OP;? ?? ???//红外发射管的亮灭 h$ a! x7 \) z/ R/ G9 \ static unsigned int count;? ?? ? //延时计数器4 L$ e( c% K( q2 O8 h N static unsigned int endcount; //终止延时计数 3 ]6 R8 J6 _7 \ Ostatic unsigned char flag;? ?? ?//红外发送标志* d2 p2 P n3 C char iraddr1;??//十六位地址的第一个字节 5 h5 f( ]% P??z+ H f??s0 ^8 J( vchar iraddr2;??//十六位地址的第二个字节 ) f* M( X8 @ S$ ~; W??d% c! t. O1 ], p+ ~- L% v void SendIRdata(char p_irdata);5 T7 _, X, g- u7 m4 Z??V void delay(); / a: T% y. c) h/ N \ T( w# Q??Y! C5 z Pvoid main(void) # q/ V, D: A# y/ ^( W/ `{ , l. w9 k, t+ b??m/ d6 {2 k??count = 0;0 H2 U! _! s# I% K4 P2 C8 f ??flag = 0; / `( l* C/ c1 ^$ L??OP = 0; ; v, p- f% `) U. \) P G4 g% i??P3_4 = 0;0 A+ N+ d, B7 C! ~ % s% j0 J1 r: \$ Q- K9 E??EA = 1; //允许CPU中断 + y9 h- v9 Z g8 ]/ }. ]+ h% p7 N ??TMOD = 0x11; //设定时器0和1为16位模式1 1 ^??j/ g) h. H# L??ET0 = 1; //定时器0中断允许 ) T- R, n, i9 S; ? , v: j [$ l3 o( z/ e) ]) H N3 S4 F0 a: `??TH0 = 0xFF; 3 b3 ^2 V/ m7 h, l |$ G. W- |7 r ??TL0 = 0xE6; //设定时值0为38K 也就是每隔26us中断一次?? $ t4 X4 M; t% S* m1 ?- n??TR0 = 1;//开始计数+ z( U) `2 ~# z S 8 X k4 o( d J1 ^, r??iraddr1=3;/ I+ |7 O! h( r ??iraddr2=252; % h/ P f8 C! W! w3 v7 s2 N 8 n, ?6 a??f5 \2 |8 T3 n 5 t* Q( k0 l e3 V5 Z??do{( a; z% k U/ L8 }??V z. ^ ? ?? ?delay();) n% a+ m/ K, \ E( X5 G??N ? ?? ?SendIRdata(12); $ Z8 K??a* R; }! y% |??}while(1); _8 i( ]$ B7 H V } 1 } e. t7 n) Z / X) E% H2 b# C$ ~ y//定

文档评论(0)

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

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

1亿VIP精品文档

相关文档