HaaS EDU K1设备资源总体介绍

1、概述

HaaS EDU K1 作为一款专用于教育的开发套件,整体配置的的资源非常丰富。其内置了高性能MCU-HaaS1000,集成了超大大容量的存储,高达18MB的RAM以及16M的flash,并且支持扩展卡,配备了丰富的外设以及传感器。关于整体硬件介绍,有兴趣可参考HaaS EDU K1硬件介绍

HaaS1000 是一颗专为IoT智能硬件打造的SoC。如图1所示,HaaS1000 集成了 Wi-Fi 802.11 b/g/n 和蓝牙5.0的MAC、PHY和射频单元,也集成了音频编解码器,以及双核Cortex-M33 Star的MCU子系统和双核Cortex-A7的AP子系统,另外还支持 OPI PSRAM 和 QSPI NOR Flash。具体可参考HaaS1000 芯片手册

                                           图1 HaaS1000 架构图

 

2、内存以及存储

板子集成了boot ROM, SRAM, 片上PSRAM 和片上 NOR flash.

  • 64KB boot ROM
  • 2.5MB SRAM, MCU和AP可以通过以下组合共享SRAM,以支持多种应用场景(MCU/AP)
  • 256KB/2.25MB
  • 512KB/2MB
  • 1MB/1.5MB
  • 1.5MB/1MB
  • 2MB/512KB
  • 2.5MB/0KB
  • 16MB 片上 16位 PSRAM
  • 16MB 片上 NOR flash

分区表

16M的flash共分为十一个分区,每个分区均可读写。具体信息如下:

序号

分区名

起始地址

长度

读写权限

说明

1

boot1

0x0

0x10000

读写

一级引导区

2

boot_info

0x10000

0x2000

读写

引导信息

3

boot2A

0x12000

0x18000

读写

二级引导区A

4

RTOSA

0x2A000

0x578000

读写

文件系统A

5

boot2B

0x5A2000

0x18000

读写

二级引导区B

6

RTOSB

0x5BA000

0x578000

读写

文件系统B

7

littleFS

0xB32000

0x4AE000

读写

用户空间文件系统

8

boot1_sec

0xFE0000

0x10000

读写

一级引导区sec

9

boot2_info

0xFF0000

0x1000

读写

boot2信息区

10

KV

0xFF1000

0xD000

读写

kv分区

11

factory

0xFFE000

0x2000

读写

工厂区

 

3、外设资源

板卡 集成了各种外围接口。

  • 1路USB 2.0 高速接口
  • 1路eMMC4.41/SD3.0/SDIO3.0 主机接口, 单数据速率高达50MHz
  • 3路UART接口,支持流控和波特率可配置,最高6Mbps
  • 2路 SPI主模式接口,支持串行LCD,速率最高50MHz
  • 2路I2C主模式接口,速率最高1.4M bps
  • 4通道I2S或8通道TDM接口
  • 4路I2S或者 8路 TDM 接口
  • 1路SPDIF 接口 (包含发送和接收)
  • 4个PWM
  • 40个带有独立中断的GPIO(有些和外设共用相同的pin脚)
  • 3路10 bit GPADC

3.1、GPIO

HaaS1000共有P0~P4共5组,每组8个,共40个GPIO,每根GPIO都可以通过PUNMAX自由配置,每个GPIO包含6个可选function。具体可选功能列表如下所示:

绝大多数IO都进行了分配,可供外部扩展直接使用的只有直接有6个;

 

功能模块

原理图网络名

管脚名称

GPIO MAPPING

Function 

Function 1

Function 2

OLED

SPI1_DIO

Y11

SPI1_DIO

pwm3

SPI0_CS1

SPI1_CLK

V11

SPI1_CLK

pwm1

SPI0_CS2

SPI1_DI0

W10

SPI1_DI0

pwm2

SPI0_DI1

OLED_RST

U10

SPI1_CS0

pwm0

SPI0_DI2

AP3216C_INT

T5

GPIO_P4_7

WF_UART_RTS

 

I2C_SCL1

F11

GPIO_P0_2

I2S0_WS

I2C_M1_SCL

