117 lines
4.4 KiB
Markdown
117 lines
4.4 KiB
Markdown
# K210最小系统板(Max bit)说明
|
||
|
||
## OV2640 menuconfig 配置:
|
||
|
||
More Driver-------->ov2640 driver (勾选) 保存即可
|
||
|
||
|
||
|
||
## RW007 menuconfig 配置:
|
||
|
||
More Driver-------->rw007:SPI WIFI rw007 driver
|
||
|
||
example driver port (not use example driver, porting by myself)
|
||
|
||
(20000000) SPI MAX Hz
|
||
|
||
Board Drivers Config
|
||
|
||
Enable SPI1
|
||
|
||
(27) spi1 clk pin number
|
||
|
||
(28) spi1 d0 pin number
|
||
|
||
(26) spi1 d1 pin number
|
||
|
||
SPI1 Enable SS1(spi11 dev)-------->(8) spi1 ss1 pin number
|
||
|
||
(spi11) the SPIDEV rw007 driver on
|
||
|
||
(7) rw007 int pin for rw007
|
||
|
||
(6) rw007 rst pin for rw007
|
||
|
||
**SPI1 Enable SS1(spi11 dev)表示SPI1总线片选编号1 ,此时挂载在总线上设备名是spi11,所以 the SPIDEV rw007 driver on参数也要填写(spi11)**
|
||
|
||
## SD卡配置:
|
||
|
||
Board Drivers Config-------->Enable SDCARD (spi1(ss0)) (勾选)保存即可 SPI1 Enable SS0(spi10 dev)-------->(29) spi1 ss1 pin number 会默认配置
|
||
|
||
**SD卡和RW007共用一条spi硬件总线 ,其中片选设备sd卡为SPI1 Enable SS0(spi10 dev),RW007片选设备为SPI1 Enable SS1(spi11 dev)**
|
||
|
||
|
||
|
||
|
||
|
||
**上述引脚根据电路实际而定,另外涉及到相关的Lwip wifi framwork等已经默认配置并匹配**
|
||
|
||
## 以下为引脚硬件的连接表
|
||
|
||
## RW007(SPI1 ) Kendryte Sipeed MAX bit io
|
||
|
||
| 引脚 | 作用 | 引脚序号 | RW007板子 |
|
||
| ------------------ | --------- | -------- | --------- |
|
||
| io 27(印丝标注SCK) | SPI1_SCK | | SCK |
|
||
| io 26(印丝标注SO) | SPI1_MISO | | MISO |
|
||
| io 28(印丝标注SI) | SPI1_MOSI | | MOSI |
|
||
| io 8 | CS/BOOT1 | | CS |
|
||
| io 7 | INT/BUSY | | D9 |
|
||
| io 6 | RESET | | D8 |
|
||
|
||
|
||
|
||
|
||
|
||
## SD卡Kendryte Sipeed MAX bit io
|
||
|
||
| 引脚 | 作用 | 引脚序号 | RW007板子 |
|
||
| ------------------ | --------- | -------- | --------- |
|
||
| io 27(印丝标注SCK) | SPI1_SCK | | SCK |
|
||
| io 26(印丝标注SO) | SPI1_MISO | | MISO |
|
||
| io 28(印丝标注SI) | SPI1_MOSI | | MOSI |
|
||
| io 29 | CS/BOOT1 | | CS |
|
||
|
||
|
||
|
||
**注意:BSP_SPI1_D0_PIN 10 d0也就是MOSI ,sd卡可直接利用Max bit板载,无需重新接线。SD卡和Rw007设备共用一条SPI1总线**
|
||
|
||
|
||
|
||
|
||
|
||
## 编译说明
|
||
|
||
编译K210,需要有RT-Thread的代码,因为K210的sdk是以软件包方式,所以需要在bsp/k210下做软件包更新。Windows下推进使用[env工具][1],然后在console下进入bsp/k210目录中,运行:
|
||
|
||
cd bsp/k210
|
||
pkgs --update
|
||
|
||
如果在Linux平台下,可以先执行
|
||
|
||
scons --menuconfig
|
||
|
||
它会自动下载env相关脚本到~/.env目录,然后执行
|
||
|
||
source ~/.env/env.sh
|
||
|
||
cd bsp/k210
|
||
pkgs --update
|
||
|
||
下载risc-v的工具链,[下载地址](https://github.com/xpack-dev-tools/riscv-none-embed-gcc-xpack/releases)
|
||
|
||
更新完软件包后,在`rtconfig.py`中将risc-v工具链的本地路径加入文档。
|
||
注:
|
||
|
||
1. 工具链建议使用上方提供的,`kendryte的官方工具链`会报浮点类型不兼容的错误,`risc-v工具链8.2.0之前的版本`会出现头文件不兼容的问题。
|
||
2. 网上传需要开启C++ 17,认为k210的神经网络编译器nncase多数语法由C++ 17,故需要开启C++ 17。个人认为没有必要,nncase是在PC端独立使用的,
|
||
作用是将神经网络模型转为kmodel格式,此格式文件为已经编译的二进制文件.
|
||
|
||
然后执行scons编译:
|
||
|
||
set RTT_EXEC_PATH=your_toolchains
|
||
scons
|
||
|
||
来编译这个板级支持包。如果编译正确无误,会产生rtthread.elf、rtthread.bin文件。其中rtthread.bin需要烧写到设备中进行运行。
|
||
注:如果初次使用编译报错,可能是使用的SDK过老,使用`menuconfig`命令,在→ RT-Thread online packages → peripheral libraries
|
||
and drivers → the kendryte-sdk package for rt-thread中将SDK改为latest版本即可。 |