[分享] 【微雪 RP2040双核开发板】03.电脑资源监视器

sipower   2022-12-5 22:35 楼主

上一个帖子介绍了《微雪 RP2040双核开发板》开发环境的选择。这一篇介绍使用本开发板设计一个电脑资源监视器,可以将电脑上CPU、内存等使用情况在开发板上显示出来。

 

1、作品设计方案

本作品使用微雪RP2040双核开发板作为终端显示,在电脑上使用AIDA64软件收集电脑上的系统运行信息,该软件通过串口发送字符串信息。开发板接收到串口数据后,使用Micro Python对数据进行解析,得到CPU、内存等使用情况,最后显示到LCD屏幕上。系统框架如下图。

image-20221205223458-1.png  

图1、框架

 

2、AIDA64软件设置

AIDA64软件功能较多,本次只使用其中一个串口发送功能。具体设置过程如下图。

image-20221205223458-2.png  

图2、AIDA64设置

按照图中数字标注顺序,依次设置,为AIDA64配置一块串口副屏,注意此软件支持的串口通讯波特率为9600,在开发板中也要同样设置为9600才行。

image-20221205223458-3.png  

图3、字符串格式设置

上图为字符串格式设置,为了方便在Micro Python程序中对字符串进行解析,这里设置一个简单规则:使用&符号隔开不同项目,使用=符号隔开每个项目的键和值,这样在解析的时候,就很容易获得对应字符串。

 

3、字符串解析

在AIDA64配置中,已经设置好了字符串格式,在Micro Python程序中只需按照规则进行一步步分解、存储即可。具体代码如下图。

image-20221205223458-4.png  

图4、字符串解析

 

通过测试代码可以看到,字符串解析成功。

 

4、串口配置

微雪RP2040双核开发板把所有IO口都用背面1.27mm间距的排座引出来了。我这里选用了UART0作为通讯接口,电路里面连接GPIO0(TX)和GPIO1(RX),如下图。

image-20221205223458-5.png  

图5、串口连接引脚

我将这两个IO口连接到一块CP2102串口-USB转接小板上,测试能够通讯。连好线的电路板如下图。

image-20221205223458-6.jpeg  

图6、硬件连接

在Thonny中编写测试程序,点击运行,从下图可以看到,解析出的结果正确,可以用于后续显示。

image-20221205223458-7.png  

图7、串口收数

 

5、作品制作

在官方例程《RP2040-LCD-1.28.py》上面进行修改,插入上面测试通过的代码。原来程序显示的信息大部分我都没有去掉,只是压缩了一下,给时间显示、CPU显示、内存显示留出了空间,并改变了一下背景色,区别开了方便查看。具体代码如下图。

image-20221205223458-8.png  

图8、作品代码

最终的显示效果如下图。

image-20221205223458-9.jpeg  

图9、作品效果

 

以上,我使用Micro Python完成了电脑资源监视器这个作品的开发。需要显示的具体信息,可以在搭建好的框架下任意更改,只要AIDA64软件支持的信息,都可以显示到微雪 RP2040双核开发板上面。

总体来说,使用Micro Python设计一些小东西非常简单方便,寥寥几行代码就能实现所需要的功能,比较适合初学者使用。

下一步计划试试在这个圆形屏幕上进行画圆,画弧的设计,不知道能不能做到,加油吧!

回复评论 (15)

突然发现,咱论坛网友,python玩的溜的很多啊

点赞  2022-12-6 09:12

顶楼主一下,AIDA64输出各种复屏的协议没有吧。

点赞  2022-12-6 09:22

据说RP2040还有人搞了个开源的逻辑分析仪。

点赞  2022-12-6 12:23
引用: tagetage 发表于 2022-12-6 09:22 顶楼主一下,AIDA64输出各种复屏的协议没有吧。

自己设置,怎么方便后期编程,就怎么来,越简单越好

点赞  2022-12-7 01:04
这个设计非常好。有没有考虑用无线网络来做呀。
点赞  2022-12-7 08:44

哦,看到了。是 使用&符号隔开不同项目,使用=符号隔开每个项目的键和值。

原来是自己定义协议的格式啊。

点赞  2022-12-7 09:43
引用: nmg 发表于 2022-12-6 09:12 突然发现,咱论坛网友,python玩的溜的很多啊

点赞  2022-12-7 09:55
引用: tagetage 发表于 2022-12-7 09:43 哦,看到了。是 使用&符号隔开不同项目,使用=符号隔开每个项目的键和值。 原来是自己定义协议 ...

对,因为可以自己定制,所以可玩性很高

点赞  2022-12-7 09:56
引用: lugl4313820 发表于 2022-12-7 08:44 这个设计非常好。有没有考虑用无线网络来做呀。

主要是刚学Python,还不太会弄网络,让我先学学

点赞  2022-12-7 09:57
引用: damiaa 发表于 2022-12-6 12:23 据说RP2040还有人搞了个开源的逻辑分析仪。

在哪在哪?没看到帖子呢

点赞  2022-12-7 09:57
引用: sipower 发表于 2022-12-7 09:57 在哪在哪?没看到帖子呢

浏览器搜一下。不知道哪里看到的。 是个开源项目。

点赞 (1) 2022-12-7 11:29

这创意不错,不过这个小家伙准备挂在哪里呢?

在爱好的道路上不断前进,在生活的迷雾中播撒光引
点赞  2022-12-8 09:14
引用: sipower 发表于 2022-12-7 09:57 在哪在哪?没看到帖子呢

基于5块钱的树莓派RP2040,24通道100Msps逻辑分析仪开源项目
https://www.eeworld.com.cn/RDesigns_detail/57471

点赞 (1) 2022-12-8 11:53
引用: 秦天qintian0303 发表于 2022-12-8 09:14 这创意不错,不过这个小家伙准备挂在哪里呢?

粘到显示器logo上,哈哈

点赞  2022-12-8 17:28

完美把苹果的盖住哈哈哈

点赞  2022-12-12 16:57
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复