0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【新技能Get】小伙写了个Python脚本,用高性能RISC-V开发板监测B站未读消息

StarFive 2022-04-22 13:39 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

RVspace.org

本文转自B站up主Powersee,博客地址:https://powersee.github.io/。另外,RVspace.org社区开通了昉·星光VisionFive中文讨论区,欢迎大家来玩~

最近一直在折腾昉·星光VisionFive这块开发板,这是赛昉推出的可运行LinuxRISC-V单板计算机,处理器是赛昉的昉·惊鸿7100 SoC(JH7100),这是一颗RISC-V架构的处理器,工作频率1.0GHz,64位双核,内核性能对标ARM A55。

62ee1afe-bce5-11ec-82f6-dac502259ad0.jpg

写入镜像

这块板子的系统运行和树莓派一样,需要先将系统镜像写入内存卡,再插到板子上来运行。目前官方提供的只有 Fedora 这个发行版,可以在GitHub上找到下载链接:https://github.com/starfive-tech/Fedora_on_StarFive

下载完是一个特殊的压缩格式,zst,当前这种zst格式是一种压缩文件,是由ZStandard研发的,作为一种ZStandard压缩文件使用,此文件流行程度是50分(0-100满分)。

需要使用专门的工具才能解压,稍微麻烦了点。工具在这里有提供:

https://rvspace.org/en/Product/VisionFive/Technical_Documents/VisionFive_Single_Board_Computer_Quick_Start_Guide

点击RVspace.org网页左侧的Flashing Fedora OS to a Micro-SD Card可以快速达到。


6304cac4-bce5-11ec-82f6-dac502259ad0.jpg

我是在win10进行操作的,将下载好的解压工具从压缩包里解压出来,和zst文件放在一起。


631cea8c-bce5-11ec-82f6-dac502259ad0.jpg

此时在这个文件夹里的空白处,一只手按住键盘上的Shift键,另一只手按一下鼠标的右键,在此处打开powershell,就可以快速在当前文件夹打开一个命令行窗口。(此处我的 powershell 是自己升级过的,系统自带的是没有带preview的)


6330cf52-bce5-11ec-82f6-dac502259ad0.jpg

执行这条命令就可以解压了,

./zstd.exe -d Fedora-riscv64-jh7100-developer-xfce-Rawhide-20211226-214100.n.0-sda.raw\.zst -o Fedora-riscv64-jh7100-developer-xfce-Rawhide-20211226-214100.n.0-sda.raw

解压出来的文件差不多 13G,可以使用写盘工具将它写入内存卡中,例如etcher。

开机

之后将内存卡插入开发板,使用HDMI线连接显示器,通电开机,便可进入Fedora了。

默认的用户名是riscv,密码是starfive。

由于没有GPU,且本身只是双核,所以桌面体验会有一些卡顿。于是我放弃用鼠标来控制它,而是选择在电脑上通过ssh来控制它。


6343ad20-bce5-11ec-82f6-dac502259ad0.jpg

通过GPIO控制LED

通过这个网页,我们可以了解到这块板子的GPIO信息;

https://rvspace.org/en/Product/General/StarFive_40-Pin_GPIO_Header_User_Guide


6358d48e-bce5-11ec-82f6-dac502259ad0.jpg

准备一颗LED灯,一头连接34号的GND,一头连接40号的GPIO0;


636c95dc-bce5-11ec-82f6-dac502259ad0.jpg

在终端里进行如下的操作(需要 root 身份来执行);

cd /sys/class/gpio
echo 448 > export
cd gpio448
echo out > direction
echo1>value

这样便能点亮LED灯;


63815ad0-bce5-11ec-82f6-dac502259ad0.jpg

如果想熄灭它,只需执行

echo 0 > value

官方文档里的这个表格非常重要,刚才我们控制 GPIO0,操作的是 448,如果现在我们想控制 GPIO4,从表格可以查到是 452,那么只需将刚才的 448 换成452 即可让 GPIO4 输出高电平。


6395e126-bce5-11ec-82f6-dac502259ad0.jpg

Python脚本监测B站未读消息

