Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
rt-smart
risc-v_RISCV
RT-SMART又支持了一个热门的RISC-V芯片(自己挖坑自己埋系列)
发布于 2023-06-30 20:55:37 浏览:1740
订阅该版
[tocm] 6月6号,本人在论坛挖了一个坑,寻找大牛移植rt-smart到milk-v duo[https://club.rt-thread.org/ask/article/380845ada41b0661.html](https://club.rt-thread.org/ask/article/380845ada41b0661.html) 自从帖子发出后,获得了群友的积极反馈,加群的加群,买板子的板子。群里面已经有 30 多位 risc-v 爱好者加入(没有灌输的技术群)。 本着给大家开个头的(自己挖坑自己埋),还是我来把 milk-v duo 开发板(芯片 cv1800b) 基础 bs p来做出来了。当然 cb1800b已经正式合并入 rt-thread 主仓库,大家可以尝鲜体验。当然目前只跑通了 rt-smart,可以支持 msh 功能,其他功能还需要有兴趣的小伙伴一起加入来完善。(如果你觉得基础 bsp 太垃圾了不屑于玩,可以再等等) 仓库地址:[https://github.com/RT-Thread/rt-thread/tree/master/bsp/cv1800b](https://github.com/RT-Thread/rt-thread/tree/master/bsp/cv1800b) 下面简单介绍一下cv1800b 这个bsp的基础情况(bsp里面的readme复制过来的)。 ## 概述 CV180ZB/CV1800B/CV1801B 是面向民用消费监控 IP 摄像机、居家智能等多项产品领域而推出的高性能、低功耗芯片,集成了 H.264/H.265 视频压缩编码器和 ISP;支持数字寛动态、 3D 降噪、除雾、镜头畸变校正等多种图像增强和矫正算法,为客户提供专业级的视频图像质量。 1. 处理器内核 - 主处理器 RISCV C906 @ 1.0Ghz - 32KB I-cache, 64KB D-Cache - 集成矢量(Vector)及浮点运算单元 (FPU) . - 协处理器 RISCV C906 @ 700Mhz - 集成浮点运算单元 (FPU) 2. 存储器接口 - 内建 DRAM : DDR2 16bitx1, 最高速率达 1333Mbps , 容量512Mbit (64MB) - 支持SPI NOR flash 接口 (1.8V / 3.0V) - 支持 1, 2, 4 线模式 - 最大支持 256MByte - 支持 SPI Nand flash 接口 (1.8V / 3.0V) - 支持 1KB/2KB/4KB page (对应的最大容量 16GB/32GB/64GB) - 使用器件本身内建的 ECC 模块 3. 外设 - Up to 26 GPIO pins on the MilkV-Duo 40-pin header provide access to internal peripherals such as SDIO, I2C, PWM, SPI, J-TAG, and UART - Up to 3x I2C - Up to 5x UART - Up to 1x SDIO1 - Up to 1x SPI - Up to 2x ADC - Up to 7x PWM - Up to 1x RUN - Up to 1x JTAG - 集成 MAC PHY 支持 10/100Mbps 全双工或半双工模式 - 一个 USB Host / device 接口 ## Toolchain 下载 下载 `riscv64-unknown-linux-musl-gcc` 的工具链: [https://github.com/RT-Thread/toolchains-ci/releases/download/v1.7/riscv64-linux-musleabi_for_x86_64-pc-linux-gnu_latest.tar.bz2](https://github.com/RT-Thread/toolchains-ci/releases/download/v1.7/riscv64-linux-musleabi_for_x86_64-pc-linux-gnu_latest.tar.bz2) > 注: 当前 bsp 只支持 Linux 编译 正确解压后,在`rtconfig.py`中将 `riscv64-unknown-linux-musl-gcc` 工具链的本地路径加入 `EXEC_PATH` 或通过 `RTT_EXEC_PATH` 环境变量指定路径。 ```shell $ export RTT_EXEC_PATH=/opt/riscv64-linux-musleabi_for_x86_64-pc-linux-gnu/bin ``` ## 编译 1. 依赖安装 ```shell $ sudo apt install -y device-tree-compiler ``` 2. Linux平台下,可以先执行: ```shell $ scons --menuconfig ``` 它会自动下载env相关脚本到~/.env目录,然后执行 ```shell $ source ~/.env/env.sh $ pkgs --update ``` 更新完软件包后,执行 `scons -j10` 或 `scons -j10 --verbose` 来编译这个板级支持包。或者通过 `scons --exec-path="GCC工具链路径"` 命令,在指定工具链位置的同时直接编译。编译正确无误,会产生rtthread.elf文件。 编译完成后脚本自动调用 `./mksdimg.sh` 脚本进行打包,并生成 `boot.sd`, 该文件即为 SD 卡启动的 kernel 文件。 ## 运行 1. 将 SD 卡分为 2 个分区,第 1 个分区用于存放 bin 文件,第 2 个分区用于作为数据存储分区,分区格式为 `FAT32`。 2. 将根目录下的 `fip.bin` 和 `boot.sd` 复制 SD 卡第一个分区中。后续更新固件只需要复制 `boot.sd` 文件即可。 其中: - fip.bin:fsbl、 opensbi 和 uboot 打包后的 bin 文件 - boot.sd:kernel 打包后的 bin 文件 更新完 `boot.sd` 后, 重新上电可以看到串口的输出信息: ```shell U-Boot 2021.10 (Jun 26 2023 - 14:09:06 +0800)cvitek_cv180x DRAM: 63.3 MiB gd->relocaddr=0x82435000. offset=0x2235000 MMC: cv-sd@4310000: 0 Loading Environment from
... OK In: serial Out: serial Err: serial Net: Warning: ethernet@4070000 (eth0) using random MAC address - 62:80:19:6c:d4:64 eth0: ethernet@4070000 Hit any key to stop autoboot: 0 Boot from SD ... switch to partitions #0, OK mmc0 is current device 132692 bytes read in 12 ms (10.5 MiB/s) ## Loading kernel from FIT Image at 81400000 ... Using 'config-cv1800b_milkv_duo_sd' configuration Trying 'kernel-1' kernel subimage Verifying Hash Integrity ... crc32+ OK ## Loading fdt from FIT Image at 81400000 ... Using 'config-cv1800b_milkv_duo_sd' configuration Trying 'fdt-cv1800b_milkv_duo_sd' fdt subimage Verifying Hash Integrity ... sha256+ OK Booting using the fdt blob at 0x8141b590 Uncompressing Kernel Image Decompressing 296768 bytes used 42ms Loading Device Tree to 0000000081be5000, end 0000000081becb60 ... OK Starting kernel ... heap: [0x802766b0 - 0x812766b0] \ | / - RT - Thread Smart Operating System / | \ 5.0.1 build Jun 28 2023 23:44:36 2006 - 2022 Copyright by RT-Thread team Hello RT-Smart! msh /> ``` ## 驱动支持列表 | 驱动 | 支持情况 | 备注 | | :--- | :------- | :---------------- | | UART | 支持 | 默认波特率115200 | ## 支持开发板 - milk-v duo: [https://milkv.io/duo](https://milkv.io/duo) ![screenshot_milk-v-duo.png](https://oss-club.rt-thread.org/uploads/20230630/2976440e40d7dc8b19c44284dd765442.png.webp) ## 依然是广告 对 RISC-V、对 milk-v duo rtsmart、rt-thread以及 双核适配,运行有兴趣的小伙伴,可以扫码加入群聊,群里面有大佬出没。 当然也会提供移植适配指导。 ![screenshot_二维码.jpg](https://oss-club.rt-thread.org/uploads/20230630/e7591e2a61ddccbb0d1444a5f7663f9f.jpg.webp) 或者加我微信 `flyingcys` 拉你进群
2
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
燕十三
这家伙很懒,什么也没写!
文章
12
回答
15
被采纳
0
关注TA
发私信
相关文章
1
studio能否支持risc-v的工程,包括调试。
2
移植rt-nano至risc-v时,无法在main函数创建用户线程
3
risc-v移植rtthread,程序莫名跳转到异常Exception
4
GD32VF103出现to free a bad data block:错误
5
rtt os riscv Store address misaligned异常
6
仅实现机器模式的芯片是否可以移植RT-THREAD系统
7
nano版本移植finsh(基于risc-v)
8
C++在多核下cout打印引起崩溃
9
RT-SMART求助
10
RT-Thread在RISC-V架构的芯片上有成熟的市场项目吗?
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
WIZnet_W5500
UART
ota在线升级
PWM
cubemx
freemodbus
flash
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
Debug
编译报错
msh
SFUD
rt_mq_消息队列_msg_queue
keil_MDK
ulog
MicroPython
C++_cpp
本月问答贡献
a1012112796
20
个答案
3
次被采纳
张世争
11
个答案
3
次被采纳
踩姑娘的小蘑菇
7
个答案
3
次被采纳
rv666
9
个答案
2
次被采纳
用户名由3_15位
13
个答案
1
次被采纳
本月文章贡献
程序员阿伟
9
篇文章
2
次点赞
hhart
3
篇文章
4
次点赞
RTT_逍遥
1
篇文章
6
次点赞
大龄码农
1
篇文章
5
次点赞
ThinkCode
1
篇文章
1
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部