Matrix - Compact Kit/zh

From FriendlyELEC WiKi
Revision as of 09:48, 24 May 2016 by Wuweidong (Talk | contribs)

Jump to: navigation, search

English

1 介绍

Matrix-Compact Kit.png
  • Matrix - Compact Kit是一款紧凑、简洁的多功能开发者套件,该套件由一系列常用电气元件经过精心构建而成,色彩斑斓,资源丰富,包括了按键、LED、无源蜂鸣器、ADC、指南针、温度传感器、红外接收器、TFT等14种资源。该套件可以直接通过40pin排母和NanoPi、NanoPi2无缝对接,也适用于40Pin GPIO口的树莓派系列产品。除了丰富的板上资源以外,您还可以通过扩展的IO口外接模块,基于本产品开发出功能丰富的应用。

2 资源

Matrix - Compact Kit集成的元件如下

  • 0.9 TFT LCD
  • 轻触开关3个
  • 5mm LED4个
  • 无源蜂鸣器
  • ADC
  • 滑动变阻器
  • 40pin排母
  • 4pin排针---I2C接口
  • 4pin排针---UART接口
  • 3pin双排针---3.3V和GND
  • 18B20温度传感器
  • 红外接收器
  • 3pin排座10个---3个模拟IO,7个数字IO(其中两个可复用为PWM,四个复用为SPI 接口)
  • 指南针

3 特性

  • PCB尺寸(mm):

Matrix-Compact Kit PCB.png

Matrix-Compact_Kit接口布局
  • 40pin排母GPIO管脚定义
Pin# Name Pin# Name
1 VDD_SYS_3.3V 2 VDD_5V
3 I2C0_SDA 4 VDD_5V
5 I2C0_SCL 6 DGND
7 GPIOB28 8 UART3_TXD
9 DGND 10 UART3_RXD
11 GPIOB29 12 GPIOB26
13 GPIOB30 14 DGND
15 GPIOB31 16 PWM2
17 VDD_SYS_3.3V 18 GPIOB27
19 SPI0_MOSI 20 DGND
21 SPI0_MISO 22 PWM0
23 SPI0_CLK 24 SPI0_CS
25 DGND 26 PWM1
27 I2C1_SDA 28 I2C1_SCL
29 GPIOC8 30 DGND
31 SPI2_CLK 32 GPIOC28
33 SPI2_CS 34 DGND
35 SPI2_MOSI 36 GPIOC7
37 SPI2_MISO 38 ALIVEGPIO2
39 DGND 40 ALIVEGPIO3
Matrix-Compact_Kit接口布局
  • 30pin排针管脚定义
Pin# Name Pin# Name Pin# Name
1 GND 2 VDD_5V 3 A1_PCF
4 GND 5 VDD_5V 6 A2_PCF
7 GND 8 VDD_5V 9 A3_PCF
10 GND 11 VDD_5V 12 D1_Pi11
13 GND 14 VDD_5V 15 D2_Pi26
16 GND 17 VDD_5V 18 D3_Pi16
19 GND 20 VDD_5V 21 D4_Pi19
22 GND 23 VDD_5V 24 D5_Pi21
25 GND 26 VDD_5V 27 D6_Pi23
28 GND 29 VDD_5V 30 D7_Pi24
18B20和红外接收接口布局
  • 18B20和红外接收管脚定义
模块 Pin# Name Pin# Name Pin# Name
18B20 1 VDD_5V 2 DATA 3 GND
红外接收管 1 DATA 2 GND 3 VDD_5V

4 硬件连接

4.1 连接NanoPi 2

参考下图连接模块:
Matrix-Compact_Kit_nanopi2

5 编译运行测试程序

启动开发板并运行Debian系统,进入系统后克隆Matrix代码仓库:

$ apt-get update && apt-get install git
$ git clone https://github.com/friendlyarm/matrix.git

克隆完成后会得到一个名为matrix的目录。

编译并安装Matrix:

$ cd matrix
$ make && make install

运行测试程序:

$ matrix-compact_kit

注意:此模块并不支持热插拔,启动系统前需要确保硬件连接正确。
运行效果如下:

LED blinking 1
LED blinking 2
Button:  1 1 1
ADC channel0: 550
Compass angle: 328.5
Pwm start
Pwm stop

运行Qt程序,测试TFT屏:

cd matrix/demo/nanopi-status
./build.sh
./run.sh /dev/fb-st7735s

程序会显示出系统的基本信息,效果如下:
st7735s-status

6 代码说明

所有的开发板都共用一套Matrix代码,本模块的测试示例代码如下:

int main(int argc, char ** argv)
{
    int board;
 
    if ((board = boardInit()) < 0)
        printf("Fail to init board\n");
    testLED(board);
    readButton();
    readADC();
    readCompass();
    testPWM(board);
    // readTemp();
    // testIR();
 
    return 0;
}

API说明参考维基:Matrix API reference manual

7 通过Python控制

使用的Python版本为2.7.9。
克隆Matrix配件Python相关的库之前,需要先确保你的板可正常上网,并且已经安装好git;接着执行以下步骤安装Python相关的库文件

$ apt-get install Python-dev libi2c-dev

在开发板Debian系统上克隆matrix-python仓库:

$ git clone https://github.com/friendlyarm/matrix-python.git

克隆完成后会得到一个名为matrix-python的目录。

控制LED:

$ cd matrix-python/Matrix.GPIO
$ python setup.py install
$ python test/matrix_output.py 33

可以看到红色LED闪烁了一下。

读按键KEY1:

$ cd matrix-python/Matrix.GPIO
$ python setup.py install
$ python test/matrix_input.py 36

当KEY1按下时value=0,KEY1弹起时value=1。

测试AD转换:

$ cd matrix-python/modules
$ modprobe pcf8591
$ cd ../Matrix.pcf8591
$ python setup.py install
$ python test/matrix_adc.py

通过旋转可调电阻可以改变AD转换值。

测试指南针:

$ cd matrix-python/Matrix.I2C
$ python setup.py install
$ python test/matrix_compass.py

通过改变开发板的朝向可以获得不同的方向值。

8 相关资料