Mündəricat:

PC Hardware Monitor: 6 addım (şəkillərlə birlikdə)
PC Hardware Monitor: 6 addım (şəkillərlə birlikdə)

Video: PC Hardware Monitor: 6 addım (şəkillərlə birlikdə)

Video: PC Hardware Monitor: 6 addım (şəkillərlə birlikdə)
Video: Как запустить безопасный режим на ноутбуке если Windows 11 не загружается 2024, Noyabr
Anonim
PC Avadanlıq Monitoru
PC Avadanlıq Monitoru
PC Avadanlıq Monitoru
PC Avadanlıq Monitoru
PC Avadanlıq Monitoru
PC Avadanlıq Monitoru

Hər kəsə salam. Bu proyektə iki səbəbdən başladım: bu yaxınlarda kompüterimdə bir su soyutma döngəsi qurdum və bu halda görmə qabiliyyətini artırmaq üçün bir şeyə ehtiyac duydum və istiliyi və digər statistikanı OSD shenaniganları doldurmadan sürətli bir şəkildə yoxlamaq istədim. ekranın küncündə. Əlbəttə ki, bunun üçün hazır həllər var, amma əksəriyyəti mənim feng shui ilə uyğun gəlmir. Beləliklə, qutuya yapışan bir kabel və pəncərələrdəki tapşırıq çubuğuna hər zaman bağlı olan bir HDMI 7 displeyi mənim vəziyyətimə qoymaq əvəzinə öz oyuncağımı düzəltmək qərarına gəldim.

Mühəndis və ya proqramçı olmadığım üçün, ancaq bir lehimləmə dəmiri olan və öz-özünə öyrədilən bir adam olduğum üçün bu, sadəcə addım-addım təlimatlı olmayacaq, problemə də diqqət yetirməyə çalışacağam Məni bu quruluşa aparan həll və araşdırma aspektləri.

DİQQƏT: BÜTÜN ƏMƏKİM YARADICI ÜMUMİ QATIQ-PAYLAŞIM 4.0 kimi paylaşılır. BÜTÜN İNTERNET ÜZRƏN BİR çox NÜMUNƏDƏN İLHAM ALDIM, BU İŞLƏRİN BİR BÖLMƏSİNİ SİZİN KİMİZDƏ TANIŞSANIZ, LÜTFƏN TƏDBİ ÜÇÜN MƏNƏ ƏLAQƏ EDİN. TƏHSÜR İSTİFADƏ EDİLMİR, HƏR YANLIĞI DÜZƏTMƏK MÜNASİBƏTLİ OLACAQ. ÇOX SAĞ OL

İKİNCİ İDDİA: İşlərim olduğu kimi paylaşılır. KODUMUZU VƏ TƏLİMATLARIMI İSTİFADƏ ETMƏDƏN ZƏRAR VERMƏYƏ MƏSULİYYƏTLİ DEYİLƏM

Təchizat

  • Arduino Nano (və ya istəsən UNO)
  • TFT Ekranı. Mənim vəziyyətimdə ILI9486 / ILI9488L uyğun 3,5 "ekrandır.
  • Senso temperaturu. Bu vəziyyətdə analoq TMP36 temperatur sensoru.
  • Kabellər, tellər, dupont konnektorlar (bu barədə daha sonra)
  • (isteğe bağlı) Test üçün çörək lövhəsi
  • (isteğe bağlı, lakin tövsiyə olunur) kiçik bir taxta

Addım 1: Texniki -iqtisadi əsaslandırma (növ)