我写了一个Python脚本,作用是监测哔哩哔哩上面是否有人给我发私信,也就是我是否有未读消息,如果有的话,则点亮LED灯。而当我看我消息后,脚本检测到目前没有未读消息了,则会将LED灯熄灭。

脚本已放在GitHub 上面,有兴趣的朋友可以参考一下。

https://github.com/powersee/bilibili_unread/blob/master/bili-for-visionfive.py

import requests
import time
import os
# 使用time模块的sleep来控制亮灯熄灯时间间隔

#使用哪一个针脚,例如448、450、452等
gpio = 452
led = '/sys/class/gpio/gpio' + str(gpio)

# 通过浏览器的 F12 获取cookie
cookie = ""

url_mes = 'https://api.vc.bilibili.com/session_svr/v1/session_svr/single_unread?unread_type=0&build=0&mobi_app=web'
headers = {'cookie': cookie}

if os.path.exists(led):
pass
else:
    os.system(f'echo {gpio} > /sys/class/gpio/export')

os.system(f'echo out > {led}/direction')
# 将引脚设置为输出端

# 获取未读消息数量
unread = requests.get(url_mes, headers=headers).json()
unfollow_unread = unread['data']['unfollow_unread']
follow_unread = unread['data']['follow_unread']
num = unfollow_unread + follow_unread
# 如果有未读消息,将未读数量打印出来
if num:
    print(num)
#GPIO.output(ioNum, GPIO.HIGH)
    os.system(f'echo 1 > {led}/value')
    print(time.asctime(time.localtime(time.time())))
# 引脚输出高电平,LED灯亮起
else:
#    print("No message.")
#GPIO.output(ioNum, GPIO.LOW)
    os.system(f'echo 0 > {led}/value')
#引脚设置为低电平,LED灯熄灭

