电子开发对我的影响

  1. 爱好作为工作,既能养家,又开心,不用上班像上坟。
  2. 动手实现自己的想法,成就感满满。
  3. 思维方式的影响:把如何解决问题放在第一位。
  4. 什么都能修,自带省钱属性

       然而,我发现,很多学生畏惧电子开发,认为太难。如此有意思的一件事情,却被现行教育方式整的这么无聊。

   有鉴于此,我打算做一个好玩的、简单的单片机项目,来让大家充分体验电子设计的乐趣。这个项目需要一点动手能力,需要一点C语言基础。没有单片机基础也凑合能做。
这个项目就是:

开源掌机

   想法很简单,就是玩。我玩过支持NES模拟器的掌机,能玩红白机游戏。这个项目对于初学者来说可能太难了,所以我决定做一个更简单的。我想起来以前玩过的一个小玩具:

   打地鼠掌机,为何不自己做一个玩玩?
   于是我买来掌机并做了“拆解”:

   这成本控制也太NB了吧?
   里边采用了bondding设计,也就是,器件和PCB是集成在一起的。可以说,省成本到了极致了,怪不得能9块6还包邮。这个技能反正我是不会。向老工程师们致敬吧。
黑色的一坨就是个单片机,可能比8051还要古老。按钮是两片裸露的铜皮,且没有直接连接,是个断路,而按键的橡胶是导电的,按下去以后,把两篇铜皮短路掉,单片机就可以检测到变化了。至于LED,哪有LED?也就是一小截灯丝而已。
   所以说,橡胶也可以导电,路飞要注意啊
   这种方案我当然用不了了,所以用一片我熟悉的,大家可能也用得到的芯片——STM32F103的单片机。来作为主控吧。只是这个成本。。。。一个单片机就比人家整个玩具都要贵了。

我的思路

   思路介绍:STM32单片机控制,基本功能为打地鼠,使用带灯的按键,如果灯亮,在一定的时间内,需要按下对应按键,代表击中地鼠。
   扩展功能:简易电子琴,简易点唱机,追赶时光
   硬件构思:STM32F103单片机主控,8个带灯按键,2个普通按键用于复位和模式切换,无源蜂鸣器用于播放音效,OLED屏幕用于显示分数等信息。
   包含知识点:硬件电路设计,PCB设计,单片机编程。
   我打算做成开源的项目,把所有的资料都无偿奉献给别人。并且这也不是商业项目,用这个的方案做游戏机的话要赔的内裤都要当掉。
   完整的项目要包含电路设计、PCB设计、投板与物料采购、焊接与调试、代码编写等环节。由于精力限制,我先把代码编写的过程写成一系列的简单教程。把PCB源文件分享给大家。感兴趣的话可以可以自己去投板,买料焊接调试——这个过程是很重要的,相信很多学生没有自己焊接调试的经验,最多只在开发板上写过代码。而实际工作中,调试工作非常重要。在不确定硬件好坏的情况下写代码,与在开发板上写代码,体验截然不同。脱离硬件写程序,不是电子工程师的作风。
   我听过一个段子:有个人写了个服务器的程序,服务器是嵌入式的,放在一台机柜中。不知道,每到晚上10点。服务器就自动关机了。他分析可能是因为夏天,天气太热了。于是他采购了风扇,准备装到机柜上。知道准备去装风扇,他才发现:原来是管楼道的大妈闲天气太热了,每到晚上十点,轮她值班时,就把机柜拔了,插个电风扇,第二天再把机柜插上。
   硬件上的一个小问题,可能导致系统的功能都实现不了。因此建议自己焊接调试。这是源文件。如果你不具备这项能力,或者懒得管硬件,也可以评论,我可以把板子卖给您。定价就200吧,成本都超过100了,我还得抽时间焊接——其实我也懒得焊接。

上个预览图



   心形PCB,自我感觉还不错。按键的位置都试验过,配上有机玻璃,也比较顺手。实际上买了蓝色的OLED,颜值也不错 。
PCB的源文件
预览图里的按键的3D模型也是我自己做的,可能网上暂时还没有,STEP文件链接也放在这里。
按键的3D模型

完成项目,你将得到:

1、一个由你自己设计的不知道能不能用但一定丑的要命的打地鼠掌机,虽然没什么卵用但是表白一定能感动你的对象。
2、开源,分享,解决问题,做了一件很酷的事情,兴许顺带可以解决毕设问题。
3、学到一些电子开发的知识,会画简单的电路板会写简单的程序,最好能培养一点对电子设计的热爱。