Dediyim kimi, istəmədim və HDMI displeyi PC qutumda qaldı, buna görə də öz ixtiraçılığımla gizlədilərək internetdə oxşar fikirlər axtarmağa başladım. Və bu bir nömrəli ipucu: Google sizin dostunuzdur (yaxşı, hər hansı bir layiqli axtarış motoru …). Artıq heç bir şeyin orijinal olmadığı bir dünyada yaşayırıq, amma bu ifadəyə mənfi bir məna ilə baxmaq əvəzinə bunu öz xeyrimiz üçün istifadə edə bilərik: nə yaratmaq istəsəniz, yəqin ki, bir yerdə kimsə buna bənzər bir şey etmişdi, buna görə də Bir fikri necə həyata keçirəcəyinizi bilmirəm, çox güman ki, orada faydalı məlumatlar tapa bilərsiniz. İnternetdə axtarış edərkən iki qaydanı nəzərə almaq çox vaxt faydalıdır:

  1. hər hansı bir axtarışın 3 və ya 4 -cü səhifəsindən sonra narahat olmayın, demək olar ki, həmişə vaxt itkisidir. Əksinə
  2. axtarış şərtlərini dəyişdirin, sualı başqa bir baxımdan yenidən yazın (yəni: "arduino temperatur sensoru" -> "temperaturu arduino ilə oxu").

Əslində orada yaxşı layihələrlə doludur və etiraf edirəm ki, ilk günləri bu layihələrin çoxunu öyrənməklə keçirdim. Amma ehtiyaclarıma uyğun bir şey istədiyim üçün heç biri mənim üçün getməyə hazır deyildi.

Xüsusi bir şey etmək məcburiyyətində qaldığım üçün, proqram təminatını daha sonra istifadə etmək üçün tərk etmək qərarına gəldim, çünki proqram həmişə yaradıla və ehtiyaclara uyğunlaşdırıla bilər, digər tərəfdən də təchizat tərəfinə bağlıyam. və xüsusiyyətləri.

Arduinoya əsaslanan bir şey istədim, çünki əlimdə idi, yaxşı sənədləşdirilib və cəmiyyət çiçəklənir. Çoxlu məlumatlardan əvvəl dediyim kimi burada problem yoxdur.

Bir neçə metr uzaqdan aydın şəkildə görüləcək qədər böyük bir ekran istədim və bu mənim quruluşumun görünüşünə uyğun olacaqdı, buna hər hansı bir nokia və LCD xarakterli ekran daxil deyildi. Kiçik olduqları üçün OLED -dən də söhbət gedə bilməz. Buna görə TFT rəngli bir ekran seçdim. Sensorlu ekrana ehtiyac yoxdur, çünki kompüterin içərisində olacaq. Amazonda ~ 15 € artıq Arduino üçün hazırlanmış 3.5 birini tapdım. Kifayət qədər yaxşıdır.

İndi, hardware dəqiqləşdirildikdən sonra proqrama diqqət yetirdim.

Demək olar ki, bütün layihələr Arduino tərəfində olduqca oxşardır. Sadəcə, kodun ekran üçün və ünsiyyət protokolunun server tətbiqindən məlumat toplaması üçün uyğunlaşdırmalıyam. Kompüter tərəfində, əksər layihələr C, C ++, C#, python və əksər layihələr yalnız CLI interfeysi və ya Windows xidmətinə bənzər bir server təklif edirdi. Bunun əvəzinə bir GUI istədim. Windows-da heç vaxt C kimi bir dil istifadə etməmişəm, GUI binasını tək buraxın. Ancaq 15 il əvvəl bəzi Visual Basic öyrəndim, buna görə sınamışam və Microsoft -dan pulsuz Visual Studio versiyasını yükləmişəm.

Bir çox oxşar layihəni araşdırdıqdan sonra OpenHardwareMonitor -dan istifadə edərək bütün hardware məlumatlarını və FPS üçün RivaTuner -i əldə etmək qərarına gəldim, çünki bunlar pulsuz və kifayət qədər sənədləşdirilmişdir.

Addım 2: Avadanlıq Testi

Avadanlıq Testi
Avadanlıq Testi
Avadanlıq Testi
Avadanlıq Testi
Avadanlıq Testi
Avadanlıq Testi

