智能硬件项目教程——基于ESP32
¥
25
3.6折
¥
69
九品
仅1件
作者 杨晋
出版社 北京航空航天大学出版社
出版时间 2020-06
版次 1
装帧 其他
货号 01-04-20B4
上书时间 2024-07-13
商品详情
品相描述:九品
图书标准信息
作者
杨晋
出版社
北京航空航天大学出版社
出版时间
2020-06
版次
1
ISBN
9787512432765
定价
69.00元
装帧
其他
开本
16开
纸张
胶版纸
页数
192页
字数
272千字
【内容简介】
本书通过项目学习(PBL)的方式讲述基于ESP32 for Arduino的编程基础知识。本书讲述了ESP32 for Arduino的基本函数;结合硬件讲述了数组及位操作,按键消抖;UART基本知识,库函数和经典蓝牙的应用;I2C、SPI的基本原理,库函数的使用;网络及HTML基础知识,以STA和softAP模式建立WiFi连接,创建Web服务器,并实现远程HTTP访问;步进电机的基础知识及梯形加减速运动控制;PID基础知识,并利用码盘实现小车运动的精确控制。 本书配套学习资源包含ESP32 for Arduino系统软件、库、工具软件、学习参考资料,读者可以从http://www.kpcb.org.cn/hnd288.html免费下载。
【目录】
第1章初识ESP321 1.1ESP32简介1 1.2ESP32 芯片基本性能及外设2 1.3ESP32 WROOM模组的电气特性2 1.4基于ESP32 WROOM模组的开发板2 1.5ESP32 for Arduino软件开发环境安装3 1.6ESP32开发板驱动安装6 1.7学习平台搭设6 1.8Hello World!6 1.9ESP32引脚说明8 1.10ESP32KPCB专用开发板9 1.11普通开发板使用 9 1.12ESP32 数字信号读/写操作10 1.12.1ESP32数字信号操作函数10 1.12.2数字信号读/写示例10 1.13ESP32模拟信号读/写操作12 1.13.1模拟信号输入函数12 1.13.2模拟信号输入示例13 1.13.3模拟信号输出函数——基于LEDC14 1.13.4模拟信号输出函数示例——基于LEDC16 1.13.5模拟信号输出函数——基于DAC17 1.14电容触摸传感器17 1.15电容触摸传感器示例18 1.16霍尔传感器20 1.17霍尔传感器示例20 1.18外部中断21 1.18.1中断程序21 1.18.2中断触发模式22 1.18.3中断触发函数22 1.18.4外部中断示例(一)——按键计数显示23 1.18.5外部中断示例(二)——入侵检测仪25 1.19Serial.printf()函数26 1.20思考题28 第2章数码管计时器29 2.1项目一:一位数码管原理及数字显示29 2.1.1一位数码管工作原理29 2.1.2一位数码管数字显示30 2.2项目二:通过数组实现一位数码管数字显示32 2.2.1一维数组的定义和初始化33 2.2.2二维数组的定义和初始化33 2.2.3通过数组实现一位数码管显示34 2.3项目三:74HC595移位寄存器芯片36 2.3.174HC595移位寄存器芯片36 2.3.274HC595一位数码管模块37 2.3.3通过按键控制74HC595一位数码管模块38 2.4项目四:通过编程控制74HC595一位数码管模块40 2.5项目五:数码管计时器44 2.5.14位数码管工作原理44 2.5.2双74HC595移位寄存器芯片级联模块工作原理45 2.5.3步骤一:4位数码管的单数显示46 2.5.4步骤二:按键消抖50 2.5.5步骤三:按键计时器53 2.6思考题56 第3章点阵动画57 3.1项目一:8×8点阵的显示57 3.1.18×8点阵工作原理57 3.1.2测试8×8点阵58 3.2项目二:流水灯示例59 3.3项目三:点阵显示图像63 3.3.1视觉暂留63 3.3.2显示图像示例63 3.4项目四:点阵动画效果65 3.5项目五:点阵数显计时器68 3.6思考题72 第4章串行通信——UART73 4.1UART基础知识73 4.1.1UART定义73 4.1.2波特率74 4.1.3起始位、停止位及校验位74 4.1.4ASCII码75 4.1.5ESP32的UART端口76 4.2项目一:UART数据发送77 4.3项目二:UART数据接收78 4.4项目三:设置时间80 4.4.1报文设定80 4.4.2字符串解析——Arduino String libray81 4.4.3接收数据流程82 4.4.4其他接收函数85 4.5项目四:请输入密码86 4.5.1EEPROM简介86 4.5.2EEPROM库86 4.5.3设置初始密码87 4.5.4修改密码88 4.6项目四:蓝牙控制90 4.6.1蓝牙90 4.6.2BluetoothSerial库91 4.6.3手机控制92 4.7思考题95 第5章串行通信——I2C和SPI96 5.1I2C基础知识96 5.1.1I2C基本原理96 5.1.2I2C主设备、从设备及引脚97 5.1.3I2C库及库函数97 5.2项目一:MPU6050姿态传感器99 5.2.1MEMS简介99 5.2.2MPU6050姿态传感器简介99 5.2.3姿态角100 5.2.4MPU6050姿态传感器内部的寄存器101 5.2.5MPU6050姿态传感器数据读/写102 5.2.6示例一:通过I2C类库命令读/写MPU6050姿态传感器的量程102 5.2.7示例二:通过I2C类库命令读取MPU6050姿态传感器的原始数据106 5.2.8示例三:通过专用库读取MPU6050姿态传感器的姿态数据109 5.3项目二:SSD1306 OLED显示屏111 5.3.1SSD1306 OLED显示屏简介111 5.3.2SSD1306 OLED显示屏库功能112 5.3.3示例一:文字显示112 5.3.4示例二:显示汉字113 5.3.5示例三:控制台输出117 5.3.6示例四:屏幕菜单118 5.4项目三:平衡游戏机120 5.5SPI基础知识120 5.5.1SPI简介120 5.5.2ESP32 SPI接口及引脚121 5.5.3SPI类库及库函数122 5.6项目四:SPI库成员函数驱动双74HC595移位寄存器123 5.7思考题125 第6章WiFi联网和Web服务器126 6.1网络基础知识和Web服务器126 6.1.1互联网络和TCP/IP协议126 6.1.2IP地址127 6.1.3端口号128 6.1.4客户端服务器模式129 6.1.5HTTP协议129 6.1.6ESP32 Web服务器130 6.1.7URL和域名、IP之间的关系130 6.1.8ESP32 WiFi工作模式131 6.1.9ESP32 WiFi类库及成员函数132 6.2HTML基础135 6.2.1HTML文档编辑工具——Sublime Text软件的下载安装135 6.2.2编写第一个HTML文档135 6.2.3HTML文档基本结构138 6.2.4HTML标签139 6.2.5CSS简介139 6.3项目一:Web服务器控制输出141 6.3.1项目任务141 6.3.2任务分析141 6.3.3步骤一:电路搭设142 6.3.4步骤二:设定AP模式,建立WiFi连接142 6.3.5步骤三:创建Web服务器144 6.3.6步骤四:编写应用程序,控制LED灯148 6.4项目二:Web服务器读入数据151 6.4.1项目任务152 6.4.2步骤一:电路搭设152 6.4.3步骤二:设定STA模式,连接到WiFi153 6.4.4步骤三:创建Web服务器154 6.4.5步骤四:编写应用程序,读取并发送模块信息154 6.5思考题157 第7章步进电机158 7.1步进电机及其控制器的基础知识158 7.1.1步进电机158 7.1.2步进电机的工作原理159 7.1.3步进电机的动态特性161 7.1.4步进电机的特点162 7.1.5步进电机的控制162 7.1.624BJY48永磁式步进电机163 7.2项目一:程序控制步进电机转动164 7.3项目二:AccelStepper步进电机库应用——恒速转动168 7.4项目三:AccelStepper步进电机库应用——梯形加减速转动170 7.5项目四:AccelStepper步进电机库应用——串口控制172 7.6项目五:AccelStepper步进电机库应用——多步进电机同步控制173 7.7思考题174 第8章蓝牙迷宫智能小车175 8.1PID控制器简介175 8.2项目一:小车动起来177 8.2.1主控板电机驱动177 8.2.2按键调速小车179 8.3项目二:码盘数据读取182 8.3.1码盘及码盘光电模块182 8.3.2车轮旋转圈数计算182 8.4项目三:通过码盘控制小车直线行走184 8.5项目四:通过码盘控制小车按指定形状行走186 8.6项目五:蓝牙迷宫小车188 8.6.1iTEAD APP安装188 8.6.2iTEAD APP操控模式189 8.6.3iTEAD APP调试模式189 8.7思考题191 参考文献192
点击展开
点击收起
— 没有更多了 —
本店暂时无法向该地区发货
以下为对购买帮助不大的评价