Forum: Mikrocontroller und Digitale Elektronik BASCOM Taster erhöht/löscht Variable nur wie


von Nette M. (nette-mann)


Lesenswert?

Hab nen Entprellten Taser an PINB.7 und die Bit Variable Vcc ( 0 1 )

Nun grübel ich seit stunden wie ich das Anstelle. Weil so ganz gehts 
nicht.
Ansatz:

If Vcc = 1 then
ifelse PINB.7 = 0 (Taster gegen Masse) then
reset Vcc
set Vcc
else
if End

Was mach ich falsch?

von Eduard A. (Firma: e-jam GmbH) (aed)


Lesenswert?

Was willst eigentlich machen?
Deine Fragestellung ist verwirrend, beschreibe Dein Problem mal mit 3 
einfachen, kurzen Sätzen.

In Deinem Code resetest Du die Variable Vcc um sie in der nächsten Zeile 
gleich wieder zu setzen?

Gruss
Eduard

von gast (Gast)


Lesenswert?

er will vlt mit dem drücken der taste was machen

dazu setzt oder löscht er ein bit


naja dann solltest du aber auch erst das machen was du willst bevor du 
die avriable rücksetzt

von Stephan H. (stephan-)


Lesenswert?

ifelse ??

von Karl H. (kbuchegg)


Lesenswert?

Es gibt 2 Möglichkeiten:

* entweder die Fragestellung ist so formuliert, dass ich sie in maximal 
30 Sekunden nachdenken verstehen kann

* oder das Thema ist interessant genug, dass ich auch einmal 2 Minuten 
nachdenken investiere um rauszufinden, was der Fargesteller eigentlich 
will

In allen anderen Fällen wird die Frage abgehakt und der nächste Thread 
geöffnet.
Deine Fragestellung ist: weder - noch.

von Tombstone (Gast)


Lesenswert?

>Was mach ich falsch?

Alles.
Dir fehlen die Grundlagen zum Programmieren.
Fang einfach mal mit einem Tutorial über Basic an zu lesen.
Und mit dem Programmieren klappt's dan auch mit der Zeit.

von (Gast) (Gast)


Lesenswert?

>If Vcc = 1 then
>ifelse PINB.7 = 0 (Taster gegen Masse) then
>reset Vcc
>set Vcc
>else
>if End

Don't drink and program!

>>Was mach ich falsch?
>Alles.
>Dir fehlen die Grundlagen zum Programmieren.

Sehe ich auch so.

von Nette M. (nette-mann)


Lesenswert?

Hatte die Frage vergessen....
Und von Basic war nie die Rede. Nochmal neu:

Wenn ich auf den TAster drücke, soll sich die Variable um 1 erhöhen. 
Beim erneuten drücken soll die Variable auf 0. Und beim erneuten drücken 
soll die Variable wieder auf 1 usw.

das
if bedingung then
ifelse bedindung then
else
endif

kam mir auch komisch aber laut 
http://www.rn-wissen.de/index.php/Bascom_Verzweigungen Zitat:
 Verzweigung: If-Then-Else

Struktur:

If  Bedingung Then
  [Elseif  Bedingung  Then]
  [Else]
End if


Einfachstes Beispiel:

If  A= 10 Then  A=100

Wenn A=10 dann weise A den Wert 100 zu. Wenn die If-Then Anweisung in 
eine Zeile geht, dann kann man das so wie obiges Beispiel schreiben. 
Mann kann auch hinter dem Then, mehrere Anweisungen schreiben. Die 
müssen aber untereinander durch Doppelpunkt getrennt werden und noch 
immer in eine Zeile passen.


Für mehrere Anweisung schreibt man aber besser einen IF-Block:

IF-Block Beispiel:

If  A= 10 Then
  A = 100
  Print A
  Print A
End if

Soll es wohl so sein

von spess53 (Gast)


Lesenswert?

Hi

Kannst du dir alles sparen. Einfach bei jedem Tastendruck
Variable Exclusiv-Oder mit 1. Fertig.

MfG Spess

von Nette M. (nette-mann)


Lesenswert?

Variable Exclusiv-Oder mit 1. Fertig.
 Ach verdammt Bit is ja nur 1 oder 0 isse 1 und und ich erhöh se geht se 
automatisch auf 0 oder??

von spess53 (Gast)


Lesenswert?

Hi

>Das weis ich auch nur wie?

Wie wäre es mit XOR?

MfG Spess

von Nette M. (nette-mann)


Lesenswert?

XOR wär ein Gatter aber es sollte bei einem Taster bleiben

von MWS (Gast)


Lesenswert?

Bei manchen könnte ein Knäckebrot Gedankenkontrolle ausüben :-)

von Nette M. (nette-mann)


Lesenswert?

Ich habs noch nicht ganz gerafft aber anscheinend macht Set nur erhöhung 
und niht wie reset die Variable auf 0 wenn diese bereits 1 ist NUR wie 
ist das denn nu in BASCOM mit if else und ner weiteren bedingung ?

von Justus S. (jussa)


Lesenswert?

Nette Mann schrieb:

> Und von Basic war nie die Rede. Nochmal neu:

> http://www.rn-wissen.de/index.php/Bascom_Verzweigungen Zitat:

was denn nun?

> XOR wär ein Gatter aber es sollte bei einem Taster bleiben

Wie wär es mal mit einem Grundlagenbuch?

von Nette M. (nette-mann)


Lesenswert?

BASCOM Taster erhöht/löscht Variable nur wie

Wie kommt ihr dabei auf BASIC?

von spess53 (Gast)


Lesenswert?

Hi

Sag mal, bist du so bl..., oder stellst du dich nur so an.

XOR ist ein Boolscher Operator, den sogar Basic beherrscht.

variable = variable XOR 1

MfG Spess

von Justus S. (jussa)


Lesenswert?

Nette Mann schrieb:
> BASCOM Taster erhöht/löscht Variable nur wie
>
> Wie kommt ihr dabei auf BASIC?

ROFL..you made my day...

von Justus S. (jussa)


Lesenswert?

> XOR ist ein Boolscher Operator, den sogar Basic beherrscht.

aber er hat doch BASCOM und nicht Basic ;c)...

von spess53 (Gast)


Lesenswert?

Hi

>aber er hat doch BASCOM und nicht Basic ;c)...

Ups. Da war ich auf der falschen Fährte.

MfG Spess

von Torsten M. (elcomportal)


Lesenswert?

if taster = 1 then
if vcc=1 then vcc=0 else vcc=1
end if
evtl. so?
mfg
Torsten Müller

von gast (Gast)


Lesenswert?

hier fehlt einfach das grundwissen um überhaupt etwas zu machen
es scheinen selbst die einfach ansätze nicht verstanden worden zu sein

man könnte jetz sagen ..
setz dich hin und such dir eine programmiersprache aus ..
sei es basic , assembler oder C ...

basic -> Bascom
assembler und C mit AVR studio und GCC


aber man muss es wollen .... einfach so zugeflattert kommt das wissen 
nicht

von Nette M. (nette-mann)


Lesenswert?

Einfache Frage viel Spam und schiss

vielen Dank und Tschüss!

von Stephan H. (stephan-)


Lesenswert?

na dann schönes WE mit "Ifelese"
(Ist offensichtlich die Abkürzung für: Ist ELse im Hause...)

von Nette M. (nette-mann)


Lesenswert?

If Pind.6 = 0 Then
  Toggle Vcc
  Else
  End If


Ach ja BASCOM kann so einfach 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
Noch kein Account? Hier anmelden.