Lehimləmə dəmirini işə salmadan və zaman və məkanda hər hansı bir elektron komponenti əbədi olaraq düzəltmədən əvvəl, bir test prototipi (ikinci nömrə) qurmaq yaxşı bir tətbiqdir. Xoşbəxtlikdən, artıq 1995 -ci il deyil. İndiki vaxtda hətta kiçik çörək lövhələrində də kifayət qədər mürəkkəb prototiplər düzəltmək olduqca asandır. Mənim vəziyyətimdə, TFT ekranında Arduino Uno üçün pinout düşdü, buna görə də Arduino uno üzərinə atdım və nümunə kitabxanaları ilə oynamağa başladım və iş prinsiplərini və məhdudiyyətlərini başa düşmək üçün istinad kitablarını oxudum.

Bu nöqtədə xətlərin və bitmaplərin necə çəkiləcəyini və mətn yazmağın yollarını anladım, buna görə də proqramlaşdırma ilə məşğul olmağa başladım və bütün ikincil şeyləri sonraya buraxdım, amma burada temperatur sensoru daxil edəcəyəm.

Xəttin bir nöqtəsində, ekranda boş bir yerim var idi, amma PC sensorlarından heç bir məlumat həqiqətən faydalı olmadı, buna görə də ətraf temperaturu üçün qutunun içinə bir temperatur sensoru qoymağa qərar verdim. Ekran demək olar ki, bütün Arduino sancaqlarını yeyir, xoşbəxtlikdən analog pin A5 istifadə edilmir, buna görə TMP36 bağladım. Hətta bir DHT22 sınadım, amma bu tətbiq üçün çox üstündür.

TMP36 üçün çoxlu nümunələr var, onlardan birini bir funksiyada kopyaladım. TMP35 -in 3 sancağı var, Vin 5V -ə, GND yerə, Out isə A5 pininə gedir. Vin və GND arasında 0.1uF keramika kondansatörü qoydum. Deyirlər ki, lazımdır. Yəqin ki, bu vəziyyətdə faydasızdır, amma… hətta daha yaxşı temperatur oxunması üçün Arduino analoq gərginliyini 3.3v pinə təyin etdim. Bu vəziyyətdə hələ də faydasızdır, amma…

Addım 3: Arduino Kodu

Zəhmət olmasa bu addımdakı izahı izləmək üçün daxil olan Arduino kodunu yükləyin və açın. Kodda daşqın olmadan aydın olmaq üçün kifayət qədər şərh yazmağa çalışdım.

Qətiliklə MCUFRIEND_kbv və Adafruit GFX kitabxanalarına ehtiyacınız olacaq. Hər ikisi də Arduino IDE -dən asanlıqla quraşdırıla bilər.

Proqramı aşağıdakı kimi bölmələrə bölmək olar:

  1. bütün qlobal dəyişənləri və digər lazım olanları təyin edin və elan edin
  2. ekranı işə salın, xarici istinad qurun və UI çəkin (bunların hamısı yalnız bir dəfə işləməli olduğu üçün setup () funksiyasındadır)
  3. serial bağlantısından alınan məlumatları oxuyun və array (loop () funksiyasına ayırın)
  4. xarici temperatur sensoru məlumatlarını oxumaq (readExtTemp () funksiyası)
  5. məlumatları ekranda çap edin (printData () funksiyası)
  6. döngəyə qayıt

BÖLÜM 1: Bəyannamələr və təriflər

Kodun başlanğıc hissəsində çox sayda göstərici və dizi istifadə etdim, buna görə də çox sayda təkrarlanan kod sətrini FOR dövrələri yazmaq üçün daha qısa müddətdə sıxışdıra bildim. Bəli, tənbələm. Gördüyünüz kimi bir göstərici massivi elan etdim və onu pics.h faylındakı bütün şəkillərlə doldurdum. Bu, bütün nişanları çəkmək üçün FOR döngüsünü etməyi mümkün etdi.

BÖLÜM 2: setup (), əsasən UI rəsm

