Forum: Offtopic Wichtige Anfrage


von Elektronik_Neuling (Gast)


Lesenswert?

Hallo liebe Elektronik Freunde,

ich bin absoluter Neuling in Sachen elektronik, Wenns um das Verständnis 
von Grundlagen geht stöß ich schon auf meine Grenzen,

es geht um das Programmieren eines Mikrocontrollers der Familie 80C517A 
von Siemens. ich weiß dass die maschine binär arbeitet, wir haben den 
Fall dass wir mit hexadezimaldarstellung also mit einem 16 bit rechner 
arbeiten. Wenn ich mir aber so meine Klausuraufgaben anschaue, fehlt mir 
jeglicher ansatz. Die Aufgabenstellung jeder Klausur ist dieselbe, es 
wird nur ein anderes Beispiel abverlangt

Zwei Beispiel:

1)Realisieren Sie eine Zeitüberwachung für ein Uhrenpendel. Das 
Uhrenpendel hat einen Sollfrequenz von einem Hertz.Geben Sie den Fehler 
über die serielle Schnittstelle aus

a) Erstellen Sie einen Anschlussplan an den 80C517A
b) Schreiben Sie einen Struktogramm für diese Aufgabe
c) Schreiben Sie einen Prorgamm für den 80C517A


2.) Realisieren Sie einen Tankfüllmessgerät. Pro dm Höhe(Länge) erhöht 
sich die Spannung um 0,5 V. Der Durchmesser beträgt 20 dm. Geben Sie die 
Füllmenge in Liter als BCD Wert aus.Hinweis: V = D(quadrat)*pi/4*h

a) Erstellen Sie einen Anschlussplan mit Messaufbau an den 80C517A
b) Schreiben Sie einen Struktogramm für diese Aufgabe
c) Schreiben Sie einen Prorgamm für den 80C517A

Ich habe wirklich absolut kein Schimmer wie ich die a)-c) lösen soll. 
Könnt mir z.B. sagen wie ich bei a) überhaupt vorgehen muss. ich weiß, 
dass ich irgendwie ein Multiplexer/Demultiplexer habe der Steuereingänge 
hat, Irgendwie habe ich einen taktflnkengesteuerten D_Flipflop zum 
speichern der einzelnen Bits, also des high und Low pegels. ich weiß im 
Prinzip gar nicht wie ich dazu noch ein Programm schreiben soll

Ich kenne mich mit den Assembler Befehlssatz zumidest aus

Vielen dank für eure Hilfe

: Verschoben durch User
von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Das hier ist kein Hausaufgaben- und auch kein "Ich habe im Unterricht 
lieber {mein Smartphone massiert|die schönen Schnecke aus der dritten 
Reihe angehimmelt|gefehlt|Zeitung gelesen} - jetzt muss mir jemand ganz 
dringend helfen !!111eineinself"-Forum.

Klingt vielleicht hart, ist es sicherlich auch, aber wenn Dir in einer 
Klausur tatsächlich komplett unlösbare Aufgaben gestellt werden, dann 
können die Deine Mitschüler auch nicht lösen und der zuständige Lehrer 
bekommt Ärger.

Solltest aber nur Du Probleme mit dem Verständnis haben, gibt es 
etwas, was Dich von Deinen Mitschülern unterscheidet. Na?

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Elektronik_Neuling schrieb:
> wir haben den
> Fall dass wir mit hexadezimaldarstellung also mit einem 16 bit rechner
> arbeiten.

Nö. Der 80C517 ist eine 8-bit Maschine wie alle MCS51 Derivate.

Mir scheint, du hast allerdings so gut wie nicht aufgepasst, denn diese 
Fragen sind ja nicht vom Himmel gefallen. Als Tipp: Du wirst einen Timer 
benötigen, einen genauen Taktoszillator und ein wenig Rechnerei, um 
Aufgabe 1 zu lösen.

Du wirst dich also mit der Onchip Peripherie des 80C517 beschäftigen 
müssen. AD Wandler und Timer vor allem.
Ansonsten gilt hier
Beitrag "Einheitlicher Umgang mit faulen Schülern etc.?"

: Bearbeitet durch User
von Falk B. (falk)


