嵌入式开发交流网论坛

标题: 单片机菜鸟自学记 [打印本页]

作者: 崩死菊花虫    时间: 2018-6-25 14:42
标题: 单片机菜鸟自学记
一天看到同学在玩节奏大师游戏,不知道为啥就想到用单片机自动玩这个。但是想想节奏大师这个游戏难操作且不好识别,于是想到相似的别踩白块儿这个游戏。
一有想法马上开始做,大家都在紧张的备战期末考试,我这是冒着挂科的风险在玩单片机啊!最先想到的是用Arduino做,这样最快。于是就开始做吧:
花了一晚上焊了个板子
[attach]1674[/attach]
用四个光敏电阻检测游戏里的黑块
[attach]1675[/attach]
一开始打算用舵机去动作触屏,后来觉得舵机太慢了,就改成了电磁铁(把继电器拆了得到~)
[attach]1676[/attach]
再来一张
[attach]1677[/attach]
四个全部就位了~
[attach]1678[/attach]
实在是找不到电容笔,于是把导线弄成这样凑合触屏吧(实际使用有时候不灵)
[attach]1679[/attach]
全家福在此
硬件差不多就是这样啦~ 接下来写个程序试试读取光敏电阻
[attach]1680[/attach]
数据还算正常,不过不够均衡,所以程序上简单的处理了一下数据,全部代码如下:
做完感觉速度很慢,后来还测试了一下游戏的街机模式,发现最多能玩到160分,还没我同学玩的快呢。
简单分析了一下,主要是由于只有一个光敏电阻传感器,不能准确知道黑块走哪了,程序没法在时间上准确控制
所以我就想到了两个方法:
一是采用摄像头采集图像,并进行简单处理,来控制。
开始动手,试了一下用STM32F103驱动不带FIFO的OV7670摄像头,速度慢的不要不要的,大概每秒只有一两帧
[attach]1681[/attach]
这样的速度肯定不行啊,于是又找到了一个学长的视觉识别openmv板:
[attach]1682[/attach]
斑点识别
[attach]1683[/attach]
STM32F427芯片 180MHZ频率 加上 硬件 DCMI接口,这下达到了20帧每秒左右
但是由于使用Python编程,试了一下不太会搞,弄了半天可以识别出手机屏幕上的黑块了,但是干扰太大了,不稳定。
于是放弃这个方法了
我想到的第二个方法就是再加4个光敏电阻在前面,提前预知黑块。
这样Arduino的AD口就不够了,得换其他单片机,加上学校没几天就要封校了,差不多也要收拾收拾回家了,那就到此为止吧。
了解更多源代码,视频,请关注云汉电子社区微信公众号ickeybbs。




欢迎光临 嵌入式开发交流网论坛 (http://www.dianzixuexi.com/bbs/) Powered by Discuz! X3.2