Şəffaf bir fon olmadığı üçün standart şriftlə məskunlaşdım, buna görə silməyə ehtiyac olmadan köhnə bir mətnin üstünə yeni bir sətir yazmağa imkan verir. Başqa bir yazı tipindən istifadə etmək, yeni bir sətir yazmazdan əvvəl köhnə mətn üzərində qara bir kvadrat çəkmək deməkdir ki, bu da xoşagəlməz titrəmə effektinə səbəb olur.

Bir az sınaqdan sonra oxunaqlılıq və göstərilən məlumatlar arasında yaxşı bir uzlaşma əldə etdim. Ekranı iki sütuna və 5 sıraya böldüm. Sol sütun yuxarıdan aşağıya CPU adı, temperatur, yük, RAM istifadəsi və anakart istiliyi daxil olmaqla CPU və anakart məlumatları üçün gedir. GPU -ya həsr olunmuş və GPU adı, temperatur, yük, Saniyədə Çərçivə sayğacı və xarici temperatur sensoru daxildir.

Kodda gördüyünüz kimi, yükləmək çox yavaş olduğu üçün SD kartdakı şəkillərdən istifadə etməmək qərarına gəldim. Bütün nişanları PROGMEM yaddaşına daxil etmək və xüsusi drawLine () əmri ilə xətləri çəkmək qərarına gəldim. bu kiçik UI düzəlişləri üçün də faydalıdır.

İstifadəçi interfeysinə dərin bir görünüş vermək cəhdində, hər şeydən ikisini (xətlər, düzbucaqlar, şəkillər) fərqli rənglərlə və kiçik bir ofsetlə çəkdim. Təəssüf ki, ümid etdiyim nəticə deyil, amma hiylə işlədəcək.

Bu funksiyanın son sətirləri, Arduino məlumatları alana qədər TFT -də yer tutucuları çap etmək üçündür.

BÖLÜM 3: əsas döngə (), məlumatların alınması və formatlanması

Burada sehr baş verir: məlumatlar serial vasitəsilə qəbul edilir, düzgün dəyişənə təyin edilir və sonra çap olunur. Bütün bunları ən az sayda satırda əldə etmək üçün bir switch case əmri və for for cycle istifadə etdim.

Gəldiyim ünsiyyət protokolu iki hissəyə bölünür: əl sıxışdıqdan sonra ilkin icra və faktiki məlumat hissəsi.

Kompüter proqramı başlayanda avtomatik əlaqə funksiyasını həyata keçirmək üçün əl sıxma lazımdır. Bu belə gedir:

  • PC əl sıxma simini göndərir (bu halda sadəcə "*****;")
  • Arduino cavab göndərir

Asan peasy.

Məlumat hissəsi belə görünür: "i: xxx, yyy, zzz, aaa,;" mənası belədir:

"i" indeksdir, onu kodda componentSelector adlandırdım. "i" dəyərləri bunlardır:

  • i = 0 - ADLAR. Aşağıdakı dəyərlər, ekrandakı firs satırında göstərilən adlardır. Bu yalnız bir dəfə ekranda göndəriləcək və çap ediləcək, bu gündən etibarən CPU və GPU -nu dəyişdirmək olduqca çətindir …
  • i = 1 - 1. SÜTUN VERİLƏRİ - aşağıdakı dəyərlər ekranın sol yarısında yuxarıdan aşağıya doğru göstərilir. Mənim vəziyyətimdə: CPU istiliyi, CPU yükü, RAM istifadəsi, Anakart istiliyi.
  • i = 2 - 2. SÜTUN VERİLƏRİ - yuxarıda göstərildiyi kimi, ancaq ekranın sağ yarısı üçün
  • i = 3 - ƏMRİ YAZ. Bu halda xam serial simli yalnız "3:;" olacaq digər məlumatlara ehtiyac olmadığı üçün.