Lesenswert?

@ Elektronik_Neuling (Gast)

>es geht um das Programmieren eines Mikrocontrollers der Familie 80C517A
>von Siemens.

Einer der Dutzenden 8051 Kopien.

> ich weiß dass die maschine binär arbeitet, wir haben den
>Fall dass wir mit hexadezimaldarstellung also mit einem 16 bit rechner
>arbeiten.

???

> Wenn ich mir aber so meine Klausuraufgaben anschaue, fehlt mir
>jeglicher ansatz.

Schlecht.

>1)Realisieren Sie eine Zeitüberwachung für ein Uhrenpendel. Das
>Uhrenpendel hat einen Sollfrequenz von einem Hertz.Geben Sie den Fehler
>über die serielle Schnittstelle aus

>a) Erstellen Sie einen Anschlussplan an den 80C517A
>b) Schreiben Sie einen Struktogramm für diese Aufgabe
>c) Schreiben Sie einen Prorgamm für den 80C517A

Hier soll die Periodendauer des Pendels gemessen werden. Dazu hat man 
wahrscheinlich einen Sensor, der beim Durchschwingen einen digitalen 
Puls ausgibt. Wie der genau funktioniert ist nebensächlich, du sollst 
die Auswertung programmieren. Zeiten misst man mit einem Timer. Wenn es 
besonders genau sein soll, mit der Capture Compare Einheit, die fast 
alle Controller haben. Wenn also ein Capture-Ereignis erkannt wird, kann 
man das per Polling oder Interrupt feststellen. Dann liest man den 
gespeicherten Zeitstempel aus und bildet die Differenz zum vorherigen 
Zeitstempel. Das ist dann die Periodendauer. Die kann man dann per UART 
ausgeben. Für den Anfang reicht Polling, das ist einfacher. Das sollte 
als Ansatz genügen.

>2.) Realisieren Sie einen Tankfüllmessgerät. Pro dm Höhe(Länge) erhöht
>sich die Spannung um 0,5 V. Der Durchmesser beträgt 20 dm. Geben Sie die
>Füllmenge in Liter als BCD Wert aus.Hinweis: V = D(quadrat)*pi/4*h

Was nettes mit dem ADC.

>a) Erstellen Sie einen Anschlussplan mit Messaufbau an den 80C517A
>b) Schreiben Sie einen Struktogramm für diese Aufgabe
>c) Schreiben Sie einen Prorgamm für den 80C517A

ADC einlesen, in Volumen umrechnen und auf dem Terminal (UART) oder LCD 
ausgeben. Siehe auch Festkommaarithmetik.

>Ich habe wirklich absolut kein Schimmer wie ich die a)-c) lösen soll.

Dann hast du die ganze Zeit im Unterricht gepennt.

>Könnt mir z.B. sagen wie ich bei a) überhaupt vorgehen muss. ich weiß,
>dass ich irgendwie ein Multiplexer/Demultiplexer habe der Steuereingänge
>hat, Irgendwie habe ich einen taktflnkengesteuerten D_Flipflop zum
>speichern der einzelnen Bits, also des high und Low pegels.

Nö. Wenn gleich viel von dem Kram im uC drinsteckt, muss dich das als 
Programmierer keine Sekunde interessieren. Du willst programmieren, 
nicht den uC nachbauen.

> ich weiß im
>Prinzip gar nicht wie ich dazu noch ein Programm schreiben soll

Schon wieder gepennt? Oder Kreide holen gewesen?

>Ich kenne mich mit den Assembler Befehlssatz zumidest aus

Na dann leg mal los. Aber die Befehle kommen am Schluß. Arebite die 
Aufgabe in der Reihenfolge ab, wie virgegeben, dass passt schon.

von Paul B. (paul_baumann)


Lesenswert?

Rufus Τ. F. schrieb:
> Klingt vielleicht hart, ist es sicherlich auch, aber wenn Dir in einer
> Klausur tatsächlich komplett unlösbare Aufgaben gestellt werden, dann
> können die Deine Mitschüler auch nicht lösen und der zuständige Lehrer
> bekommt Ärger.

