在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>Arduino電腦顯示器開源分享

Arduino電腦顯示器開源分享

2022-10-26 | zip | 0.11 MB | 次下載 | 免費

資料介紹

描述

介紹

這個項目的想法實際上是出于對樂趣和知識的需要。這個項目很容易制作并且有很多應用。例如,我們可以使用它來控制、存儲和顯示一些硬件變量。

讓我們開始吧

首先,我們需要連接我們的 LCD(我使用的是 I2C 轉換器):

?
poYBAGNX_CeAZjqcAAFwy1buGek771.png
?

當我們這樣做時,我們可以進入下一部分......

讓我們寫一些代碼...

使用地址 0x3F 設置 16x2 LCD - I2C 總線設備的地址可以通過 Arduino Playground 上可用的簡單草圖掃描找到。

#include   
#include  
LiquidCrystal_I2C lcd(0x3F,16,2); 

現在我們必須聲明一個String 變量來存儲我們的串行輸入并設置其余的東西。

String inData; 
void setup() 
{ 
   lcd.init();  
   Serial.begin(9600); 
   lcd.backlight(); 
} 

如果我們想通過字符串變量直接發送數據,這可能會出現問題,因為基于字符串大小的延遲大約為一秒。為了避免這個使用char 變量并將其添加到我們的inData .

char recieved = Serial.read(); 
inData += recieved;  

好的,一切都很好,但是當接收數據停止時?有解決辦法:

if (recieved == '*') 
       { ... }

char 的最后一個何時為 * Arduino 將知道何時繼續下一部分,現在我們必須處理我們的消息。我們需要擺脫這個* 字符,所以:

inData.remove(inData.length() - 1, 1); 

最后:

lcd.setCursor(0,0); 
lcd.print(inData);  
inData = ""; // Clear buffer 

但是......我們有第二行未使用......這是解決方案

if (recieved == '#') 
   {   
           inData.remove(inData.length() - 1, 1); 
           lcd.setCursor(0,1); 
           lcd.print(inData); 
           inData = "";  
       } 
   } 

當最后一個字符為 # 時,Arduino 將設置我們 LCD 的第二行并打印其他數據。

配置

為什么是 C#,而不是 C 或 C++C# 簡單快速(快速......我的意思是寫作)

首先,我們需要下載額外的庫以便于訪問我們的硬件變量。

打開硬件監視器

解壓后,我們有我們的庫:OpenHardwareMonitorLib.dll

創建新項目 -> Windows 窗體應用程序 -> 右鍵單擊??解決方案資源管理器中的引用 -> 瀏覽 -> OpenHardwareMonitorLib.dll 并且不要忘記檢查它。

外貌

準備我們的表格:

?
pYYBAGNX_CmAPYlnAABFtoFpWNo578.png
成分
?

?

?
pYYBAGNX_CyAF5jSAAA9NAxnW1A022.png
形式
?

現在代碼...

一些指令...

using System.IO.Ports; 
using OpenHardwareMonitor.Hardware; 

和聲明...

SerialPort port = new SerialPort();
Computer c = new Computer() 
{ 
     GPUEnabled = true, 
     CPUEnabled = true  
}; 
float value1, value2;  

c 是打開硬件監視器對象。我們必須啟用 CPU 和 GPU。在表單加載事件中輸入:

 c.Open(); 

在表單構造函數中:

public Form1()  

添加:

Init(); 

然后,在任何地方:

private void Init() 
       { 
           try 
           { 
               notifyIcon1.Visible = false; 
               port.Parity = Parity.None; 
               port.StopBits = StopBits.One; 
               port.DataBits = 8; 
               port.Handshake = Handshake.None; 
               port.RtsEnable = true;              
               string[] ports = SerialPort.GetPortNames(); 
               foreach (string port in ports) 
               { 
                   comboBox1.Items.Add(port); 
               } 
               port.BaudRate = 9600; 
           } 
           catch (Exception ex) 
           { 
               MessageBox.Show(ex.Message); 
           } 
       }  

