Inhaltsverzeichnis:
- Schritt 1: Funktionen und Anwendung
- Schritt 2: Teileliste und Konstruktion
- Schritt 3: Sondenkopfkonstruktion
- Schritt 4: Implementierungshinweise und alternative Anwendungen
Video: EZProbe, ein EZ430-basierter Logiktastkopf - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:17
Dies ist ein einfaches Logiktastkopfprojekt basierend auf dem TI EZ430 Dongle. Ich habe im September 2010 ein kostenloses Angebot für ein paar ez430s von TI genutzt. Sie sind sehr praktisch und machen Spaß beim Ausprobieren kleiner Codeschnipsel und beim Beobachten des Blinkens der LEDs. sie lagen seitdem um meinen Schreibtisch herum und ich muss mir was für sie einfallen lassen. und ich möchte verhindern, dass die Leute kommen und meinen "Memory Stick" ausleihen. Nun, dies ist kein Memory-Stick, 16-Bit-MCU mit Mehrkanal-ADCs, ausreichend 2K-Programmierspeicher und läuft bis zu 16Mhz. alles verpackt mit der Debugging-Programmierschnittstellenplatine in einem schönen USB-Gerätepaket. Mein Hauptdesignziel ist es, meine Eingriffe auf das Original ez430 zu beschränken. dadurch, dass ich es physisch nicht zu sehr ändern möchte und seine Programmier- / Debugging-Funktion für andere Target-Board-Projekte beibehalten möchte. all dies dient gleichzeitig zusätzlichen nützlichen Zwecken. dies ist wie immer ein linuxprojekt, ich hatte nach bestem wissen darauf geachtet, Vorkehrungen zu treffen, damit es unter windows gebaut werden kann. Ich habe jedoch nicht die Zeit und die Ressourcen, um alles unter Windows auszuprobieren. Die meisten meiner Elektronikprojekte werden auf sehr kleinen Steckbrettern durchgeführt und ich arbeite normalerweise auf engstem Raum (Küchentisch, halb geliehener Schreibtisch usw.). Es gibt viele Fälle, in denen ich die Logikpegel der Schaltung überprüfen muss, und ich habe ein Multimeter (Größe eines Ziegelsteins) verwendet, um die Dinge zu überprüfen. Es nervt mich immer, da meine Projekte viel kleiner sind als mein Multimeter und ich fand, dass es mir immer im Weg steht. Ich brauche eine Alternative, eine kleine Logiksonde reicht aus. der ez430 ist perfekt für diese aufgabe. Zunächst ist es bereits wie eine Sonde geformt, ich muss nur einen Nagel und einige LEDs hinzufügen. Wie ich bereits erwähnt habe, möchte ich dieses Projekt einfach und zerstörungsfrei machen. und ich habe das bereits vorhandene genutzt. Anstatt das Projekt auf einer Platine / Pref-Platine zu bauen, baue ich dies auf einer Zielplatine msp430f2012 und verwende die 14-poligen Header-Durchgangslöcher als meinen Prototyping-Bereich. Hier gehen die kleinen LEDs hin. Ich möchte keine Löcher in das Kunststoffgehäuse bohren, ich möchte nicht zu viele Drähte verlegen oder zusätzliche Kontaktpunkte hinzufügen. Alles, was ich brauche, ist ein Tastkopf-IO-Kontakt und ein Tasteneingang für die Funktionsauswahl sowie GND und VCC. der usb-anschluss sieht für diese aufgabe perfekt aus. Ich werde die Sonde über den USB mit Strom versorgen (die Programmierschaltung regelt ein Potenzial von etwa 3 V für mich) und die D + und D- USB-Anschlüsse für meine Sonde und meinen Schalter verwenden. Da das ez430 ein Slave / Client-Gerät ist, macht es bei der Initialisierung nichts außer einem Pull-up auf D + (um anzuzeigen, dass es sich um einen "Hi-Speed" -USB-Stick handelt). Ich verwende das schwebende D- als meine Sonde io und D+ als meinen taktilen Tastereingang (ich muss dafür nicht einmal einen Pull-up-Widerstand einrichten, er ist bereits vorhanden) zusätzliche Informationen finden Sie auch hier.
Schritt 1: Funktionen und Anwendung
Features * Versorgung vom Stromkreis über USB-Anschluss * 3 Betriebsarten wechselnd zwischen Logiklesen, Impulsausgang, PWM-Ausgang * langer Tastendruck (ca. 1,5 Sek.) dreht durch die 3 Betriebsarten * p1.0 original grüne LED als Modusanzeige, aus - Sonde, Ein - Ausgang, Blinken - PWMLogiksonde * Logiksonde Rot - Hi, Grün - Niedrig, Keine - Floating * Logiksonde Rot / Grün blinkt bei kontinuierlichem Puls liest > 100 Hz * 4 gelbe LEDs zeigen erkannte Frequenzen in 8 Schritten an, blinken gelb High-Range anzeigen (dh Schritt 5-8) * zeigt erkannte Pulsfrequenzen für 100 Hz+, 500 Hz+, 1 kHz+, 5 kHz+, 10 kHz+, 50 kHz+, 100 kHz+, 500 kHz+ * für nicht kontinuierliche Einzelimpuls-Bursts bleiben die roten / grünen LEDs an und danach Impulszählungen werden inkrementell auf den LEDs angezeigt, zählt bis zu 8 Impulsekontinuierlicher Impulsausgang, Frequenzeinstellung * angezeigt durch p1.0 grüne Original-LED leuchtet * 4 gelbe LEDs zeigen die Ausgangsimpulsfrequenzen in 9 Schritten an, gelbe blinkende Anzeigen zeigen einen hohen Bereich an (dh Schritt 5-8) * Pulsfrequenzen Ausgang für 100hz, 500hz, 1khz, 5khz, 10khz, 50khz, 100khz, 500khz, 1mhz * kurzer Tastendruck dreht die 9 verschiedenen Frequenzeinstellungen.kontinuierlicher Impulsausgang, PWM-Einstellung * angezeigt durch p1.0 ursprüngliche grüne LED blinkt * wie zuvor Betriebsmodus, außer dass die PWM-Werte anstelle der Frequenz angezeigt (und eingestellt werden) * 4 gelbe LEDs zeigen die Ausgangs-Pwm-Prozentsätze in 9 Schritten an, blinkende Gelbs zeigen den hohen Bereich an (dh Schritt 5-8) * PWM-Prozentsätze für 0%, 12.5%, 25%, 37.5%, 50%, 62.5%, 75%, 87.5%, 100% * Kurzer Tastendruck dreht die 9 verschiedenen PWM-Einstellungen bestehen aus zwei Teilen, in denen sie über ein Paar USB-Anschlüsse verbunden sind. das linke Seitenschema zeigt Ergänzungen zum EZ430-Dongle mit einem F2012-Targetboard. das rechte Seitenschema ist der logische Tastkopf und soll von Grund auf neu aufgebaut werden.
Schritt 2: Teileliste und Konstruktion
Teileliste * ti ez430-f2013 (Programmierteil verwenden) * ti ez430 f2012 Zielplatine * LEDs 1,2 x 0,8 mm, 4 gelb, 1 rot, 1 grün * ein Nagel, ca. 3/4 Zoll, flacher Kopf * eine taktile Taste * Kappe von 1 Gramm Sekundenkleber (Sekundenkleber selbst wird auch benötigt) * USB-Stecker (PC-Seite) * Kabelkonstruktion Ich verwende die msp430f2012-Zielplatine anstelle der f2013-Zielplatine, die nur mit dem ez430-Dongle geliefert wird, weil ich sie habe ein paar davon. Wenn Sie das ursprüngliche f2013-Zielboard verwenden möchten, müssen Sie einen sehr kleinen Teil des Codes neu schreiben, der adc verwendet, um den Floating-Zustand zu erkennen. der f2013 hat einen fortschrittlicheren 16-bit-adc anstelle der 10 bit, die ich in meiner konstruktion verwende. Sie müssen eine feine Lötspitze und einen Lötkolben (oder eine Station) mit Temperaturregelung verwenden. Ich kann mir nicht vorstellen, dass man die LEDs mit einem normalen Bügeleisen löten kann. Die Art und Weise, wie ich es gemacht habe, ist, zuerst die Header-Pads zu verzinnen und dann ein Paar feine Hochtöner zu verwenden, um die SMD-LEDs zu platzieren. Nach dem Ausrichten der roten und gelben LEDs verzinne ich ein Bein eines 1/8-Watt-Widerstands und löte diesen auf die Platine, ein Ende geht auf eine gemeinsame Masse. die grüne LED geht zuletzt. es ist sehr eng und Sie möchten nur genug Lötmittel auftragen, um die Dinge zusammenzukleben. auch Flussmittel ist ein Muss. Verwenden Sie ein Multimeter, um Ihre Gelenke zu testen. Sie müssen dann den Knopfdraht und den Sondendraht überbrücken. Ich verwende Cat5e-Abschnitte, aber alle Drähte mit hoher Dicke reichen aus. Wie im Schaltplan und im Bild gezeigt, verlaufen sie von der Zielplatine zum USB-Anschluss. Es wäre schön, wenn ich einen kleinen Stecker finden könnte, damit sie nach Belieben gelöst werden können, aber das reicht für den Moment.
Schritt 3: Sondenkopfkonstruktion
Unten sehen Sie die Bits, die ich verwendet habe, um die Sondenkopfbaugruppe zu "konstruieren" (Sekundenkleber). Meine Idee ist, es auf einen USB-Anschluss aufzubauen, damit es für Firmware-Updates abgenommen werden kann. Ich habe Sekundenkleber verwendet, um alles zusammenzusetzen. der "nagel" ist direkt auf einen taktilen knopf geklebt für sehr schnelle modusumschaltung und frequenz / pwm-einstellung. Vielleicht möchten Sie es anders machen, wenn es für Sie nicht funktioniert. Es wird etwas wackeln vom taktilen Knopfmechanismus, in einem Design habe ich eine Büroklammer verwendet, um das Wackeln zu begrenzen, und bei einem anderen Sondenkopf habe ich die Kappe vom Sekundenkleber verwendet, um die Nagelposition zu sichern. Sie können auch einen Schutzwiderstand / eine Diode hinzufügen. Der USB-Anschluss hat diese Anschlüsse, (1) 5V, (2) D-, (3) D+ und (4) Gnd, der D- wird mit dem Nagel verbunden, der D+ wird mit dem Tastknopf verbunden, der andere Ende des Tastknopfes muss mit Masse verbunden werden. Diese Probe-auf-Stecker-Strategie gibt mir viele Flexibilitäten. Mit der Stromleitung am Tastkopf können Sie die Schaltung erweitern und dieses Projekt in etwas anderes verwandeln, indem Sie einfach den "Kopf" und die Firmware ändern, z. kann ein voltmeter, ein tv-b-gone (mit Transistor und batterie am Sondenkopf) usw. sein. Ich würde als nächstes ein weißes LED-"Kopflicht" hinzufügen.
Schritt 4: Implementierungshinweise und alternative Anwendungen
Implementierungshinweise
* wdt (Watchdog-Timer) wird verwendet, um das Tasten-Timing (Entprellen und Drücken-n-Halten) bereitzustellen, auch um die Beleuchtungs-LEDs zu pulsieren. Dies ist erforderlich, da LEDs keine Begrenzungswiderstände haben und nicht ständig eingeschaltet werden können. * dco-Takt auf 12 MHz eingestellt, um 3 V-Zielschaltungen aufzunehmen. * adc wird verwendet, um zu entscheiden, ob wir an einem Floating-Pin testen, Schwellenwerte können über den Quellcode angepasst werden. * Die Frequenzbestimmung erfolgt durch Einstellen von timer_a auf Erfassung für die Flankenerkennung und Zählen des Impulses innerhalb einer Periode. * Der Ausgabemodus verwendet den kontinuierlichen Modus Timer_a, Ausgabemodus 7 (Set/Reset), sowohl Erfassungs- als auch Vergleichsregister (CCR0 und CCR1), um eine Pulsweitenmodulation zu erreichen.
Quellcode
Dies sind nur Anweisungen für Linux, meine Umgebung ist Ubuntu 10.04, andere Distributionen sollten funktionieren, solange Sie die msp403-Toolchain und mspdebug ordnungsgemäß installiert haben.
Sie können ein Verzeichnis erstellen und die folgenden Dateien darin ablegenKlicken Sie, um ezprobe.c herunterzuladen
Ich habe kein Makefile zum Kompilieren, ich verwende ein Bash-Skript, um die meisten meiner Projekte zu kompilieren.
oder Sie können Folgendes tun
msp430-gcc -Os -mmcu=msp430x2012 -o ezprobe.elf ezprobe.c msp430-objdump -DS ezprobe.elf > ezprobe.lst msp430-objdump -h ezprobe.elf msp430-size ezprobe.elf
Um die Firmware zu flashen, schließen Sie Ihren ez430-Dongle an und machen Sie
mspdebug -d /dev/ttyUSB0 uif "prog ezprobe.elf"
alternative Anwendungsmöglichkeiten
Aufgrund der Flexibilität dieses Designs kann die ezprobe leicht ihre Rolle wechseln und wird durch einen schnellen Flash-Download zu einem anderen Gerät. Hier sind einige Ideen, die ich in Zukunft umsetzen möchte.
* Servotester, diesen habe ich zum Download geklickt ezprobe_servo.c * Batterietester / Voltmeter, bis zu 2,5 V oder höher mit Widerstandsteiler auf alternativem Tastkopf * tv-b-gone, mit IR-LED-Sonde- Kopf * Pong-Clock, mit 2 Widerständen TV-Out Sondenkopf
Fehlerbehebung
* man braucht wirklich ein Temperiereisen/-station und feine Lötspitzen, die LEDs (alles zusammen) sind kleiner als ein Reiskorn. * Flussmittel verwenden. * Seien Sie darauf vorbereitet, die D- und D+-Kabel während des Debuggens zu trennen, da sie den normalen USB-Betrieb stören können. Wenn Sie Firmware auf das geänderte Gerät schreiben, geben Sie diese beiden Pins nicht aus, wenn Ihre Firmware startet. und wenn Sie dies tun, können Sie keine Firmware mehr herunterladen (natürlich können Sie sie in diesem Fall ablöten). Wenn Sie kleine Stecker finden, die in das USB-Gehäuse passen, verwenden Sie sie. * Die Stromversorgung für die Zielplatine erfolgt über einen Regler von der Programmierplatine, der wiederum 5 V von USB nimmt. Wenn ich die ezprobe in der Schaltung verwende, habe ich normalerweise mein Zielprojekt mit 3 V von zwei 1,5 V AAAs versorgt. Dies ist ausreichend, aber das Projekt muss auf oder unter 12 MHz bleiben. 16 MHz dco benötigt volle 5 V Quellenleistung. * Ich habe keinen Begrenzungswiderstand oder eine Zenerdiode verwendet, um die Sonde zu schützen. Sie können dies tun.
Empfohlen:
On Off Latch-Schaltung mit UC. Ein Druckknopf. Ein Stift. Diskrete Komponente.: 5 Schritte
On Off Latch-Schaltung mit UC. Ein Druckknopf. Ein Stift. Discrete Component.: Hallo zusammen, habe im Netz nach einer Ein/Aus-Schaltung gesucht. Alles, was ich fand, war nicht das, was ich suchte. Ich habe mit mir selbst gesprochen, es gibt unbedingt einen Weg dazu. Das habe ich gebraucht. - Nur ein Druckknopf zum Ein- und Ausschalten. - Muss nur
EIN ALTES HANDY (NOKIA 6600) IN EIN SUPERGADGET-MIKROCOMPUTER VERWANDELN: 37 Schritte
WIE MAN EIN ALTES HANDY (NOKIA 6600) IN EIN SUPERGADGET-MIKROCOMPUTER VERWANDELT: http://www.internetsecretbook.com https://www.youtube.com/thebibleformulaInmitten der Schwierigkeit liegt die Chance. - Albert Einstein Das Nokia 6600 bietet neue fortschrittliche Bildgebungsfunktionen, darunter ein helles TFT-Display mit 65.536 Farben und ca
So richten Sie ein Heimnetzwerk ein: 6 Schritte
So richten Sie ein Heimnetzwerk ein: Das Einrichten eines Netzwerks kann zunächst entmutigend klingen, aber sobald Sie alles haben, was Sie brauchen, ist es sehr einfach. Die traditionelle Einrichtung erfordert ein Modem und einen Router, aber einige benötigen möglicherweise mehr und andere weniger. Es gibt viele verschiedene
So schließen Sie ein Mini-HiFi-Regalsystem (Soundsystem) richtig an und richten es ein: 8-Schritte (mit Bildern)
So schließen Sie ein Mini-HiFi-Regalsystem (Soundsystem) richtig an und richten es ein: Ich bin ein Mensch, der gerne Elektrotechnik lernt. Ich bin eine High School an der Ann Richards School for Young Women Leaders. Ich mache dies anweisbar, um jedem zu helfen, der seine Musik von einem Mini LG HiFi Shelf Syste genießen möchte
Wie konvertiert man ein physisches Buch in ein E-Book?: 7 Schritte (mit Bildern)
Wie wandelt man ein physisches Buch in ein E-Book um?: Als Student im Hauptfach Chemieingenieurwesen habe ich normalerweise umfangreiche Lehrbücher, technische Bücher und Notizen zum Scannen (manchmal drucken) Ich habe seit einiger Zeit nach einem effizienten Buchscanner gesucht, aber die meisten sind es teuer, extrem groß. Es dauerte nicht lange