Forum: Mikrocontroller und Digitale Elektronik AtTiny13 als Laderegler, könnte das so funktionieren?


von Mirko Wiener (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

schaut mal jemand auf diesen Bascom Code ob das so hinhauen könnte?
Weiß vielleicht jemand wie man das Fuse Bit BODLEVEL auf 0 setzt um die 
interne Spannungsreferenz verwenden zu können. Ich find meine Lösung mit 
der ZDiode an der Versorgungsspannung nicht besonders elegant.

Grüße
Mirko

von Stefan F. (Gast)


Lesenswert?

Ergänze bitte deinen Schaltplan und beschreibe detailliert, was dein 
Code machen soll. Hast du das Programm ausprobiert? Tutu es, was es 
soll? Wenn ja, warum fragst du dann hier? Wenn nein, was tut es denn 
stattdessen?

Ich kenne Bascom nicht, aber andere Basic Dialekte. Dennoch fällt mir 
ein Ausdruck ganz besonders auf:

> If kleinerals3volt > 0 Volt > 3 Then ...

Was soll das bedeuten? Ist das wirklich Bascom Sprache?

Noch eine seltsamer Punkt:

> If Volt > 3.7 Then
>     kleinerals3volt = 1
> End If

Willst du dich selbst veräppeln? Mehr als 3,7 Volt ist also kleiner als 
3 Volt? Diese Logik ist ziemlich gewöhnungsbedürftig.

Was die Struktur des Programmes angeht: So etwas macht man besser mit 
mehreren Threads. Wenn die Programmiersprache dazu kein fertiges 
Konstrukt enthält, dann lese Dich mal zum Thema Endliche Automaten 
(=Zustandsautomaten, State Machine) ein. Ich denke, du brauchst auch so 
etwas wie eine Hysterese und eine Verzögerung, denn die Spannung des 
Akkus wird zusammen mit dem Schalten der Last ein wenig hoch und runter 
springen.

von Mirko Wiener (Gast)


Lesenswert?

Stefanus F. schrieb:
> Ergänze bitte deinen Schaltplan und beschreibe detailliert, was dein
> Code machen soll. Hast du das Programm ausprobiert? Tutu es, was es
> soll? Wenn ja, warum fragst du dann hier? Wenn nein, was tut es denn
> stattdessen?

An Portb.3 und Portb.4 hängt ein Mosfet. Der 3er Schaltet den 
Verbraucher ein oder aus und der 4er das Solarmodul.

> Ich kenne Bascom nicht, aber andere Basic Dialekte. Dennoch fällt mir
> ein Ausdruck ganz besonders auf:

Ja, ich weis das And fehlt.

> Willst du dich selbst veräppeln? Mehr als 3,7 Volt ist also kleiner als
> 3 Volt? Diese Logik ist ziemlich gewöhnungsbedürftig.

Zu meinr Verteidigung ich hab das ding ohne Basic kenntnise schnell 
zusammengetüftelt.

Aber das krieg ich schon hin.

Meine eigendliche Frage ist: Wie setzt man bei den fuses das Bodlevel 
auf 0? Im Programmcode oder muss man dafür am Chip was einstellen? Kann 
ich dann die Referenzspannung des Chips nutzen um bei der 
Spannungsmessung die gemessene mit dieser zu vergleichen (mit 
Spannungsteiler) müssten ja 1,1Volt sein als VRef?

Grüße
Mirko

von Stefan S. (chiefeinherjar)


Lesenswert?

Die 1,1V Referenz kannst du auch mit BOD nutzen, so weit ich mich 
zumindest von den ATMega32 und Attiny2313 erinnere.

von Stefan F. (Gast)


Lesenswert?

>> Ergänze bitte deinen Schaltplan und beschreibe
>> detailliert, was dein Code machen soll

> An Portb.3 und Portb.4 hängt ein Mosfet. Der 3er Schaltet den
> Verbraucher ein oder aus und der 4er das Solarmodul.

Ist das ernsthaft deine umfassende Antwort auf meine Rückfrage? Das ist 
mir zu faul, so mag ich Dir nicht helfen.

>> If Volt > 3.7 Then
>>     kleinerals3volt = 1
>> End If

>> Willst du dich selbst veräppeln? Mehr als 3,7 Volt ist also kleiner als
>> 3 Volt? Diese Logik ist ziemlich gewöhnungsbedürftig.

> Zu meinr Verteidigung ich hab das ding ohne Basic kenntnise schnell
> zusammengetüftelt.

Das hat doch nichts mit Basic zu tun, sondern mit Logik. So etwas macht 
man nur, wenn man das Projekt absichtlich versauen will oder andere 
verwirren will.

> Meine eigendliche Frage ist...

Nee, beantworte erst einmal meine Rückfrage nach dem Schaltplan und der 
detaillierten Funktionsbeschreibung.

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.