图书前言

前    言

笔者所在的实验室一直将基于8051微控制器的单片机用于教学和项目应用,历经20多年,因而想在基于8051微控制器的实验测试平台之外另行开发一个新的实验测试平台。幸运的是,近几年来Arduino开源电子原型平台成为实现这个想法的最佳选择。对于我这个在8051实验测试平台编写C语言程序有20年经验的人来说,相比于其他程序设计语言,还是更青睐C语言,因为它既简单,移植性又好。

特别是看到Arduino系统的范例及链接库、软件串行接口、I2C 接口、SPI 接口、EEPROM、服务器电机、LCD、SD卡、网络、WiFi等常用的控制接口都有人已经编写好了,笔者内心感动不已。亲自编写过硬件底层驱动程序的人都知道,这不仅仅需要花费很多时间进行编写,还需要花费更多时间进行测试,而现在只要把它们集成到应用中即可,岂不是幸事? Arduino官网及网上的相关论坛中还有更多的应用,可供读者看和学的资源几乎是“无限的”,实在是太棒了。

再好的工具,自己不能理解掌握就无法成为自己的应用技术。

接下来的N个小时、N个工作日及节假日,笔者都在测试自己感兴趣的相关应用实验。经过数百个小时的“Arduino程序实验奇幻漂流及探索”过程,才有了本书中讲述的各种实验项目,在日常的工作之余,笔者还在持续探索其他神奇有趣的应用,更多实验项目还在持续进行中。

Arduino是一种开放授权的互动开发平台,它有一块简单输入、输出的开源电路板,并结合了类似Java、C语言的开发环境,让初学者易于上手使用。有了基本工具后,搭配一些常用的电子元器件,如LED、扬声器、按键、光敏电阻、红外线遥控、超声波测距仪、服务器电机等元器件。相信读者阅读完本书,便可以进行有趣的实验,展示产品原型机、互动作品、学生专题,当然读者还需动手做才能实现自己的作品。

对于Arduino Uno而言,笔者的使用心得如下:

? 具有简单、易学、易用的集成开发工具。

? 硬件架构简单。

? 支持标准C语言的程序开发。

? 有DIP芯片可用于手工焊接拓展实验。

? 有大量范例可供学习参考。

? 支持新硬件的应用。

目前根据工作需要,笔者建立了一个Arduino应用开发平台:

? 以Uno板为开发板,自动下载程序,可以快速验证程序功能。

? 自己焊接制作Arduino最小电路设计板,按需求可以快速复制。

? 在Arduino最小电路设计板上加LCD、遥控接口,取代Uno板。

? 定制化各种Arduino应用板。

? 以Arduino玩玩“免改装”声控玩具、家电、居家自动化应用。

? 支持Arduino声控红外线遥控各种可能的应用。

对于不同的用户,笔者的建议是:

? 初学者:测试过后,看看自己是否有需求、有愿望、有动机来学习。有动机学,再来投资硬件进行学习。

? 已入门者:建议自己焊接一块Arduino最小电路设计板加LCD模块。因为Uno板没有输入输出,不方便验证应用,而接面包板只是为了一时的实验,有太多不方便的地方。善用Arduino最小电路设计板以及Uno芯片,可以互换使用,因为可为Arduino最小电路设计板手动下载程序。

有经验的程序员,应该知道笔者想说的是:Arduino系统提供的现成的开发工具如果可以帮助读者解决工作上的问题,为什么不直接拿来用呢?如果读者正苦于缺乏研发产品的时间和精力,那么采用Arduino研发平台将省下很多时间,因为其背后有全世界一流的研发高手在提供支持,很多开发工作不必我们亲自动手,只需看懂程序,便可以拿来开始进行实验。Arduino为我们准备好了入门学习的所有工具,你准备好了吗?

Arduino魅力无穷,本书集成了自行研发的模块来进行实验,包括中文语音合成模块MSAY、控制红外线学习模块 L51、控制中文声控模块VI。

本书提供了以下实验:

? Arduino控制史宾机器人、发射飞镖的机器人、遥控风扇、家中电视机的实验。

? Arduino手机遥控车、声控发射飞镖的机器人、声控风扇、声控家中电视机的实验。

简化程序设计,不必编写一堆程序代码来控制,关键程序只需10多行程序语句。

学会Arduino C程序设计后,在校学生可以把本书学到的设计应用到自己的毕业设计中,完成属于自己的毕业设计论文,毕业后甚至可以把这个设计作为自己的“代表作”,在面试时也会有加分作用。特别是应聘嵌入式开发工程师时,效果会更好,因为基于Arduino的任何专题作品,都是软件与硬件相结合开发的成果。

在C语言程序设计中觉得好玩、有趣的实验,笔者都会安排时间去尝试研究和实验。同样,在使用Arduino系统开发的过程中,读者将会发现更多的应用,值得读者不断去探索和研究。笔者最大的心愿就是希望本书能引导初学者,用Arduino轻松愉快地设计和制造出自己的专题作品以及“玩出”自己的精彩实验。

代码下载

本书的代码可扫描右侧的二维码获取,也可按提示把下载链接转发到自己的邮箱中下载。如果下载有问题,请发送电子邮件至booksaga@126.com,邮件主题为“Arduino开发入门与创意应用”。

陈明荧  

2021年11月