簡單... 初始化聲明的變量,掃描打開的端口并將其添加到comboBox1

現在存儲和發送變量的主要功能:

private void Status() 
       { 
           foreach (var hardwadre in c.Hardware) 
           { 
               if (hardwadre.HardwareType == HardwareType.GpuNvidia) 
               { 
                   hardwadre.Update(); 
                   foreach (var sensor in hardwadre.Sensors) 
                       if (sensor.SensorType == SensorType.Temperature) 
                       { 
                           value1 = sensor.Value.GetValueOrDefault(); 
                       } 
               } 
               if (hardwadre.HardwareType == HardwareType.CPU) 
               { 
                   hardwadre.Update(); 
                   foreach (var sensor in hardwadre.Sensors) 
                       if (sensor.SensorType == SensorType.Temperature) 
                       { 
                           value2 = sensor.Value.GetValueOrDefault(); 
                       } 
               } 
           } 
           try 
           { 
               port.Write(value1 + "*" + value2 + "#"); 
           }catch(Exception ex) 
           { 
               timer1.Stop(); 
               MessageBox.Show(ex.Message); 
               toolStripStatusLabel1.Text = "Arduino's not responding..."; 
           } 

不要忘記為Status() 計時器滴答事件添加功能。

現在連接按鈕:

try 
          { 
               if (!port.IsOpen) 
               { 
                   port.PortName = comboBox1.Text; 
                   port.Open();  
                   timer1.Interval = Convert.ToInt32(comboBox2.Text);
                   timer1.Enabled = true;  
                   toolStripStatusLabel1.Text = "Sending data..."; 
                   label2.Text = "Connected"; 
               }      
           } 
           catch (Exception ex) 
           { 
               MessageBox.Show(ex.Message); 
           } 

我們正在檢查端口是否已經打開,如果沒有從 comboBox2 設置計時器間隔并運行所有內容!

斷開按鈕:

try 
           { 
               port.Write("DIS*"); 
               port.Close(); 
           } 
           catch (Exception ex) 
           { 
               MessageBox.Show(ex.Message); 
           }          
           label2.Text = "Disconnected"; 
           timer1.Enabled = false; 
           toolStripStatusLabel1.Text = "Connect to Arduino..."; 
           data = ""; 

將最后一個數據寫入 Arduino,表示我們完成了。

您可以添加一些功能,例如隱藏到托盤等。(下面的完整代碼)

程序必須以管理員權限運行!


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數據手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
主站蜘蛛池模板: freesex性欧美炮机喷潮 | 人操人爱 | 久久美女免费视频 | 午夜欧美日韩 | 哪里可以看免费毛片 | 日本特黄特黄刺激大片免费 | 国产经典三级 | 1024国产基地永久免费 | 亚洲综合激情六月婷婷在线观看 | 婷婷影院在线综合免费视频 | 黄色网址你懂得 | 国产裸体美女视频全黄 | 国产高清成人 | 伊人久久大香线焦在观看 | 国产精品乱码高清在线观看 | 在线aa| 亚洲综合在线观看一区www | 天天操操操操操操 | 在线欧美激情 | 最新欧美一级视频 | 天天操天天操天天操香蕉 | 午夜激情福利 | 国产激情三级 | 夜夜爽www | 精品成人毛片一区二区视 | 天天干天天爱天天射 | 国产三级 在线播放 | 色多多拼多多网站 | 激情欧美一区二区三区中文字幕 | 欧美在线精品一区二区三区 | 久久新视频| bl 高h文| 国产色婷婷精品综合在线手机播放 | 人人莫| 伊人亚洲综合网成人 | 黄色成人免费观看 | 超级毛片 | 欧美黄免在线播放 | 成年人www | 色综合色综合色综合色综合 | 国产女乱淫真高清免费视频 |