日韩欧美国产极速不卡一区,国产手机视频在线观看尤物,国产亚洲欧美日韩蜜芽一区,亚洲精品国产免费,亚洲二区三区无码中文,A大片亚洲AV无码一区二区三区,日韩国语国产无码123

您好,歡迎來(lái)到維�(kù)電子市場(chǎng)�(wǎng) 登錄 | 免費(fèi)注冊(cè)

LED指示�
閱讀�15121�(shí)間:2010-09-08 09:19:30

  一般來(lái)�,每��(wǎng)�都具�1�(gè)以上的LED(Light Emitting Diode�(fā)光二極管)指示燈,用�(lái)表示�(wǎng)卡的不同工作狀�(tài),以方便我們查看網(wǎng)卡是否工作正�。典型的LED指示燈有Link/Act、Full、Power�。Link/Act表示連接活動(dòng)狀�(tài),F(xiàn)ull表示是否全雙�(Full Duplex),而Power�電源指示��

VC基于CStatic的實(shí)�(xiàn)

  在很多應(yīng)用程�,特別是工控程序�,經(jīng)常需要讀入并顯示一些開(kāi)�(guān)量,比如串口通信是否正常,電源是否打�(kāi),電�(jī)工作是否正常等等。這些�(kāi)�(guān)量的顯示用一些控件來(lái)�(shí)�(xiàn)。這些控件根據(jù)輸入的開(kāi)�(guān)量顯示不同顏色和文字用來(lái)表示打開(kāi)和關(guān)�。NI公司專門�(kāi)�(fā)了一套LabWindows控件,專門用于程序�(kāi)�(fā),當(dāng)然這是要花錢的.本文以CStatic為基類,編寫(xiě)了一�(gè)LED�,它可根�(jù)輸入的bool值顯示開(kāi)�(guān),類似于vb里的shape控件�

  NI控件

  具體�(shí)�(xiàn)�(qǐng)�(qǐng)參考CLED�,當(dāng)然這�(gè)類很�(jiǎn)�,完全可以自己實(shí)�(xiàn),當(dāng)�(shí)如過(guò)你不想自己動(dòng)手編�(xiě),那么可以發(fā)郵件向我要:[email protected].也可以直接復(fù)制文章低部的類的頭文件和cpp文件。下面是程序�(yùn)行時(shí)的截圖:

  //類頭文件

  #if!defined(AFX[_]LED[_]H[_][_]BDAD9442[_]11BB[_]4917[_]8E43[_]0E2ACC246FE3[_][_]INCLUDED[_])

  #define AFX[_]LED[_]H[_][_]BDAD9442[_]11BB[_]4917[_]8E43[_]0E2ACC246FE3[_][_]INCLUDED[_]

  #if [_]MSC[_]VER 1000

  #pragma once

  #endif//[_]MSC[_]VER 1000

  //LED.h:header file

  //

  #define CIRCLE 0

  #define SQUARE 1

  #define ELLIPSE 2

  /////////////////////////////////////////////////////////////////////////////

  //CLED window class CLED:public CStatic

  {

  //Construction public�

  CLED()�

  //Attributes public�

  //Operations public�

  COLORREF m[_]crBK,m[_]crOnFG,m[_]crOffFG�

  CBrush*m[_]brOnFG,*m[_]brOffFG�

  int m[_]iType�

  bool m[_]bOn�

  CString m[_]sOnString,m[_]sOffString�

  bool m[_]bTextOn�

  //Overrides

  //ClassWizard generated virtual function overrides

  //{{AFX[_]VIRTUAL(CLED)

  //}}AFX[_]VIRTUAL

  //Implementation public�

  int GetType()�

  bool GetTextOnOff()�

  CString GetOnText()�

  BOOL GetOnOff()�

  COLORREF GetOnFgColor()�

  CString GOffText()�

  COLORREF GetOffFgColor()�

  COLORREF GetBKColor()�

  void SetTextOnOff(bool val)�

  void SetOffText(CString str)�

  void SetOnText(CString str)�

  void SetBKColor(COLORREF C)�

  void SetOnOff(bool val)�

  void SetType(int type)�

  void SetOffFgColor(COLORREF C)�

  void SetOnFgColor(COLORREF C)�

  virtual~CLED()�

  //Generated message map functions protected�

  //{{AFX[_]MSG(CLED)

  afx[_]msg int OnCreate(LPCREATESTRUCT lpCreateStruct)�

  afx[_]msg void OnPaint()�

  afx[_]msg void OnDestroy()�

  afx[_]msg void OnSize(UINT nType,int cx,int cy)�

  //}}AFX[_]MSG DECLARE[_]MESSAGE[_]MAP()

  private�

  void DrawFigure()�

  }�

  /////////////////////////////////////////////////////////////////////////////

  //{{AFX[_]INSERT[_]LOCATION}}

  //Microsoft Visual C++will insert additional declarations immediately before the previous line.

  #endif//!defined(AFX[_]LED[_]H[_][_]BDAD9442[_]11BB[_]4917[_]8E43[_]0E2ACC246FE3[_][_]INCLUDED[_])

  /////////////////////////////////////////////////////////////////

  ///////////////類cpp文件

  //LED.cpp:implementation file

  //

  #include"stdafx.h"

  #include"colortext.h"

  #include"LED.h"

  #ifdef [_]DEBUG

  #define new DEBUG[_]NEW

  #undef THIS[_]FILE static char THIS[_]FILE=[_][_]FILE[_][_]�

  #endif

  /////////////////////////////////////////////////////////////////////////////

  //CLED CLED:CLED()

  {

  m[_]crBK=RGB(255,255,255)�

  m[_]crOnFG=RGB(0,255,0)�

  m[_]crOffFG=RGB(255,0,0)�

  m[_]iType=0�

  m[_]bOn=true�

  m[_]brOnFG=new CBrush(m[_]crOnFG)�

  m[_]brOffFG=new CBrush(m[_]crOffFG)�

  m[_]sOnString="on"�

  m[_]sOffString="off"�

  m[_]bTextOn=true�

  }

  CLED:~CLED()

  {

  delete m[_]brOffFG�

  delete m[_]brOnFG�

  }

  BEGIN[_]MESSAGE[_]MAP(CLED,CStatic)

  //{{AFX[_]MSG[_]MAP(CLED)

  ON[_]WM[_]CREATE()

  ON[_]WM[_]PAINT()

  ON[_]WM[_]DESTROY()

  ON[_]WM[_]SIZE()

  //}}AFX[_]MSG[_]MAP END[_]MESSAGE[_]MAP()

  /////////////////////////////////////////////////////////////////////////////

  //CLED message handlers int CLED:OnCreate(LPCREATESTRUCT lpCreateStruct)

  {

  if(CStatic:OnCreate(lpCreateStruct)==-1)

  return-1�

  //TODO:Add your specialized creation code here return 0�

  }

  void CLED:OnPaint()

  {

  CPaintDC dc(this)�//device context for painting

  //TODO:Add your message handler code here DrawFigure()�

  //Do not call CStatic:OnPaint()for painting messages

  }

  void CLED:OnDestroy()

  {

  CStatic:OnDestroy()�

  //TODO:Add your message handler code here

  }

  void CLED:SetOnFgColor(COLORREF C)

  {

  m[_]brOnFG-DeleteObject()�

  m[_]crOnFG=C�

  m[_]brOnFG-CreateSolidBrush(m[_]crOnFG)�

  OnPaint()�

  }

  COLORREF CLED:GetOnFgColor()

  {

  return m[_]crOnFG�

  }

  void CLED:SetOffFgColor(COLORREF C)

  {

  m[_]brOffFG-DeleteObject()�

  m[_]crOffFG=C�

  m[_]brOffFG-CreateSolidBrush(m[_]crOffFG)�

  OnPaint()�

  }

  COLORREF CLED:GetOffFgColor()

  {

  return m[_]crOffFG�

  }

  void CLED:SetType(int type)

  {

  if(type 0||type 2)

  {

  return�

  }

  m[_]iType=type�

  OnPaint()�

  }

  int CLED:GetType()

  {

  return m[_]iType�

  }

  void CLED:DrawFigure()

  {

  CClientDC pdc(this)�

  CBrush b�

  CRect r�

  GetClientRect(r)�

  b.CreateSolidBrush(m[_]crBK)�

  pdc.SelectObject(&b)�

  pdc.FillRect(r,&b)�

  pdc.SetBkMode(TRANSPARENT)�

  if(m[_]bOn==true)

  {

  CPen pen(0,0,m[_]crOnFG)�

  pdc.SelectObject(&pen)�

  pdc.SelectObject(m[_]brOnFG)�

  }

  else

  {

  CPen pen(0,0,m[_]crOffFG)�

  pdc.SelectObject(&pen)�

  pdc.SelectObject(m[_]brOffFG)�

  }

  if(m[_]iType==0)//circle

  {

  CRect r1�

  if(r.Width()r.Height())

  {

  r1.left=r.left+(r.Width()-r.Height())/2.0�

  r1.right=r.right-(r.Width()-r.Height())/2.0�

  r1.top=r.top�

  r1.bottom=r.bottom�

  }

  else

  {

  r1.left=r.left�

  r1.right=r.right�

  r1.top=r.top+(r.Height()-r.Width())/2.0�

  r1.bottom=r.bottom-(r.Height()-r.Width())/2.0�

  }

  pdc.Ellipse(r1)�

  }

  if(m[_]iType==1)//squre

  {

  pdc.Rectangle(r)�

  }

  if(m[_]iType==2)//ellipse

  {

  pdc.Ellipse(r)�

  }

  if(!m[_]bTextOn)

  return�

  if(m[_]bOn)

  pdc.TextOut(r.CenterPoint().x-m[_]sOnString.GetLength()*3.5,r.CenterPoint().y-10,m[_]sOnString,m[_]sOnString.GetLength())�

  else pdc.TextOut(r.CenterPoint().x-m[_]sOffString.GetLength()*3.5,r.CenterPoint().y-10,m[_]sOffString,m[_]sOffString.GetLength())�

  }

  void CLED:SetOnOff(bool val)

  {

  m[_]bOn=val�

  OnPaint()�

  }

  BOOL CLED:GetOnOff()

  {

  return m[_]bOn�

  }

  void CLED:OnSize(UINT nType,int cx,int cy)

  {

  CStatic:OnSize(nType,cx,cy)�

  OnPaint()�

  }

  void CLED:SetBKColor(COLORREF C)

  {

  m[_]crBK=C�

  OnPaint()�

  }

  COLORREF CLED:GetBKColor()

  {

  return m[_]crBK�

  }

  void CLED:SetOnText(CString str)

  {

  m[_]sOnString=str�

  OnPaint()�

  }

  CString CLED:GetOnText()

  {

  return m[_]sOnString�

  }

  void CLED:SetOffText(CString str)

  {

  m[_]sOffString=str�

  OnPaint()�

  }

  CString CLED:GOffText()

  {

  return m[_]sOffString�

  }

  void CLED:SetTextOnOff(bool val)

  {

  m[_]bTextOn=val�

  OnPaint()�

  }

  bool CLED:GetTextOnOff()

  {

  return m[_]bTextOn�

  }

