大家好呀,现在想实现遥控器与wince开发板的红外通信,开发板的红外接收端与PXA270的串口相连,我想先修改相应串口驱动的com_read函数,在里面添加识别红外波形为0还是1,然后再在应用程序中利用readfile读取数据,这样对吗?
恳请高手
在你的PB中的catalog中搜索“IrDA”,然后把这个红外组件选上,重新生成OS,然后直接就有红外的驱动了,不需要拿原来的串口驱动来改。
对于如何操作红外,毕竟都是串行设备,OS已经提供了相关的API,可以通过Socket等方式,来来去去都是send()和recv()这些函数,所以不必担心。
相关的可以查看这篇教学文章,里面讲得非常详细:http://msdn.microsoft.com/en-us/library/ms810617.aspx
谢谢大家。
我现在有个问题还不是很懂,就是遥控器是单片机的,那么跟wince开发板通信不使用IrDA协议,红外编码是原始的一串波形,采用NEC编码格式(即数字0和1的高低电平不一样),那如果我在PB中加上红外组件后即加上红外的驱动后,开放板能自动识别这一串码中哪些是O,哪些是1,还是需要自己编代码实现。
要自己加,IrDA的协议跟遥控器协议不一样的
另外或者你可以做一个IrDA的适配器,让遥控器先经过适配器在通过CE的红外串口
这样吧,你做个适配器,就用52单片机做,功能就是把接收到的遥控红外信号解码出来,并转换成UART输出,这样CE上什么都不用改了,直接通过串口接受52发出的数据就可以了
谢谢大家!
关键现在是wince开放板上的硬件都定下来了,也没时间再改。
555,现在很着急呀
大家能不能在不改变现有电路的基础上提点意见。
谢谢大家了!