I2C_SDA1

E12

GPIO_P0_3

I2S0_SCK

I2C_M1_SDA

SPI0_CS0

B9

GPIO_P0_6

SDMMC_DATA5

SPI0_CS0

SD

SDMMC0_D2

F7

GPIO_P1_0

SDMMC_DATA2

 

SDMMC0_D3

E6

GPIO_P1_1

SDMMC_DATA3

 

SDMMC0_CMD

M12

GPIO_P1_2

SDMMC_CMD

 

SDMMC0_CLK

N12

GPIO_P1_3

SDMMC_CLK

I2S_MCLK

SDMMC0_D0

D9

GPIO_P1_4

SDMMC_DATA0

 

SDMMC0_D1

C7

GPIO_P1_5

SDMMC_DATA1

 

SDMMC0_DET_L

Y6

GPIO_P3_1

SPI1_CS2

 

蜂鸣器

PWM0

N10

GPIO_P2_6

pwm0

SPI1_DI1

LED

LED3

AA5

GPIO_P4_2

I2S0_DI1

 

LED4

AA4

GPIO_P4_3

I2S0_DI0

 

LED5

R4

GPIO_P4_4

WF_UART_RX

 

KEY

KEY1

M13

GPIO_P2_7

pwm1

SPI1_CS1

KEY2

D7

GPIO_P2_4

pwm2

CLK_REQ_OUT

KEY3

E8

GPIO_P2_5

pwm3

CLK_REQ_IN

KEY4

W6

GPIO_P3_2

SPI1_CS3

 

MPU6050

MPU6050_INT

Y9

GPIO_P4_1

I2S0_DI2

UART2_RTS

 

QMC5883L_INT

T4

GPIO_P4_6

WF_UART_CTS

 

 

AP3216C_INT

T5

GPIO_P4_7

WF_UART_RTS

 

 

BMI160_INT1

W8

GPIO_P4_0

I2S0_DI3

UART2_CTS

 

BMI160_INT2

V7

GPIO_P3_3

SPI1_DI3

 

UART串口
FT232RQ

UART_RX

U12

GPIO_P1_6

UART0_RXD

I2C_M0_SCL

UART_TX

V13

GPIO_P1_7

UART0_TXD

I2C_M0_SDA

扩展接口

I2C_SCL1

F11

GPIO_P0_2

I2S0_WS

I2C_M1_SCL

I2C_SDA1

E12

GPIO_P0_3

I2S0_SCK

I2C_M1_SDA

UART2_RXD

D11

GPIO_P2_2

I2C_M1_SCL

UART2_RXD

UART2_TXD

C12

GPIO_P2_3

I2C_M1_SDA

UART2_TXD

SPI0_DI0

B10

GPIO_P0_4

SDMMC_DATA7

SPI0_DI0

SPI0_CLK

E10

GPIO_P0_5

SDMMC_DATA6

SPI0_CLK

SPI0_CS0

B9

GPIO_P0_6

SDMMC_DATA5

SPI0_CS0

SPI0_DIO

C10

GPIO_P0_7

SDMMC_DATA4

SPI0_DIO

SWDIO

C8

GPIO_P0_0

I2S0_SDI

UART2_RXD

SWCLK

F9

GPIO_P0_1

I2S0_SDO

UART2_TXD

 

3.2、KEY

HaaS EDU k1板载了四个可编程按键,分别是K1,k2, K3,K4。

四个按键对应的GPIO分别是:

按键名称

对应的GPIO映射

GPIO模式

K1

GPIO_P2_7

输入模式

K2

GPIO_P2_4

输入模式

K3

GPIO_P2_5

输入模式

K4

GPIO_P3_2

输入模式

 

3.3、LED

HaaS EDU k1板载了三个可编程led,分别是L1,L2,L3,分别为红、绿、蓝三个单色灯。

对应的GPIO分别是:

LED名称

对应的GPIO映射

GPIO模式

L1

GPIO_P4_4

输出模式

L2

GPIO_P4_3

输出模式

L3

GPIO_P4_2

输出模式

 

3.4、Watchdog

