“Arduino库”的版本间的差异

来自YFRobotwiki
跳转至: 导航搜索
(以“=== [http://www.arduino.cc/en/Reference/HomePage Arduino官方语法参考] === === Arduino编程语法参考 === ::'''Arduino程序可分为三个主要部分:结...”为内容创建页面)
 
 
(未显示2个用户的23个中间版本)
第1行: 第1行:
=== [http://www.arduino.cc/en/Reference/HomePage Arduino官方 语法参考] ===
+
=== [https://www.arduino.cc/en/Reference/Libraries Arduino官方 ] ===
 +
 
 +
 
 +
<font color="olivedrab" size="+2">'''库'''</font><br>
 +
 
 +
 
 +
'''Arduino 环境就像大多数编程平台一样可以使用类库。库可以为程序提供额外的功能,例如:使用硬件或操作数据。IDE可以安装很多库,当然你也可以下载或者创建你自己的库。'''<br>
 +
 
 +
程序中使用库,从'''Sketch > Import Library'''中添加库。
  
=== Arduino编程语法参考 ===
 
  
::'''Arduino程序可分为三个主要部分:结构、值(变量和常量),和功能。'''
 
  
 
----
 
----
第9行: 第15行:
 
{| border="0" cellpadding="10" width="100%"
 
{| border="0" cellpadding="10" width="100%"
 
|-
 
|-
|width="33%" valign="top" align="left"|
+
|width="50%" valign="top" align="left"|
<font color="olivedrab" size="+1">'''结构'''</font>
+
*[[setup()]]
+
*[[loop()]]
+
<font color="orange" >'''控制结构'''</font>
+
*[[if(条件判断语句) 和 比较运算符 | if ]]
+
*[[if...else]]
+
*[[for]]
+
*[[switch case]]
+
*[[while]]
+
*[[do...while]]
+
*[[break]]
+
*[[continue]]
+
*[[return]]
+
*[[goto]]
+
<font color="orange" >'''扩展语法'''</font>
+
*[[; (分号)]]
+
*[[大括号|{} (大括号)]]
+
*[[注释| //  (单行注释) ]]
+
*[[注释| /**/(多行注释)]]
+
*[[ define|#define ]]
+
*[[ include |#include ]]
+
<font color="orange" >'''算术运算符'''</font>
+
*[[= (赋值运算符)]]
+
*[[加,减,乘,除 | + (加)]]
+
*[[加,减,乘,除 | - (减)]]
+
*[[加,减,乘,除 | * (乘)]]
+
*[[加,减,乘,除 | / (除)]]
+
*[[ % (取模)]]
+
<font color="orange" >'''比较运算符'''</font>
+
*[[if(条件判断语句) 和 比较运算符 | == (等于)]]
+
*[[if(条件判断语句) 和 比较运算符 | != (不等于)]]
+
*[[if(条件判断语句) 和 比较运算符 |  < (小于)]]
+
*[[if(条件判断语句) 和 比较运算符 |  > (大于)]]
+
*[[if(条件判断语句) 和 比较运算符 | <= (小于等于)]]
+
*[[if(条件判断语句) 和 比较运算符 | >= (大于等于)]]
+
<font color="orange" >'''布尔运算符'''</font>
+
*[[布尔运算符 | && (与)]]
+
*[[布尔运算符 | || (或)]]
+
*[[布尔运算符 |  ! (非)]]
+
<font color="orange" >'''指针运算符'''</font>
+
*[[指针运算符 | * 指针运算符]]
+
*[[指针运算符 | & 地址运算符]]
+
<font color="orange" >'''位运算符'''</font>
+
*[[位与,位或,位异或 | & (位与)]]
+
*[[位与,位或,位异或 | | (位或)]]
+
*[[位与,位或,位异或 | ^ (位异或)]]
+
*[[位非 | ~ (位非)]]
+
*[[左移,右移 | << (左移)]]
+
*[[左移,右移 | >> (右移)]]
+
<font color="orange" >'''复合运算符'''</font>
+
*[[++ / -- | ++ (增加)]]
+
*[[++ / -- | -- (减少)]]
+
*[[+= , -= , *= , /= | += (复合加)]]
+
*[[+= , -= , *= , /= | -= (复合减)]]
+
*[[+= , -= , *= , /= | *= (复合乘)]]
+
*[[+= , -= , *= , /= | /= (复合除)]]
+
*[[复合位与 | &= (复合位与)]]
+
*[[复合位或 | != (复合位或)]]
+
  
|width="33%" valign="top" align="left"|
+
<font color="darkcyan" size="+1" >''' 标准库'''</font>
<font color="darkcyan" size="+1">''' 变量'''</font><br>
+
 
<font color="orange" >'''常量'''</font>
+
:-[[EEPROM库| EEPROM]] - 读写“永久”储存
*[[ 常量|HIGH]]|[[ 常量|LOW]]
+
 
*[[ 常量|INPUT]]|[[ 常量|OUTPUT]]|[[ 常量|INPUT_PULLUP]]
+
:-[[Ethernet库| Ethernet]] - 用于使用Arduino以太网扩展板连接到互联网
*[[ 常量|LED_BUILTIN]]
+
 
*[[ 常量|true]]|[[ 常量|false]]
+
:-[[Firmata库| Firmata]] - 根据标准串行协议与电脑上的应用程序进行通信
*[[integer constants(整型常量)]]
+
 
*[[floating point constants(浮点型常量)]]
+
:-[[GSM库| GSM]] - 用于使用GSM扩展板连接到 GSM/GRPS 网络
<font color="orange" >''' 数据类型'''</font>
+
 
*[[void]]
+
:-[[LiguidCrystal库| LiguidCrystal]] - 控制液晶显示屏(LCD)
*[[boolean]]
+
 
*[[char]]
+
:-[[SD库| SD]] - 用于读写SD卡
*[[unsigned char]]
+
 
*[[byte]]
+
:-[[Servo库| Servo]] - 用于控制伺服电机(舵机)
*[[int]]
+
 
*[[unsigned int]]
+
:-[[SPI库| SPI]] - 用于与使用串行外围接口(SPI)总线的设备进行通信
*[[word]]
+
 
*[[long]]
+
:-[[SoftwareSerial库| SoftwareSerial]] -  使用任何数字引脚进行串行通信( 1.0版本以后,整合了Mikal Hart的NewSoftSerial 库作为 SoftwareSerial库)
*[[unsigned long]]
+
 
*[[short]]
+
:-[[Stepper库| Stepper]] - 用户控制步进电机
*[[float]]
+
 
*[[double]]
+
:-[[TFT库| TFT]] - 用于在TFT屏幕上绘制文本、图像及形状
*[[string]]-char array
+
 
*[[string]]-object
+
:-[[WiFi库| WiFi]] - 用于使用WiFi扩展板连接到网络
*[[array]]
+
 
<font color="orange" >''' 数据类型转换'''</font>
+
:-[[Wire库| Wire]] - 双总线接口 (TWI/I2C) 用于设备或传感器通过网络发送、接收数据
*[[char()]]
+
 
*[[byte()]]
+
 
*[[int()]]
+
<font color="darkcyan" size="+1" >'''Due Only Libraries'''</font>
*[[word()]]
+
 
*[[long()]]
+
:-[[Audio库| Audio]] - Play audio files from a SD card.
*[[float()]]
+
 
<font color="orange" >''' 变量作用域'''</font>
+
:-[[Scheduler库| Scheduler]] - Manage multiple non-blocking tasks.
*[[variable scope]]
+
 
*[[static]]
+
 
*[[volatile]]
+
<font color="darkcyan" size="+1" >'''Due and Zero Libraries'''</font>
*[[const]]
+
 
<font color="orange" >''' 辅助工具'''</font>
+
:-[[USBHost库| USBHost]] - Communicate with USB peripherals like mice and keyboards.
*[[sizeof()]]
+
 
*[[PROGMEM]]
+
 
 +
<font color="darkcyan" size="+1" >'''Esplora Only Library'''</font>
 +
 
 +
:-[[Esplora库| Esplora]] - this library enable you to easily access to various sensors and actuators mounted on the Esplora board.
 +
 
 +
 
 +
<font color="darkcyan" size="+1" >'''Arduino Robot Library'''</font>
 +
 
 +
:-[[Robot库| Robot]] - this library enables easy access to the functions of the Arduino Robot
 +
 
 +
 
 +
<font color="darkcyan" size="+1" >'''Arduino Yún Bridge Library'''</font>
 +
 
 +
:-[[Bridge库| Bridge Library]] - Enables communication between the Linux processor and the Arduino on the Yún.
 +
 
 +
 
 +
<font color="darkcyan" size="+1" >'''USB Libraries (Leonardo, Micro, Due, Zero and Esplora)'''</font>
 +
 
 +
:-[[Keyboard库| Keyboard ]] - Send keystrokes to an attached computer.
 +
 
 +
:-[[Mouse库| Mouse ]] - Control cursor movement on a connected computer.
 +
 
 +
 
 +
 
 +
 
 +
|width="50%" valign="top" align="left"|
 +
 
 +
<font color="darkcyan" size="+1" >'''其他库(第三方库)'''</font>
 +
 
 +
如果你使用下面的库,你需要先安装它。当然你还可以[http://www.yfrobot.com/thread-2260-1-1.html 编写自己的库文件]。
 +
 
 +
<font color="lightseagreen" >'''通信(网络和协议):'''</font>
 +
 
 +
:- [http://www.yfrobot.com/thread-2377-1-1.html RFID库] - RFID 射频模块库
 +
 
 +
:-[[PS2库 | PS2]] - PS2 Joystick library
 +
 
 +
:-[[Json库 | Json]] - JSON library
 +
 
 +
:-[[Messenger库| Messenger]] - for processing text-based messages from the computer
 +
 
 +
:-[[NewSoftSerial库| NewSoftSerial]] - an improved version of the SoftwareSerial library
 +
 
 +
:-[[OneWire库| OneWire]] - control devices (from Dallas Semiconductor) that use the One Wire protocol.
 +
 
 +
:-[[PS2Keyboard库| PS2Keyboard ]] - read characters from a PS2 keyboard.
 +
 
 +
:-[[Simple Message System库| Simple Message System]] - send messages between Arduino and the computer
 +
 
 +
:-[[SSerial2Mobile库| SSerial2Mobile ]] - send text messages or emails using a cell phone (via AT commands over software serial)
 +
 
 +
:-[[Webduino库| Webduino ]] - extensible web server library (for use with the Arduino Ethernet Shield)
 +
 
 +
:-[[X10库| X10 ]] - Sending X10 signals over AC power lines
 +
 
 +
:-[[XBee库| XBee ]] - for communicating with XBees in API mode
 +
 
 +
:-[[SerialControl库| SerialControl ]] - Control cursor movement on a connected computer.
 +
 
 +
 
 +
<font color="lightseagreen" >''' 传感器:'''</font>
 +
 
 +
:-[[Capacitive Sensing库| Capacitive Sensing]] - turn two or more pins into capacitive sensors
 +
 
 +
:-[[Debounce库| Debounce ]] - for reading noisy digital inputs (e.g. from buttons)
 +
 
 +
 
 +
<font color="lightseagreen" >'''显示器和LED:'''</font>
 +
 
 +
:- [http://www.yfrobot.com/thread-2414-1-1.html Nokia 5110库] - drive 5110 liquid crystal display
 +
 
 +
:-[[u8glib库 | u8glib ]]
 +
 
 +
:-[[u8g2库 | u8g2 ]]
 +
 
 +
:-[[Adafruit_SSD1306库 | Adafruit_SSD1306 ]]
 +
 
 +
:-[[Adafruit_GFX库 | Adafruit_GFX ]]
 +
 
 +
:-[[Lixie库 | Lixie ]]
 +
 
 +
 
 +
<font color="lightseagreen" >''' 音频和波形:'''</font>
 +
 
 +
:-[[Arduino_FFT库 | FFT ]]
 +
 
 +
 
 +
<font color="lightseagreen" >''' 电机和PWM:'''</font>
 +
 
 +
 
 +
<font color="lightseagreen" >'''存储Flash:'''</font>
 +
 
 +
:-[[SPIFlash库 | SPIFlash]]
 +
 
 +
 
 +
<font color="lightseagreen" >'''时间:'''</font>
 +
 
 +
:-[[RTC_DS1307_DS3231库 | RTC_DS1307_DS3231 ]]
 +
 
 +
 
 +
<font color="lightseagreen" >'''实用工具库:'''</font>
  
|width="33%" valign="top" align="left"|
 
<font color="chocolate" size="+1">'''函数'''</font><br>
 
<font color="orange" >'''数字I/O'''</font>
 
*[[pinMode()]]
 
*[[digitalWrite()]]
 
*[[digitalRead()]]
 
<font color="orange" >'''模拟I/O'''</font>
 
*[[analogReference()]]
 
*[[analogRead()]]
 
*[[analogWrite()]] - PWM
 
<font color="orange" >'''只适用于Due & Zero板'''</font>
 
*[[analogReadResolution()]]
 
*[[analogWriteResolution()]]
 
<font color="orange" >'''高级I/O'''</font>
 
*[[tone()]]
 
*[[noTone()]]
 
*[[shiftOut()]]
 
*[[shiftIn()]]
 
*[[pulseIn()]]
 
<font color="orange" >'''时间'''</font>
 
*[[millis()]]
 
*[[micros()]]
 
*[[delay()]]
 
*[[delayMicroseconds()]]
 
<font color="orange" >'''数学'''</font>
 
*[[min()]]
 
*[[max()]]
 
*[[abs()]]
 
*[[constrain()]]
 
*[[map()]]
 
*[[pow()]]
 
*[[sqrt()]]
 
<font color="orange" >'''三角函数'''</font>
 
*[[sin()]]
 
*[[cos()]]
 
*[[tan()]]
 
<font color="orange" >'''随机数'''</font>
 
*[[randomSeed()]]
 
*[[random()]]
 
<font color="orange" >'''位操作'''</font>
 
*[[lowByte()]]
 
*[[highByte()]]
 
*[[bitRead()]]
 
*[[bitWrite()]]
 
*[[bitSet()]]
 
*[[bitClear()]]
 
*[[bit()]]
 
<font color="orange" >'''外部中断'''</font>
 
*[[attachInterrupt()]]
 
*[[detachInterrupt()]]
 
<font color="orange" >'''中断'''</font>
 
*[[interrupts()]]
 
*[[noInterrupts()]]
 
<font color="orange" >'''串口通信'''</font>
 
*[[Serial]]
 
*[[Stream]]
 
<font color="orange" >'''USB (仅适用于 基于芯片32u4的板和Due/Zero)'''</font>
 
*[[Keyboard]]
 
*[[Mouse]]
 
 
|}
 
|}
 +
 +
 
----
 
----
返回 [[首页]]
+
[[ 首页|返回 首页]]
 +
 
 +
欢迎加入群聊:[https://jq.qq.com/?_wv=1027&k=466mOjv 技术交流群]
  
 
 原文出处:[http://www.arduino.cc/en/Reference Arduino官网]
 
 原文出处:[http://www.arduino.cc/en/Reference Arduino官网]
  
 
 更多建议和问题欢迎反馈至 [http://www.yfrobot.com YFRobot论坛]
 
 更多建议和问题欢迎反馈至 [http://www.yfrobot.com YFRobot论坛]

2017年4月18日 (二) 10:29的最后版本

Arduino官方库



Arduino 环境就像大多数编程平台一样可以使用类库。库可以为程序提供额外的功能,例如:使用硬件或操作数据。IDE可以安装很多库,当然你也可以下载或者创建你自己的库。

程序中使用库,从Sketch > Import Library中添加库。



标准库

- EEPROM - 读写“永久”储存
- Ethernet - 用于使用Arduino以太网扩展板连接到互联网
- Firmata - 根据标准串行协议与电脑上的应用程序进行通信
- GSM - 用于使用GSM扩展板连接到 GSM/GRPS 网络
- LiguidCrystal - 控制液晶显示屏(LCD)
- SD - 用于读写SD卡
- Servo - 用于控制伺服电机(舵机)
- SPI - 用于与使用串行外围接口(SPI)总线的设备进行通信
- SoftwareSerial - 使用任何数字引脚进行串行通信( 1.0版本以后,整合了Mikal Hart的NewSoftSerial 库作为 SoftwareSerial库)
- Stepper - 用户控制步进电机
- TFT - 用于在TFT屏幕上绘制文本、图像及形状
- WiFi - 用于使用WiFi扩展板连接到网络
- Wire - 双总线接口 (TWI/I2C) 用于设备或传感器通过网络发送、接收数据


Due Only Libraries

- Audio - Play audio files from a SD card.
- Scheduler - Manage multiple non-blocking tasks.


Due and Zero Libraries

- USBHost - Communicate with USB peripherals like mice and keyboards.


Esplora Only Library

- Esplora - this library enable you to easily access to various sensors and actuators mounted on the Esplora board.


Arduino Robot Library

- Robot - this library enables easy access to the functions of the Arduino Robot


Arduino Yún Bridge Library

- Bridge Library - Enables communication between the Linux processor and the Arduino on the Yún.


USB Libraries (Leonardo, Micro, Due, Zero and Esplora)

- Keyboard - Send keystrokes to an attached computer.
- Mouse - Control cursor movement on a connected computer.



其他库(第三方库)

如果你使用下面的库,你需要先安装它。当然你还可以编写自己的库文件

通信(网络和协议):

- RFID库 - RFID 射频模块库
- PS2 - PS2 Joystick library
- Json - JSON library
- Messenger - for processing text-based messages from the computer
- NewSoftSerial - an improved version of the SoftwareSerial library
- OneWire - control devices (from Dallas Semiconductor) that use the One Wire protocol.
- PS2Keyboard - read characters from a PS2 keyboard.
- Simple Message System - send messages between Arduino and the computer
- SSerial2Mobile - send text messages or emails using a cell phone (via AT commands over software serial)
- Webduino - extensible web server library (for use with the Arduino Ethernet Shield)
- X10 - Sending X10 signals over AC power lines
- XBee - for communicating with XBees in API mode
- SerialControl - Control cursor movement on a connected computer.


传感器:

- Capacitive Sensing - turn two or more pins into capacitive sensors
- Debounce - for reading noisy digital inputs (e.g. from buttons)


显示器和LED:

- Nokia 5110库 - drive 5110 liquid crystal display
- u8glib
- u8g2
- Adafruit_SSD1306
- Adafruit_GFX
- Lixie


音频和波形:

- FFT


电机和PWM:


存储Flash:

- SPIFlash


时间:

- RTC_DS1307_DS3231


实用工具库:



返回首页

欢迎加入群聊:技术交流群

原文出处:Arduino官网

更多建议和问题欢迎反馈至 YFRobot论坛