Gefunden für adc ausgang pic - Zum Elektronik Forum |
| 1 - Stufenlose PWM und Motor Schutzschaltung -- Stufenlose PWM und Motor Schutzschaltung | |||
| |||
| 2 - I2C-Bus Ack + Interrupt unterbrechung -- I2C-Bus Ack + Interrupt unterbrechung | |||
| Hallo,
Ich habe von PIC exakt keine Ahnung. Ich habe mir aber mal deinen Code angesehen und wäre es nicht möglich, dass noch andere Interruptquellen aktiv sind, die du gar nicht auf „pending“ testest? Und die nach Verlassen des ISR-Handlers sofort einen neuen IRQ triggern? Die These ist im Eimer, wenn nur explizit aktivierte IRQs auftreten. Denn dann ist bekannt, welche Interrupts auftreten können. Weiterhin ist es natürlich möglich, dass dein PIC einfach zu lahm ist und so viele IRQs getriggert werden, dass du mit dem Abarbeiten schlicht nicht mitkommst. Dazu würde ich zu Beginn der ISR eine LED anschalten und nach Abarbeitung abschalten (danach wird in der Background-Schleife weitergearbeitet). Somit kann man ja herausfinden, ob und wie lange der PIC in der ISR beschäftigt ist. Statt LED wird wohl ein einfacher IO-Ausgang reichen, den du ans Oszi klemmst. An einen Stackoverflow kann ich nicht recht glauben. Es wäre fatal, wenn ein auftretender IRQ während der Abarbeitung der ISR dafür sorgen würde, dass diese erneut gestartet wird. Denn dann läuft dir der Stack wirklich irgendwann über, wenn die IRQs schneller kommen als du sie abarbeiten kannst. | |||
3 - LED-Weihnachtsdeko mit Micro-Controller blinken lassen -- LED-Weihnachtsdeko mit Micro-Controller blinken lassen | |||
| Habe mir ein paar Gedanken über ein gemultiplextes LED-Lichtspiel auf 16F886-Basis gemacht.
Ich möchte fünf Zeichen darstellen, dazu brauche ich pro Zeichen maximal 3*8 LEDs, insgesamt läuft es auf ein 12*8-Multiplex hinaus. Als LEDs kommen Beispielsweise diese in Frage: http://www.reichelt.de/?ACTION=3;GR.....65134 Nicht stark gerichtet, recht hell und noch erschwinglich. Vertragen bei 1/12 Spieldauer und 1,5ms Periodendauer noch 100mA Pulsstrom. Als "Zeilentreiber" ließe sich ein ULN2803A verwenden. Dazu eine Frage: Gelten die 500mA für einen Ausgang oder für alle zusammen? http://www.reichelt.de/?;ACTION=7;L.....4baf1 Als Spaltentreiber ließen sich 12*BC327-40 verwenden: | |||
| 4 - (doch noch ungelöst) *.src oder *.obj in hex wandeln (PIC) -- (doch noch ungelöst) *.src oder *.obj in hex wandeln (PIC) | |||
| Habe noch mal ein wenig im Code rumgespielt. Copy-Protection war auch noch an, ist jetzt aus.
Habe außerdem festegestellt, dass man den MCLR nicht aktivieren sollte, wenn man keinen Pullup verbaut hat, sonst blinkt es doch nur sehr sporadisch
Und ich Dussel hatte eine Viertelstunde einen Wackelkontakt an IC-Fassung oder den Schraubklemmen vermutet... vor allem, weil sich der "Wackelkontakt" ja durch rumdrücken auf der Platine beheben ließ
Habe im Code außerdem den Oszillator-Kalibrierwert vom Ende des Programmspeichers holen lassen (da ist er von Werk aus, sollte er nicht durch eine dumme Brennsoftware gelöscht worden sein). Nun takten meine drei 629/675er alle zwischen 955 und 960Hz (Meßgerätanzeige). Was ich hier geschrieben hatte: Zitat : Die Hex lässt sich auch problemlos in einen billigeren 12F629 brennen (der nimmt es nicht übel, dass die Bits zum... | |||
| 5 - Real Time Clock IC an AVR -- Real Time Clock IC an AVR | |||
So hier ist gleich das ganze Programm. Das deswegen, weil ohne die Equates die ganzen Operationen unverständlichen wären. Die I2C Routinen sind nur die zwei kleinen Teile nach der Interruptroutine. Der Rest ist eine kleine Steuerung für eine Gabelstapler an dem ein paar Funktionen gegeneinander verriegelt werden mußten. Außerdem sind noch ein paar Spielereien wir Blinklicht und Stundenzähler mit dabei (der leider aber nur im seriellen EEPROM steht und nicht ausgelesen werden kann ). Das Projekt war leider zu früh zu Ende!
Aber ansonsten kann ein Anfänger viele Sachen darin finden, neben der I2C Kommunikation ist eine einfache Interruptbehandlung für einen Timerinterrupt und die ADC-Abfrage vorhanden, genauso wie die in diesem Thread schon angesprochenene Zeitverzögerungen oder weiter unten dann ganz normale Bitverknüpfungen. Code : | |||
| 6 - neues Projekt: Eigenbau Haus- und Garten Alarmanlage -- neues Projekt: Eigenbau Haus- und Garten Alarmanlage | |||
| Hallo,
also da bedank ich mich dach ganz herzlich bei dir So ungefähr hatte ich das Netzteil auch nach deiner Beschreibung verstanden. Genauso werde ich es wohl aufbauen. Als Netzteil hab ich mir ein altes Laptopnetzteil ausgeguckt. Das macht 3A bei 17V DC. Da kann ich die Brücke ja weglassen und erst ab dem Siebelko aufbauen. Außerdem spar ich mir den Trafo. Liegt dann am Ausgang eigentlich 12V oder 13,.... V an?
Dahinter müsste noch ein 7805 für die 5V. Aber das ist kein Problem. Hab ich schon öfter aufgebaut. Das mit dem TCA währe doch sicher nur für eine Meldelinie? Wenn ich mir den Preis so anschaue, würde das nicht gerade billig werden. Ich hab mir auch schon überlegt, statt dem TCA einen PIC als Fensterdiskriminator zu missbrauchen. Der 16F688 hat z.Bsp 8 ADC-Eingänge und kostet bei R nur 2,30€. Damit könnte ich 8 Meldelinien aufbauen und das Messen der Linien übernimmt die Software. Na mal schauen. Eventuell muss ich da erst mal noch ein paar Feldtests machen
Also noch mal vielen Dank für deine Mühe. So langsam entwickelt sich meine Idee doch zu was brauchbaren. Da sind ja die langen Winterabende für dieses Jahr gesichert | |||
| 7 - Zündung -- Zündung | |||
| Wenn der Hallgenerator in dieser Prüfschaltung funktioniert, hätte er es eigentlich auch in dem ursprünglichen Aufbau tun sollen.
Die unbekannte Diode soll lediglich verhindern, daß der HG bei Falschpolung der Batterie zerstört wird. Ich würde Dir aber nicht raten das zu testen, da die Schaltung in dieser Hinsicht einen Fehler enthält. Du kannst ja nochmal checken: Meßinstrument, 20V-Bereich - an TP1, + an TP3, dann sollte es ohne Magnet etwa 6,5V angezeigen (bei 9V Batterie), mit Magnet etwa 0,3V. Dann den Stromkreis durch die LED öffnen, also entweder die LED oder R1 rausziehen. Wenn dann mit und ohne Magnet praktisch 0 angezeigt wird, ist das wie ich vermute ein O.C. Ausgang. Die Richtung des Magneten ist übrigens wichtig: Wenn Du ihn falschrum dranhältst schaltet der HG nicht. Ich habe hier übrigens etliche HG, die eigentlich für Tastaturen gedacht sind. Kunststoffplättchen 10x6x2mm bei denen auf der langen Kante vier Anschlußpins rausschauen. Ich denke, die könnte man auch ganz gut verwenden, hab aber noch nicht probiert, ob die bei 15000 min-1 noch mitspielen. Wer schreibt schon so schnell ? Allerdings sehe ich auch keinen Hinderungsgrund. Müßte das mal ausprobieren. Wie heiß wird es am Einbauort ? |
|
Zum Ersatzteileshop Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation! gerechnet auf die letzten 30 Tage haben wir 7 Beiträge im Durchschnitt pro Tag heute wurden bisher 0 Beiträge verfasst 6 Besucher in den letzten 60 Sekunden alle 10.00 Sekunden ein neuer Besucher ---- logout ----su ---- logout ---- |