看门狗用到的是外置的,芯片用到的是ADM706S

图 2 ADM706S引脚图

默认的超时周期为1.6s, WDI管脚有电平转换就会重置定时器(喂狗成功,否则就会重启主MCU)。

 

3.5、ADC

HaaS EDK K1的ADC有3路,分别是GPADC0,GPADC1,GPADC2。

引脚

引脚编号

说明

GPADC0

M4

ADC输入引脚0

GPADC1

F5

ADC输入引脚1

GPADC2

G6

ADC输入引脚2

其中两路已经分配,GADC0用于测量模拟麦克风音量,如下图:

图 3 GADC0连接示意图

GADC1用于检测电池电压,如下图:

图 4 GADC1连接示意图

GADC2外接备用,如下图:

图 5 GADC2连接示意图

三路ADC 均为7通道 10bit。精度为1/1024。

 

3.6、PWM

HaaS1000芯片内内置了4个PWM管脚,分别是:

引脚名

复用GPIO

描述

PWM0

P2_6

PWM0管脚

PWM1

P2_7

未使用

PWM2

P2_4

未使用

PWM3

P2_5

未使用

其中只有PWM0配成了PWM模式,其他均作为普通GPIO,如下图所示:

                             图 6 PWM0接口示意图

 

3.7、SPI

HaaS EDU k1 包含了两路主模式SPI接口,支持串行LCD,速率最高50MHz。

其中一路SPI1接到了OLED屏幕上,另一路SPI0接到扩展口备用。

原理图如下:

SPI1 接口示意图    

               SPI0 接口示意图

 

3.8、I2C

HaaS100包含2路I2C主模式接口,速率最高1.4M bps,但是HaaS EDU k1 只接出来1路I2C1,遇板子上的I2C器件相连,具体请参考个原理图,为了方便扩展,并且30pin扩展口也已经引出来。

从地址占用:

I2C器件

从地址

说明

MPU6050 

0X69

6轴陀螺仪加速度传感器

QMC5883L

0X0d

磁力计

SPL06

0X76

气压传感器

Si7006

0x40

温湿度传感器

AP3216C

0X1e

光线接近传感器

注:如果通过扩展口接入新的I2C器件是,请注意I2C从地址不要冲突。

 

3.9、SD

HaaS EDU k1 包含了一个SD卡接口,位于设备正面左侧。最大支持64GB,依托于芯片的eMMC4.41/SD3.0/SDIO3.0 主机接口, 单数据速率高达可50MHz。

 

3.10、timer

系统定时器分为两种,一种是硬件定时器,一种是软件定时器。

本产品只提供软件定时器供开发者使用,每个软件定时器都保存着自己的到期时间即时间超时处理函数。软件定时器管理模块会需要扫描所有的软件定时器设定,每个timer到期之后呼叫其预设的时间超时处理函数。

 

3.11、中断

程序运行过程中,系统外部、系统内部或者现行程序本身若出现紧急事件,CPU暂停当前程序的运行,自动转入预先设定好的的中断服务程序,处理完后,再返回原来的程序继续运行,这整个过程称为中断。

HaaS EDU K1系统中用到的中断很多,比如UART的接收中断、GPIO输入中断、DMA传输中断等等。

 

3.12、WIFI

HaaS EDU K1的Haas1000芯片自带的WIFI功能,支持2.4G/5G,WIFI天线巧妙的隐藏在壳体内部。

Wi-Fi支持如下特性:

  • Wi-Fi® IEEE 802.11 a/b/g/n
  • 支持 2.4GHz Wi-Fi
  • 支持 20MHz, 40MHz 带宽模式
  • 支持Wi-Fi 和Bluetooth 共存

3.13、OLED

HaaS EDU K1 自带了一块1.3寸132*64的OLED屏幕,黑底白字。芯片采用SH1106,使用SPI驱动。

 

开发者技术支持

如需更多技术支持,可加入钉钉开发者群,或者关注微信公众号

更多技术与解决方案介绍,请访问阿里云AIoT首页https://iot.aliyun.com/

 

猜你喜欢

转载自blog.csdn.net/HaaSTech/article/details/114305581