学海荡舟手机网
导航

主页 > 电子设备技术 > 电器电路基础 > > 详细内容

用遥控器控制电脑解码及通信程序的编码概述

  在介绍之前还是先来了解一下上位机的功能界面,以便能更好地理解下位机算法原理。
  
  上位机软件采用VB编写,主要由两个操作界面组成,一个主界面为操作显示界面,另一个为参数设置界面;。分别实现远程操作的效果显示和对键盘的功能设定,软件界面截图如下,通过主界面菜单项“键值设定”可以进入按键功能分部设定对话框(如上图、下图所示),主对话框上提供两个串口供用户使用,选择对应的硬件链接串口号后点击“打开串口”即可启动操作效果显示软件。另外一个为键值设定对话框,可以实现对特殊按键习惯的用户或者不同键盘格式对功能键的分布做随意的设定。方便用户使用不同按键分部的,扩展了系统的兼容性。
  
  键值设定对话框设置时先设定配置文件的保存位置,软件默认保存在C盘根目录下面,若更改设置保存位置后需单击“保存设置”保存路径设置更改,提示“配置文件保存成功”即更改成功。配置文件名为软件默认文件名“IRconfig.ini”,配置时选择对应的功能项,然后使用遥控器按下定义的对应功能键,则对应的定义键为对应的功能。如选择键盘功能区的启动关机项,将下位机设置为学习模式后按下遥控器的键“1”,等待弹出提示对话框“启动关机添加成功!”,则“1”键被设置为关机键,退出学习模式后按下遥控器端的“1”键可启动关机操作。继续选择键盘功能区的其他功能项可继续类似的添加功能键定义。

  接下来分析下位机程序,首先来看红外信号检测中断函数,即外部中断O函数。

  关定时器复原设置
  )
  
  上面的程序省略了对操作码的,若要实现对操作码的解码则需要将38.8ms精确延时改为略小于13.5ms的延时来跳过引导码和约一个数据位的粗略延时做干扰判断即可。同时定时器中断函数读取数据位做相应的变化,原来为一个字节的数据和反码读取改成2B的数据和反码读取。

  解码算法主要在定时器中实现,主要是靠1.125~1.69ms之间的粗略延时循环的判断采样点信号,根据采样信号为“O”、“1”动态修改进入下次采样的延时时间,使每次的粗略延时迅速得到修正,保证了解码的成功率。并且采用看门狗复位因干扰信号造成的死机。下图为数据位为“0”和“1”的采样时刻比较图,从中我们可以更清晰的理解程序原理。

时刻比较图

  下面讲RS232串口通信设置部分,此处采用12M和波特率9600,n,8,1通信模式,注意波特率设置是和PC端驱动程序的波特率保持一致的。

 


相关文章