作品简介

本书主要面向非电子专业的读者,介绍了兼容Arduino的Maple控制器的编程方法与基础电路设计。

本书中有大量代码和硬件电路实例,使非专业的读者更易上手。Maple控制器编程简单,功能强大,采用了基于ARM Cortex-M3内核的STM32处理器,性能比AVR单片机更高。Maple控制器开发上与广泛使用的Arduino相兼容,可用于电子产品创意设计、互动媒体等交互应用。本书由姚汉编著。

姚汉:EEWORLD电子行业社区论坛资深版主,骨灰级业余电子爱好者,毕业于重庆师范大学物理专业。利用业余时间自学了电子专业的所有课程,参加了全国大学生电子设计大赛并获奖,具有丰富软硬件项目经验和扎实的电子工程技术基础。从2010年开始在国内推广ArduinO兼容开源项目Maple,也是国内第一批Maple的使用者。

作品目录

  • 前言
  • 第1章 Maple简介
  • 1.1 Maple与Arduino的关系
  • 1.2 Maple的衍生版本
  • 1.2.1 Maple RET6
  • 1.2.2 Maple Mini
  • 1.2.3 Maple Native
  • 1.3 Maple的硬件资源
  • 1.4 libmaple简介
  • 1.5 Maple IDE的安装和使用
  • 1.5.1 下载Maple IDE
  • 1.5.2 安装Maple IDE
  • 1.5.3 第一个程序
  • 1.5.4 Maple IDE的使用
  • 1.6 Maple的开源协议
  • 第2章 Maple的Arduino兼容函数库
  • 2.1 基本程序结构
  • 2.2 Maple静态变量关键字
  • 2.3 通用输入输出
  • 2.3.1 pinMode()函数
  • 2.3.2 digitalWrite()函数
  • 2.3.3 digitalRead()函数
  • 2.3.4 togglePin()
  • 2.3.5 toggleLED()
  • 2.4 模拟输入输出
  • 2.4.1 analogWrite()与pwmWrite()
  • 2.4.2 analogRead()
  • 2.5 高级I/O
  • 2.6 硬件SPI接口
  • 2.6.1 begin()
  • 2.6.2 write()
  • 2.6.3 read()
  • 2.6.4 transfer()
  • 2.6.5 end()
  • 2.7 硬件USART与虚拟USB串口
  • 2.7.1 begin()
  • 2.7.2 write()
  • 2.7.3 print()与println()
  • 2.7.4 read()
  • 2.7.5 available()
  • 2.7.6 flush()
  • 2.7.7 txPin()与rxPin()
  • 2.7.8 end()
  • 2.8 延时和定时器
  • 2.8.1 delay()与delayMicroseconds()
  • 2.8.2 mills()与micros()
  • 2.8.3 内部硬件定时器
  • 2.9 外部中断
  • 2.9.1 interrupts()与nointerrupts()
  • 2.9.2 attachInterrupt()与detachInterrupt()
  • 2.10 数学与位运算操作
  • 2.10.1 min()
  • 2.10.2 max()
  • 2.10.3 abs()
  • 2.10.4 constrain()
  • 2.10.5 map()
  • 2.10.6 pow()
  • 2.10.7 sqrt()
  • 2.10.8 sin()
  • 2.10.9 cos()
  • 2.10.10 tan()
  • 2.10.11 randomSeed()
  • 2.10.12 random()
  • 2.10.13 lowBit()
  • 2.10.14 bitRead()
  • 2.10.15 bitWrite()
  • 2.10.16 bitSet()
  • 2.10.17 bitClear()
  • 2.10.18 bit()
  • 2.11 Wire库
  • 2.11.1 begin()
  • 2.11.2 beginTransmission()
  • 2.11.3 send()
  • 2.11.4 endTransmission()
  • 2.11.5 requestFrom()
  • 2.11.6 receive()
  • 2.11.7 available()
  • 2.12 Servo库
  • 2.12.1 attach()
  • 2.12.2 attached()
  • 2.12.3 write()
  • 2.12.4 writeMicroseconds()
  • 2.12.5 readMicroseconds()
  • 2.12.6 read()
  • 2.12.7 detach()
  • 2.13 LiquidCrystal库
  • 2.13.1 LiquidCrystal()
  • 2.13.2 begin()
  • 2.13.3 write()
  • 2.13.4 clear()
  • 2.13.5 home()
  • 2.13.6 cursor()与noCursor()
  • 2.13.7 setCursor()
  • 2.13.8 noDisplay()与display()
  • 2.13.9 blink()与noBlink()
  • 2.13.10 leftToRight()与rightToLeft()
  • 2.13.11 autoscroll()与noAutoscroll()
  • 2.13.12 scrollDisplayLeft()与scrollDisplayRight()
  • 2.13.13 print()
  • 2.13.14 createChar()
  • 第3章 电路基础
  • 3.1 需要的工具与仪器
  • 3.1.1 万用表
  • 3.1.2 可调直流电源
  • 3.1.3 烙铁与焊料
  • 3.1.4 镊子
  • 3.1.5 斜口钳
  • 3.1.6 剥线钳
  • 3.2 电阻
  • 3.3 电感
  • 3.4 电容
  • 3.5 BJT三极管
  • 3.6 74系列IC
  • 3.7 LM7805线性稳压IC
  • 第4章 基本实验
  • 4.1 LED渐变
  • 4.2 继电器控制
  • 4.3 1602字符液晶显示屏
  • 4.4 四位段码LED显示
  • 4.5 DS1302时钟芯片
  • 第5章 传感器实验
  • 5.1 LM35温度传感器
  • 5.2 DHT11温湿度传感器
  • 5.3 酒精传感器
  • 5.4 超声波测距传感器
  • 5.5 光敏电阻光传感器
  • 5.6 BH1750环境光传感器模块
  • 5.7 ADXL335加速计
  • 5.8 GP2Y1010AU0F灰尘传感器
  • 5.9 BMP085气压传感器
  • 第6章 运动控制实验
  • 6.1 步进电机控制
  • 6.1.1 用驱动器驱动步进电机
  • 6.1.2 Maple通过达林顿芯片驱动步进电机
  • 6.2 舵机电压表
  • 第7章 其他实验
  • 7.1 74HC595串并转换
  • 7.2 24Cxx系列EEPROM读写
  • 7.3 PID温度自动控制
  • 7.4 Maple频率计
  • 7.5 NEC协议红外发射实验
  • 7.6 使用IRremote库多协议红外收发
  • 第8章 Maple上的操作系统简介
  • 8.1 Maple上的CoOS
  • 8.1.1 准备
  • 8.1.2 入门程序
  • 8.2 Maple上的FreeRTOS
  • 8.2.1 简介
  • 8.2.2 入门程序
  • 附录一 Maple引脚功能表
  • 附录二 Maple Mini引脚功能表
  • 附录三 定时器比较器通道与其相对应的引脚
  • 附录四 Maple RET6引脚功能表
展开全部