<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 電源與新能源 > 設計應用 > 基于小功率三極管管腳自動判斷電路設計

          基于小功率三極管管腳自動判斷電路設計

          作者: 時間:2013-05-16 來源:網(wǎng)絡 收藏

            在電子技術中,是使用極其普遍的一種元器件,三級管的參數(shù)與許多電參量的測量方案、測量結果都有十分密切的關系,因此,在電子設計中,的管腳、類型的判斷和測量非常重要。測量管腳的方法有多種,其中實驗室常用的是利用萬用表和三極管各管腳的特點進行測量,但由于三極管各個引腳間的電壓、電流關系復雜,且三極管本身體積較小,給測量帶來很大不便,而目前市場上還沒有對三極管管腳、類型自動判別的裝置。因此,設計出一款能夠自動判別三極管管腳、類型的電路顯得尤為重要。

            1 硬件電路組成原理

            根據(jù)目前常用三極管的類型及管腳排列方式,設計的自動判別電路包含中心控制單元、轉換電路、檢測放大電路和顯示電路四個部分,如圖1 所示,其中用AT89C2051 作為中心控制單元。

            2 硬件電路設計

            圖2 所示為三極管管腳類型自動判別硬件電路原理圖,該硬件電路主要包括單片機AT89C2051、CD4069、4N25、74LS06、74LS07、若干電阻和電容等元器件。

            

          基于小功率三極管管腳自動判斷電路設計

            圖2 判別電路原理圖

            首先由單片機的P3.0~P3.2 口送出三位二進制碼(高低不同的電平),分別送至三極管的1、2、3號引腳。對于不同的三極管,在單片機送出不同的編碼時,其1、2、3 號引腳上的電流方向不同,有流入和流出兩種情況,用兩只反向并聯(lián)來檢測哪個方向上有電流通過,此時三位二進制碼變成六位二進制碼。將檢測到的來自的電信號進行放大,由于此時輸出的信號并非標準的高低電平,不能直接被單片機識別,相位也不符合要求,故加一級CD4069 進行反相,然后將輸出的標準的六位二進制碼送至單片機的P1.0~P1.5 口。單片機根據(jù)從P1 口讀出的數(shù)據(jù)與單片機內部預先寫入的數(shù)據(jù)進行比較,當滿足相應的條件時從P3.3~P3.7 口輸出檢測結果,最后用發(fā)光二極管來顯示對應的三極管類型。

            3 軟件設計

            由于常用的中小功率三極管中NPN 的三極管管腳排列順序有EBC、ECB、BCE 三種(有極少數(shù)例外,可忽略不計),而PNP 的只有EBC 一種排列順序。所以,按照此規(guī)律進行軟件的編寫??傮w編程思想是在各種不同管腳排列順序的三極管三個管腳上加上不同電壓,測試其電流情況并將其轉化為二進制碼。將這些二進制碼寫入單片機,外部輸入的數(shù)據(jù)與單片機內部的二進制碼進行比較,如果讀入數(shù)據(jù)與內部事先寫入的某個數(shù)據(jù)相等,則所測的三極管就為這個數(shù)據(jù)所對應的三極管的管型和管腳,然后用對應的發(fā)光二極管點亮指示出管型、管腳。

            軟件主程序流程圖如圖3 所示。

            對應的程序為:

            ORG 0000H

            AJMP MAIN

            ORG 0030H

            MAIN: MOV A,#00H

            EBC: MOV P3,#0F8H

            MOV P3,#0F9H

            ACALL DEL1

            MOV P1,#0FFH

            MOV A,P1

            CJNE A,#0E9H,BEC

            S1: MOV P3,#0F4H

            AJMP S1

            BEC: MOV A,#00H

            MOV P3,#0F8H

            MOV P3,#0F9H

            ACALL DEL1

            MOV P1,#0FFH

            MOV A,P1

            CJNE A,#0E1H,ECB

            S2: MOV P3,#0ECH

            AJMP S2

            ECB: MOV A,#00H

            MOV P3,#0F8H

            MOV P3,#0FDH

            ACALL DEL1

            MOV P1,#0FFH

            MOV A,P1

            CJNE A,#0D9H,EBC1

            S3: MOV P3,#0DDH

            AJMP S3

            EBC1: MOV A,#00H

            MOV P3,#0F8H

            MOV P3,#0FEH

            ACALL DEL1

            MOV P1,#0FFH

            MOV A,P1

            CJNE A,#0D6H,E

            S4: MOV P3,#7BH

            AJMP S4

            E: MOV P3,#00H

            ACALL DEL1

            MOV P3,#0F8H

            ACALL DEL1

            AJMP E

            DEL1: MOV R5,#01H

            D1: MOV R6,#0FFH

            D2: MOV R7,#0FFH

            D3: DJNZ R7,D3

            DJNZ R6,D2

            DJNZ R5,D1

            RET

            END

            圖4 所示為制作的PCB 板圖,實物制作成功后,取一只三極管,將管腳按1、2、3 順序插入產(chǎn)品的測試孔中,保證接觸良好,然后按下電源鍵,系統(tǒng)自動復位后運行,由LED 指示出所測三極管對應的管型和管腳。LED 燈的順序與管腳管型是一一對應的,若左邊第一只LED 燈亮則所測三極管為NPN型,管腳排列順序為BEC;若左邊第二只LED 燈亮則所測三極管為PNP 型,管腳排列順序為EBC;若左邊第三只LED 燈亮則所測三極管為NPN 型,管腳排列順序為ECB;若左邊第四只LED 燈亮則所測三極管為NPN 型,管腳排列順序為EBC;若四只LED 燈同時閃爍則可能是被測三極管已壞或有引腳接觸不良,單片機中未寫該管型對應的程序。

            

          基于小功率三極管管腳自動判斷電路設計

            在制作實物的過程中,可以從左至右依次在LED燈的一側標明所對應的管腳和類型,也可以用不同顏色的LED 燈來顯示不同的管腳和管型。

            4 結論

            根據(jù)硬件電路和軟件設計進行電路的焊接和調試,設計所得的判別儀可以快速準確地判斷小功率三極管的管腳和類型,并由相應的指示電路顯示出判斷結果,比用萬用表測量要方便快捷很多。

            本設計由于采用單片機作為中心控制單元,故可擴展性強。比如可在本作品的基礎上增加測量三極管β 值的電路,可用數(shù)碼管顯示出β 值。另外,本設計現(xiàn)在只能測量常見中小功率的三極管,若加上驅動電路、限流電路,修改部分源程序也可測量大功率三極管。



          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();