|
|
(88 dazwischenliegende Versionen von 7 Benutzern werden nicht angezeigt) |
Zeile 1: |
Zeile 1: |
− | == vorgeschlagene Gliederung ==
| |
| | | |
− | <span style="color:green;">grün = schon fertig</span>, <span style="color:orange;">orange = könnte noch ergänzt werden</span>
| |
| | | |
− | * <span style="color:green;">Einladung zur Diskussion...</span>
| + | == Befehlsausführung == |
− | (wird nach Beendigung des Artikels gelöscht)
| + | |
− | * <span style="color:green;">Einführung</span>
| + | Ich kann mir nicht vorstellen, dass der PIC (also PIC10...18) pipelined arbeitet, also wirklich bis zu 4 Befehle quasi gleichzeitig. So gut kenne ich die PICs nicht, aber soweit ich weiss wirklich 4 Oszillator Takte = 1 Rechentakt für einen Befehl, und erst danach kommt der nächste Befehl.--Besserwessi 13:17, 10. Dez 2013 (CET) |
− | ** <span style="color:green;">Bit, Byte, Nibble, Bin und Hex </span>
| + | |
− | ** <span style="color:green;">Speicher und Register </span>
| + | |
− | ** <span style="color:green;">Prozessor</span>
| + | |
− | ** <span style="color:green;">Assembler</span>
| + | |
− | ** <span style="color:green;">Grundbeschaltung</span>
| + | |
− | ** <span style="color:green;">Wahl des PICs</span>
| + | |
− | * Programm
| + | |
− | ** <span style="color:green;">Allgemeines</span>
| + | |
− | ** <span style="color:green;">Programdurchlaufdiagram</span>
| + | |
− | ** <span style="color:green;">Hauptprogramm</span>
| + | |
− | ** <span style="color:green;">Unterprogramm</span>
| + | |
− | *** <span style="color:green;">Initialisierung</span>
| + | |
− | **** <span style="color:green;">Variablen</span>
| + | |
− | **** <span style="color:green;">I/O Ports</span>
| + | |
− | **** <span style="color:green;">Hardware</span>
| + | |
− | *** <span style="color:green;">Einlesen</span>
| + | |
− | *** <span style="color:green;">Ausgeben</span>
| + | |
− | *** <span style="color:green;">Pause</span>
| + | |
− | *** <span style="color:green;">Schnittstellen und Treiber</span>
| + | |
− | *** <span style="color:green;">Tabellen</span>
| + | |
− | *** <span style="color:green;">EEPROM</span>
| + | |
− | * <span style="color:green;">Vorlage für MPASM</span>
| + | |
− | * <span style="color:green;">Für anderen PIC umschreiben</span>
| + | |
− | * <span style="color:orange;">Das erste...</span>
| + | |
− | * Interrupts
| + | |
− | ** Prinzip
| + | |
− | ** Quellen
| + | |
− | ** Interrupt Service Routine
| + | |
− | * Optimierung
| + | |
− | ** Speicherbedarf
| + | |
− | *** Programmspeicher
| + | |
− | *** RAM
| + | |
− | ** Ausführungszeit
| + | |
− | * Fehlersuche
| + | |
− | * Mid-Range (mit 14 bit Befehlslänge)
| + | |
− | ** <span style="color:green;">Kurzübersicht Prozessorbefehle</span>
| + | |
− | ** <span style="color:green;">Ausführliche Beschreibung zu den Befehlen</span>
| + | |
− | ** Besondere, oft gebrauchte Register
| + | |
− | *** ANSEL
| + | |
− | *** <span style="color:orange;"> STATUS </SPAN>
| + | |
− | *** TRIS
| + | |
− | *** PORT
| + | |
− | *** TIMER
| + | |
− | ** <span style="color:green;">Bänke (sowohl die bei mehr als 2k Befehle als auch die bei den normalen speicher bänken)</span>
| + | |
− | ** <span style="color:green;">Flagsüberprüfung im STATUS-Register</span>
| + | |
− | ** Codeschnipsel
| + | |
− | *** A/D-Wandler
| + | |
− | *** PWM
| + | |
− | *** Interrupts
| + | |
− | *** RS232 mit PC
| + | |
− | *** Tasten
| + | |
− | *** Mausrad
| + | |
− | *** Ausgabe auf LCD Displays
| + | |
− | **** Dot-Matrix
| + | |
− | **** Grafik
| + | |
− | **** Handy
| + | |
− | *** Hilfsmittel
| + | |
− | **** PIC Miniterminal (mit Dot-Matrix LCD und drei Tasten, benötigt nur 2 I/O Pins und 2 ICs)(Hardware)
| + | |
− | **** PIC RAM Monitor (mit eigenem Interrupt, zeigt Registerinhalte sogar wenn das Programm in endloser Schleife läuft, was besonders für Anfänger nutzlich ist, benötigt Display oder PIC Miniterminal)
| + | |
− | **** PIC Trainer (Hilfswerkzeug für PIC Versuchsprogramme, benötigt PIC Miniterminal)
| + | |
− | **** PIC Profiler (zum messen von Ausführungszeit zwischen call und return, benötigt Display oder PIC Miniterminal)
| + | |
− | * High-End (mit 16 bit Befehlslänge)-->(?)
| + | |
| | | |
− | == Allgemeines ==
| |
− | -------
| |
− | ... gelöschte Diskussion ...
| |
| ---- | | ---- |
− | joa. passt doch. ich mach dir dann wieder paar bilder. mal schaun ob ich es heute noch schaffe. [[Benutzer:Benedikt.Seidl|Benedikt.Seidl]] 08:52, 1. Apr 2007 (CEST)
| |
− | -----
| |
− | Vielen Dank im voraus!:) Wenn Du die drei Symbole die im PAD auftreten einzeln kopieren kannst, müsste es ziemlich schnell gehen. Nach der neuer Gliederung müsste ich jetzt über Quellcode schreiben, also schon (aber nur) "call" und "goto" einführen. Sonst werde ich alles im Textform (Kommentar) schreiben. Ich meine, dass es unvermeindbar ist, weil irgendwan es sowieso anfangen wird. Ich habe noch eine Frage an Dich. Würdest Du die MPASM Direktiven erklären, die ich von "deinem" in "mein" Teil verschoben habe?[[Benutzer:PICture|PICture]] 09:33, 1. Apr 2007 (CEST)
| |
− | -----
| |
− | wie meinst du? ich mache halt noch eine erklärung für alle befehle, brauche nur noch bisschen zeit, werde heute leider nicht dazukommen, da ich unterwegs bin :-/ aber in absehbarer zeit werde ich auch noch die anderen befehle beschreiben, und dann mir ein neues thema suchen ;-) [[Benutzer:Benedikt.Seidl|Benedikt.Seidl]] 18:54, 1. Apr 2007 (CEST)
| |
− | ------
| |
− | Es hat sich schon erledigt. Ich habe es als unnötig gestuft und gelöscht. Ab jetzt wird ganz einfache Darstellung von PADs verwendet und es bleibt nur einer in Grafik zu verwandeln (PAD). Die alle anderen (PAD1, PAD2, PAD3, PAD4, und die noch kommen...) bleiben so, wie sie sind/werden. Und weiter würdest Du (hoffentlich) nichts mehr für mich zu tun haben. :)[[Benutzer:PICture|PICture]] 00:12, 2. Apr 2007 (CEST)
| |
− | ------
| |
− | jetzt wollte ich mir ein neues thema raussuchen, was ich noch schreiben könnte, aber muss irgendwie zugeben, dass ich mit den befehlen schon mit meinem latein am ende bin :-/ also ich könnte schon bisschen was schreiben, aber so richtig sicher bin ich mir dabei dann nicht immer. [[Benutzer:Benedikt.Seidl|Benedikt.Seidl]] 12:25, 5. Apr 2007 (CEST)
| |
− | ------
| |
− | Macht ja nichts. Wir arbeiten an dem Artikel bis zum Ende zusammen. Du hast mir schon viel geholfen, dann helfe ich Dir auch immer wieder. Ich versuche möglichst kurz das wichtigste schreiben, aber weiss ich selber nicht, ob das verständlich ist, da ich das alles sehr gut verstehe :). Was Dir nicht gefällt oder nicht genug verständlich ist kannst Du immer ändern (so wie bei der Grundbeschaltung) oder fragen (so wie mit den Buchstaben "C" und "F"). Wie Du sicher bemerkt hast, habe ich in den Befehlen auch ein bischen geändert. Jemand hat gesagt : "Es gibt keine dumme Fragen, nur dumme Antworten" und das stimmt!. Also keine Angst! :) Es gibt auch PN. Für mich ist Deine Meinung sehr wichtig! Ich denke, dass bis Interrupts sollte es schon für Anfänger ausreichen, bin mich aber auch nicht sicher wo eigentlich Ende vom Anfang ist. :) [[Benutzer:PICture|PICture]] 14:24, 5. Apr 2007 (CEST)
| |
− | -----
| |
− | wow! respekt! geht ja ganz schön schnell voran. das eine pad bekommst du auf jeden fall noch, brauche leider noch ein paar tage. noch dazu müsste ich langsam wirklich fürs abi lernen, aber solange noch andere dinge gehen, werde ich auch hier noch bisschen was machen ;-) [[Benutzer:Benedikt.Seidl|Benedikt.Seidl]] 12:37, 8. Apr 2007 (CEST)
| |
− | -----
| |
− | Mach Dir bitte mit dem Artikel keinen Stress, ich versuche bloss die freie Tage sinvoll nutzen.:). Es wird danach langsamer gehen, aber die Zeit ist nicht beschränkt. Sogar für die schon als fertig markierte Sachen schreibe ich immer wieder was dazu, was mir noch einfällt.[[Benutzer:PICture|PICture]] 16:11, 8. Apr 2007 (CEST)
| |
− | ----
| |
− | Bit, Byte, Nibble, Bin und Hex
| |
− | also ich würde schon die nummerierung der bits mit aufnehmen. habe mich lange gefragt, wie das funktioniert, weil man ja normalerweise von links nacht rechts zählt und mit 1 anfängt. [[Benutzer:Benedikt.Seidl|Benedikt.Seidl]] 21:28, 9. Apr 2007 (CEST)
| |
− | ----
| |
− | Natürlich! :) Die Numerierung der Bits ist bei jedem Prozessor gleich und fängt immer von links mit 0 (LSB). Ich habe schon eine Idee für erstes ASM Programm, das wird aber noch ein bischen dauern, weil ich das zuerst selber ausprobieren muss (und will). Aber es ist noch weit zum Ende des Artikels. [[Benutzer:PICture|PICture]] 09:27, 10. Apr 2007 (CEST)
| |
− | ----
| |
− | mein fehler. habe da wohl was verwechselt. sorry. die zahlen sind ja doch noch da :-/ [[Benutzer:Benedikt.Seidl|Benedikt.Seidl]] 12:52, 10. Apr 2007 (CEST)
| |
− | ----
| |
− | @Benedikt.Seidl
| |
| | | |
− | Schau, bitte, am Anfang des Artikels habe ich noch was neues eingefügt. Als Folge haben wir noch einen Autor (den Gärtner), der schon wichtige Sachen toll ergänzt hat.
| + | === Anmerkung von witkatz am 18.02.2014, 15:55: === |
− | | + | Die Befehlsausführung und das Pipelining sind in der folgenden Doku im Kapitel "4.3 Instruction Flow/Pipelining" beschrieben |
− | @Gärtner
| + | [http://ww1.microchip.com/downloads/en/DeviceDoc/33023a.pdf PICmicro Mid-Range MCU Family Reference Manual] |
− | | + | |
− | Wenn Du willst, kannst auch etwas neues, wass noch nicht grün gekenzeichnet ist, anfangen. :)
| + | |
− | [[Benutzer:PICture|PICture]] 13:17, 10. Apr 2007 (CEST)
| + | |
− | ----
| + | |
− | wow! glückwunsch! http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=14953 [[Benutzer:Benedikt.Seidl|Benedikt.Seidl]] 16:13, 10. Apr 2007 (CEST)
| + | |
− | ----
| + | |
− | Für Dich das gleiche ! Trotzdem schreibe ich weiter.:)[[Benutzer:PICture|PICture]] 16:59, 10. Apr 2007 (CEST)
| + | |
− | ----
| + | |
− | Keine Angst, hab auch neues geschrieben ;) Hat wer eine bessere Idee bezüglich Textformation von SFRs? hab mich mal am Datenblatt bedient. Die Assemblerbefehle hab ich heute schon in einen eigenen Artikel geschrieben. Da fehlen nur noch Codeschnippsel. find das Übersichtlicher und werde die DETAILs zu den befehlen von hier bald RAUSLÖSCHEN. (wenn ich mit dem anderen Artikel fertig bin.) --[[Benutzer:Der Gärtner|Der Gärtner]] 18:06, 10. Apr 2007 (CEST)
| + | |
− | ----
| + | |
− | :Die Asführliche Beschreibung zu den Befehlen hat der Benedikt.Seidl geschrieben, aber ich glaube, dass er nichts dagegen hätte. Dann werden die Codeschnipsel auch dorthin verschoben, oder ? Es wäre gut wenn Du das Link zu Deinem Artikel in diesen Artikel einfügst. Ich weiss nicht wo ich später die Hifsmittel (kleine Programmierwerkzeuge) hin schreiben soll.[[Benutzer:PICture|PICture]] 18:33, 10. Apr 2007 (CEST)
| + | |
− | ----
| + | |
− | :ich finde es schon sehr schade, weil das schon viel arbeit gemacht hat hier. das tabellenlayout hat auch vor und nachteile. aber ich versteh nicht, warum du nicht auf meine beschreibung und code-schnipsel zurückgreifst, bzw. meine befehlsliste ergänzt hast? deine infos bzw. beschreibungen sind wahrscheinlich schon technischer und auch ok, aber für den normalen benutzer oder einsteiger sehe ich es eher als hindernis, wenn so komplizierte beschreibungen verwendet werden.
| + | |
− | : trotzdem finde ich es schön, dass du mitarbeitest, gärtner ;-) [[Benutzer:Benedikt.Seidl|Benedikt.Seidl]] 19:18, 10. Apr 2007 (CEST)
| + | |
Ich kann mir nicht vorstellen, dass der PIC (also PIC10...18) pipelined arbeitet, also wirklich bis zu 4 Befehle quasi gleichzeitig. So gut kenne ich die PICs nicht, aber soweit ich weiss wirklich 4 Oszillator Takte = 1 Rechentakt für einen Befehl, und erst danach kommt der nächste Befehl.--Besserwessi 13:17, 10. Dez 2013 (CET)