在網(wǎng)路卡中的作用

  一般來(lái)�,每塊�(wǎng)路卡(NIC)都具�1�(gè)以上� LED (Light Emitting Diode,�(fā)光二極體)指示�,用來(lái)表示�(wǎng)卡的不同工作狀�(tài),以方便我們查看網(wǎng)卡是否工作正�。典型的LED指示燈有Link/Act、Full� Power�。Link/Act表示連接活動(dòng)狀�(tài),Full表示是否全雙�(Full Duplex),而Power是電源指示等�

       在正常情況下,在不傳送資料時(shí),�(wǎng)卡的指示燈閃爍較�,傳送資料時(shí),閃爍較快。無(wú)論是不亮,還是�(zhǎng)亮不�,都表明有故障存在。如果網(wǎng)卡的指示燈不正常,需�(guān)掉電腦更換網(wǎng)�。對(duì)于Hub的指示燈,凡是插有�(wǎng)線的�,指示燈都亮。由于是Hub,所�,指示燈的作用只能指示該埠是否連接有終端設(shè)�,不能顯示通信狀�(tài)�

  LED�(yīng)用在這類�(chǎn)品的指示燈時(shí),所選用� LED�(chǎn)� 等級(jí)普遍是比較一般的�(chǎn)�,像是Lamp型LED。而比較高階的�(wǎng)路卡�(chǎn)�,�(huì)采用SMD型LED,除了省空間外,使用的電流也�(huì)比較�

  除了手機(jī)背光以外,SMD型LED也很適合�(dān)任各種電子裝置的指示�,普遍是綠�、紅�、橘�、藍(lán)色等??�,�(jià)格上的差異日益縮小化�

