# NyBoard V1\_0

## 总览

![](https://201656985-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQ6a951Q6Jn1Zzt5Ajr%2F-MQrmk1FucezixDWEKwC%2F-MQrwDWKe1LQ3R0fN3ZG%2FNyBoardV1A.JPG?alt=media\&token=e6d8aa21-34d4-464d-b783-66dd19b33c90)

![](https://201656985-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQ6a951Q6Jn1Zzt5Ajr%2F-MQrmk1FucezixDWEKwC%2F-MQrwNcO469yIa2zchke%2FNyBoardV1B.JPG?alt=media\&token=95c3c3b8-d156-4326-a4fd-323e1aadc3a5)

‌ NyBoard V1是综合了大家对NyBoard V0的反馈的升级版本。它与以前的版本兼容，但有一些新设计，使其更易于使用。

* 它仍然使用Atmel ATMega328P作为主控，但是采用16MHz而不是20MHz。现在该开发板与Arduino Uno完全兼容，对于使用Arduino的新用户来说要容易得多。
* &#x20;依然使用PCA9685驱动16个PWM通道，为了方便布线而改变了引脚顺序。但是您不需要读取板上的索引，因为引脚映射是在软件内处理的。
* 六轴数字运动传感器（MPU6050）被焊接在了PCB上，而不是一个独立的模块。内置运动融合处理器（DMP）进行姿态解算。
* 8KB的EEPROM依然被使用来保存常数和动作。
* 优化了电源系统，更可靠且增加了更多的保护措施。
* 2021年我们新增了官方的蓝牙和WiFi模块。通过尾部的6针串口连接，默认波特率为115200。
* Reset按键位于正面，方便使用。
* 我们增加了4个Grove接口用于连接Seeed Studio的扩展模块，同时我们保留了2.54排针并增加了供电。
* 我们增加了7个WS2812串行RGB LED。
* 增加了电池/电源防反接保护。

## 控制器的功能框架图

The configuration of NyBoard V1\_0 is shown as below:

![](https://201656985-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQ6a951Q6Jn1Zzt5Ajr%2F-MQrmk1FucezixDWEKwC%2F-MQrnh-Q_9D75K95kkQN%2FNyBoardV1Framework.png?alt=media\&token=f78a7d5b-7c45-4226-bdbc-52f8ec86b211)

## 板载设备介绍

### Main controller

NyBoard V1\_0使用Atmel ATMega328P-MUR作为主控制器。我们采用其较小封装的版本（QFN32）以获得更好的布局，并且它与常规TQFP32几乎相同。

ATMega328P在5V电源下工作于16MHz。它具有2KB SRAM，32KB闪存和1KB片上EEPROM。使用和Arduino Uno相同的启动引导程序，您可以通过串行端口上传工程。

### I2C 开关

主控工作于5V但其他外设工作于3.3V的逻辑电平。我们使用PCA9306将I2C的电压转换至3.3V。同时我们为I2C设置了开关。通过将其拨到“ Arduino”或“ Raspberry Pi”，您可以更改板载外围设备的I2C主从配置。

### 6轴陀螺仪 MPU6050

MPU6050广泛用于许多DIY项目中，以获取设备的运动状态。它检测3个加速度和3个角速度。它还包括一个姿态融合处理器，可直接解算运动状态，而无需使用主控制器的计算资源。

在NyBoard V1\_0上，其I2C地址为0x68。中断引脚连接到ATMega328P的PD2端口（或Arduino Uno的D2引脚）。

有很多可用的MPU6050库，我们正在使用I2CDev / 6050DMP。您还可以使用其他版本：

| 库名称              | 作者              | 特点            |
| ---------------- | --------------- | ------------- |
| I2Cdev           | jrowberg        | 内置DMP处理器调用和校准 |
| Adafruit MPU6050 | Adafruit        | 标准MPU6050库    |
| Kalman Filter    | TKJ Electronics | 含Kalman滤波器    |

### PCA9685和PWM舵机端口 ‌

PCA9685通过I2C接口转换16个12位的PWM输出，其地址设置为0x40。 PCB上印有16个PWM的编号，实际上您不需要读取它们，因为引脚映射是在软件中完成的。舵机的物理连接与先前的电路板相同。舵机具有3个引脚，分别为PWM信号，电源（2S）和接地（GND）的引脚。

舵机的电源同电池电源直接相连，请勿连接类似SG90这样的6V标压舵机。

我们使用PCA9685的Adafruit PWM舵机驱动程序库。

### EEPROM

我们通过一个8KB的板载I2C EEPROM AT24C64来保存运动技能。它的I2C地址是0x54。技能查找表保存在ATMega328P的1KB片上EEPROM中。它使用。在开发新代码时，您需要注意它们之间的差异。

### 无源蜂鸣器

无源蜂鸣器由PD5（或Arduino UNO的D5）驱动，板载放大电路。

### 红外接收器

我们使用VS1838B作为红外接收器，连接到PD4（或Arduino Uno上的D4）。它由Arduino的IRremote库驱动，遥控器以38KHz的NEC格式编码。您可以通过禁用IRremote.h中的其他协议以节约Flash（大约10％！）

### 电源电压

Petoi徽标中的两个LED指示NyBoard的电源状态。左眼为蓝色，显示芯片供电。右眼为黄色，表示舵机电源。当NyBoard连接到电池时，两个LED均应点亮。当NyBoard由USB下载器供电时，只有蓝色LED会点亮。

电池有一个物理防反向插座，同时也内置了防反接电路。电池的输出连接到ADC7（或Arduino Uno的A7）。 ADC7通过分压电路检测电压，实际电压约为读数的2倍。

$$
Voltage\_{real}=\frac{ADC\_{reading}}{1024}  \times 5.0 \times2
$$

You should charge the battery in time when the battery is lower than 7.4V.&#x20;

### WS2812 RGB LED

我们在NyBoard上添加了7个WS2812 RGB LED（Adafruit 称为 NeoPixel）。引脚号为D10。它们由Raspberry Pi的5V DC-DC电源芯片供电，并且独立于ATMega328P的5V网络。因此，您需要插入电池才能为LED供电。 ‌

### Grove 插座

我们新增了Grove插座以方便传感器和模块的。插座有三种类型：

We adopted the Grove sockets for convenient plug-and-play connections. There are three types of socket:

| 编号 | 引脚名称（不含电源）    | 功能            |
| -- | ------------- | ------------- |
| G1 | I2C: SCL, SDA | I2C （ 3.3V电平） |
| G2 | A2, A3        | 模拟输入; 0-5V    |
| G3 | PD8, PD9      | 数字 I/O; 0-5V  |
| G4 | PD6, PD7      | 数字 I/O; 0-5V  |

### 电源系统

![](https://201656985-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQ6a951Q6Jn1Zzt5Ajr%2F-MQs49vFGzdIKOLXiHy6%2F-MQs57Ieryf_k6J9r3Gw%2FNyBoardPower.png?alt=media\&token=da2e6cd9-032c-42dd-974a-079824abdfcf)

主芯片由低压降（LDO）线性稳压器供电，以消除噪声并提高稳定性。我们使用LM1117-5V和XC6206P-3.3V为5V和3.3V芯片供电。 3.3V LDO在5V LDO之后串联连接，以提高效率。&#x20;

‌ 电池和LM1117-5V之间串联了一个二极管，以防止错误连接造成损坏。 USB上传器上有一个自恢复保险丝（6V 500mA），以限制电流并保护USB端口。&#x20;

Raspberry Pi消耗的功率很多，因此我们选择TPS565201 DC-DC提供5V 3A输出。峰值输出可以为5A，并具有高温/电流/电压保护。当芯片持续输出> 4A并超过100摄氏度时，将切断电源，直到温度降至正常水平。 WS2812 RGB LED也由该DC-DC电源供电。 ‌

&#x20;舵机直接由2S锂离子电池供电。注意不要短接电源或NyBoard上的任何引脚。

最后更新： 2021-4-19
