Hallo zusammen, Ich habe ein, mit einem Mikrocontroller, gesteuertes Ladegerät für 12V Bleibatterien mit 0-2-20-40 Ampere Ladestrom. Leider speichert das Gerät nach einem Stromausfall nicht den zuletzt eingestellten Ladestrom und startet immer mit 2 A Ladestrom. Deshalb möchte ich, dass ein zweiter Mikrocontroller nach einem Stromausfall den von mir gewünschten Ladestrom einstellt. Um die Ladestufe am Gerät zu verstellen, muss eine Taste gedrückt werden. Ein erneutes Drücken der Taste wählt die nächste Stufe usw. Diesen Tastendruck bzw. mehrere hintereinander möchte ich mit dem Controller und einem Optokoppler ausführen. Vorgestellt habe ich mir die Realisierung mit einem Stufenschalter, der den von mir gewünschten Ladestrom dem Mikrocontroller über mehrere Port-Pins mitteilt, welche mit dem Stufenschalter entsprechend der Ladestufe auf High oder Low gesetzt werden. Eine andere Möglichkeit währe: An 3 Pins 3 Dioden zum Anzeigen anschließen. An 1 Pin einen Taster anschließen An 1 Pin den Optokoppler anschließen Mit dem Taster wählt man den Strom aus, so dass Led Nr:1-2 -3 oder keine Led leuchtet. im Prinzip genauso, wie es auch das Ladegerät macht. Der eingestellte Wert wird im EEPROM des PICs gespeichert und beim nächsten Einschalten am Ladegerät eingestellt. Was ich brauche, ist ein Programm, welches den Optokoppler 1 mal, 2 mal oder 3 mal einschaltet und ausschaltet. Folgendes sollte der Prozessor selbständig machen wenn er Strom bekommt, je nachdem was ich für eine Ladestufe ich gewählt habe. Ladestufe 0 A: brauche ich nicht! Ladestufe 2 A: 1 mal einschalten und ausschalten des Optokopplers Ladestufe 20 A: 2 mal einschalten und ausschalten des Optokopplers Ladestufe 40 A: 3 mal einschalten und ausschalten des Optokopplers Als Controller habe ich mir den Attiny13 oder den 12F629 von Microchip vorgestellt.
Du brauchst als Ausgang nur den nackten Optokoppler? Um den Rest kümmerst du dich selbst? Wie dringend brauchst du das? Brauchst du ein professionelles Layout? Geht auch ein Mega8 erstmal? Was hast du preislich für Vorstellungen?
Wie soll die Schaltung mit Spannung versorgt werden?
Das ist für einen Tiny12/13/15 kein Problem. Ich nehme an, Du willst die Hardware (Platine mit Stromversorgung, Controller, Optokoppler, Stufenschalter oder Taster und LEDs) selbst bauen und brauchst nur das Programm, oder? Die Stromversorgung kann ja vom bereits vorhandenen Controller abgezweigt werden. ...
Hallo, ich brauche nur das Programm, alles andere mache ich selbst. Die Stromversorgung nehme ich vom vorhandenen Controller. Es sollte nach Möglichkeit schon der Attiny13 oder der PIC12F629 sein, da ich die schon habe. Ich lebe in der DomRep und komme nur sehr schwer an Bauteile. Meine preislichen Vorstellungen sind klein = kleiner Preis.
Hallo, Es eilt nicht. Ob ich das Programm in 2 Std. oder 14 Tagen bekomme, ist nicht wichtig. Ich kann das Gerät ja benutzen, muss es nur immer von Hand verstellen. Ich habe keine Ahnung von Programmierung. Wie lange braucht jemand der sich damit auskennt, um so ein Programm zu schreiben? Mfg Michael
@Michael Probier mal das Programm im Anhang. (Bascom) Taster an PB0 Optokoppler an PB1 LEDs an PB2-PB5 Ich konnte es nur simulieren, da ich keinen Tiny13 habe. Vor dem Kompilieren mußt Du noch die $sim - Anweisung ganz oben rauswerfen. MfG Paul
Hallo Paul, danke erstmal für das Programm. Leider kann ich es noch nicht auf einem Tiny13 testen, da ich zur Zeit noch keinen habe. Die Person, die ihn mir mitbringt, fliegt aber heute Samstag in die DomRep. Es kann sich dann nur noch um Tage handeln, bis ich ihn erhalte. Auch einen Programmierer für den Parallel-Port muss ich mir noch löten. Dafür warte ich ebenfalls auf ein Teil. Ich habe mir inzwischen schon mal die BASCOM-AVR Demo Version 1.11.8.7 geladen und versucht eine Simulation zu machen. Leider bekomme ich eine Fehlermeldung, wenn ich auf Simulation klicke. Die Meldung ist (OBJ or DBG file not found). Hast du den integrierten Simulator benutzt oder den vom AVR Studio? Mfg Michael
Hier gabs vor ein paar Monaten einen Typen, der ein paar Dumme gesucht hat, die mit ihm auswandern. Ich weiß nicht, ob es Dominikanische Republik war, Argentinien, Chile, oder sonstwas in der Gegend. Garantien gabs keine außer dem Versprechen, daß die Lebenshaltungskosten dort sehr gering sind, und um ein Vielfaches abgedeckt würden, wenn sich die Zusammenarbeit positiv entwickeln würde. Der Typ machte den Eindruck, daß er keine Ahnung von dem Elektronikgeschäft hätte, das ihm vorschwebte, mit Ausnahme der fixen Idee, daß er damit reich werden könnte, wenn andere für ihn die Arbeit machen. Ich unterstelle natürlich nicht, daß jetzt der gleiche Typ hier um Hilfe ruft, weil er alleine nicht in der Lage ist, einen Auftrag zu erfüllen. Ich wurde halt nur gerade an die lustige Geschichte erinnert. Markus
Hallo Markus, wie du schon vermutet hast, bin ich nicht der gleiche Typ, der in deiner so „lustigen Geschichte“ vorkommt. Ich lebe schon 7 Jahre in diesem Land und habe weder ein Geschäft noch einen Auftrag zu erfüllen. Meine Frage in diesem Forum ist rein privat. Es ist auch nicht so, dass ich keine Ahnung habe, sonst hätte ich ja nicht in meinem Thread zwei Lösungsmöglichkeiten beschrieben. Ich kann es nur nicht programmieren! Leider hat deine Antwort nicht zur Lösung meines Problems beigetragen, sondern, wie leicht zwischen den Zeilen zu lesen ist, versuchst du andere davon abzuhalten mir zu helfen. Ich hoffe, dass nicht alle Mitglieder dieses Forums so denken wie du und mir trotzdem jemand hilft. Mfg Michael
>Es ist auch nicht so, dass ich keine Ahnung habe, sonst hätte ich ja nicht >in meinem Thread zwei Lösungsmöglichkeiten beschrieben. Wenn du selbst Lösungsmöglichkeiten hast, wieso brauchst du dann noch jemanden, der das für dich programmiert? >Ich kann es nur nicht programmieren! Du kannst ES nicht programmieren, oder du kannst GAR nicht programmieren? Wohl eher letzteres. Dann fang doch einfach an, es zu lernen. Deine Aufgabe kommt gleich nach "Eine Leuchtdiode blinken lassen". Wenn du deinen uC hast, ein Programmiergerät herumsteht, und du weißt, wie du ein fremdgeschriebenes Programm in deinen uC schreibst, dann ist es für einen völligen Anfänger 1/2 Stunde Arbeit, das LED-Blink-Tutorial durchzuarbeiten und eine weitere Stunde Arbeit, es auf dein Problem anzupassen. Es sei denn es fehlt einem an Wissensdrang und das Gehirn ist vom vielen BILD-Lesen verkümmert. Dann stellt man sich lieber dumm (natürlich nicht ganz so dumm wie du tatsächlich bist, denn du hast ja schließlich noch deinen Stolz) und bettelt andere Forumsteilnehmer an, die zwar selbst nichts auf die Beine stellen können, die dir aber darum gerne beweisen, daß sie einen uC ein paar Pulse senden lassen können. Wenn du nicht programmieren lernen willst, aber anscheinend sowas tolles bauen kannst wie eine Mikrocontrollerschaltung, dann virgiß deinen uC einfach und baue deine Akku-Steuerung aus ein paar Logikgattern. Ist ja sicher ein Leichtes für dich, und die findesst du sogar in der DomRep ... Hahahahahah...
@Michael Hier sind noch mal alle Dateien, die Du brauchen könntest. Simuliert habe ich es im Bascom-Simulator. FF! (Fiel Fergnügen) MfG Paul
Na, dann fiel Spaß beim Support, Paul! Oder denkst du im Ernst, Michael ist selbständig in der Lage, dein Programm in Betrieb zu nehmen? Aber damit auch du, Paul, etwas von der Sache hast, schlage ich vor, daß ihr jeden Schritt hier im Forum diskutiert, dann kann jeder sehen, was für ein toller Typ du bist, daß du dem armen, unfähigen Michael hilfst. Das törnt dich doch sicher an, was?
>Das törnt dich doch sicher an, was?
Was ist denn das für ein Trottel? Kennt den jemand?
@Markus Sag mal: Geht´s wieder, oder soll ich einen Arzt holen? Das Programm ist kommentiert, wie Du vielleicht gesehen hast. Es ist allein meine Sache, ob und wie ich jemandem zu helfen versuche. Hast Du schon mal darüber nachgedacht, daß es Leute geben könnte, die nur einmal in ihrem Leben eine Aufgabe mittels MC lösén wollen und dann nie wieder? In der Zeit, in der Du hier "Stimmung" erzeugen willst, hättest Du Dich auch mit der Umsetzung der Problemstellung in ein Programm befassen können. ....Leute gibt´s! Paul
>In der Zeit, in der Du hier "Stimmung" erzeugen willst, hättest Du Dich >auch mit der Umsetzung der Problemstellung in ein Programm befassen >können. Ach ja? Ich bin aber der Meinung, daß man Leuten mehr hilft, wenn man sie vor die Wahl stellt, dumm zu sterben oder selbst mit dem Denken anzufangen. Deine Selbstdarstellung führt dazu, daß Michael in ein paar Wochen mit seinem nächsten Problem angekrochen kommt.
Oh Gott, was ist das denn für ein Thread? Irgendwann braucht man noch einen µC, um mit einem Taster eine LED aufleuchten zu lassen... Das baut man diskret auf, mit NE555 und Zähler oder Schieberegister! Diese Teile gibt es auch in der DomRep!
@Tcf Kat ...dann lies mal den obersten Artikel im Thread. Einen NE555 mit internem EEPROM habe ich noch nicht zu kaufen bekommen. ;-))) Paul
Da hast Du die falsche Quelle... ;)) Anzahl Pulse per Stufenschalter-Abgriff am Schieberegister auswählen, der dann den NE555 im Reset hält, der Out-Pin des NE555 liefert dann die gewünschte Pulszahl... das Schieberegister kriegt nen POR über R/C-Glied. Soll ich noch nen Schaltplan malen? ;)
So ganz unrecht hat der Markus nicht, wie ich finde. Wenn jemand ohne Probleme die Schaltung aufbauen, das Programm kompilieren und evtl. simulieren kann, weiß, wie man es dann in den Controller bekommt und dergleichen, sollte die Stunde um das Tutorial zu lesen auch drin sein. Ich finde die Frage bei all dem nötigen und offensichtlich vothandenen Hintergrundwissen zumindest seltsam.
@Tcf Kat Ja, kannst Du machen. Den Schaltplan meine ich. Wird sicher ein geringerer Aufwand werden. Braucht ja nur zusätzlichen Stufenschalter, Schieberegister und Timer - IC. ....wie in der Heilanstalt ;-) Paul
Ob er sich nun den Prommer für LPT lötet, oder das hier, sehe ich keinen Unterschied... ich würde das diskret aufbauen.
Hallo Paul, ich habe die Teile jetzt erhalten und die Schaltung aufgebaut. Das Brennen des µC hat sofort ohne Probleme funktioniert. Leider läuft das Programm nicht richtig auf dem tiny13 oder ich habe etwas falsch gemacht. Ich habe die 4 LEDs an PB2-PB5 angeschlossen. Die Anode an +5V über 1k Ohm Widerstände und die Kathode direkt an die Pins des µC. Anstelle des Optokopplers habe ich an PB1 eine LED auf die selbe weise angeschlossen. Den Taster habe ich an PB0 und GND angeschlossen. Als ich die Schaltung in Betrieb genommen habe, hat nur die LED für den Optokoppler langsam geblinkt. Die 4 anderen haben nichts gemacht. Auch das Drücken auf den Taster änderte nichts. Da ich mir nicht sicher war ob alles richtig funktioniert, habe ich das Senso-Spiel http://www.meinemullemaus.de/lesen/avr/seite2.html#6.1 in den tiny13 gebrannt und die Schaltung so abgeändert wie auf der Seite angegeben. Das Senso-Spiel funktionierte einwandfrei. Leider ist jetzt nach dem ich ca. 15 mal den µC mit PonyProg gebrannt habe ein Fehler aufgetreten, so dass der µC jetzt nicht mehr von PonyProg und anderen Programmen erkannt wird. Ich habe an den Fuse Bits nicht geändert und genauso gebrannt wie 14 mal vorher. Das Senso Programm auf dem µC läuft. Jedoch wird der µC nicht mehr erkannt. Auch der zweite µC wurde auf diese Weise unbrauchbar. So kann ich im Moment keine weiteren Tests durchführen. Als Programmer habe ich diese Schaltung nachgebaut http://rumil.de/hardware/avrisp.html Da ich jetzt erst mal neue µC kaufen muss, kann ich natürlich einen kaufen, auf dem du das Programm auch testen kannst. Ich würde mich freuen wenn du mir einen µC nennen kannst auf dem dein Programm läuft. Mfg Michael
Ich habe das Programm für einen Attiny13 im Auslieferungszustand geschrieben, aber nur im Simulator testen können. Wenn es gestartet wird, hast Du einen Moment Zeit, die Taste 1,2 oder 3 mal zu drücken, je nachdem, wie oft Du den Starttaster an Deinem Ladegerät drücken würdest. Der Zählerstand Deiner Tastendrücke wird dann im EEPROM gespeichert und anschließend über den Optokoppler ausgegeben. (eventuell mußt Du die Wartezeit "loop until N=400" vergrößern. Drückst Du die Taste nicht, wird der zuletzt gespeicherte Wert aus dem EEPROM ausgegeben. MfG Paul
> Ich habe die 4 LEDs an PB2-PB5 angeschlossen.
Was hat PB5 damit zu tun?
PB5 ist der Reset-Pin, wenn man den benutzen möchte, muss man auf ISP
verzichten.
Die zerschossenen Controller kann ich Dir mit dem STK500 wieder auf
Werkszustand zurückfusen, wenn es Dir das Porto (und Rückporto) wert
ist.
Die Billig-ISP-Adapter neigen mit Ponyprog bei instabilen Verhältnissen
(lange Strippen, ungeeigneter PC-Schnittstellenschaltkreis) dazu, scon
mal die Fuses zu verstellen, obwohl man keinen Befehl dazu gegeben hat.
Da reichen schon ein paar kippende Bits.
...
Hallo Hannes, inzwischen habe ich wieder 4 Attiny13 nach langem Warten erhalten. Ich habe den Fehler gefunden, warum die anderen 2 Attiny13 nach dem Brennen nicht mehr erkannt wurden. Es war der SN74HC244, welcher defekt war und den ich gleich sicherheitshalber auch ausgewechselt habe. Wahrscheinlich hat eine statische Entladung den 74HC244 geschädigt. Danke für dein Angebot mir die zerschossenen Controller wieder auf Werkszustand zurückzufusen. Dazu warte ich aber bis ich mehr habe, da es sich sonst nicht rentiert. Es ist jetzt ein weiterer hinzugekommen bei dem ich das Fuse Bit "Int. RC Osc. 128 kHz; Start-up time: 14 CK + 64 ms" eingestellt habe. Seitdem will er nicht mehr. Ich habe das Programm von Paul jetzt nach ein paar Anpassungen bei mir zum Laufen gebracht. Danke nochmals an Paul der mir das Programm geschrieben hat. Mfg Michael
> Int. RC Osc. 128 kHz; Start-up time: 14 CK + 64 ms
Der will schon noch. Du musst halt die ISP-Frequenz entsprechend
reduzieren (max 25% der Taktfrequenz). Ich habe da betreffs Pony mal was
von "veryslow" in der Configurationsdatei gelesen, soll aber nicht oder
nur schlecht dokumentiert sein.
...
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.