Forum: Projekte & Code Erweiterung AVR-Transistor-Tester mit Schnittstelle zum Kennlinienschreiber


von Kalle R. (laser_maus)


Lesenswert?

Vor zwei Jahren habe ich eine Schnittstelle zwischen dem 
Transistortester (TT)
und meinem Kennlinienschreiber (CurvTracer CT) beschrieben, die auf 
einer Porterweiterung (MCP23017) zum Schalten der 3x3 Matrix (von 
TP1,2,3 am TT nach E, B, C (bzw. S, G, D für Fets) ) basierte.

Mittlerweile hab ich den CT weiterentwickelt (siehe auch Funkamateur 
2/24).
Diese Version vom Februar basierte auf dem Arduino NANO, der aber  in 
Bezug auf Erweiterungen mit seinen 32k am Ende war.

Die jetzige Version benutzt den Arduino-Every, der 49k Flash hat, auf 20 
MHz
läuft, mehrere serielle Ports besitzt, ...
Ausserdem sind auch die Pins A6, A7 als digital-Pins verwendbar.

Hier konnte ich dann auch neben Bluetooth auch eine SD-Karte zur 
Speicherung der Kurven integrieren.

Aber da war dann auch der zusätzliche Speicher belegt und die 
Schnittstelle
zum TT dort nicht realisierbar.

Das führte dazu, die TT-Software zu untersuchen - Platz gab es da noch 
eine Menge.
Hab zuerst wieder an die Porterweiterung gedacht mit dem MCP23017 ?

Es müsste doch eine einfachere Lösung geben.
Ich hab mich dann auf den Port D gestürzt, der - bis auf D0/D1 (Rx/Tx)
ziemlich ungenutzt war: D2...D7, 6 freie digital-Pins, fehlen nur noch 
3.

Port B , da sind aber die für die Messung wichtigen Widerstände 
(6.8k,470k) dran.
An A4,A5 hängt das I2C Display (HD4...) , A0,A1,A2 sind mit TP1,2,3 
verbunden und A3 benötige ich, um die Eingänge A0,A1, A3 von TP1,2,3 zu 
sicherheitshalber zu trennen (3.elektr. Schalter).

Kommt also doch nur Port B infrage.
Ich habe dann D13, D11 und D9 über einen CD4052-Cmos-Schalter während 
der Verbindung zum CT vom TT getrennt.

Als Schnittstelle zum CT sind einmal die geschalteten 3 Leitungen 
TP1,2,3
herausgeführt und eine Datenleitung (am TT an Tx), auf dem ich die Info
ausgebe, um welches Bauteil es sich handelt und "natürlich" eine 
Masseverbindung.
Dabei können folgende 9 Ascii-Werte über die serielle Schnittstelle 
geschickt werden :

'1': npn Transistor
'2:' n-Mosfet (enhancement)
'3:' n-jFet
'4:' n- Diode (etwas willkürlich, hier : Kathode an TP1)
'5:' pnp Transistor
'6:' p-Mosfet
'7:' p-jFet
'8:' p-Diode (siehe 4:)
'9:' n-Depletion-Mosfet

Am Kennlinienschreiber werden die Werte interpretiert und die 
entsprechenden
Kurven ausgegeben.
Man kann hier noch entscheiden, ob man die Kurven direkt ausgibt 
(automatic.),oder ob man die Parameter (z.B. max. Collektorstrom, 
minim/maxim. Basisstrom, Schrittweite (zwischen 2 Kurven), x-Scala, 
Y-Scala etc. ) ändern will (manuell).

Neben den "normalen" Kennlinienschreiberfunktion sind noch 
Zusatzfunktionen wie bipolare Präzisionskonstantstromquelle 
(µA-Schrittweite) realisiert.

Ein kleines Video zeigt die einfache Anbindung des TransistorTesters 
(modifiz. Version V1.08A) an den Kennlinienschreiber :

2 / 3 poliges Bauteil auf TP1,2,3 stecken, Starttaste drücken ...
der TT identifiziert das Bauteil inclusive Pinbelegung, schaltet die 
Pins zum Kennlinienschreiber durch und sendet die Bauteilkennung (1...9) 
über Tx -> Rx.
Der Kennlinenschreiber empfängt die Bauteilkennung und startet dann - 
automatisch -die jeweiligen Kurven. Der Automatik-Mode kann auch - z.B. 
um die Parameter anzupassen - unterbrochen werden.
https://www.youtube.com/watch?v=DxgrrnPNGGg

: Bearbeitet durch User
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.