"xxx, yyy, zzz, aaa" faktiki dəyərlərdir. bunlar arduino tərəfindən strings olaraq oxunur və bütün formatlama PC proqramı tərəfindən aparılır. İ = 0 üçün bu dəyərlər hardware adları üçün hər biri 14 simvoldur. İ = 1 və ya 2 üçün bunların hər biri saniyədə temperatur və kadrları göstərmək üçün kifayət qədər üç xarakter olacaq. Əlbəttə ki, ":", "," və ";" Bu sahələrdə simvollar qadağandır.

":", ComponentSelector və dəyərlər arasındakı ayırıcıdır, "," dəyərlər ayırıcısı və ";" xəttin sonudur

Məlumatları alarkən Arduino, ";" yazısına qədər onu simli olaraq saxlayacaq. simvolu alınır, sonra ":" simvolunu axtaracaq və komponentSelecor dəyərini əldə etmək üçün istifadə edəcək. Bu, keçid qutusu funksiyasını yerinə yetirmək üçün düzgün proseduru seçmək üçün istifadə ediləcəkdir. AllData dizisindəki düzgün indeksi seçmək üçün də istifadə olunur.

Bundan sonra Arduino "," simvolunu axtaracaq və dəyərləri allData sırasına qoymağa davam edəcək.

ComponentSelector 0 olarsa, printName bayrağı doğru olaraq təyin ediləcək. ComponentSelector 3 olarsa, readExtTemp () və printData () funksiyaları çağırılır.

Bölmə 4: readExtTemp () funksiyası

Burada demək üçün çox şey yoxdur, A5 pinindən 32 dəfə oxuyur və temperatur dəyərini simli olaraq çıxarır. Mən üsyançıların yanındayam, buna görə də Selsidən istifadə edirəm. 100 ° C-dən yuxarı bir şey səhvdir, buna görə də ekranda "---" kimi göstəriləcək. 100 ° C -dən aşağı olan hər hansı bir şey üçün, ekranda 3 simvolu əhatə edəcək qədər boşluq olması üçün formatlaşdırılacaq. Sensoru çıxarıb yenidən taxmaq mümkündür və heç bir qəribə dəyər göstərilməyəcək.

Bölmə 5: printData () funksiyası

Həmişə olduğu kimi, ardıcıl olaraq ekranda bir şeyi çap etmək üçün istifadə etdim. Əgər bayraq printNames doğru olarsa, adları çap edəcək, bayrağı false olaraq təyin edəcək və davam edəcək.

Bölmə 6: döngəyə qayıdın

Özünü kifayət qədər izah edən, deyərdim…

pics.h faylı

Burada UI üçün bütün nişanları saxladım. Ekrana daxil olan SD kart oxuyucusundan istifadə etmək mümkündür, ancaq ağ -qara nişanlar üçün Arduinoda kifayət qədər yaddaşım qaldı.

Onları Junior Icon Editor ilə dizayn etdim, çünki pulsuzdur və kiçik nişanlar piksel çəkmək üçün olduqca yaxşıdır. SKAARHOJ onlayn vasitəsi ilə simge fayllarını-p.webp

Addım 4: Visual Basic Kodu

Visual Basic kodu
Visual Basic kodu

Budur VB kodu

DİQQƏT: Visual Studio layihəsini ilk dəfə paylaşıram. Sadəcə layihə qovluqlarını kopyaladım və sıxışdırdım. Bu işə yaramırsa, bu cür layihələri paylaşmağın daha yaxşı bir yolunu mənə bildirin. Çox sağ ol

Daha əvvəl dediyim kimi, C# və ya digər dillərdə GUI yarada bilmirəm, amma uzun müddət əvvəl Visual Basic -də bəzi təcrübələr yaşadım. Visual Studio ortamı ilə birlikdə Visual Studio Community nəşrini (əlbəttə pulsuzdur) endirdim. VB -dən sonuncu dəfə 2005 -ci ilin versiyası kimi istifadə etdiyim üçün bir çox şeyi başa düşməli idim … Amma internet hər zamanki kimi yaxşı məsləhətlərlə doludur.

Bəzi interfeys şeylərini anladıqdan sonra, yeni versiya əslində olduğundan daha asan və daha çevikdir.

