本帖最后由 小乔123 于 2014-9-6 20:44 编辑
等qwe2231695同学开源他的空中鼠标等得我好辛苦,等了半年都没等到,不过前天他终于把他的设计文档发布了。
参考正点原子战舰开发板上的鼠标例程,我也做了一个空中鼠标,其实只是将他的有线鼠标改造成无线的。
鼠标由发射板和接收板组成,发射板主要包括stm32,MPU6050,NRF24l01,相信我不用说明大家都知道他们分别是干什么的了吧。
接收板主要包括stm32和NRF24l01,接收板通过USB接口和电脑连接,USB驱动是STM32的官方例程。另外,cpu使用的是stm32f103c8t6
这个芯片有两个优点,一个是小,另外一个是便宜,统计下来做一个鼠标刨去PCB的成本,大概60元左右。
这个空中飞鼠的原理大概讲一下,就是读取MPU6050中X和Z轴上的角速度值,然后通过NRF24l01发送给接收板,接收板通过NRF24l01
接收到数据后,通过stm32内部自带的USB模块将数据发送给电脑,而USB部分的东西基本不用去深入研究,使用的时候只要知道那个鼠标
数据的接口函数就可以了。
废话不多说,直接上视频。
http://v.youku.com/v_show/id_XNzc1MzQ1ODg0.html
视频中只有发射板,我将发射板做成跟18650电池大小差不多,这样就直接可以放到移动电源里了,这样移动电源就不仅可以充电,还可以
当鼠标使用。怎么样实际的使用效果还可以吧?
下面是空中鼠标的图片细节。
IMG_20140828_162901.jpg (1.31 MB, 下载次数: 3)
下载附件
实物
2014-9-6 20:14 上传
上图是发射板放在移动电源中,移动电源最好选用内部是18650的,这样方便改造。只要将线连接好,将板子固定住,在盖子上打好洞就行,
我用的LDO是一个低压差的,座椅无论你使用移动电源出来的5V或者直接连接18650都是可以正常工作的。
最后,附上原理图和程序,没有太多注释,因为程序我自己写的部分很简单,其他部分都是官方或者战舰开发板上现成的例程,现在我的程序,
除了控制方向,鼠标左右键外,还增加了两个按键同时按下开启滚轮功能,期望有人能在我的基础上继续优化程序,因为我对算法这边实在了
解的不多。
空中鼠标.zip
(10.02 MB, 下载次数: 1201)
2014-9-6 20:35 上传
点击文件名下载附件
原理图+程序
我买的乐视电视的遥控器就带这功能,不过太难用了。
哎,本来参考他的方案,做个无论是硬件还是软件都高大上的,结果等的我心都凉了。
当然可以,不过你需要增加USB模块了,那模块也不便宜也不好用,
另外,兄弟,别用stc了,那太老了,资源又少,拥有stm32,可以省去你很多外围电路上的花销。
我用的那个stm32芯片一个才8块多。
一周热门 更多>