传智鸿蒙元气派开发板¶
元气派GenKiPi开发板由传智播客教育科技股份有限公司出品,搭载OpenHarmony2.0操作系统;基于海思HI3861模组, 160MHz主频、SRAM 352KB、ROM 288KB、2M Flash。支持SPI、IIC、UART、ADC、PWM等开发协议, 广泛适用于智能穿戴、智能安防和工业物联网场景。
引脚功能
引脚 | Uart | SPI | ADC | PWM | I2S | SDIO | I2C |
---|---|---|---|---|---|---|---|
GPIO_07 | CTS_1 | RXD_0 | ADC_3 | PWM_0 | CLK_0 | ||
GPIO_08 | RTS_1 | TXD_0 | PWM_1 | WS_0 | |||
GPIO_10 | CTS_2 | CLK_0 | PWM_1 | TX_0 | D3 | SDA_0 | |
GPIO_09 | RTS_2 | TXD_0 | ADC_4 | PWM_0 | MCK_0 | D2 | SCL_0 |
GPIO_03 | LOG_TXD_0 | ||||||
GPIO_04 | LOG_RXD_0 | ADC_1 | |||||
GPIO_02 | PWM_2 | MCK_0 | |||||
GPIO_05 | RXD_1 | CSI_0 | ADC_2 | PWM_2 | TX_0 | ||
GPIO_06 | TXD_1 | CLK_0 | PWM_3 | ||||
GPIO_14 | LOG_RXD_0/CTS_2 | PWM_5 | RX_0 | D1 | SCL_0 | ||
GPIO_11 | TXD_2 | RXD_0 | ADC_5 | PWM_2 | CLK_0 | CMD | |
GPIO_12 | RXD_2 | CSI_0 | ADC_0 | PWM_3 | WS_0 | CLK | |
GPIO_13 | LOG_TXD_0/RTS_2 | ADC_6 | PWM_4 | D0 | SDA_0 |
元气派SDK目录
GenkiPi 的SDK软件包根目录所在位置为device/itcast/genkipi/
, 如下所示:
device/itcast/genkipi
├── BUILD.gn # GN构建脚本
├── interfaces # 自定义接口
└── sdk_liteos # Liteos内核目录
├── app # 应用层代码(其中包含demo程序为参考示例)。
├── boot # Flash bootloader代码。
├── build # SDK构建所需的库文件、链接文件、配置文件。
├── BUILD.gn # GN构建脚本
├── build_patch.sh # 用于解压uboot开源源码包和打patch。
├── build.sh # 启动编译脚本,同时支持“sh build.sh。 menuconfig”进行客制化配置。
├── components # SDK平台相关的组件。
├── config # SDK系统配置文件。
├── config.gni # 支持OpenHarmony配置文件。
├── factory.mk # 厂测版本编译脚本。
├── hm_build.sh # 适配OpenHarmony构建脚本。
├── include # API头文件存放目录。
├── license # SDK开源license声明。
├── Makefile # 支持make编译,使用“make”或“make all”启动编译。
├── non_factory.mk # 非厂测版本编译脚本。
├── platform # SDK平台相关的文件(包括:内核镜像、驱动模块等)。
├── SConstruct # SCons编译脚本。
├── third_party # 开源第三方软件目录。
└── tools # SDK提供的Linux系统和Windows系统上使用的工具(包括:NV制作工具、签名工具、Menuconfig等)。
核心芯片Hi3861V100¶
Hi3861V100是一款高度集成的2.4GHz WiFi SoC芯片,集成IEEE 802.11b/g/n基带和RF电路,RF电路包括功率放大器PA、低 噪声放大器LNA、RF balun、天线开关以及电源管理等模块;支持20MHz标准带宽和5MHz/10MHz窄带宽,提供最大72.2Mbit/s 物理层速率。 Hi3861V100 WiFi基带支持正交频分复用(OFDM)技术,并向下兼容直接序列扩频(DSSS)和补码键控(CCK)技术,支 持IEEE 802.11 b/g/n协议的各种数据速率。 Hi3861V100芯片集成高性能32bit微处理器、硬件安全引擎以及丰富的外设接口,外设接口包括SPI、UART、I2C、PWM、 GPIO和多路ADC,同时支持高速SDIO2.0 Slave接口,最高时钟可达50MHz;芯片内置SRAM和Flash,可独立运行,并支持 在Flash上运行程序。 Hi3861V100芯片适应于智能家电等物联网智能终端领域。
该框架可以分为以下几个层次:
-
APP层:即应用层。
-
API层:提供基于SDK开发的通用接口。
-
Platform平台层:提供SOC系统板级支持包,包括如下功能:
-
芯片和外围器件驱动
- 操作系统
-
系统管理
-
Service服务层:提供包含WiFi等应用协议栈。用于上层应用软件进行数据收发等操作。
-
第三方:提供给Service服务层或提供给应用层使用的第三方软件库。
特点¶
稳定、可靠的通信能力¶
- 支持复杂环境下 TPC、自动速率、弱干扰免疫等可靠性通信算法
灵活的组网能力¶
- 支持 256 节点 Mesh 组网
- 支持标准 20M 带宽组网和 5M/10M 窄带组网
完善的网络支持¶
- 支持 IPv4/IPv6 网络功能
- 支持 DHCPv4/DHCPv6 Client/Server
- 支持 DNS Client 功能
- 支持 mDNS 功能
- 支持 CoAP/MQTT/HTTP/JSON 基础组件
强大的安全引擎¶
- 硬件实现 AES128/256 加解密算法
- 硬件实现 HASH-SHA256、HMAC_SHA256 算法
- 硬件实现 RSA、ECC 签名校验算法
- 硬件实现真随机数生成,满足 FIPS140-2 随机测试标准
- 硬件支持 TLS/DTLS 加速
- 内部集成 EFUSE,支持安全存储、安全启动、安全升级
- 内部集成 MPU 特性,支持内存隔离特性
开放的操作系统¶
- 丰富的低功耗、小内存、高稳定性、高实时性机制
- 灵活的协议支撑和扩展能力
- 二次开发接口
- 多层级开发接口:操作系统适配接口和系统诊断接口、 链路层接口、网络层接口
原理图¶
原理图,就是用来描述一个电路板内部的连接结构的
GPIO¶
GPIO (General-purpose input/output)是通用输入输出端口的简称,简单来说就是 Hi3861 可控制的引脚,
Hi3861 芯片的 GPIO 引脚与外部设备连接起来,从而实现与外部通讯、控制以及数据采集的功能。
GPIO模式
GPIO有输入模式和输出模式
GPIO最基本的输出功能是由 核心芯片 控制引脚输出高、低电平,实现开关控制,如把 GPIO引脚接入到 LED灯,就可以控制 LED灯的亮灭.
最基本的输入功能是检测外部输入电平,如把 GPIO 引脚连接到按键,通过电平高低区分按键是否被按下。