Mikrocontroller reagiert falsch

Gast #5725407
Lesenswert?

Guten Tag,

Ich habe mich eben daran gemacht ein Programm zu programmieren aber 
erstmal die Taster zu testen, allerdings habe ich das Problem das er ein 
anderes Lauflicht bei Taster RA1 laufen lässt als er eigentlich sollte. 
Undzwar lässt er das Lauflicht für den Taster RA2 laufen aber wenn ich 
RA1 gedrückt halte macht er es korrekt. Das Problem ist aber das es bei 
RA3 RA4 RA5 genau so ist obwohl die noch gar nicht programmiert sind 
(mal machen die nichts und manchmal führen die Taster das Lauflicht von 
RA2 aus) Habe bereits alles probiert aber komme nicht darauf woran es 
liegen könnte.
Hat irgendjemand eine Idee woran es liegen kann?

Mit freundlichen Grüßen,
Heinrich
Gast #5725420
Lesenswert?

Der reagiert nicht falsch, der macht exakt das was du ihm gesagt hast 
;-) D.h. du hast ihm blödsinn erzählt ;-)

Schaltplan, Bild vom Aufbau und Quellcode. Dann findet sich hier sicher 
jemand der dir hilfreiche Tipps zum weiteren Vorgehen gibt.
Gast #5725461
Lesenswert?

Hier ist der Quellcode, Den Schaltplan für den Mikrocontroller habe ich 
leider nicht aber daran sollte es nicht liegen, da es bei allen 
Mikrocontroller war die ich getestet habe (5Stück) ebenfalls ist es nur 
bei RA2 so also RA3 und RA1 klappen ganz normal und es sind nur die 
Taster neben RA2 also wenn ich RA1 und RA3 drücke führt er das falsche 
aus. Zusätzlich habe ich schon den interrupt Befehl etc. rausgeholt und 
probiert aber immer das selbe Problem
Angehängte Dateien:
Gast #5725478
Lesenswert?

Jens M. schrieb:
> Kann es sein, das hier drei Leute gleichzeitig an einem LED-Cube mit
> PIC, Schieberegister, Tastern und Ebenen rumbasteln, aber alle
> aneinander vorbeireden?

Gut möglich das es der erste Fall ist, allerdings habe ich die anderen 
beiden schon gefragt und die haben auch keinen Plan.
Beitrag #5725483 wurde von einem Moderator gelöscht.
Beitrag #5725484 wurde von einem Moderator gelöscht.
Gast #5725485
Lesenswert?

Jens M. schrieb:
> Nohmal ganz genau überlegen was == macht, wo man das will und wo man das
> nicht will.

== war eine Überprüfung oder? d.h. wenn der Taster 1 ist soll er das 
durchführen habe dann womöglich meinen Fehler gefunden. Er ist 
wahrscheinlich im interrupt oder?
Gast #5725505
Lesenswert?

Guten Tag,

dies ist nun der zweite Beitrag da der erste einige Mangel hatte.

Nämlich ist mein Problem, dass wenn ich den Taster_1 drücke er auch 
seinen eigenen Befehl ausführt, allerdings führt er auch manchmal den 
Befehl von Taster_2 aus was er eigentlich gar nicht soll. Das selbe 
Problem mit Taster_3, da er noch nicht konfiguriert ist bzw. keine 
Zuweisung hat macht er manchmal gar nichts aber manchmal führt er auch 
das Lauflicht von Taster_2 aus. Habe es bereits mit 5 Mikrocontrollern 
versucht also bezweifel ich das es an der Hardware liegt sondern eher am 
Quellcode.
Habe ebenfalls versucht die interrupt-Befehle und sonst alles unnötige 
rauszuholen allerdings habe ich immer das selbe Problem. Wenn ich den 
Taster_2 nicht konfiguriere klappt alles einwandfrei, das einzige 
Problem ist das ich alle 6 Taster benötige und ihn somit nicht auslassen 
kann.
Ich bedanke mich schonmal für eure Hilfe

Schönen Tag noch
Angehängte Dateien:
Gast #5725507
Lesenswert?

Rufus Τ. F. schrieb:
> Heinrich A. schrieb:
>> Gut möglich das es der erste Fall ist, allerdings habe ich die anderen
>> beiden schon gefragt und die haben auch keinen Plan.
>
> Auch den einen von den beiden, der die gleiche Email-Adresse verwendet
> wie Du?
>
> Wir mögen solche "multiplen Persönlichkeiten" hier nicht.

Ich benutze seine E-Mail Adresse da er sich schon registriert hat. Um 
genau zu sein sitze ich gerade an seinem Schul-Pc.
Moderator (Firma: Titel) Persönliche Seite #5725508
Lesenswert?