Absolut richtig. Laß es darauf ankommen. Wenn alle Anderen auch krachen 
gehen, dann ist derjenige, der das Rüstzeug hätte erklären sollen, ein 
Stümper. Diese Formulierungen lassen auch darauf schließen:

Elektronik_Neuling schrieb:
> a) Erstellen Sie einen Anschlussplan mit Messaufbau an den 80C517A
> b) Schreiben Sie einen Struktogramm für diese Aufgabe
> c) Schreiben Sie einen Prorgamm für den 80C517A

Kurz nach der sog. Wende mußte ich auf diese Weise auch einmal einen
Knilch, der sich Dozent nannte, "abschießen".

MfG Paul

von Falk B. (falk)


Lesenswert?

@ Paul Baumann (paul_baumann)

>Stümper. Diese Formulierungen lassen auch darauf schließen:

Wieso?

>> a) Erstellen Sie einen Anschlussplan mit Messaufbau an den 80C517A
>> b) Schreiben Sie einen Struktogramm für diese Aufgabe
>> c) Schreiben Sie einen Prorgamm für den 80C517A

Was ist daran zu beanstanden? Eine ganz normale Textaufgabe, bei der 
halt nicht alles vorgekaut ist.

von Adem B. (elektronik_neuling)


Lesenswert?

Ich konnte den Unterricht wegen deppressiven Störungen nicht besuchen, 
und zweitens möchte ich nur ein Ansatz/eine kleine Hilfe wie ich bei 
solchen Aufgaben vorgehen muss und keine ausgearbeitete Lösung der 
Aufgabe um gottes willen. Davon habe ich absolut gar nichts und das 
schadet mir.

Ich weiß z.b. nicht wie ich bei der Erstellung des Anschlussplans an den 
Messaufbau mit Berücksichtigung der Pinbelegung vorgehen muss und 
verstehe denn sinn und zweck eines Sprungbefehls und eines 
Unterprogramms nicht. Ich bedanke mich ganz herzlich für diejenigen die 
mich bei meiner Anfrage verstanden haben.

MFG

Elektronik_Neuling

von Paul B. (paul_baumann)


Lesenswert?

Falk B. schrieb:
> Was ist daran zu beanstanden?

Das:
> Schreiben Sie einen Struktogramm
> Schreiben Sie einen Prorgamm

MfG Paul

von Falk B. (falk)


Lesenswert?

@Adem Bektas (elektronik_neuling)

>Ich konnte den Unterricht wegen deppressiven Störungen nicht besuchen,

Wenn das wirklich stimmt, fehlt dir ein Jahr Unterricht. Das kann man 
nicht einfach mal so nachholen oder gar mit ein bischen Hausaufgaben und 
Übung ersetzen.

>und zweitens möchte ich nur ein Ansatz/eine kleine Hilfe wie ich bei
>solchen Aufgaben vorgehen muss und keine ausgearbeitete Lösung

OK.

>Ich weiß z.b. nicht wie ich bei der Erstellung des Anschlussplans an den
>Messaufbau mit Berücksichtigung der Pinbelegung vorgehen muss

Nun, man muss die Signale dort anschließen, wo man sie sinnvoll 
verarbeiten kann. Den digitalen Sensor für die Pendelmessung muss man 
dort anschließen, wo auch die Input Capture Funktion beim deinem 
Mikrocontroller eingebaut ist. Das gleiche gilt für den AD-Wandler 
Eingang.

> und
>verstehe denn sinn und zweck eines Sprungbefehls und eines
>Unterprogramms nicht.

Uffff! Wenn dir DERMAßEN Grundlagen fehlen, dann darfst du diese 
Aufgabenstellungen hier vorerst vergessen. Dann musst du erstmal das 
kleine 1x2 des Programmierens lernen. Fang mit "Hello World" an.

von Falk B. (falk)


Lesenswert?

@ Paul Baumann (paul_baumann)

>> Was ist daran zu beanstanden?

>> Schreiben Sie einen Struktogramm
>> Schreiben Sie einen Prorgamm

Das sind Tippfehler vom OP, eher nicht vom Dozenten. Ausserdem sind wie 
hier nicht bei den Germanisten, wenn gleich mehrheitlich bei den 
Germanen ;-)

von M. S. (martin_der_bastler) Benutzerseite


Lesenswert?

Adem B. schrieb:
> möchte ich nur ein Ansatz/eine kleine Hilfe wie ich bei solchen
> Aufgaben vorgehen muss und keine ausgearbeitete Lösung der Aufgabe um
> gottes willen. Davon habe ich absolut gar nichts und das schadet mir.

Dann stelle bitte genauer dar, woran es hapert bzw. wo genau Deine
fehlstundenbedingten Wissenslücken sind. Das Ausgangsposting klang
nämlich für mich schon eher nach "Ich weiss so gut wie nix und brauche
Lösung für Problem 1 a-c und 2 a-c. Und wenn ich schon am rant-en bin:
Ein aussagekräftiges Subject ("Wichtige Anfrage" ist das Gegenteil
davon) erhöht die Wahrscheinlichkeit für zielführende Antworten.

> Ich weiß z.b. nicht wie ich bei der Erstellung des Anschlussplans an
> den Messaufbau mit Berücksichtigung der Pinbelegung vorgehen muss

Ohne den Siemes-Controller zu kennen: Du musst die Pins zweckmässig
bewschalten. Beispielsweise ist es sinnvoll, an den Pins für die
Spannungsversorgung die Versorgungsspannung anzuschliessen, an den
Taktpins deine Taktversorgung, an Eingänge deinen Sensor etc.

> und verstehe denn sinn und zweck eines Sprungbefehls und eines
> Unterprogramms nicht.

Naja, Sprungbefehle sind schon nützlich, beispielsweise hast Du
einen Sensor, dessen Messwert mit einem Grenzwert verglichen wird,
wenn der überschritten ist, dann soll eine rote Lampe leuchten.

Dazu gibt es zum Beispiel einen bedingten Sprungbefehl, nennen wir
ihn SPRINGGRÖ, der springt, wenn der Vergleichswert grösser als
die Vorgabe ist. Das Programm könnte dann so aussehen:

PROGRAMMBEGINN:
LAMPEAUS;
LESE Sensorwert ins Arbeitsregister ein
SPRINGGRÖ Grenzwert 'LAMPEEIN'
SPRINGE 'PROGRAMMBEGINN'
PROGRAMMENDE!

LAMPEEIN:
PINEINSCHALT Pin_an_Lampe;
RETURN;

Das ist zwar unelegant (die Lampe ist immer ausgeschaltet und wird
nur kurz durch das Unterprogramm eingeschaltet), funktioniert aber
prinzipiell. Mit einem DELAY im Unterprogramm wird es schon ein
bisschen besser. Etc...

MfG, MdB

: Bearbeitet durch User
von Timm T. (Gast)


Lesenswert?

Falk B. schrieb:
> Das sind Tippfehler vom OP, eher nicht vom Dozenten.

So? Na dann schreib doch mal ein Struktogramm...

Adem B. schrieb:
> Ich konnte den Unterricht wegen deppressiven Störungen nicht besuchen

Was ne blöde Ausrede! Dann laß Dir halt ein Jahr zusätzlich geben und 
mach das nochmal. Bei ernsthaften gesundheitlichen Gründen genehmigt das 
die HS auch, ansonsten liegts wohl an Dir.

Falk B. schrieb:
> Wie der genau funktioniert ist nebensächlich, du sollst
> die Auswertung programmieren.

Zumindest fehlt schonmal die Info, ob der Sensor 1 (maximaler Ausschlag) 
oder 2 (Nulldurchgang) Impulse pro Periode liefert. Für die Bestimmung 
der Gangabweichung nicht ganz unerheblich. Und so eine typische beliebte 
Falle, wo der Prof dann "Ätsch, daran hast Du nicht gedacht. Sechs, 
setzen." sagen kann.

von Marek N. (Gast)


Lesenswert?

Standardliteratur für 8051-er ist das "Mikrocontroller-Kochbuch" von 
Andreas Roth.

Die Aufgaben sind nicht so, dass man sie aus dem Stehgreif bearbeiten 
könnte, nur weil man mal was über Bin und Hex gehört hat.
Den enstsprechenden Controller mit Beispielanwendungen und Peripherie 
werdet ihr sicher eine Zeitlang durchgekaut haben.

von Mani W. (e-doc)


Lesenswert?

Elektronik_Neuling schrieb:
> ich bin absoluter Neuling in Sachen elektronik, Wenns um das Verständnis
> von Grundlagen geht stöß ich schon auf meine Grenzen,

Ohne Grundlagen geht gar nichts weiter...


Elektronik_Neuling schrieb:
> es geht um das Programmieren eines Mikrocontrollers


Na, dann brauchst eigentlich nur programmieren können, obwohl
keine Ahnung von Strom, Spannung, Widerstand - also URI...


Du kannst auch Dein Leben programmieren, obwohl Du die
Grundlagen nicht verstanden hast!


So wird das NICHTS!


Ich bin Analogtechniker, habe mit Programmen nichts am Hut, aber
ich weiß, wie ich mit ein paar Bauteilen etwas funktionelles
zusammenbauen kann, dafür braucht man viele Grundlagen...


Es ist sicher besser, Du wirst Verkäufer, dann kannst Du mangels
Grundlagen irgend einem Trottel etwas aufschwatzen, von dem auch
Du selbst keine Ahnung hast !!!


Such Dir einen anderen Beruf!



Mani

von Mani W. (e-doc)


Lesenswert?

Falk B. schrieb:
> Fang mit "Hello World" an.

vielleicht mit Halloween, da kann man ja auch etwas anderes
sein als Grundlagenverweigerer...

: Bearbeitet durch User
von Fatal E. (Firma: Fatal Error) (fatalerror)


Lesenswert?

>Es ist sicher besser, Du wirst Verkäufer, dann kannst Du mangels
>Grundlagen irgend einem Trottel etwas aufschwatzen, von dem auch
>Du selbst keine Ahnung hast !!!

Sonst ist unser Mani W. doch immer der Friedensengel in Person und um 
salbungsvolles Geseire nicht verlegen.

Und jetzt pisst du anderen Leuten sogar unter Diffamierung ganzer Berufe 
wie z.B. Verkäufer ans Bein?!

Ziemlich erbärmlich für dein sonst zur Schau gestelltes 
Selbstverständnis.

von Adem B. (elektronik_neuling)


Lesenswert?

Hallo Manni W,

wenn du mit Grundlagen wie Strom, Spannung Widerstand, Sensorik 
verstehst, dann hast du mich missverstanden. das habe ich nicht gemeint. 
Ich habe mich speziell auf die TTL Logik bezogen. Ich weiß dass ich bei 
bestimmten Spannungswerten einen High bzw. Low pegel habe. Aber die 
Elektrotechnischen Grundlagen dürften schon drin sein bei mir. Ich habe 
mich jetzt auf den Acker gehauen und frische mir mein Assembler 
Verständnis auf. Aber ich danke dir für deine tollen Bemerkungen, man 
sollte alle Berufe wertschätzen. wenns kein Verkäufer auf der Welt gibt, 
dann bekommen wir kein Essen, muss man bedenken. Also aufpassen!

Natürlich ist mein eröffneter Beitrag nicht mit den Norm des Forums 
angemessen, in Zukunft werde ich darauf achten.


Vielen Dank für diejenigen dir mir weitergeholfen haben

: Bearbeitet durch User
von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

naja, falk hat dir ja in seinem Beitrag schon die entsprechenden 
Hinweise gegeben, wie der Rahmen-Ablauf deiner beiden Aufgaben ist.

Falk B. schrieb:

> (Aufgabe 1)

> Hier soll die Periodendauer des Pendels gemessen werden. Dazu hat man
> wahrscheinlich einen Sensor, der beim Durchschwingen einen digitalen
> Puls ausgibt. Wie der genau funktioniert ist nebensächlich, du sollst
> die Auswertung programmieren. Zeiten misst man mit einem Timer. Wenn es
> besonders genau sein soll, mit der Capture Compare Einheit, die fast
> alle Controller haben. Wenn also ein Capture-Ereignis erkannt wird, kann
> man das per Polling oder Interrupt feststellen. Dann liest man den
> gespeicherten Zeitstempel aus und bildet die Differenz zum vorherigen
> Zeitstempel. Das ist dann die Periodendauer. Die kann man dann per UART
> ausgeben. Für den Anfang reicht Polling, das ist einfacher. Das sollte
> als Ansatz genügen.

"verstehst" du denn seine Hinweise, und wärest du in der Lage, daraus 
ein Struktogramm zu erstellen? Ein Struktogramm ist halt einfach nur 
eine bestimmte (strukturierte) Darstellungsform eines Ablaufplanes.

bedenke: "programmieren" ist zwar auch das benennen spezieller 
programmierbefehle (in Assembler, C oder welche Sprache auch immer), 
aber das kommt "ganz zum Schluss". Zu allererst einmal musst du dir des 
Ablaufs bewust werden.


Überlege dir dazu als Übung [zur Strukturierung und zum "Detail-denken"] 
z.B. mal folgende "einfache" Aufgabenstellung: Das Schälen einer Banane. 
Du (als Mensch) greifst mit der linken Hand eine Banane am Frucht"ende", 
und mit der rechten machst du nun ....

Eine Machinensteuerung, welche zwei Roboterarme hat, kennt das alles 
nicht, man muss es sehr genau vordenken und beschreiben was zu tun ist.

ein Ablauf wär dann in etwa:
1. Identifziere Anfang und Ende der Banane
2. Bewege deinen Arm über die Banane (sie liegt auf dem Tisch)
3. greife mit der linken Hand den Anfang der Banane
4. Bewege deinen Arm über den Tisch, so daß der rechte Arm frei tätig 
werden kann
....

--> das der "Schritt 2." zur Ansteuerung eines Roboter-Armes (anstelle 
deines menschlichen Armes bzw. Hand) eine komplexe Teil-Aufgabe ist, und 
dass dazu komplizierte Maschinenbefehle benötigt werden, ist erst mal 
egal. Fakt ist auf jeden Fall, dass dieser Schritt 2 elementar notwendig 
ist.

Genau so ist es mit deinen Aufgabenstellungen: denke genau vor, was 
alles in einzelnen Schritten zu tun ist. Beschreibe diese, und gehe die 
einzelne Abfolge immer wieder gedanklich durch, ob das gewünschte raus 
kommt.

Wenn dann ales genau durchdacht ist, kannst du dir Gedanken über 
zugehörige Programmierbefehle, oder Registerbelegungen machen.

: Bearbeitet durch User
von Mani W. (e-doc)


Lesenswert?

Ich entschuldige mich mal für meinen scheinbar schlechten Tag,
wollte niemandem zu nahe steigen und auch niemand bloß stellen...


Tut mir echt leid!

von Karl H. (kbuchegg)


Lesenswert?

Wegstaben V. schrieb:
> naja, falk hat dir ja in seinem Beitrag schon die entsprechenden
> Hinweise gegeben, wie der Rahmen-Ablauf deiner beiden Aufgaben ist.
>
> Falk B. schrieb:
>
>> (Aufgabe 1)
>
>> Hier soll die Periodendauer des Pendels gemessen werden. Dazu hat man
>> wahrscheinlich einen Sensor, der beim Durchschwingen einen digitalen
>> Puls ausgibt. Wie der genau funktioniert ist nebensächlich, du sollst
>> die Auswertung programmieren. Zeiten misst man mit einem Timer. Wenn es
>> besonders genau sein soll, mit der Capture Compare Einheit, die fast
>> alle Controller haben. Wenn also ein Capture-Ereignis erkannt wird, kann
>> man das per Polling oder Interrupt feststellen. Dann liest man den
>> gespeicherten Zeitstempel aus und bildet die Differenz zum vorherigen
>> Zeitstempel. Das ist dann die Periodendauer. Die kann man dann per UART
>> ausgeben. Für den Anfang reicht Polling, das ist einfacher. Das sollte
>> als Ansatz genügen.
>
> "verstehst" du denn seine Hinweise, und wärest du in der Lage, daraus
> ein Struktogramm zu erstellen? Ein Struktogramm ist halt einfach nur
> eine bestimmte (strukturierte) Darstellungsform eines Ablaufplanes.

Wichtig:
Dieses Struktogramm muss auch erst mal überhaupt nichts mit einem 
Computer zu tun haben. Das ist einfach erstmal nur ein formales 
'Kochrezept' wie man vorgeht. Es ist noch nicht falsch, wenn die erste 
Version eines Struktogramms dafür geeignet wäre die Fragestellung zu 
beatworten: Wie würde ich als Mensch das machen, wenn ich diese 
Aufgabenstellung lösen müsste und welche Hilfsmittel brauche ich dazu?
Offenbar braucht man ja eine Uhr und irgendeinen Mechanismus, mit dem 
man zweifelsfrei eine immer gleiche Schwingposition des Pendels 
feststellen kann. Mit diesen beiden Hilfsmitteln, wie ist dann der 
Ablauf, wenn du als Mensch die Aufgabe lösen sollst? Welche Schritte 
gilt es in welcher Reihenfolge zu machen, welche Entscheidungen sind zu 
treffen? Welche Schritte hängen von diesen Entscheidungen ab.

Wenn du so ein Kochrezeot hast und das deiner kleinen Schwester (7 Jahre 
alt) vorlegen kannst und sie kann die Aufgabe ganz alleine lösen indem 
sie sich einfach nur an dieses Kochrezept hält, dann hast du dein erstes 
Zwischenziel erreicht.

Und erst dann, nachdem klar ist, wie die generelle Lösungsstrategie 
funktioniert, erst dann bewegt man sich in Richtung Programmieren, wobei 
auch hier man immer noch nicht beim Code schreiben ist.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Marek N. schrieb:
> dass man sie aus dem Stehgreif bearbeiten könnte
Sowas gibts ja auch gar nicht... ;-)

Ein Stegreif diente dagegen Reitern als Hilfsmittel. Und er mussste 
deshalb seine Aufgaben "aus dem Stegreif" erledigen können.

von Paul B. (paul_baumann)


Lesenswert?

Lothar M. schrieb:
> Und er mussste....

...aber ganz dringend, wenn es schon mit 3 "s" geschrieben werden soll.

MfG Paul

von Harald W. (wilhelms)


Lesenswert?

Adem B. schrieb:

> Ich habe mich speziell auf die TTL Logik bezogen.

Die ist schon seit über 30 Jahren obsolet.

von Peter D. (peda)


Lesenswert?

Adem B. schrieb:
> Ich konnte den Unterricht wegen deppressiven Störungen nicht besuchen,
> und zweitens möchte ich nur ein Ansatz/eine kleine Hilfe wie ich bei
> solchen Aufgaben vorgehen muss und keine ausgearbeitete Lösung der
> Aufgabe um gottes willen.

Eine kleine Hilfe ist nicht möglich, weil Dir die elementarsten 
Grundlagen fehlen.
Um ein Jahr Nichtteilnahme am Unterricht aufzuholen, brauchst Du ein 
Jahr.

von Dirk J. (dirk-cebu)


Lesenswert?

> wegen deppressiven Störungen
Kommt "deppressiv" von Depp?

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

Hallo Adem,

hast du denn dein Problem mittlerweile lösen können, bzw. einen 
Unterstützer/Erklärer gefunden?

: Bearbeitet durch User
von Adem B. (elektronik_neuling)


Lesenswert?

also ohne die Grundlagen zu lernen kann ich so lange auf der Aufgabe 
rumprobieren wie ich will. Deshalb bin bin ich noch in der 
Wiederholungsphase. ich verstehe folgende Sachen nicht

- wann ich bei einem Datenspeicher die direkte oder indirekte 
Addressierung benutzen muss. Zudem ist mir der Special Function 
Register, Data Pointer wildfremd. obwohl ich mir die Erklärungen dazu 
angeschaut habe. Hinzu kommt der Stackpointer.

und ja der Carry macht mir das leben schwer.

- Der Interrupt Flag???. Der Begriff Flag ist mir nicht geläufig.

ich habe mir die Erklärungen angeschaut. nicht weitergekommen.


Kann mir da jemand eine vernünftige Erklöärung zaubern. ICh bedanke mich 
sehr der Anfrage bei dir


MFG

von Winfried J. (Firma: Nisch-Aufzüge) (winne) Benutzerseite


Lesenswert?

ein flag ist ein bit mit welchem die cpu das programm  über verschieden 
Zustandsänderungen informiert.

"carry" steht für einen Accu übertrag .
mit "interrupt" flag wird angezeigt das ein Interrupt eingetroffen ist.
...

was das programm damit macht entscheidet der programmierer.

Die Kenntnis der Register und Flags sowie deren Verwendung ist 
essentiell für den ASM Programmierer. Die Benutzung höhrer 
Programmiersprachen befreit in aller regel davon.

Namaste

von Falk B. (falk)


Lesenswert?

@ Adem Bektas (elektronik_neuling)

>also ohne die Grundlagen zu lernen kann ich so lange auf der Aufgabe
>rumprobieren wie ich will.

So sieht es aus.

> Deshalb bin bin ich noch in der
>Wiederholungsphase.

Gut.

>- wann ich bei einem Datenspeicher die direkte oder indirekte
>Addressierung benutzen muss.

Direkte Adressierung nutzt man bei einfachen Variablen wie a, b, tmp und 
wie du sie immer nennen willst.

Die Indirekte Adressierung nimmt man bei Arrays, also Datenblöcken mit 
mehreren, gleichen Elementen, welche über den Namen + Index angesprochen 
werden. Also test(5) oder so. In Assembler ist die Schreibweise aber 
anders.

Such dir ein Tutorial mit Beispielen für den 8051, hier gibt es nur AVR 
und der hat einen andere ASM-Syntax. Das verwirrt dich nur.

> Zudem ist mir der Special Function
>Register,

Das sind alle, speziellen Hardware-Register, welche die Hardware steuer. 
Also die IO-Ports, Timer, UART, ADC etx. Diese haben spezielle Namen und 
sitzen logisch nicht in der CPU sindern im Speicher.

https://www.mikrocontroller.net/articles/Speicher#Register

> Data Pointer wildfremd.

Braucht man immer bei indirekter Adressierung. Damit zeigt man auf die 
Speicherstelle, welche man lesen oder schreiben will.

> obwohl ich mir die Erklärungen dazu
>angeschaut habe. Hinzu kommt der Stackpointer.

Auch ein Pointer, allerdings ein spezieller. Der zeigt auf einen 
Speicherbereich, wo beim Aufruf von Unterprogrammen oder Interrupts die 
Rücksprungadresse abgelegt wird. In Hochsprachen, teilweise auch 
Assembler, werden dort auch die Parameter von Funktionen/Unterprogrammen 
abgelegt, wenn diese aufgerufen werden.

>und ja der Carry macht mir das leben schwer.

Das Carry ist ein Statusbit, das anzeigt, daß bei der vorherigen 
Addition, Subtraktion, vergleich oder anderen arithmetischen Operation 
das Ergebnis größer als 8 Bit wurde. Beispiel: 250 + 10 = 260. Das passt 
nicht in ein 8 Bit Register, also ist das Ergebnis 4 + Carry=1. Man kann 
es auch als 9. Bit betrachten, welches bei einer Operation entsteht.

>- Der Interrupt Flag???. Der Begriff Flag ist mir nicht geläufig.

Das zeigt an, daß ein Interrupt bearbeitet werden kann. Wenn es 
ausgeschaltet ist, können keine Interrupts bearbeitet werden, es wird 
wie ein Hauptschalter.

Interrupt

von Peter D. (peda)


Lesenswert?

Adem B. schrieb:
> - Der Interrupt Flag???. Der Begriff Flag ist mir nicht geläufig.

Flag = Bit mit spezieller Bedeutung.
Z.B. Carry, Parity, Timer Overflow, Interrupt pending usw.

Im Gegensatz zu anderen MCs hat der 8051 aber kein Zero-Flag!
JZ und JNZ prüfen immer das ACC-Register.

Leih Dir mal "Das Microcontroller Kochbuch MCS51" aus, da ist alles 
erklärt.

von Dirk J. (dirk-cebu)


Lesenswert?

Meint Ihr, daß da noch was kommt von Adam Brezel? Ich glaube, er hat 
inzwischen erkannt, daß er nichts weiß und ist in seine Depressionen 
zurückgefallen.

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.