此外,Powersee在RVspace.org和他的博客上分享了另外两篇使用心得,分别是VisionFive串口调试与编译内核RISC-V开源软件安装与编译内核,感兴趣的朋友可自行查看~

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发板
    +关注

    关注

    26

    文章

    6507

    浏览量

    121358
  • RISC
    +关注

    关注

    6

    文章

    486

    浏览量

    86919
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于8核超高性能RISC-V芯片,你想要笔记本电脑,NUC/MiniPC,还是开发板

    如题,该RISC-V芯片性能可以与4核Cortex-A76+4核Cortex-A55的8核Arm芯片媲美(例如RK3588、MTK8192),该芯片可以作为多种类型的终端产品主控芯片。作为开发者,您更愿意购买该款芯片被用于的哪种
    发表于 03-30 07:31

    探索RISC-V在机器人领域的潜力

    探索RISC-V在机器人领域的潜力 测评人:洄溯 测评时间: 2025年11月 测评对象: MUSE Pi Pro开发板(基于进迭时空K1系列高性能RISC-V CPU) 一、
    发表于 12-03 14:40

    HPM6E00EVKRevC开发板32位RISC-V架构

    HPM6E00EVKRevC是先楫半导体(HPMicro)推出的基于HPM6E00系列RISC-V双核MCU的开发板,主频高达 600 MHz,片上集成 2MB RAM,适合用于工业控制、电机驱动
    发表于 10-29 09:41

    RISC-V B扩展介绍及实现

    某个方向移位并将结果存储在目标寄存器中;后者则用于为一值生成一位掩码。 此外,B扩展还增加了一组压缩指令,可以使指令占用更少的内存空间,从而提高系统性能。这些压缩指令兼容于
    发表于 10-21 13:01

    【国庆中秋礼品 Milk-V Duo RISC-V开发板】开箱、介绍、环境搭建、工程测试

    【国庆中秋礼品 Milk-V Duo RISC-V开发板】开箱、介绍、环境搭建、工程测试 感谢电子发烧友论坛 【贺华诞 庆中秋 | 一起来为祖国母亲送祝福吧!留言有礼】 活动的支持~ 活动礼品收到啦
    发表于 10-19 13:06

    【BPI-CanMV-K230D-Zero开发板体验】开箱以及开发板简介

    RISC-V CPU,集成自主研发的第三代 KPU,内置 128MB LPDDR4 内存,提供了高性能的本地推理运算支持。Canmv K230D Zero 的设计旨在支持各种 DIY 项目、物联网设备和嵌入式
    发表于 08-25 22:49

    【Milk-V Duo S 开发板免费体验】RISC-V核心NCNN基准测试

    ncnn是腾讯优图实验室推出的一为移动端极致优化的高性能神经网络前向计算框架,是目前同样也比较罕见的为 RISC-V 架构做过适配和优化的神经网络框架。 本文是一份教程,步骤 (step
    发表于 08-24 23:46

    【Milk-V Duo S 开发板免费体验】RISC-V性能测试

    众所周知,Milk-V Duo S的SoC是异构双核,一ARM A53的核心,再加上一RISC-V的核心。两核心由一
    发表于 08-18 09:40

    知合计算:RISC-V架构创新,阿基米德系列剑指高性能计算

    在2025 RISC-V中国峰会上,知合计算处理器设计总监刘畅就高性能RISC-V处理器架构探索与实践进行了精彩分享。 在以X86和ARM为代表的处理器架构之下,RISC-V
    的头像 发表于 07-18 14:17 3103次阅读
    知合计算:<b class='flag-5'>RISC-V</b>架构创新,阿基米德系列剑指<b class='flag-5'>高性能</b>计算

    匠芯创D133CBS RISC-V KunLun Pi V1.0开发板开发资料

    开发板简介 D13x 是 ArtInChip 一款基于 RISC-V高性能、国产自主、工业级全高清显示与智能控制 MCU,配备强大的 2D 图形加速处理器、 PNG 解码、JPEG 编解码引擎
    发表于 07-15 17:27

    矽速科技正式入驻 RuyiSDK 开发者社区,共建 RISC-V 开发者生态!

    开发的开源套件,致力于为RISC-V开发者提供完整、全栈、功能强大的开发工具链,涵盖编译、调试、模拟等全流程支持,并兼容市场上主流RISC-V
    的头像 发表于 07-10 11:00 1476次阅读
    矽速科技正式入驻 RuyiSDK <b class='flag-5'>开发</b>者社区,共建 <b class='flag-5'>RISC-V</b> <b class='flag-5'>开发</b>者生态!

    智芯公司RISC-V高性能CPU芯片获得权威认可

    近日,智芯公司自主研发的RISC-V高性能CPU芯片通过工信部直属中国电子技术标准化研究院赛西实验室检测,标志着智芯公司在RISC-V高性能CPU芯片领域取得关键突破,自主研发实力获得
    的头像 发表于 06-16 17:32 1856次阅读

    搭载双核玄铁C908  RISC-V CPU,BPI-CanMV-K230D-Zero开发板试用

    K230D Zero  开发板。这款创新的开发板是由嘉楠科技与香蕉派开源社区联合设计研发,搭载了先进的勘智 K230D 芯片。 K230D 芯片拥有双核玄铁 C908  RISC-V CPU,集成自主研发
    的头像 发表于 06-05 16:49 1889次阅读
    搭载双核玄铁C908  <b class='flag-5'>RISC-V</b> CPU,BPI-CanMV-K230D-Zero<b class='flag-5'>开发板</b>试用

    【免费试用】开发板评测大赛开启!OH 、RISC-V、Rockchip顶级开发板等你试用~

    道OpenHarmony、RISC-V、Rockchip(下称RK)全面覆盖前沿技术方向,等你代码与创意点燃科技未来!——点击开发板图片立即申请————点击开发板图片立即申请———
    的头像 发表于 06-05 08:05 1263次阅读
    【免费试用】<b class='flag-5'>开发板</b>评测大赛开启!OH 、<b class='flag-5'>RISC-V</b>、Rockchip顶级<b class='flag-5'>开发板</b>等你试用~

    RISC-V开发板!微五科技CF5010RBT60开发板免费试用~ #RISC-V #开发板试用

    RISC-V
    ElecFans小喇叭
    发布于 :2025年06月03日 17:57:00