# 关于CocoPi
CocoPi是CocoRobo开发的一款集成了多种传感器和功能的掌上计算器，可用于AloT教学、开发和实验。
它运行Linux系统，支持Python和图形化编程。</br>
CocoPi搭载All Winners V831系列芯片，包含单核ARM Cortex-A7处理器和64MB DDR2芯片，芯片集成了H.264/H.265视频编码器和图像处理算法，能够提供高效的视频编码和专业的图像效果。


## 硬件性能参数

| No.	|           内容             |  具体参数                |
| ----  | ------------------------  | ------------------------ |
|   1	|          CPU 	     |  Allwinner V831, ARM CortexTM-A7,800Mhz  |
|   2   |       DRAM	         |  SIP (System in Package) 64MB DDR2  |
|   3	|     NPU	     | 0.2TOPS，算子支持：Conv, Activation, Pooling, BN, LRN, FC/Inner Product  |
|   4	|   存储	  |  SD卡（最高128GB，预设16GB）  |
|   5	|   启动引导	|  SD卡  |
|   6	| 操作系统	|  Maix-Linux |
|   7	|  Python版本  |  Python3.8.5  |
|   8	|  图像输入  |	一路MIPI CSI ，最高支持1080P@60fps (RAW格式)，默认连接200W像素摄像头  |
|   9	|  视频输出  |	1-路RGB 输出，最高支持QVGA@60fps   |
|   10	|  音频  |	集成音频编解码器，支持20位音频输入输出； 扬声器功率1W。  |
|   11	|  网络连接  |	2.4Ghz WIFI，最大稳定通信距离20m（非复杂电磁环境下开阔室内测量结果）   |
|   12	|  工作电压  |	 5V直流输入（通过USB口） 7V~12V直流输入（通过电源输入端子）  |
|   13	|  最大功率  |	5V直流输入（通过USB口）  |
|   14	|  板载外设  |	1个内置RTC <br/> 1路IIC接口、1路UART接口、1路SPI接口 <br/> 1路USB-OTGType-C接口、1路USB-A 2.0接口 <br/> 4路GPIO接口 <br/> 2个PWM控制器（8通道）、2个直流电机 <br/> 1个温湿度传感器、1个三轴陀螺仪+三轴加速度计、1个麦克风、一个光敏传感器、一个200W像素摄像头、4个按键 <br/> 1个扬声器、一个2.8英寸RGB屏幕、1个RGB灯 <br/> 1个RESET    |


## 硬件主要部件

<div style="width:100%;text-align:center;margin-bottom:20px;">
    <img src="media\開始使用CocoPi\hardware_1.jpg" width="500"><br/>
</div>

<div style="width:100%;text-align:center;margin-bottom:20px;">
    <img src="media\開始使用CocoPi\hardware_2.jpg" width="500"><br/>
</div>

| No.	|           部件名称             |  部件描述                |
| ----  | ------------------------  | ------------------------ |
|     1/2/3/4	     |  按键开关  |  A/B/C/D号按键开关（详见硬件标注）。 |
|       5	         |  扬声器  |  “喇叭”，是一种把电信号转变为声信号的换能器件。 |
|     6	     | RESET按键  | 按下此按钮控制硬件重新启动。 |
|   7	  |  电机驱动芯片  | 用于驱动电机。 |
|   8	|  相机  | 可切换广角/定焦摄像头安装，用于获取图像。|
| 9	|  核心处理器 | 硬件的核心处理器，具体参数见“硬件性能参数”。|
|  10  |	Wi-Fi芯片  | 集成Wi-Fi功能的控制器。|
|  11  |	Wi-Fi天线  | 用于增强硬件无线传输信号。|
|  12  |	光照传感器   | 内置光敏电阻，用于监测周边环境的光照强度。|
|  13  |	温湿度传感器 | 用于监测周边环境的温度（摄氏）和湿度数据。|
|  14  |	运动传感器（陀螺仪）   | 用于检测硬件的空间运动。|
|  15  |	 麦克风 | 采集环境音频数据。|
|  16  |	RGB灯  | 全彩LED灯，通过程序控制显示。|
|  17  |	屏幕    | 全彩IPS液晶显示器，尺寸为2.8英寸。|


## 硬件主要接口

### 接口简介

<div style="width:100%;text-align:center;margin-bottom:20px;">
    <img src="media\開始使用CocoPi\hardware_3.jpg" width="500"><br/>
</div>

| No.	|           接口名称             |   接口描述                |
| ----  | ------------------------  | ------------------------ |
|      1	 |  Type C数据接口  |  通过Type C数据线实现与PC端通信。 |
|      2	 |  Micro SD卡槽  |  用于连接Micro SD存储卡，存储媒体、程序文件、机器学习模型等数据。 |
|     3/6	 | 舵机接口  | 用于接入舵机或传感器使用，可以获取传感器输入的数字信号。 |
|     4/5	 |  电机接口  | 用于接入直流电机使用。 |
|      7	 |  USB数据接口  | 通过USB数据线连接外接设备，如鼠标、显示器等。 |
|      8	 |  POWER电源接口 | 通过外接电源进行硬件供电。 |
|      9     |	GPIO接口  | 通用输入/输出接口，用于连接外部传感器作为输入/输出。|
|      10    |	SPI通信接口  | 串行外设接口，典型应用有闪存、EEPROM、SD卡与液晶显示器。 |
|      11    |	UART串口通信接口   | 通用异步收发传输器，主要用于CocoPi与其他硬件进行数据传输。 |
|      12    |	IIC通信接口 |  串列通讯总线，主要应用在构造简单且可以牺牲传输速度来降低制造成本的外部设备上。 |

### 接口编号

ADC模式：用于接类比量传感器，输入输入范围：0~1023.常见ADC传感器：旋钮、摇杆滑块、红外巡线传感器、光敏电阻传感器、音量检测传感器、土壤湿度传感器模拟温度传感器等。

G PIO模式：在输入模式下，可以用于连接按钮、红外避障传感器、行程开关、倾斜传感器等；在输出模式下，可以用来点灯、控制电磁继电器、控制蜂鸣器等。

PWM模式：引脚可以用来输出PWM波，进行诸如呼吸灯、小风扇电机转速控制等。
通用异步收发设备模式：模组可以用于连接第三方设备或者传感器进行串口通讯，如Arduino、Micro： bit、树莓派、ESP32等第三方设备。

SPI模式：模组可以连接第三方设备或者传感器进行SPI通讯，此外很多小屏幕是基于SPI进行通讯。

IIC模式：模组可以连接第三方设备可者传感器进行IIC通讯，如连接PCA9685进行电机、舵机扩展控制、连接颜色传感器、人体红外传感器、磁力计等。

注意：所有GPIO的电压域为0V~3V3，输入电压不能超运以免造成引脚损坏甚至芯片损坏3V3。


### 接口连接

<div style="width:100%;text-align:center;margin-bottom:20px;">
    <img src="media\開始使用CocoPi\hardware_4.jpg" width="500"><br/>
</div>

PH2.0 3P转母头杜邦线：用于S1/S2接口转接

SH1.0 6P转母头杜邦线：用于GPIO接口/SPI通讯接口转接

SH1.0 4P转母头杜邦线：用于UART串口通讯接口/IIC通讯接口转接
