• 【现货速发】Arduino/Genuino101开发入门
21年品牌 40万+商家 超1.5亿件商品

【现货速发】Arduino/Genuino101开发入门

全新正版书籍,24小时发货,可开发票。

38.5 7.9折 49 全新

库存3件

天津津南
认证卖家担保交易快速发货售后保障

作者陈吕洲

出版社清华大学出版社

ISBN9787302478522

出版时间2017-10

装帧平装

开本16开

定价49元

货号25161959

上书时间2024-11-24

易安居书舍

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
前言

 

前言

 

Genuino 101是一个极具特色的Arduino开发板,它基于IntelCurie模组,不仅有着和Arduino UNO一样的特性和外设,还集成了低功耗蓝牙(Bluetooth Low Energy,BLE)和六轴姿态传感器(InertialMeasurement Unit,IMU)功能,借助Intel Curie模组上模式匹配引擎,甚至可以进行机器学习操作。因此,使用Genuino 101可以完成一些传统单片机或者Arduino难以胜任的工作,制作更为惊艳的作品。

相较于传统的Arduino开发板,Genuino 101具有如下优势。

1. 控制核心Intel Curie是一个带有机器学习功能的模组

机器学习是当今技术领域的热点,但真想弄懂机器学习需要具备数学、逻辑学、统计学等多学科的知识。现在只需要有Genuino 101,即可在项目上应用或者体验机器学习的魅力了。

Genuino 101自带神经元,能进行基础的分类学习,这带来的好处是巨大的。结合Genuino 101的IMU,可以进行动作识别,而不用复杂的编程。想象一下如何用纯编程的方法实现动作识别,真的是太难了。

 

2. 可以进行真正的低功耗蓝牙开发

低功耗蓝牙技术是目前流行的无线通信技术之一,我们用的移动设备几乎都带低功耗蓝牙功能,了解低功耗蓝牙开发,对开发人员大有裨益。

 

Genuino 101是蓝牙官方(SIG)推荐的蓝牙开发入门平台,其上集成有Nordic蓝牙模组,并提供了CurieBLE库用于开发,它能让我们了解什么是真正的蓝牙通信,还可以制作各种蓝牙BLE设备。

3. 硬件配置更为强大

相比Arduino UNO,Genuino 101配置更为强大。Intel Curie上集成有x86和arc两个核心,拥有更强的运算能力。

除了前面提到的完整的蓝牙BLE、神经元等亮点外,Genuino 101上集成的姿态识别IMU也是高配版。我们常见的IMU传感器都是民用级别的,而Genuino 101上自带的博世IMU BMI160是一个车载级别的芯片,其性能远高于民用标准。

另外,Genuino 101的每一个I/O口都支持外部中断,使得程序编写和硬件连接更具灵活性。

这里需要强调,树莓派等Linux开发板和Arduino之间并没有可比性,二者应用场合不一样。

4. 可以使用更多的开发方式,更适合学生和爱好者使用

Genuino 101除了能使用Arduino方式开发,还可以切换到ZephyrRTOS进行开发。而在Zephyr基础上,Intel还提供了JavaScript解释器,因此还可以使用JavaScript进行开发。

这些特点使得Genuino 101对爱好者更具可玩性,对学生更有学习价值,不仅能通过Genuino 101学习Arduino开发方法,还能了解RTOS等更高级的知识。

5. Intel和Arduino强强联合

过去的Arduino开发板大多是Arduino官方独立设计开发制造的,而Genuino 101由Arduino和Intel两个团队共同开发,从Arduino社区的关注度到源代码的更新进度,都可见一斑。

 

以上为使用Genuino 101的优势,但在使用Genuino 101之前也应该了解目前使用Genuino 101的阻碍。

 

(1) 目前Intel Curie芯片没有对个人用户销售,但企业用户是可以购买到的,国内外已经有基于Intel Curie的产品量产。

(2) 价格较高。大部分人没用Genuino101的原因只是因为太贵,但相信大部分人用Arduino并不是开发量产的产品,笔者认为并没有必要节约百十块钱。即使是开发量产产品,也可以先购买Genuino 101用于原型制作。量产时可自己制作PCB,采购Intel Curie模组进行生产。

(3) 部分基于AVR的Arduino库,在Genuino101上无法使用。但这个问题不大,还有非常多的标准Arduino库可以在Genuino 101上使用,Genuino 101还自带蓝牙BLE、IMU、机器学习等功能,Intel和Arduino官方也提供了对应的库,这些库组合起来已经可以满足大部分项目需求了。另外,在可穿戴领域,Genuino 101比其他Arduino方案更有优势。

 

本书是笔者将过去在Arduino中文社区上撰写的Genuino 101相关教程与自身开发经验相结合整理而成的,内容涵盖Arduino编程基础知识和Genuino 101高级API的使用,主要针对大学生、研究生和开发者编写,适合入门学习。

