Stránka 1 z 1

Tranzistor test

Napsal: 22 kvě 2015, 22:38
od paycz
Ahoj chtěl jsem si udělat tranzistor tester který měl zjistit kde je emitor, baze, colector. Začal jsem programovat tak že jsem si určil vždy bázi což znamená že jsou 3 rozložení tranzistorů (CBE,ECB,BCE). poté jsem zadal že tyto zapojení bude opakovat dokuď se na bázi nebude napětí. a pokuď se tak stane led diody ukáží o jakou možnost se jedná ale pokuď déle nebude na bazi napětí můžeme určit že tranzistor je proraženy. Začal jsem testovat zapojení nejdříve to vypadalo dobrě ale když v zapojení prohodím colector a emitor ukazuje uplně něco jiného než más zkoušel jsem hledat chybu ale nepochodil jsem děkuji všem za rady :)

P.S omlouvám se za případné pravopisné chyby psal jsem to na mobilu :D

Kód: Vybrat vše

LIST P=16C76
   INCLUDE<P16C76.INC>
   __CONFIG  _WDT_OFF
#DEFINE TR1 PORTB,1
#DEFINE TR2 PORTB,2
#DEFINE TR3 PORTB,3
#DEFINE OUT1  PORTB,4
#DEFINE OUT2  PORTB,5
#DEFINE OUT3  PORTB,6
#DEFINE RESET    PORTA,0

    org   00h      
    GOTO   START
START
BSF      STATUS,RP0
      MOVLW   B'00000001'
      MOVWF   TRISA
      BCF      STATUS,RP0
      BSF      STATUS,RP0
      MOVLW   B'00000000'
      MOVWF   TRISB
      BCF      STATUS,RP0
       
        BCF TR1
        BCF TR2
        BCF TR3
        BCF OUT1
        BCF OUT2
        BCF OUT3
        GOTO TEST1
TEST1
    BSF TR1
    BSF TR2
    NOP
    BTFSC TR3
    GOTO TESTING1
    GOTO TEST2
TESTING1
    BSF OUT1
    BTFSS RESET
    GOTO $-1
    BTFSC RESET
    GOTO $-1
    GOTO START

TEST2
    BCF TR1
    BCF TR2
    BSF TR2
    BSF TR3
    NOP
    BTFSC TR1
    GOTO TESTING2
    GOTO TEST3
TESTING2
    BSF OUT2
    BTFSS RESET
    GOTO $-1
    BTFSC RESET
    GOTO $-1
    GOTO START

TEST3
    BCF TR2
    BCF TR3
    BSF TR1
    BSF TR3
    NOP
    BTFSC TR2
    GOTO TESTING3
    GOTO TEST1
TESTING3
    BSF OUT3
    BTFSS RESET
    GOTO $-1
    BTFSC RESET
    GOTO $-1
    GOTO START
END

Napsal: 23 kvě 2015, 09:15
od monterjirka
Kdo se má hledat s chybou v programu, kde není jediný komentář?
Ani zapojení nevidím...
Poznat co je C a E - to se přes odpor na bázi přivede potenciál z C a pokud se tranzistor neotevřel, není to C, ale E. (ale ani to nemusí být vždy pravda :( )

A proč "vymýšlet vymyšlené", když i tady je celé vlákno o zkušebním zařízení, které nejen identifikuje vývody, ale i pozná jestli je připojen tranzistor nebo něco jiného?

Napsal: 23 kvě 2015, 09:16
od Jirka525
Jestli jsem to správně pochopil, tak tohle by měl být takový ten blbovzdorný tester, kam strčíš tranzistor, nestaráš se o to, jak jsi ho tam strčil a po skončení testu se ti rozsvítí kontrolky C,B,E, NPN nebo PNP.
Docela by mě Greedy zajímalo, jak by sis představoval takovýto tester čistě analogově. Jsem přesvědčený, že bys stejně skončil u nějakého MCU, nebo by tam bylo pár TTLek.

Napsal: 23 kvě 2015, 11:07
od paycz
Jirka525 píše:Jestli jsem to správně pochopil, tak tohle by měl být takový ten blbovzdorný tester, kam strčíš tranzistor, nestaráš se o to, jak jsi ho tam strčil a po skončení testu se ti rozsvítí kontrolky C,B,E, NPN nebo PNP.
Docela by mě Greedy zajímalo, jak by sis představoval takovýto tester čistě analogově. Jsem přesvědčený, že bys stejně skončil u nějakého MCU, nebo by tam bylo pár TTLek.
ano je to blbozdorný testr ale potřebuji nějaky script ktery ochrání aby se spustil jen správný ukazatel

Napsal: 23 kvě 2015, 16:37
od paycz
PS. možná mě trolí simulator neznáte nějaký dobrý ??

Napsal: 23 kvě 2015, 19:09
od Jeejda_teda_puvodne

Napsal: 23 kvě 2015, 21:35
od Jirka525
No jak už tady psal Monterjirka, když neznáme HW, těžko se asi bude hledat chyba v SW.
Já bych na tohle šel asi přes nějaký sekvenční automat.
V 1. kroku bych pouštěl postupně do jednotlivých vývodů malý proud cca 1 mA a hledal otevřené PN přechody.
Výsledek: nenajdeš žádný - vadný tranzistor, najdeš jeden obrácená polarita NPN<->PNP, najdeš 2 - identifikuješ bázi
Ve 2. kroku bych na potencionální C-E dal nějaké měkké napětí a určil C,E
No a jestli jsi fajnšmekr tak ve 3. kroku můžeš změřit třeba parametr h21

Napsal: 23 kvě 2015, 22:18
od paycz
trochu jsem upravil nápad který bude používat EBC,BCE. Bohužel simulátor i když neni tranzistor připojený emitorem náhodně spína diody proto bych byl rád kdyby mí někdo řekl jestli by to mohlo fungovat i v praxy dík všem


Program:

Kód: Vybrat vše

LIST P=16C76
INCLUDE<P16C76.INC>
;VÝSTUPI
#DEFINE TR1 PORTB,1 ;napětí na E,B
#DEFINE TR2 PORTB,2 ;napětí na B,E
#DEFINE   LED1 PORTB,4 ;indikátor typu tranzistoru
#DEFINE   LED2 PORTB,5 ;indikátor typu tranzistoru
;VSTUPI
#DEFINE A1  PORTA,0 ;výstup z Emitoru
#DEFINE B1  PORTA,1 ;výstup z Emitoru
#DEFINE RE  PORTA,2



    BSF       STATUS,RP0
    MOVLW   B'00000111'
    MOVWF   TRISA
    BCF       STATUS,RP0
    BSF       STATUS,RP0
    MOVLW   B'00000000'
    MOVWF   TRISB
    BCF       STATUS,RP0
   

START   
;TESTOVÁNÍ VSTUP?/VÝSTUP? TRANZISTORU
    GOTO TEST1
TEST1
    BSF   TR1
    BTFSS A1
    NOP
    NOP
    BTFSS A1
    GOTO TEST2
    GOTO ANL1
   
ANL1
    BCF TR1
    BSF LED1
    BTFSS RE
    GOTO $-1
    BCF LED1
    GOTO START
   
TEST2
    BSF   TR2
    BTFSS B1
    NOP
    NOP
    BTFSS B1
    GOTO START
    GOTO ANL2

ANL2
    BCF TR2
    BSF LED2
    BTFSS RE
    GOTO $-1
    BCF LED2
    GOTO START
    END

Napsal: 24 kvě 2015, 09:21
od Jeejda_teda_puvodne

Napsal: 24 kvě 2015, 09:54
od paycz
Takže uvedu to na pravou před týdnem jsem se učil programovat a nenapadlo mě nic jiného jen tento tester nemám s ním speciální záměr jen ho chci sestrojit otestovat a vytahat z kontaktního pole a vrhnout se na další projekty :D

Napsal: 24 kvě 2015, 10:56
od zedisdet
Jeejda: Jses na nej moc tvrdej. Ja mu rozumim , bere to jako pokusnou aplikaci. Jen si holt ten napad na tuhle aplikaci pro zacatecnika nebyl uplne idelani. Chtelo to neco jako , ja nevim, bezici svetlo , binarni hodiny , stopky nebo el. kostku. Proste vizaulni veci, kdy je jasne videt kazda zmena programu, navic takove aplikace jsou tisickrat omlete vsude mozne na webu.