在常�(jiàn)�(wǎng)�(luò)�(shè)備故障診斷中的應(yīng)�

  在常�(jiàn)�(wǎng)�(luò)�(shè)備上都有幾�(gè)指示�,用于監(jiān)控設(shè)備的狀�(tài)和運(yùn)行,這些指示燈稱之為�(fā)光二極管(LED�。充分了解這些指示燈的意義,往往能在�(wǎng)�(luò)故障診斷的過(guò)程中,簡(jiǎn)單快捷的判斷出故障原因,�(dá)到意想不到的效果�

  一、網(wǎng)�

  在網(wǎng)卡后�(cè)RJ45接口一邊有兩�(gè)指示�。它們分別為連接狀�(tài)指示燈和信號(hào)傳輸指示�,其中正常狀�(tài)下連接狀�(tài)指示燈呈綠色并且�(zhǎng)�,信�(hào)指示燈呈紅色,正常應(yīng)該不停地閃爍�

  如果連接指示�,也就是綠燈不亮,那么表示網(wǎng)卡連接到H U B或交換機(jī)之間的連接有故�。一般情況下這種故障�(fā)生多半是�(wǎng)線沒(méi)有接牢或水晶頭故障所造成�。而且故障�(diǎn)大多是在連接的兩�,例如交換機(jī)的端口處和連接�(jì)算機(jī)的網(wǎng)卡處,可以借助�(cè)線儀或者采用更換網(wǎng)線的方法�(jìn)行解�。如果不是接頭的原因造成�,則需�(duì)整�(gè)鏈路用測(cè)線儀�(jìn)行分段排除�

  如果信號(hào)指示�,也就是紅燈不亮,那么則�(shuō)明沒(méi)有信�(hào)�(jìn)行傳�,但在綠燈亮的情況下,可以肯定的是線路之間是正常�??梢圆捎锰鎿Q法換一�(tái)�(jì)算機(jī)連接到該�(wǎng)線上試試,如果所換計(jì)算機(jī)不能正常上網(wǎng),則需更換該計(jì)算機(jī)連接的交換機(jī)端口或者重啟動(dòng)交換�(jī)。如果所換計(jì)算機(jī)能正常上�(wǎng),則可以肯定有信�(hào)傳�,�(jìn)而確定是本地�(wǎng)卡的�(wèn)�??梢試L試Ping一下本�(jī)的IP地址,如果不能Ping�,可以嘗試重新插拔網(wǎng)�、安裝網(wǎng)卡驅(qū)�(dòng)�(lái)解決;如果能夠Ping通則�(shuō)明網(wǎng)卡的安裝�(méi)有太大問(wèn)�,這時(shí)需要檢查IP�(shè)置是否存在錯(cuò)誤,是否存在IP沖突的情�。另外如果使用了集成�(wǎng)卡或�(zhì)量不高的�(wǎng)卡,容易出現(xiàn)不穩(wěn)定的�(xiàn)�,即所有設(shè)置都正確,但�(wǎng)�(luò)卻不通。對(duì)此可以將�(wǎng)卡禁�,然后再重新啟用的方�,可能會(huì)解決紅燈不亮不閃的問(wèn)��

  �、光纖收�(fā)�

  光纖收發(fā)器是一種將短距離的雙絞線電信號(hào)和長(zhǎng)距離的光信號(hào)�(jìn)行互換的以太�(wǎng)傳輸�(zhuǎn)換單�,又稱為光電轉(zhuǎn)換器。光纖收�(fā)器延伸了以太�(wǎng)的連接距離,打破了雙絞線只能傳輸100 m的距離限�,因此廣泛�(yīng)用于使用�(zhǎng)距離光纖的網(wǎng)�(luò)�(huán)境中。伴隨著光纖收發(fā)器應(yīng)用的不斷增多,它也成為�(wǎng)�(luò)中一�(gè)比較重要的故障點(diǎn)。利用收�(fā)器的指示燈是否正�,可以快速的判斷出故障所在�

  1.光路LINK燈不�。首先檢查光纖鏈路是否有�(wèn)題,光纖斷裂和光纖中間環(huán)節(jié)�(guò)�,都可能引起LINK燈不�。比如中間有幾�(gè)接續(xù)包或者通過(guò)法蘭�(pán)跳接等使光纖損耗過(guò)�,超出了收�(fā)器接收范�,用光功率�(jī)�(cè)試一下就可知�。然后看收發(fā)器的兩�(gè)光纖接口與光纖的連接是否正確,A端的TX口應(yīng)與B端的RX口連接,A端的RX口應(yīng)與B端的TX連接。測(cè)試連接正確與否的方法很�(jiǎn)單,將與光纖收發(fā)器相連接的兩根光纖跳線互�,互換后,LINK燈亮�,即可證明原�(lái)的連接�(cuò)��

  2.電路LINK燈不�。首先檢查網(wǎng)線是否有�(wèn)題,是否存在�(wǎng)線不�、水晶頭故障等問(wèn)�。然后根�(jù)與收�(fā)器連接的設(shè)備選用直通線或者交叉線,一般與交換�(jī)等多地址�(wǎng)�(luò)�(shè)備連接�(shí)用交叉線,與服�(wù)器工作站等單地址�(wǎng)�(luò)�(shè)備連接�(shí)用直通線。有些收�(fā)器有兩�(gè)RJ45端口,一�(gè)直通一�(gè)交叉,有些�(cè)面有MPR和DTE兩�(gè)選擇�(kāi)�(guān),MPR表示直通連接,DTE表示交叉連接。還有一種情況是收發(fā)器與其他�(wǎng)�(luò)�(shè)�(�(wǎng)�、集線器、交換機(jī)�)的速率不匹�,比如100M的收�(fā)器接了�(gè)10M�(wǎng)卡或1 G交換�(jī)端口,因此電路LINK燈始終不�。要注意的是,有些收發(fā)器必須等光路連通后電路LINK燈才�,因此要注意看收發(fā)器使用說(shuō)明書(shū)�

  3.收�(fā)器各指示燈都亮著,但光路LINK燈和電路LINK燈閃爍過(guò)慢或閃爍明顯不對(duì)�,從而導(dǎo)致網(wǎng)�(luò)不�,一般重啟一下收�(fā)器就可恢�(fù)正常�

  �、交換機(jī)

  交換�(jī)因其品牌、類型、模塊等差異,設(shè)備上的指示燈也存在不�,但是交換機(jī)前面板上一般都存在下列幾種指示燈:電源指示燈、連接指示�、端口模式指示燈、端口狀�(tài)指示�。根�(jù)這些指示燈的異常,可以判斷出交換�(jī)很多的故障原�,并快速采取相�(yīng)解決方法�

  1.電源指示燈(POWER LED�

  POWER LED為綠燈表示電源供�(yīng)正常,熄滅表示沒(méi)有電源供�(yīng)。電源指示燈不亮?xí)r,確�(rèn)交換�(jī)的電源線連接是否正確,使用的電源插座是否完好??梢灾匦掳惭b交換�(jī)的電源線或換用另外的電源插座�

  2.連接指示� (LNK/ACT LED)

  LINK LED不亮表示�(méi)有連接,需確認(rèn)交換�(jī)與其他設(shè)備的�(shè)置是否一致,并確�(rèn)線纜連接正確。另外,交換�(jī)與其它網(wǎng)�(luò)�(shè)備之間的連接線纜為五類線,且距離超過(guò)100米,也會(huì)造成LINK LED不亮�

  3.端口模式指示燈(MODE LED�

  端口模式指示燈顯示交換機(jī)端口所處的模式。如果要選擇或修改端口模式,連續(xù)的按壓Mode按鈕直到端口模式指示燈指示在所需的模��

  端口模式?jīng)Q定如何對(duì)端口狀�(tài)指示燈�(jìn)行解�。也就是�(shuō)�(duì)�(yīng)于不同的模式,端口狀�(tài)指示燈的顏色等情況表示的是不同的含義�

  Mode 按鈕有三種狀�(tài)�

  。STAT(狀�(tài),states�

  。UTL (利用�,Utilization)

  。FDUP(全雙工,full duplex�

  如果交換�(jī)的狀�(tài)燈為閃爍的橙�,一般表明在某一�(gè)端口或者模塊有硬件故障�

  以華為S2100型交換機(jī)為例,按MODE按紐,按下后A/L和D/S的指示燈相互切換,當(dāng)用MODE按鈕切換到A/L模式�(shí),A/L燈亮,端口狀�(tài)指示燈用�(lái)指示端口的Active和Link狀�(tài),此�(shí)端口狀�(tài)指示燈為綠色,表示鏈路正常運(yùn)行。當(dāng)切換到D/S模式的時(shí)�,D/S燈亮, 此時(shí)端口狀�(tài)指示燈表示端口的雙工模式和速率情況,端口上方的黃燈就跟著亮了,表示雙工的工作方��

  4.端口狀�(tài)指示�

  端口狀�(tài)指示燈能代表多種含義,取決于端口模式指示燈的�(dāng)前��

  端口模式的缺省模式為STAT狀�(tài),此�(shí)某端口狀�(tài)指示燈若�(guān)�,表示無(wú)鏈路,即確定�(méi)有連接到端口的�(shè)�;指示燈持續(xù)綠色,表示鏈路正常運(yùn)行;指示燈閃爍綠�,表示發(fā)送或者接收數(shù)�(jù);指示燈綠色/琥珀色交替,表示是鏈路錯(cuò)�;指示燈持續(xù)琥珀色,表示是非�(zhuǎn)�(fā)狀�(tài).是阻塞狀�(tài)�

  端口模式處于不同狀�(tài)�(shí),各�(gè)廠商�(duì)于不同顏色的LED指示燈的功能定義是各不相同的,根�(jù)端口狀�(tài)指示燈判斷交換機(jī)的端口狀�(tài)之前,應(yīng)�(rèn)真閱讀相關(guān)�(chǎn)品的�(shuō)明書(shū)�

  �、路由器

  路由器相比交換機(jī)而言,主要用于較大型的局域網(wǎng)和城域網(wǎng)。但隨著局域網(wǎng)的快速發(fā)�,路由器的應(yīng)用也出現(xiàn)快速上升的趨勢(shì),各種路由器故障也隨之接踵而來(lái)�

  路由器的LED指示燈較交換�(jī)的指示燈作用更局�,因?yàn)槁酚善鞯慕^大部分故障都出現(xiàn)在軟件和�(shè)置上,而路由器的LED指示燈主要用�(lái)輔助查看�(shè)備的硬件故障。比如:電源模塊上有一�(gè)綠色的POWER狀�(tài)指示�。當(dāng)這�(gè)指示燈亮著時(shí),表示電源工作正�。接口模塊上的TX、RX指示�。RX指示燈為綠色表示端口正在接收�(shù)�(jù)�;如果為橙色,則表示正在接收流控制的�(shù)�(jù)�。TX指示燈為綠色表示端口正在�(fā)送數(shù)�(jù)�;如果為橙色,則表示正在�(fā)送流控制的數(shù)�(jù)��

  同樣,不同品牌和型號(hào)的路由器�(duì)指示燈意義的定義不盡相同,除參考經(jīng)�(yàn)之外,還要認(rèn)真閱讀�(chǎn)品說(shuō)明書(shū)�

維庫(kù)電子�,電子知�(shí),一查百��

已收錄詞�162023�(gè)