由于编写本书时Genuino 101的蓝牙BLE库正在大版本更新过程中,相关API可能会有很大变化,因此本书中没有蓝牙BLE开发章节,待BLE库稳定版本推出后,读者可在Arduino中文社区上阅读BLE开发章节。

参与本书编撰和校审的还有邱力超、魏宇科、王翔、赵东相、任蕾凡、邹东雁。

特别感谢Intel在线业务部在写作本书时提供的支持与帮助。

由于笔者水平有限,书中难免存在不足之处,敬请读者批评指正。欢迎读者通过Arduino中文社区(http://www.arduino.cn/)参与本书相关内容的讨论。本书相关资料及代码均可在清华大学出版社本书页面以及笔者的个人网站(http://clz.me/101book/)获取。

 

陈吕洲

2017年7月

 

 

作者简介:

陈吕洲Arduino中文社区创始人,硬件创业者,畅销图书《Arduino程序设计基础》的作者。早期从事机器人竞赛,现从事软硬件产品设计与开发工作。在业余时间致力于开源硬件的设计与推广,长期积极参与和推动国内开源硬件及相关社群的发展。研究领域涉及Arduino、mbed、ScriptBoard等硬件开发平台,Linux、Zephyr等嵌入式操作系统,也为Intel、Atmel等公司提供开源硬件产品设计与推广咨询服务。

 

 

 

 

 

 

 

 

 



导语摘要
Genuino 101是一个极具特色的Arduino开发板,它基于Intel Curie模组,不仅有着和Arduino UNO一样的特性和外设,还集成了低功耗蓝牙(BLE)和六轴姿态传感器(IMU)功能,借助Intel Curie模组上模式匹配引擎,甚至可以进行机器学习操作。因此,使用Genuino 101可以完成一些传统单片机或者Arduino难以胜任的工作,制作更为惊艳的作品。本书以清晰的结构讲述Genuino 101开发基础,内容涵盖Arduino编程基础知识和Genuino 101高级API的使用。全书共9章,第1章简述Arduino与Genuino 101的历史、软硬件及开发环境使用方法;第2~4章讲解Arduino核心API的使用方法;第5~9章讲解Genuino 101独有的Curie API和u8g2驱动显示设备的方法。完成本书的学习后,可以具备大多数常见项目的开发能力。本书主要针对大学生、研究生和开发者编写,适合入门学习。

作者简介
作者简介
陈吕洲  Arduino中文社区创始人,硬件创业者,畅销图书《Arduino程序设计基础》的作者。早期从事机器人竞赛,现从事软硬件产品设计与开发工作。在业余时间致力于开源硬件的设计与推广,长期积极参与和推动国内开源硬件及相关社群的发展。研究领域涉及Arduino、mbed、ScriptBoard等硬件开发平台,Linux、Zephyr等嵌入式操作系统,也为Intel、Atmel等公司提供开源硬件产品设计与推广咨询服务。

目录

目录
第1章Arduino与Intel Curie
1.1什么是Arduino
1.2为什么使用Arduino作为开发平台
1.3Genuino 101与Intel Curie
1.4配置Genuino 101开发环境
1.5认识Arduino IDE
1.6添加Genuino 101支持
1.7Blink——Arduino的Hello World
第2章Arduino编程基础
2.1Arduino语言
2.2C/C  语言基础
2.2.1数据类型
2.2.2运算符
2.2.3表达式
2.2.4数组
2.2.5字符串
2.2.6注释
2.2.7用流程图来表示程序
2.2.8顺序结构
2.2.9选择结构
2.2.10循环结构
2.3电子元件和扩展模块
2.4Arduino扩展板的使用
2.5数字I/O的使用
2.5.1数字信号
2.5.2流水灯实验
2.5.3按键控制LED实验
2.6模拟I/O的使用
2.6.1模拟信号
2.6.2呼吸灯实验
2.6.3光敏电阻检测环境光实验
2.7数字传感器与模拟传感器的使用
2.8与计算机交流——串口的使用
2.8.1串口输出
2.8.2串口输入
2.8.3串口开关LED实验
2.9时间函数
2.9.1运行时间函数
2.9.2延时函数
2.9.3RTC函数
第3章I/O的高级应用
3.1调声函数
3.1.1蜂鸣器发声
3.1.2简易电子琴
3.2脉冲宽度测量函数
3.3外部中断
3.3.1外部中断的使用
3.3.2外部中断触发蜂鸣器警报实验
第4章使用和编写类库
4.1通过库管理器添加库
4.2手动添加库并使用
4.3编写Arduino类库
4.3.1编写函数
4.3.2编写头文件与源文件
4.3.3关键字高亮
4.3.4建立示例程序
4.3.5类库优化与发布
第5章定时器
5.1定时器中断
5.2定时器输出PWM

第6章串口进阶
6.1串行与并行通信
6.2硬件串口
6.3print和write输出方式的差异
6.4HardwareSerial类成员函数
6.5read和peek输入方式的差异
6.6串口读取字符串
6.7串口事件
6.8串口缓冲区
6.9实验: 串口控制RGB LED调光
6.10软件模拟串口通信——SoftwareSerial库的使用
6.10.1SoftwareSerial类成员函数
6.10.2建立软串口通信
6.10.3同时使用多个软串口
第7章显示篇
7.1认识显示设备
7.1.1I2C设备
7.1.2SPI设备
7.2u8g2标准库
7.2.1新建设备对象
7.2.2初始化与缓冲区操作
7.2.3文本显示
7.2.4数据显示
7.2.5中文显示
7.2.6绘制图形
7.2.7图片显示
第8章CurieIMU库的使用
8.1配置IMU及获取数据
8.2解算AHRS姿态
8.3姿态数据可视化
8.4IMU中断检测
8.5神经元与机器学习
第9章存储篇
9.1EEPROM的使用
9.1.1写数据
9.1.2读数据
9.1.3擦除数据
9.2SPI Flash的使用
9.2.1新建文件并写入
9.2.2列出文件
9.2.3读取文件
9.2.4擦除数据
附录AArduino/Genuino 101数据手册
附录BASCII码对照表
附录C串口通信可用config配置
附录DZephyr简介
后记
参考文献

内容摘要
Genuino 101是一个极具特色的Arduino开发板,它基于Intel Curie模组,不仅有着和Arduino UNO一样的特性和外设,还集成了低功耗蓝牙(BLE)和六轴姿态传感器(IMU)功能,借助Intel Curie模组上模式匹配引擎,甚至可以进行机器学习操作。因此,使用Genuino 101可以完成一些传统单片机或者Arduino难以胜任的工作,制作更为惊艳的作品。
本书以清晰的结构讲述Genuino 101开发基础,内容涵盖Arduino编程基础知识和Genuino 101高级API的使用。
全书共9章,第1章简述Arduino与Genuino 101的历史、软硬件及开发环境使用方法;第2~4章讲解Arduino核心API的使用方法;第5~9章讲解Genuino 101独有的Curie API和u8g2驱动显示设备的方法。完成本书的学习后,可以具备大多数常见项目的开发能力。
本书主要针对大学生、研究生和开发者编写,适合入门学习。

主编推荐
作者简介
陈吕洲  Arduino中文社区创始人,硬件创业者,畅销图书《Arduino程序设计基础》的作者。早期从事机器人竞赛,现从事软硬件产品设计与开发工作。在业余时间致力于开源硬件的设计与推广,长期积极参与和推动国内开源硬件及相关社群的发展。研究领域涉及Arduino、mbed、ScriptBoard等硬件开发平台,Linux、Zephyr等嵌入式操作系统,也为Intel、Atmel等公司提供开源硬件产品设计与推广咨询服务。

精彩内容
第3章I/O的高级应用掌握数字I/O和模拟I/O的基本操作方法后,就可以完成很多Arduino制作了。除此之外,Arduino还提供了一些I/O口的高级操作。3.1调声函数调声函数tone()主要用于Arduino连接蜂鸣器或扬声器发声,其实质是输出一个频率可调的方波,以此驱动蜂鸣器或扬声器振动发声。tone()可以让指定引脚产生一个占空比为50%的指定频率的方波。语法

tone(pin, frequency) 
tone(pin, frequency, duration)

参数pin:需要输出方波的引脚。frequency:输出的频率,unsigned int型。duration:方波持续的时间,单位为毫秒。如果没有该参数,Arduino将持续发出设定的音调,直到改变发声频率或者使用noTone()函数停止发声。返回值无。
tone()和analogWrite()函数都可以输出方波,不同的是tone()函数输出方波的占空比固定(50%),调节的是方波的频率; 而analogWrite()函数输出的频率固定(约490 Hz),调节的是方波的占空比。需要注意的是,同一时间tone()函数仅能作用一个引脚,如果有多个引脚需要使用tone()函数,那必须先使用noTone()函数停止之前已经使用了tone()函数的引脚,再使用tone()函数开启下一个指定引脚的方波输出。
noTone()停止指定引脚上的方波输出。语法

noTone(pin)

参数pin: 需要停止方波输出的引脚。返回值无。
下面将使用tone()函数驱动蜂鸣器播放曲子。3.1.1蜂鸣器发声
无源蜂鸣器模块(图31)是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、报警器、电子玩具等电子设备中。
无源蜂鸣器发声需要有外部振荡源,即一定频率的方波。不同频率的方波输入,会产生不同的音调。接下来我们要利用这种特性,用tone()函数输出不同的频率的方波,实现Arduino播放简单的曲子。如果使用的是蜂鸣器模块,则直接连接到扩展板即可; 如果使用的是独立的扬声器或者蜂鸣器,可按图32所示方式连接。
在示例程序中使用了两个数组melody[]和noteDurations[]记录整个曲谱,然后遍历这两个数组实现输出曲子的功能。

可以在Arduino IDE菜单“文件→示例→02.Digital→toneMelody”打开以下程序:

图31蜂鸣器模块

图32蜂鸣器模块使用连接示意图

媒体评论
评论

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP