Forum: Analoge Elektronik und Schaltungstechnik BE-Spannung Transistor


von Hasiman (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

hab hier ne Emitterschaltung, aber mir bringt die irgendwie nichts, da 
ich keine Basis-Emitter-Spannung von ca. 700mV bekomme, was mache ich 
falsch?

: Verschoben durch Moderator
von Ralf (Gast)


Lesenswert?

Gefährlich. Die 10k Potis durch 10k Festwiderstände ersetzen, sonst geht 
beim rumspielen evtl. sowohl Dein Transistor als auch Dein ARDUINO 
kaputt.

von Einer K. (Gast)


Lesenswert?

Hasiman schrieb:
> Hallo,
>
> hab hier ne Emitterschaltung, aber mir bringt die irgendwie nichts, da
> ich keine Basis-Emitter-Spannung von ca. 700mV bekomme, was mache ich
> falsch?
Du hast vergessen die Pin auf Output zu schalten.

Ralf schrieb:
> Die 10k Potis durch 10k Festwiderstände ersetzen
Dem stimme ich zu.
Alternativ: Den Basisstrom durch Angstwiderstände auf ein erträgliches 
Maß begrenzen. Bei den LEDs kannst du das ja auch...

von Uwe D. (monkye)


Lesenswert?

Was hast Du denn zwischen Pin 2 oder 3 und GND gemessen? Dazu gehört 
natürlich noch ein bissel Software. Was machst Du denn softwareseitig, 
wenn Du auf keine 0,7V Ube kommst...?

von Hasiman (Gast)


Lesenswert?

Ich habe gerade gemerkt, dass ich vom Pin nur maximal 2,5 V bekomme 
:S...
Hab den mal an 5V angeschlossen und dann erst komme ich auf meine Ube= 
0,7 V ... @.@
Muss ich dann softwareseitig etwas ändern, hmm..

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Hasiman schrieb:
> Muss ich dann softwareseitig etwas ändern, hmm..
Auf welchen Wert sind denn diese Potis eingestellt?

Warum hast du da denn überhaupt Potis drin?

von Hasiman (Gast)


Lesenswert?

Weil ich Signalverarbeitung (Fotodiode->OPV->ADC... usw.) mache und ich 
sehen will wie sich mein Signal verändert...

von Einer K. (Gast)


Lesenswert?

Hasiman schrieb:
> Muss ich dann softwareseitig etwas ändern, hmm..

Überlesen?

OK!
Dann eben nochmal:

Arduino F. schrieb:
> Hasiman schrieb:
>> Hallo,
>>
>> hab hier ne Emitterschaltung, aber mir bringt die irgendwie nichts, da
>> ich keine Basis-Emitter-Spannung von ca. 700mV bekomme, was mache ich
>> falsch?
> Du hast vergessen die Pin auf Output zu schalten.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Hasiman schrieb:
> was mache ich falsch?
Du verwendest keine Versorgungssymbole (Vcc und GND) im Schaltplan.

Arduino F. schrieb:
>> Du hast vergessen die Pin auf Output zu schalten.
Das macht der Druino doch selber, wenn man einen Pin als Ausgang 
definiert z.B. mit pinMode(ledPin, OUTPUT). Da wäre es jetzt schön, wenn 
man das Programm auch noch hätte, das dieses Verhalten an der Hardware 
hervorruft.

Beitrag #4989112 wurde von einem Moderator gelöscht.
von Hasiman (Gast)


Lesenswert?

1
 
2
int ledROT = 7;
3
4
void setup() {
5
  // put your setup code here, to run once:
6
7
  pinMode(ledROT, OUTPUT);
8
9
digitalWrite(ledROT, HIGH);
10
  delayMicroseconds(220);
11
digitalWrite(ledROT, LOW);
12
  delayMicroseconds(1780);
13
14
}
15
16
Wenn ich diesen Code benutze, habe ich null Probleme mit der Spannung.
17
18
Doch, wenn ich diesen Code benutze
19
[c]
20
/* ltc2440 <------------------------> Arduino
21
 * 11: CS to digital pin 10 (SS pin)
22
 *  7: SDI to digital pin 11 (MOSI pin) 
23
 * 12: SDO to digital pin 12 (MISO pin) 
24
 * 13: SCK to digital pin 13 (SCK pin)  
25
 * 15: BUSY to digital pin 4  
26
 * 14: f0 - ground  
27
 * 10: EXT - ground
28
 *  1: GND - ground 
29
 *  2: VCC - 5V supply  
30
 */
31
  
32
33
int i=0;
34
int LED;
35
#include <SPI.h>  // include the SPI library
36
37
// set I/O pins used in addition to clock, data in, data out
38
const byte slaveSelectPin = 10;  // digital pin 10 for /CS
39
#define DATAREADY 4
40
41
42
void setup() {
43
  // put your setup code here, to run once:
44
45
   
46
    pinMode (DATAREADY, INPUT);
47
    pinMode (slaveSelectPin, OUTPUT);
48
    digitalWrite(slaveSelectPin,HIGH);  // chip select is active low
49
50
    SPI.begin(); // initialize SPI, covering MOSI,MISO,SCK signals
51
    SPI.setBitOrder(MSBFIRST);  // data is clocked in MSB first
52
    SPI.setDataMode(SPI_MODE0);  // SCLK idle low (CPOL=0), MOSI read on rising edge (CPHI=0)
53
    SPI.setClockDivider(SPI_CLOCK_DIV2);  // system clock = 16 MHz, chip max = 1 MHz
54
55
56
57
58
pinMode(5,OUTPUT);
59
pinMode(7,OUTPUT);
60
Serial.begin(250000);
61
62
}
63
64
65
66
67
//====================================
68
//Main LOOP
69
//====================================
70
void loop() {
71
  // put your main code here, to run repeatedly:
72
double volts;
73
unsigned long in;         // incoming serial 32-bit word
74
unsigned long sum = 0; 
75
76
int s=0;
77
 
78
79
  
80
81
 
82
 if (s==0)                                           
83
    {
84
    
85
      
86
    PORTD |= _BV(LED);
87
    delay(5);
88
    digitalWrite(slaveSelectPin,LOW);
89
    digitalWrite(slaveSelectPin,HIGH);
90
    if(digitalRead(DATAREADY)==LOW)                                           
91
   {
92
     in = SpiRead();
93
        in &= 0B00011111111111111111111111111111;//0x1FFFFFFF; // force high three bits to zero
94
        in = in>>5;   // move lowest 5 bits LSB
95
        sum = in;     
96
        volts = sum *(0.0745058059);//Microvolts
97
        Serial.println(volts);       
98
        PORTD &= ~_BV(LED);
99
        
100
    if(i==1){
101
      i=0;
102
            }
103
      else i=1;
104
    }
105
    
106
    s=1;
107
        
108
    }
109
 
110
 
111
 if (s==1){          
112
        
113
    if(i==1){
114
      LED=5;    //ir
115
   digitalWrite(5, HIGH);
116
  delayMicroseconds(1000);
117
   digitalWrite(5, LOW);
118
  delayMicroseconds(25);
119
    }
120
    else LED=7;   //rot
121
    digitalWrite(7, HIGH);
122
  delayMicroseconds(1000);
123
   digitalWrite(7, LOW);
124
  delayMicroseconds(25);
125
     s=0;
126
    }
127
    
128
 
129
130
131
 
132
 
133
   }
134
 
135
    
136
// =================================================================
137
// SpiRead() -- read out 4 bytes from LTC2440 chip via SPI interface
138
// =================================================================
139
140
unsigned long SpiRead(void) {
141
142
 unsigned long result = 0;
143
 unsigned long b;
144
 
145
146
  digitalWrite(slaveSelectPin,LOW);   // take the SS pin low to select the chip
147
  
148
  b = SPI.transfer(0x28);   // B3
149
  result = b<<8;
150
  b = SPI.transfer(0);   // B2
151
  result |= b;
152
  result = result<<8;
153
  b = SPI.transfer(0);   // B1
154
  result |= b;
155
  result = result<<8;
156
  b = SPI.transfer(0);   // B0
157
  result |= b;
158
 
159
  // take the SS pin high to de-select the chip:
160
  digitalWrite(slaveSelectPin,HIGH);
161
 
162
  return(result);//}
163
}

sinkt die Spannung extrem (Spannung gemessen an der LED = 2,08V mit dem 
ersten simplen Code. Mit dem Code, der ne Verbindung zum ADC ltc2440 
hat, bekomme ich an der LED = 0,9V und die Basis-Emitter Spannung sinkt 
auf 0,3V ...(???))

Wie kann ich den Code soweit ändern, dass ich diesen Spannungsabfall 
nicht bekomme?

von Hasiman (Gast)


Lesenswert?

1
 if (s==1){          
2
        
3
    if(i==1){
4
      LED=5;    //ir
5
   digitalWrite(5, HIGH);
6
  delayMicroseconds(1000);
7
   digitalWrite(5, LOW);
8
  delayMicroseconds(25);
9
    }
10
    else LED=7;   //rot
11
    digitalWrite(7, HIGH);
12
  delayMicroseconds(1000);
13
   digitalWrite(7, LOW);
14
  delayMicroseconds(25);
15
     s=0;
16
    }

Es hat etwas mit diesem Teil zu tun...
Wenn ich den IR-Teil weglasse, bekomme ich 2,08V an der LED.
Aber brauche diesen IR-Teil, wie mache ich das ohne Spannungsabfall

von Dietrich L. (dietrichl)


Lesenswert?

Hast Du die Spannung auch mit einem Oszilloskop gemessen?

Wenn Du ein Multimeter benutzt siehst Du den Mittelwert. Und abhängig 
vom Timing, mit dem Du den Portpin ein- und ausschaltest, ergibt sich 
eine unterschiedliche Spannung (Dein Programm habe ich mir hierzu jetzt 
aber nicht genauer angeschaut).

Zum Testen mit einem Multimeter solltest Du also nicht schneller als im 
Raster von einigen Sekunden ein- und ausschalten.

von Mitlesa (Gast)


Lesenswert?

Hasiman schrieb:
> Es hat etwas mit diesem Teil zu tun...

nach dem
1
else
 möchtest du vermutlich eine "Klammer auf".

von Hasiman (Gast)


Lesenswert?

Dietrich L. schrieb:
> Hast Du die Spannung auch mit einem Oszilloskop gemessen?
>
> Wenn Du ein Multimeter benutzt siehst Du den Mittelwert. Und abhängig
> vom Timing, mit dem Du den Portpin ein- und ausschaltest, ergibt sich
> eine unterschiedliche Spannung (Dein Programm habe ich mir hierzu jetzt
> aber nicht genauer angeschaut).
>
> Zum Testen mit einem Multimeter solltest Du also nicht schneller als im
> Raster von einigen Sekunden ein- und ausschalten.

Hab leider kein Oszi zu Hand ^^

Mitlesa schrieb:
> Hasiman schrieb:
>> Es hat etwas mit diesem Teil zu tun...
>
> nach demelse  möchtest du vermutlich eine "Klammer auf".

oh danke :)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.