Bu proqram üçün, Windows forması olan, lakin sistem tepsisi simgesindən tam idarə olunan bir şey istədim. Əslində formanı demək olar ki, yalnız ayıklama məqsədləri üçün istifadə etdim, çünki funksiyaların çıxış dəyərlərini oxumaq üçün mətn qutuları və siyahılar qoymağı və onları sınamaq üçün bəzi əmr düymələrini istifadə etməyi sevirəm.

"Son" proqram, müxtəlif idarəetmələri göstərən bir açılan menyuya və Arduino -ya göndərilən məlumatları göstərən iki siyahı qutusu olan əsas bir forma olan bir tepsidir.

Avtomatik əlaqə funksiyasını və "açılışda başla" funksiyasını tətbiq etdim. Bu barədə daha sonra.

Əsas proqram, OpenHardwareMonitor kitabxanasından və RivaTuner Paylaşılan Yaddaş kitabxanasından istifadə edərək müxtəlif nümunələrin və kod parçalarının uyğunlaşdırılmasıdır.

Proqram belə gedir:

  • OpenHardwareMonitor və RTSSSm kitabxanalarından məlumat əldə edin
  • ünsiyyət protokolu üçün bütün məlumatları hazırlayın və formatlayın
  • məlumatları Arduinoya göndərin
  • durulayın və təkrarlayın

əlbəttə ki, hardware adları başlanğıcda oxunur və yalnız bir dəfə göndərilir.

FPS sayğacı yalnız uyğun bir tətbiq istifadə edildikdə aktivləşir (məsələn, oyun, 3D modelləşdirmə proqramı və s.), Əks halda "---" yer tutucusu ekrana göndəriləcək.

İnternetdə yaxşı sənədləşdirildiyi və koddan bir qədər başa düşüldüyü üçün kitabxanalardan dəyərlərin necə alınacağını izah etməyə dərindən getməyəcəyəm. OpenHardwareMonitor (bundan sonra OHMonitor, ömrü çox qısadır) kitabxanası vasitəsi ilə göstərmək üçün anakart istiliyinin əldə edilməsindəki problemlər haqqında danışmaq istəyirəm. Anakartda fu ** tonluq bir temperatur sensoru ilə təchiz edilmiş bir Asus Maximus VIII Gen MoBo var, amma OHMonitor onları Temperatur sensoru #1, #2… #n olaraq adlandırır və heç bir yerdə temperaturun yeri göstərilmir. Sensorların ən az NAMES olduğu və iki proqram arasındakı müxtəlif temperaturları müqayisə etdiyi dəhşətli Asus AI paketi proqramını qurmalı oldum. Anakartımın ümumi temperatur sensoru OHMonitor üçün #2 -dir, buna görə də MoBo materiallarının altındakı Timer1_tick alt bölməsində gördüyünüz kimi düzgün oxunuş əldə etmək üçün " #2" simli olan bir sensor adı axtarmalı oldum.

TL; DR: özünüz üçün doğru anakart temperatur sensörlərinə baxmalı olacaqsınız. Qalanları yəqin ki, getmək yaxşıdır.

Ancaq bu yalnız 1 -ci versiyadır, bu gadgetı digər kompüterimə quraşdırmağı planlaşdırıram, buna görə də sensorları seçmək üçün bir yol tətbiq edəcəyəm və bəlkə də yolda Arduino interfeysini yenidən dizayn edəcəyəm.

Avtomatik əlaqə funksiyası

Bu funksiya əslində sadədir: PC bir Arduino ilə bağlı deyilsə, hər x millisaniyə (Timer1 -ə əsaslanaraq) bu funksiya adlanır. Kompüterdəki hər COM portu ilə əlaqə qurmağa çalışır, müvəffəqiyyətli olarsa "*****;" əl sıxma simini göndərir. Cavab "R" olarsa, düzgün cihaz qoşulur və normal prosedura əməl olunur. Əks təqdirdə, növbəti COM portunu sınayır.

