找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5462|回复: 8
打印 上一主题 下一主题
收起左侧

[求助]自带程序的红外问题,多谢!

[复制链接]
跳转到指定楼层
楼主
ID:33837 发表于 2012-2-1 10:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

使用的三个光盘自带的程序:

1.红外发射;2.红外万能学习型遥控器_c;3.红外万能学习型遥控器_asm

 

发现几个问题不太理解,

问题1:用示波器分别检测三个程序的P3.2端口都有相应的方波信号,但红外发射管的端口都没有相应的方波信息,不是太理解。

问题2:程序1与程序2都无法成功发射红外信号,但程序3可以成功发射。(成功发射是指红外接收头接收到信号并在示波器上显示出来)。

问题3:程序1中的38k方波实现过程

 TL0 = 0xE5; //设定时值0为38K 也就是每隔26us中断一次 

每隔26us中断一次,也就是说52us才可以完成一次01更替变化,周期为52us,频率应该为19K才对啊,怎么是38K方波呢?

 

[此贴子已经被作者于2012-2-1 10:50:43编辑过]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:33837 发表于 2012-2-1 10:32 | 只看该作者
附上三个源代码
回复

使用道具 举报

板凳
ID:33837 发表于 2012-2-1 10:34 | 只看该作者
红外发射.txt (3.4 KB, 下载次数: 39)
红外万能学习型遥控器_c.txt (3.94 KB, 下载次数: 62)
红外万能学习型遥控器_asm.txt (14.14 KB, 下载次数: 33)
[此贴子已经被作者于2012-2-1 10:51:41编辑过]
回复

使用道具 举报

地板
ID:1 发表于 2012-2-1 21:46 | 只看该作者
程序3 是用汇编语言写的 比较精确. 在程序中虽然是26us中断一次,但是中断程序也是需要时间来执行的,26us只是定时器中断而已,
void timeint(void) interrupt 1 
{ 
  TH0=0xFF; 
  TL0=0xE5; //设定时值为38K 也就是每隔26us中断一次
  count++;
  if (flag==1)
  {
    OP=~OP;
  }
  else
  {
    OP = 0;
  }
  P2_3 = OP;
} 
中断程序里有这么多的语句,执行也需要好几个us,用软件仿真一下就能知道 其实是在38K左右
OP的反转时间是26US+中断程序里那几个语句的执行时间才对.
[此贴子已经被作者于2012-2-1 21:54:48编辑过]
回复

使用道具 举报

5#
ID:1 发表于 2012-2-1 21:47 | 只看该作者
问题1:用手机的摄像头对准红外发射头即可看到是否有红外输出,我们的肉眼看不到红外线,但手机摄像头可以看到的
回复

使用道具 举报

6#
ID:33837 发表于 2012-2-2 21:52 | 只看该作者

1.用摄像头观察是否发出了红外信号的方法不错,长见识了。

 

2.调试结果为发射程序37us进行一次反转,但这是半个周期,一个周期就是74us,对应的方波频率约为13k左右。应该是接收头无法接受到此频率的信息吧(修改了TL0的值,只进行中断操作,算上执行中断消耗的时间。反转一次的时间最小为31us)?

 

 

 

 

回复

使用道具 举报

7#
ID:33837 发表于 2012-2-16 20:40 | 只看该作者
程序一直未能实现,改用晶振了。后续再研究一下。
回复

使用道具 举报

8#
ID:36900 发表于 2012-3-22 23:05 | 只看该作者
牛人人人呀
回复

使用道具 举报

9#
ID:189909 发表于 2017-7-26 14:32 | 只看该作者
上边三个程序不能点啊  不能下载且每点一次扣5个积分,还要记录我的ip吓死爷爷了!

评分

参与人数 1黑币 +80 收起 理由
admin + 80 补偿

查看全部评分

回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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