Heinrich A. schrieb:
> Hier ist der Quellcode
Hast du den mit Paint gemalt?
Ich hätte da gerne mal was geändert, aber ich tu mir da mit Copy&Paste 
so schwer.

Heinrich A. schrieb:
> und die haben auch keinen Plan.
Warum diskutiert ihr nicht einfach mal einen der anderen 9999 
4x4x4-Cubes mal durch. So lange, bis ihr das verstanden habt?
Der sieht recht simpel aus: 
https://www.instructables.com/id/LED-Cube-4x4x4/
Und der ist sogar für einen PIC: 
https://electronza.com/4x4x4-led-cube-pic16f18877/

Jens M. schrieb:
> Kann es sein, das hier drei Leute gleichzeitig
So lange die Regel "1 Name pro Thread" eingehalten wird, gibts daran 
eigentlich nichts auszusetzen...  ;-)
Gast #5725527
Lesenswert?

Sebastian R. schrieb:
> Tipp: Alle 64 LED-Hilfsfunktionen hätten in eine Funktion mit ein
> paar Zeilen und zwei, drei Parametern gepasst. Ein bisschen Abstraktion
> ist manchmal nicht schlecht und trägt der Übersichtlichkeit bei.

Und wie genau? Kenne mich noch nicht so gut damit aus in der
Schule haben wir immer nur Lauflichter gemacht was nicht sonderlich 
schwer war. Und habe auch erstmal einen Tag dafür gebraucht und bin 
eigentlich relativ zufrieden falls es klappen sollte. Du solltest aber 
nicht vergessen das du auch mal ein Anfänger warst :)
Gast #5725536
Lesenswert?

Adam P. schrieb:
> ABER...die LED-Funktionen werden doch nirgends aufgerufen ?! :-/
>
> Oder sehe ich den Wald vor lauter Bäumen nicht?

Die sind noch gar nicht drin habe die nur Schonmal gemacht um mir später 
die Zeit zu sparen. Haben immerhin nur zwei Wochen Zeit und deswegen 
habe ich die schon vorgemacht

Markus M. schrieb:
> In deinem "Interrupt" kannst du "Taster_X" nicht auf 0 setzen, das
> ist ein PortPin und da kann man nur was lesen.
>
> Lese mal die Doku von PIC.

Hmm lese es mi gleich nach der Pause durch, hatte das jetzt gemacht weil 
es der Lehrer zu mir meinte das ich so die Taster unterbrechen soll bzw 
die unendlich Schleife hat aber nicht ganz so geklappt

jemand schrieb:
> Meine Güte, 64 nahezu identische Methoden... Eine Methode mit
> einem simplen int parameter hätte gereicht.

Weiß leider nicht was genau du meinst bin noch kein experte in dem 
Gebiet
#5725537
Lesenswert?

Nja, aber ich hatte als Anfänger nicht wirklich Zugang zum Internet und 
damit zum vollständigen Wissen der Menschheit (plus ein bisschen 
Koitalentertainment und Katzenbilder).

Und ich bin mir auch ziemlich sicher, dass ich in der (Berufs-)Schule 
etwas mehr als Lauflichter hatte, bevor es ein Abschlussprojekt gegeben 
hätte, welches es nicht gab.

Funktionen, Parameter und Rückgabewerte gehören eigentlich zum 
Grundverständnis der Programmierung in C. Wenn ihr das nicht gelehrt 
bekommen habt, bevor ihr die Freigabe für so ein ambitioniertes Projekt 
bekommen habt, dann solltet ihr euch mal bei eurem Lehrer beschweren.

Ansonsten: Google. C Funktionen.
#5725544
Lesenswert?

A. K. schrieb:
> Würde nicht ein Thread für das Thema ausreichen?

Denn hab ich ja auch überflogen...

Aber ich sehe nur, dass die PORTs auf verschiedene Werte gesetzt werden,
weder ein Aufruf von Lauflicht() nocht von Led_x_y().

Was soll der Sinn der Taster-Funktionen sein - ergibt kein Sinn, da 
Eingang, wie Markus M. bereits sagte - du willst eher den Status der 
Taster zurücksetzen, dafür benötigst du jedoch Flag-Variablen.

Aber ich tu mich grad schwer zu erkennen, wie der Code ein Lauflicht 
produziert.

-> Von dem du am Anfang berichtet hast.
Gast #5725545
Lesenswert?

Sebastian R. schrieb:
> Nja, aber ich hatte als Anfänger nicht wirklich Zugang zum
> Internet und damit zum vollständigen Wissen der Menschheit (plus ein
> bisschen Koitalentertainment und Katzenbilder).
>
> Und ich bin mir auch ziemlich sicher, dass ich in der (Berufs-)Schule
> etwas mehr als Lauflichter hatte, bevor es ein Abschlussprojekt gegeben
> hätte, welches es nicht gab.
>
> Funktionen, Parameter und Rückgabewerte gehören eigentlich zum
> Grundverständnis der Programmierung in C. Wenn ihr das nicht gelehrt
> bekommen habt, bevor ihr die Freigabe für so ein ambitioniertes Projekt
> bekommen habt, dann solltet ihr euch mal bei eurem Lehrer beschweren.
>
> Ansonsten: Google. C Funktionen.

Wir sind auch eigentlich keine AM-Klasse sondern eher eine IT-Klasse da 
ist es nur eins von vielen BU Fächern allerdings haben wir daran 
gefallen gefunden und wollten deshalb dies auch als Abschlussprojekt 
wählen

Habe ich schon versucht das einzige Problem ist nur da sind meistens 
komplett andere Befehle die ich nutze z.b. Wird dort mit einem : der 
Befehl beendet statt mit einem Semikolon.
Gast #5725552
Lesenswert?

Adam P. schrieb:
> A. K. schrieb:
> Würde nicht ein Thread für das Thema ausreichen?
>
> Denn hab ich ja auch überflogen...
>
> Aber ich sehe nur, dass die PORTs auf verschiedene Werte gesetzt werden,
> weder ein Aufruf von Lauflicht() nocht von Led_x_y().
>
> Was soll der Sinn der Taster-Funktionen sein - ergibt kein Sinn, da
> Eingang, wie Markus M. bereits sagte - du willst eher den Status der
> Taster zurücksetzen, dafür benötigst du jedoch Flag-Variablen.
>
> Aber ich tu mich grad schwer zu erkennen, wie der Code ein Lauflicht
> produziert.

Okay flag-Variablen sind mir neu werde mal gleich dazu recherchieren. 
Wie gesagt habe die nur schonmal programmiert damit ich mir später wenn 
ich alles durch habe die Zeit spare, noch stehen die da einfach ohne 
einen Grund. Hast du auch vielleicht eine Antwort zu meinem eigentlichen 
Problem?
Gast #5725560
Lesenswert?

> Was soll der Sinn der Taster-Funktionen sein - ergibt kein Sinn, da
> Eingang, wie Markus M. bereits sagte - du willst eher den Status der
> Taster zurücksetzen, dafür benötigst du jedoch Flag-Variablen.
>
> Aber ich tu mich grad schwer zu erkennen, wie der Code ein Lauflicht
> produziert.
>
> -> Von dem du am Anfang berichtet hast.

Lauflicht ist vllt schlecht ausgedrückt sind einfach nur paar LED‘s die 
bei Taster_X angehen wollen da ich noch Raumprobleme wie ich ein Befehl 
in die Endlosschleife legen kann aber dann trotzdem auf einen anderen 
Taster zugreifen zu können bzw das der dann die eine unendlich-Schleife 
unterbricht und eine neue beginnt. Das bekomme ich aber gerade ebenfalls 
nicht hin
#5725605
Lesenswert?

Heinrich A. schrieb:
> Einen Schaltplan habe ich leider nicht. Die Taster und LED`S sind alle
> auf der selben Platine angeschlossen wie der Controller

So kann dir kein Mensch hier helfen!

Es geht uns nicht um das WO die Taster angeschlossen sind sondern um das 
WIE!

Heinrich A. schrieb:
> Das Problem ist aber das es bei
> RA3 RA4 RA5 genau so ist obwohl die noch gar nicht programmiert sind

Taster kann man nicht programmieren!
Wenn für die Taster noch kein Code hinterlegt sein sollte, dann sind sie 
einfach nur falsch angeschlossen!
Beitrag #5725626 wurde von einem Moderator gelöscht.
Gast #5725693
Lesenswert?

Adam P. schrieb:
> (Beitrag neu erstellt, bzgl. doppeltem Dateianhang)
>
> Ich kann mir das nicht länger mit ansehen...
>
> HIER BITTE.
>
> Es gibt 1000 Möglichkeiten, aber hab versucht es so einfach wie möglich
> zu halten.

Danke dafür, kannst du mir noch vllt erklären was die zahlen bei dem 
#define darstellen soll? Habe das noch nicht so ganz verstanden.

Bist aber der einzige der mir ernsthaft versucht hat zu helfen :)

PS: Es heißt Logik, wie du mir hilfst, helfe ich dir :)
Gast #5725696
Lesenswert?

> Danke dafür, kannst du mir noch vllt erklären was die zahlen bei dem
> #define darstellen soll? Habe das noch nicht so ganz verstanden.
>
> Bist aber der einzige der mir ernsthaft versucht hat zu helfen :)
>
> PS: Es heißt Logik, wie du mir hilfst, helfe ich dir :)

Nevermind habe es verstanden danke (:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren