hallo, ich bin blutiger PIC-Neueinsteiger und versuche mich derzeit mit einer einfachen schaltung, bei der lediglich ein transistor als schalter vom PIC angesteuert werdn soll. Das heißt ich habe mir einen wald und wiesen Transistor genommen (BC 547C) und dessen basis über einen 10k widerstand mit einem pin des PIC's (16F628) verbunden. die beiden kabel die verbunden werden sollen habe ich an c und e des transistors angeschlossen. ohne den pic in der fassung funktioniert alles wie gewollt, wenn ich jedoch den pic in die fassung stecke dann funktioniert es nicht mehr (es sei denn der pic ist komplett gelöscht). woran kann das liegen?
hallo, ich nochmal, vielleicht noch kurz was zum funktionsprinzip: der transistor soll einfach nur die aufgabe eines knopfes einer fernbedienung übernehmen, d.h. wenn der pic einen pin high setzt dann soll der transistor aufmachen und die zwei kontakte verbinden, die auch beim drücken auf den entsprechenden knopf der fernbedienung geschlossen werden würden. und dazu habe ich den pin des pic's über einen vorwiderstand mit der basis des transistors verbunden. der transistor dient also wirklich nur als schalter der bei einem high am pin des pic's schalten soll... vielleicht hab ich einen grundsätzlichen denkfehler drin? im vorraus danke für eure hilfe
Hallo, Du musst den Emitter auch mit GND vom PIC verbinden. Beachte das bei einem NPN-Transistor der Strom nur vom Colletor zum Emitter fliessen kann. Feadi
hy Feadi, emmiter ist mit gnd verbunden. wenn ich den pic aus der fassung nehmen und dann mit einem kabel 5v auf den vorwiderstand des transistors geben (was ja später mal der pic übernehmen soll), dann schaltet der transistor auch ordnungsgemäß. aber sobald ich den pic in die fassung stecke, schaltet ein transistor und scheint dann geöffnet zu bleiben
ja der zeit hab ich den pic nur initialisiert ... ermacht also noch nichts ich will erst mal erreichen dass ich den pic in die fassung stecken kann ohne das ein transistor schaltet code ist im anhang
Wenn Du also den PIC in die Fassung steckst, liegen dann am Ausgangpin auch +5V an? Kannst Du das mal mit einem Multimeter o.ä. prüfen?
nein ausgangspin liegen keine 5v an...hab ich mit einem multimeter geprüft...trotzdem macht der transistor auf sobal ich den pic einstecke
Hallo Stefan! Evtl. liegt es ja an deinem PIC Programm. Ich hab mir mal deinen Quelltext angesehen, in der ersten zeile hast du list P=16F84 diese Zeile musst du noch an deinen PIC anpassen. Das ist aber nicht das Problem, du musst auch noch festlegen wo dein Programmcode beginnt, damit der PIC weiss wo er anfangen soll das Programm abzuarbeiten, beispielsweise so: org 0x00 ;Reset Vektor goto main ;Sprung zu Hauptprogramm org 0x04 ;Interrupt Vektor .....(Interrupt Service Routine) org 0x05 ;Hauptprogramm main: ....... (Programmcode) Dann musst du noch deinen PIC Konfigurieren dazu würde ich dir die seite www.sprut.de empfehlen! Ich vermute nämlich dass dein Problem daran liegt, weil dein PIC nicht (oder nicht richtig) konfiguriert ist, und dadurch beispielsweise der Ausgang mit dem du den Transistor schalten willst nicht als "einfacher" Ausgang eingestellt ist. An welchen PIN des Portb hast du den Transistor angschlossen? Hat dieser PIN im unkonfigurierten Zustand (Oder nach einem Reset)eine andere Funktion? evtl. LowVolt Prog? Beispiel bei Porta: Um Porta.4 als ein/ausgang zu benutzen musst du in der Cofig des PIC die Reset Funktion deaktivieren, weil porta.4 Standardmäßig als Reset Pin Konfiguriert ist. Na dann viel erfolg und viel Spass beim Datenblatt lesen.... mfg. Christian
hallo christian, es handelt sich um rb3 und rb4 also pin 9 und 10 ich glaub die sind für nichts anderes vorgesehen aber ich überprüf trotzdem mal was du mir geraten hast danke
achja und die pic konfiguration mache ich im brennprogramm (interner Takt, Watchdog aus, Power up timer, brown out enabled)
Hallo, Also RB3 hat zusätzlich die CCP Funktion, die ist Standartmässig desktiviert wenn ich mich nicht irre, sollte also nix machen. Und RB4 dient als LowVolt Prog PIN du solltest Low Volt Prog in der Config deaktivieren!! sonst ist RB4 kein E/A Pin! Sind übrigens Pin 10 und 11 :-) Außerdem check mal ob die Pullups an PortB deaktiviert sind, nach einem Reset sind sie zwar aus, aber sicher ist sicher. Aber bevor du alles mögliche ausprobierst, schau erstmal dass ein µC läuft! nicht dass er gar nicht geht bzw, dein programm hängt und deswegen der Transistor ständig auf macht...
also laut dieses bildes sind es 9 und 10 (ist aber iegentlich auch egal..:-)) LV-programmierung deaktiviere ich mit der brennsoftware und was meinst du mit Pullups an portb? der µC an sich läuft ich hab vorher damit eine led zum blinken gebracht...da lief die gebrannte software ohne probleme ...ich verzweifle bald....
Ja Stimmt hab mich in Datenblatt verguckt Pin 9 und 10 passen! 10 und 11 sind es bei einem SSOP gehäuse! Der PIC hat interne PULL UP widerstände für Portb die sind aber nach einem Reset Deaktiviert. Hast du schon mal versucht in deinem Programm den Portb auf 00h zu setzen, dass du sicher sein kannst dass kein PIN aktiviert sein kann!? kannst du mal deine schaltung Posten? evtl ist da ja irgendein fehler, auch wenns ohne PIC funktioniert!
hallo christian, hier ist die schaltung...hab mal versucht sie grob aufzuzeichnen die rs232 buchse wird noch nicht gebraucht und die 2 stecker gehen dann in die fernbedienung an die kontakte der knöpfe
Eine Strichzeichnung mit 553 kByte, das wäre mit 5kB auch gegangen. Messe mal die Spannung zwischen Basis und Emitter und Collector und Emitter. Evtl. einen Widerstand ca. 10-47 KOhm zwischen B und E. Wenn die Tastatur eine Matrix ist (weiß ich nicht), dann kannst Du nicht einfach eine Leitung nach Masse schalten. Ich habe auch die internen PullUps in Verdacht. Wieviel ist denn die Spannung an den beiden Ausgängen?
ja sorry ich hab die zeichnung einfach nur eingescannt ohne dabei auf die einstellungen zu achten und hab das bild dann auch nicht weiter bearbeitet... Spannung zwischen Basis und Emitter : 0.01V (gemessen) also 0V Spannung zwischen Collector und Emitter: 0.53V Spannung zwischen Basis und Collector : 0.53V die tastatur ist eine fertige fernbedienung von deren platine ich die kontakte abgegriffen habe, die beim tastendruck geschlossen werden...vielleicht liegt es ja daran dass ich einen kontakt der tastatur auf masse schalte, aber ich muss doch den emitter des Transistors irgendwie auf masse schalten?!? die spannung an den beiden ausgängen des PIC's ist 0V (gemessen)...daher schließe ich die PullUps mal aus, oder?
stefan hab gerade deinen tipp ausprobiert: ein 10k widerstand zwischen b und e bewirkt dass die transistoren auch ohne den PIC aufmachen
wäre es denn vielleicht besser in diesem fall relais zu verwenden, die vom pic angesteuert werden und dann den kontakt herstellen? wenn ja, welche wären dafür geeignet?
hi, Hdu schonmal über einen optokoppler nachgedacht? zumindest hast du dann galvanische trennung und es kann dir rückwärts nichts in die schaltung reinfliessen. Auch wenn du unterscjiedliche Spannungen in der schaltung hast. Marc
hy marc, optokoppler wäre auch ein gute idee, reichen dem denn die 20mA vom pin des PIC's um zu schalten? wenn ja wäre es ja eine gute lösung
die beiden kabel die verbunden werden sollen habe ich an c und e des transistors angeschlossen. ____________________________ Du schaltest deine "Taste" mit dem BasisCollektorstrom. Nimm einen PNP Transistor zusätzlich und invertiere. Also E an pos vom Schalter und C an neg vom Schalter. Ansonsten poste dein Schaldbild mit Tastendaten/spannungen. MfG Manfred Glahe
hallo, ich habs endlich hinbekommen und zwar mit optokopplern...alles läuft wie gewünscht...ich danke euch für die Hilfe mfg Stefan
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.