Gördüyünüz kimi, bu funksiyada bir çox istisnalar var. Bunun səbəbi, heç bir səhv çıxışı olmadan, tamamilə bağlanmasını və işləməsini istədim. İstisnaları idarə edərkən, xarici cihazın tamamilə yoxluğunu görməməzliyə vura bildim və hətta istədiyim zaman cihazı qısalda bilərəm.

Başlanğıcda Başlat funksiyası

Proqramın açılışda başlamasını istədim. Çox asandır, deyirsən. Uyğun qovluğa bir link qoyun deyirsən. Amma yox. OHMonitor və RTSS kitabxanalarına görə məlumat toplamaq üçün idarəçi icra səviyyəsinə ehtiyacımız var. Bu, hər dəfə bu tətbiq işə salındıqda tamamilə zəhlətökən UAC ekranı deməkdir. Heç bir şəkildə. Beləliklə, açılışda səssiz bir başlanğıc əldə etmək üçün Matthew Wai (buradakı link) tərəfindən hazırlanan ssenarini uyğunlaşdırdım. Mən yalnız bir neçə hissəyə bölünmüş Resources1 sənədindəki skripti kopyaladım, sonra cari proqramın icra edilə bilən yeri və bu kimi şeylərlə uyğunlaşdırılmış bir Windows tapşırıq faylını yaradan (və ya silən) bir alt proqram tətbiq etdim.

Sistem tepsisi nişanı

NotifyIcon və ContextMenu obyektləri sayəsində tətbiqi idarə etmək üçün asan və yağlı bir yol tətbiq edə bildim. Tepsinin simgesini sağ vurun və menyu görünür. Bu seçimlər var:

  • Açılışda başlayın: açılış funksiyasını işə salmaq və ya söndürmək üçün yoxlaya və işarəni silə bilərsiniz
  • Avtomatik əlaqə: yuxarıdakı kimidir, ancaq avtomatik əlaqə funksiyasını yerinə yetirir
  • Qoş/Bağla: əlaqəni idarə edir. Avtomatik əlaqə aktiv olduqda işləmir
  • Yeniləmə müddəti: alt menyu açılır, yeniləmə müddətini 1 ilə 10 saniyə arasında seçə bilərsiniz
  • Maksimumlaşdır: əsas pəncərəni açır. Simvolu iki dəfə vurmaqla eynidir
  • Çıxış: özünü izah edən

Proqramın tərtib edilməsi

Proqramı tərtib etmək üçün, ehtimal ki, koda daxil olmayan kitabxanalara bir istinad yükləməli və əlavə etməlisiniz.

OpenHardwareMonitor kitabxanasını burada tapa bilərsiniz. Proqramı yükləməli, zip faylını açmalı və layihə qovluğunda OpenHardwareMonitorLib. DLL faylını kopyalamalısınız.

Budur RTSSharedMemoryNET kitabxanasının bağlantısı, arxitekturanız üçün yükləməli və tərtib etməlisiniz, sonra RTSS [TL; DR] moryNET. DLL -ni layihə qovluğunuza kopyalayın.

İndi kodunuza bir istinad, təlimatları bura əlavə etməlisiniz

Eyni arxitektura üçün həm RTSS [TL; DR] moryNET, həm də PCHwMon server layihələrini tərtib etdiyinizə əmin olun.

Hazır bir quraşdırma proqramı daxil etdim, buna görə hər şeyi Visual Basic ilə məşğul olmadan qura bilərsiniz. X86 üçün tərtib edilmişdir, həm x86, həm də x64 arxitekturalarında işləyəcək. NET framework 4.7.2 -nin işləməsini tələb edir.

Hər halda, RivaTuner qurmalısınız. Burada burada müstəqil bir tətbiq olaraq tapa bilərsiniz və ya RTServeri ehtiva edən Msi Afterburner qura bilərsiniz.

Addım 5: Son Avadanlıq Tətbiqi

Tövsiyə: