心路历程
当老师说要做一个嵌入式的小东西时,就感觉有点慌,因为在潜意识中他是一个很难的东西,于是在接下来的几天之中,就上网去找arduino的相关资料,最终有了一个大致的轮廓觉得也不是那么难了。
接下来就是要确定做什么项目了,做什么项目呢?一开始在高中同学的提议下打算做一个黑板擦,这个方案也想了好几天,预计着是让黑板擦可以在黑板上自由移动,实现自动擦黑板的功能,这个实现需要一个颜色识别模块,可以识别白色,这些都不难,但是要让小车吸附在黑板上并且可以自由移动,这就有点难了,并且和c的关系不大,学不到什么有价值的东西,难点主要是物理问题,于是就放弃了。
接下来几天就沉浸在网上找合适的项目,当时就有点着急,想早早的将项目做完然后就完事了,在“Arduino 入门与进阶”这个网站上找到了一个气象台的项目,美其名为“气象台”,实际也就是测个温度湿度然后再把他显示出来而已罢了,觉得听简单,于是就把它报给了老师,可是后来一想,自己真的是太着急了,这样的话根本学不到什么东西。
于是打算静下心来,真的了解arduino一些基本的东西,于是在arduino中文社区上面找到了一些教程,买了一个套件,学了两天,做了一些实验点了几个灯泡。嘿嘿嘿,然后平常闲着没事的时候就会看看arduino library ,看看有什么好玩的库,以及自己能搞学到什么,自己对客户机服务器一起ip,mac,子网掩码之类的不大明白,然后找到了ethernet库感觉不错,可以学到很多东西,于是就想在自己的项目上加上网络的东西。一个偶然的机会,了解到了arduino leonardo可以充当键盘还有鼠标的功能,于是就想做一个键盘记录的东西。所以这个项目大体确定。
项目简介
将arduino leonardo和PS2键盘相连(为什么是ps2键盘呢?因为这个板子不支持usb,还需要另外补一个usb扩展版,于是就选择了PS2键盘),当按键盘时候arduino识别出来按的是什么键然后存储到SD卡中,再将识别的按键打到电脑上,当按一个红外遥控器一个特殊的键时,所记录的信息就会通过Ethernet发送一个邮件给特定的人。
学习到的知识
- 了解了arduino控制传感器的基本原理,并且实战了红外传感模块的使用
- 练习了SD卡的读写问题
- 学习了SMTP协议,以及客户端和服务器
- 知道如何使用arduino leonardo对键盘和鼠标的模拟
- 知道了base64加密的基本原理,并且亲自写了一个从而联系到了位运算等C的很重要的方面