你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于STM32的电脑状态显示仪经验分享

[复制链接]
攻城狮Melo 发布时间:2023-6-15 13:40
前言
重头戏,重头戏,绝对的重头戏!
! P, f$ n5 R0 J) C+ P) n2 d
本编只看封面还看不出个所以然,摸摸点击进入B站视频,整个人豁然开朗,大呼“6666~”。

' Y9 N. n! r" P2 _
1 d6 m4 {! C: L: S/ {* K! r, G+ F
工程介绍
项目使用AIDA64extreme作为上位机,采用STM32F103C8T6核心板作为控制器,基于Arduino重新编写的项目程序。
( s2 Z  @/ x7 H! @2 L0 m+ F
改进内容
1、使用AIDA64extreme作为上位机软件,可获取包含CPU、内存、GPU、电池电压、硬盘使用率等更多参数信息,可自行修改程序DIY,创造更多可能。
2、采用串口通信,通过USB口与电脑连接,无wifi网卡的台式电脑也可使用。
3、STM32F103C8T6核心板作为控制器。
  • 因每台电脑的USB口输出电压存在差异,不一定都为标准的5V输出,在使用PWM模拟DAC输出时会影响输出准确性,故没有选用基于5v单片机的Arduino NANO或是UNO作为控制器。(当然也可以外部提供给NANO、UNO稳定的参考电压,相对较为麻烦)。STM32F103C8T6核心板内置有3.3v稳压芯片,可以保证DAC输出相对精准,不受电脑USB电压影响。
    1 l) ~) J! j" T2 ]- }" H2 u
  • 由于ATmega328P单片机价格上涨,国产的Arduino NANO价格已经接近30元了,STM32F103C8T6核心板价格停留在20左右,比较经济。

    8 s$ W! p7 o' n. M& }
4、采用Arduino IDE编写程序,没有复杂的寄存器配置,程序易于修改。(其实是作者keil和cubemx用不好)
5、支持程序校准和微调电压表,提高适配性。

6 T+ F# E* F8 n3 t
器件工具
所需工具
  • 电烙铁
  • 杜板线
  • 任意的USB串口下载器,推荐CH340
  • Micro USB数据线
    6 ~, N9 F0 x* E$ x

. T% e! y2 ~/ i* H) n6 w  o
所需器件
  • STM32F103C8T6核心板一块
  • 两块91C4型号的电压表(需购买3V量程版本)

    ( U5 m5 V9 [' q- C! a

5 s, [7 [5 U) e; y" k- @ 微信图片_20230615134509.jpg % @( a, T2 a2 `1 M# Q$ ^, k  Y, d1 R

# i% `4 K; E1 K" _, d/ |
制作过程
1、搭建STM32的Arduino开发环境
注意事项:
  • 刷booloader时候需要核心板把boot0插到1的位置,boot1插到0的位置,刷写成功后需要复原到都接0的状态
  • 安装好Arduino_STM32包,并安装好驱动后,需要在Arduino开发板管理器中而外安装Arduino SAM Boards的支持

    ' c) @( B* r, b# k, M, q$ M
微信图片_20230615133938.png
! y1 L& W; s5 k+ [
7 `# G3 M' g3 s2 M3 n
  • 程序下载需按照如下选择单片机型号及串口(成功安装好驱动,并将开发板通过板载micro USB连接电脑后,可以识别到maple mini这个串口)
    0 `6 [: u! t! |1 M0 Q) s+ Y
微信图片_20230615133935.png
/ W+ F4 v6 P9 |; j
. G$ j/ @' p- i1 a7 I) N
2、程序刷入
打开工程附件中“程序”文件夹中的“CPURAMGET.ino”,按照第一点中的说明,进行程序下载。
4 N/ @2 W7 i" R
3、表盘制作
  • 可使用原作者的PHOTOSHOP文件,替换背景,制作自己喜爱的表盘
  • 没有彩色打印机的朋友,也可以使用黑白打印机进行打印(如果打印图片过淡,可以适当调整下对比度和亮度)

    6 S4 Y, l/ ~  }5 J9 d3 E' B0 w, M  }
微信图片_20230615133930.png
1 K7 Q4 w+ W2 H* ?! Q4 p/ l/ R: s5 i0 I
  • 如果没有彩色打印机又想制作彩色表盘的,推荐某宝上搜索“照片冲印”服务(8寸(6R,15.2*20.3cm)的冲印包邮价格2块多,相当经济)

    9 ?0 S$ _/ v, A8 S  m% H
' q2 R4 q; I" n3 D$ I4 k
4、表盘裁剪制作
将91C4电压表拆开,并取出原先的金属表盘,依据表盘的形状用剪刀裁剪打印好的表盘图片,将裁剪好的表盘图片使用胶水粘贴在原先金属表盘的表面,装回电压表,并调整安装位置,确保指针与0点对其,且表盘不会干涉指针运动。

0 Z. q# ~! G# e: [+ A3 |  G1 g, j
5、依据连接示意图,将STM32核心板的PA9和PA10引脚与CPU使用率显示和内存使用率显示的电压表正极相连。两块电压表的负极并联后与核心板GND连接。

, o' [: o0 E0 f2 {0 U

( p# B7 Y  ^# q6 ?; w+ A. n 微信图片_20230615133923.png ( I5 }) X; `8 j6 _' R2 W

! I/ a' k" d" n8 q3 Q! i5 L

- M- W7 V8 w6 B1 L" Q" }# i
微信图片_20230615133920.png 1 W  F4 }9 S( P! P
% j2 _# t: \) E+ }
6、下载AIDA64extreme软件进行如下设置:
(1)将STM32核心板通过MICRO USB与电脑连接,并通过Arduino IDE确认连接的串口号

/ g# U4 X3 `2 S0 ]$ ?7 w 微信图片_20230615133917.png $ g" T) e6 d, S( }9 m& k. D  b

# d' ?) m7 j6 M
(2)打开AIDA64extreme软件,打开“文件”-“设置”5 v/ _, B( k; G; c: g8 M6 s' x
(3)选择LCD,并将屏幕选择为POS
* t% ~4 u) Z- w
微信图片_20230615133914.png
5 V' \4 T* d* }
1 U  @. p" z, ^( y/ v3 L% b$ x: @
(4)点击左侧“LCD项目”,按照如下参数设置屏幕输出参数,或通过导入工程文件中提供的配置文件。
- Z8 K( p0 R. w* F3 o) t6 ^
微信图片_20230615133910.png % ]( g  U9 l' V/ q& v, k/ h

' o4 A" s( M3 I6 c
(5)观察电压表指针位置是否与电脑的内存和CPU使用率相匹配。

7 i. e9 D& a! M; G" _4 L8 D$ ? 1.png 0 d5 e1 P: ]0 z% v' ^4 Z

1 E& o, L; B# n# t% _% }$ N* o) ?
可通过程序中的“电压表量程”和“电源电压”进行微调,其中3.30v为万用表实测STM32核心板3.3v输出引脚的电压。

  y* |7 j: t; \- }* _6 }. P  Z 微信图片_20230615133900.png
8 A5 m- {( {/ x' J8 M) d, N  d

) E/ H$ q6 L' |4 c5 M; I3 b9 _2 W! N
(6)使用B站原作者的3D模型,进行3D打印外壳,或使用KT板、亚克力板自己制作外壳。

2 P% o. ?! p) E+ |# f' m+ j7 I 微信图片_20230615133856.png / k8 x! I8 B6 g. w" _+ w% P
. _2 s2 D! ?6 S, _& f$ V! [
成品效果图

6 @# i9 D4 }, y8 ~
电路设计欣赏
% H: X" [  A" e3 b/ d( {2 F
微信图片_20230615133852.png # j7 [/ p5 r+ C' Y8 V

( I" W' ?) l6 O9 A8 h. o( ~/ U
原理图
0 h2 x0 Y$ e9 j' o
转载自:开源硬件平台
如有侵权请联系删除/ c: b( r9 n" {  ?9 P& z" c/ W

7 Y/ w: P) }$ i9 n
赞 收藏 评论1 发布时间:2023-6-15 13:40

举报

1个回答
bitterheart 回答时间:2023-6-15 16:49:23

牛!

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版