STM32掌机教程1:我打算做一个开源掌机相关推荐

  1. 暑期2020“大咖说开源”之吴晟 | 如何做一个开源玩家

    | 主办方: 中科院软件所.openEuler 社区.开源社 | 编辑:袁睿斌 | 设计:谭嘉露 活动介绍 Overview 开源供应链点亮计划 - 暑期 2020 (https://isrc.isc ...

  2. Axure 点图片外区域即隐藏_AXURE教程:用中继器做一个手机版内容分享原型

    本文仔细介绍了中继器制作手机版内容分享原型的步骤与注意要点,希望对你有所启发. hello,今天教大家如何用中继器做一个类似微博的内容分享原型,里面的内容从0-9张图片的格式都设置好了,我们只需要填写 ...

  3. 【python教程】使用python做一个井字棋

    大家好,我是帅哥(学习python使我快乐) 今天用python做一个简易の井字棋 需要使用的第三方库: from tkinter import * import tkinter.messagebox ...

  4. dx绘制2d图像_【教程】使用DX9做一个2D游戏(1)

    本文最先发表在贴吧,现在整理到此处,之后所有更新将在这里进行. by Chu @ XDU 2012/11/25 版权所有,禁止用于商业用途. 转载请注明出处. 用DX9做一个2D游戏显然不是一件容易的 ...

  5. 如何开始做一个开源项目?他的亲身经历值得参考

    (点击上方公众号,可快速关注) 英文:Vincent Voyer,翻译:Linux爱好者 - nEoYe [导读]:作者 Vincent Voyer 用亲身经历鼓励大家从事开源活动:他在 Nodejs ...

  6. stm32单片机屏幕一直闪_用STM32做一个微型掌上示波器项目——终于鼓起在大牛前献丑的无比勇气...

    这是我第一次在这个论坛上发表东西,其实本人进入芯片的世界的时间并不长,从接触51单片机到现在还不到一年,所以可以算是小白啦~想了很久,总算拿出在论坛大牛前献丑的无比勇气,写起该帖:dizzy::diz ...

  7. linux怎么刷机教程,Ubuntu手机版来了 附刷机教程

    Ubuntu宣布要做手机之后吸引到了不少的注意力,虽然有一部分来自开发者,但相信更大的一部分是来自刷机爱好者. 此前就有消息称Ubuntu版手机ROM将会在这几天正式发布,而支持的机型则是Galaxy ...

  8. python跳舞的线_【跳舞的线/教程】10分钟做一个可玩的饭制关卡

    未经作者授权,禁止转载 相关游戏: 跳舞的线.Dancing Line.Unity 简介补充: 七月以后因为某些原因,我可能就不会再做饭制了--(之前挖的坑以后有可能会填,但是肯定有生之年了).最后打 ...

  9. Android p刷机红米4a,红米4A(Redmi 4A 全网通)刷机教程,简单几步搞定刷机

    智能手机刷机相信大家已经都不再陌生了,不过对待红米4A(Redmi 4A 全网通)刷机还是需要非常谨慎操作,因为不当的刷机方法可能导致系统崩溃,带来很大的麻烦.由于不同品牌不同型号的手机刷机也会有差异 ...

最新文章

  1. C#实现光盘做启动盘
  2. sip 时序图_时序图怎么看_教你如何看懂时序图 - 什么是时序图_时序图怎么看_教你如何看懂时序图...
  3. poj2513Colored Sticks(无向图的欧拉回路)
  4. python之路_自定义属性、json及其他js补充
  5. Linux内核深入理解定时器和时间管理(2):clocksource 框架
  6. 4. 怎么在生活中提升专注力?
  7. wps计算机一级考试提纲,2017计算机一级考试大纲:WPS Office (汇总)
  8. 步进电机选型计算实例_滚珠丝杠选型和电机选型计算
  9. arcgis交通可达性分析步骤_可达性分析(二):基于Network Analys的服务区分析
  10. 有效的java限定名称_java - 如何获取java类的完全限定名称 - SO中文参考 - www.soinside.com...
  11. 新计算机 安装win2000,虚拟机安装Windows 2000超详细教程
  12. 计算机指令的标准,MIDI是乐器和计算机使用的标准语言,是一套指令
  13. c语言课程实验总结报告,c语言实验总结报告.doc
  14. Java毕业设计项目【畅购商城】
  15. CAPM资产定价模型
  16. linux查看文件大小ls
  17. excel组合汇总_Excel汇总20140224
  18. weblogic10 下载
  19. 学术英语(理工)第二版unit5课文翻译
  20. 程序员的浪漫------下雪氛围圣诞树源码

热门文章

  1. rocksdb原理_RocksDB解析
  2. 显示器从30赫兹升60赫兹_吉赫兹ghz到底是什么意思
  3. gba c语言编程,GBA开发C语言内功补习
  4. hive实现树形结构展开
  5. 【Vi 编辑器进阶】
  6. 【SSM框架最新项目】搭建个人博客实例讲解
  7. 找不到对象怎么办?!!学了JAVA就找到啦
  8. 营销:产品卖点是核心营销方式
  9. 计算机int型数值范围
  10. swagger2接口参数排序/position失效的问题