自制电脑usb红外遥控键盘

2010-08-08 19:20:00

看个ppt,还要一直按键盘或鼠标,能不能拿个遥控器控制一下。
动动脑,自己做一个吧。
电路分2部分,遥控器为发射部分,单片机为解码部分并且包含usb键盘功能。

 

一,完成红外解码
根据网上下载的lpc932的RC5红外解码程序,做了如下修改。完成了我at89s52的RC5红外解码程序。
1,涉及到需要使用2个定时器。分别是定时器1,作为波特率发生器。
2,定时器0,作为接收处理红外信号的定时器。并允许中断。
3,由于晶振不同,调TH和TL值。
4,等待接收完再请标志。

测试了0-9的按键值。分别由3和16进制数组成,06与07是区分连按得,00为地址,最后为00-09代码按键码,串口通信数据如下:
06 00 00 06 00 00 07 00 01 07 00 01 06 00 02 07 00 03 07 00 03 06 00 04 06 00 04 07 00 05 07 00 05 06 00 06 06 00 06 07 00 07 07 00 07 06 00 08 06 00 08 07 00 09 07 00 09

5,串口显示下文字吧,看的清楚些。更改程序后,串口通信数字如下:
按下0按下0按下1按下1按下2按下2按下3按下3按下4按下4按下5按下5按下6按下6按下7按下7按下8按下8按下9按下9

 

二,整合红外解码程序及usb键盘程序
思路:usb的键盘用遥控器键盘代替。

大概用了半天的调试时间,主要问题小结:
问题一,定时时间内调用其他函数,使定时波形捕捉不正确,需要删除。
   //   Prints("按下");   
   // UartPutChar(buf+48);
问题二,调用外部变量不规范,程序编译完出现警告。
应该用extern定义,并放在.h文件中。
问题三,不能单步调试,那么怎么知道问题出在哪里呢?
利用led的亮灭,来判断程序单步走的路径。
问题四,单片机多任务如何来区分?
可以使用按键当做任务的开关。

 

三,终于完成了简易红外键盘。
插上usb线,打开电脑ppt,拿着以前的电视遥控器。按下4,则代表pageup,按下5则代表pagedown,等等。座的远远的,遥控着电脑ppt,那是多么的高兴和自豪。学以致用,乐趣无穷。

猜你喜欢

转载自www.cnblogs.com/AppleCai/p/10777891.html
今日推荐