Aus RN-Wissen.de
Wechseln zu: Navigation, Suche
Laderegler Test Tueftler Seite

(vorgeschlagene Gliederung)
(vorgeschlagene Gliederung)
Zeile 64: Zeile 64:
 
* <span style="color:orange;">Hilfsmittel</span>
 
* <span style="color:orange;">Hilfsmittel</span>
 
** <span style="color:green;">PIC Miniterminal</span> (mit Dot-Matrix LCD und drei Tasten, benötigt nur 2 I/O Pins vom PIC) (Hardware)
 
** <span style="color:green;">PIC Miniterminal</span> (mit Dot-Matrix LCD und drei Tasten, benötigt nur 2 I/O Pins vom PIC) (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 PIC Miniterminal)
+
** <span style="color:green;">PIC RAM Monitor</span> (mit eigenem Interrupt, zeigt Registerinhalte sogar wenn das Programm in endloser Schleife läuft, was besonders für Anfänger nutzlich ist, benötigt PIC Miniterminal)
 
** PIC Trainer (Hilfswerkzeug für PIC Versuchsprogramme, benötigt PIC Miniterminal)
 
** PIC Trainer (Hilfswerkzeug für PIC Versuchsprogramme, benötigt PIC Miniterminal)
 
** PIC Profiler (zum Messen der Ausführungszeit von UPs, benötigt Display oder PIC Miniterminal)
 
** PIC Profiler (zum Messen der Ausführungszeit von UPs, benötigt Display oder PIC Miniterminal)

Version vom 6. Mai 2007, 08:20 Uhr

vorgeschlagene Gliederung

grün = schon fertig, orange = wird bzw. könnte noch ergänzt werden

  • Einladung zur Diskussion...

(wird nach Beendigung des Artikels gelöscht)

  • Einführung
    • Bit, Byte, Nibble, Bin und Hex
    • Speicher und Register
    • Prozessor
    • Assembler
    • Grundbeschaltung
    • Konfiguration
    • Wahl des PICs
  • Programm
    • Allgemeines
    • Programdurchlaufdiagram
    • Hauptprogramm
    • Unterprogramm
      • Initialisierung
        • Variablen
        • I/O Ports
        • Hardware
      • Einlesen
      • Ausgeben
      • Schleifen
      • Pause
      • Tabellen
      • Interrupt
        • Prinzip
        • Quellen
        • Interrupt Service Routine
      • Schnittstellen und Treiber
    • Vorlage für MPASM
    • Das erste...
    • Für anderen PIC umschreiben
    • Einbinden
    • Fehlersuche
    • Optimierung
      • Speicherbedarf
        • Programmspeicher
        • RAM
      • Ausführungszeit
  • Mid-Range (mit 14 bit Befehlslänge)
    • Kurzübersicht Prozessorbefehle
    • Ausführliche Beschreibung zu den Befehlen
    • Besondere, oft gebrauchte Register
      • STATUS
      • OPTION_REG
      • PORT
      • TRIS
      • INTCON
    • Bänke (sowohl die bei mehr als 2k Befehle als auch die bei den normalen speicher bänken)
    • Flagsüberprüfung im STATUS-Register
    • Codeschnipsel
      • A/D-Wandler
      • Hex Dec Wandlung
      • EEPROM
      • PWM
      • Interrupts
      • RS232 mit PC
      • Mausrad
      • Handy Display
  • Hilfsmittel
    • PIC Miniterminal (mit Dot-Matrix LCD und drei Tasten, benötigt nur 2 I/O Pins vom PIC) (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 PIC Miniterminal)
    • PIC Trainer (Hilfswerkzeug für PIC Versuchsprogramme, benötigt PIC Miniterminal)
    • PIC Profiler (zum Messen der Ausführungszeit von UPs, benötigt Display oder PIC Miniterminal)
  • High-End (mit 16 bit Befehlslänge)-->(?)

Allgemeines


... gelöschte Diskussion ...


mein fehler. habe da wohl was verwechselt. sorry. die zahlen sind ja doch noch da :-/ 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.

@Gärtner

Wenn Du willst, kannst auch etwas neues, wass noch nicht grün gekenzeichnet ist, anfangen. :) PICture 13:17, 10. Apr 2007 (CEST)


wow! glückwunsch! http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=14953 Benedikt.Seidl 16:13, 10. Apr 2007 (CEST)


Für Dich das gleiche ! Trotzdem schreibe ich weiter.:)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.) --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.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 ;-) Benedikt.Seidl 19:18, 10. Apr 2007 (CEST)

@ Gärtner

Ich denke auch, dass Löschen nicht nötig ist und Dein Artikel wunderbar als Nachschlagewerk benutzt werden kann, wenn sein Link in diesem Artikel eingefügt wird.PICture 19:31, 10. Apr 2007 (CEST)


@ Gärtner

Erst heute habe ich Dein Artikel aufmerksam durchgelesen und folgendes nicht gut gefunden:

- die Wörter "verundert", "verodert" und "inklusiv verodert" sind vielleicht "cool" aber für jemanden die die logische Operationen gar nicht kennt, ganz unverständlich.

- bei "call" und "retlw" ist überhaupt nichts über funktionsweise im ASM Programm geschrieben, nur über Register, was nicht besonders wichtig ist. Bei "retfie" fehlt die wichtige Information, dass ausführen des Befehls das Bit GIE setzt, was die Interrupts wieder erlaubt.

- bei "clrw" ist falsches Register und bei "end" falsche Funktion gennant. Ausserdem, ich kenne Keine Pseudobefehle, sondern Direktiven für Assemblerprogramm.

Ohne Beipielen vom Code finde ich das ganze ungeeignet für Anfänger. Bleiben wir, bitte, in dem Artikel, der vor allem für Anfänger vorgesehen ist, bei der ausführlicher Beschreibung vom Benedikt.Seidl.PICture 09:08, 11. Apr 2007 (CEST)


Code kommt noch, und fehler sind echt vorprogramiert gewesen :) Ich hab noch einiges an Dingen vor gehabt, die sowieso hier stehen. Die Begriffe "verundet" und "verodert" sind die einzigen, die ich jemals gehört habe, und JA, ich hab vor beispiele zu Schreiben / vom Seidl zu nehmen. Und wenn ich so scharf aufs Löschen wäre, dann hätt ichs schon gemacht :P

Den Begriff "Pseudobefehle" hab ich vom Sprut, kann ich ruhig ändern.

Werd heute da einiges ergänzen und die Register in diesem Beitrag weiter machen. --Der Gärtner 11:09, 11. Apr 2007 (CEST)


@Gärtner

Das hört sich sehr gut an. Deine Beschreibung von Befehlen ist auch nötig, da kann man sofort die Beschreibung für ein Befehl lesen, das man braucht. Sie hat aber sehr langen Inhaltverzeichnis, länger, als dieser ganzen Artikel. Deswegen finde ich die Idee, das getrennt vom Artikel zu machen sehr gut.:) Übrigens, für mich ist der Sprut kein Experte und ich versuche immer mich an der Dokumentation vom Microchip (z.B. MPASM) zu halten um das ganze einheitlich zu gestalten. Es wäre auch eine Möglichkeit, um unnötige Arbeit zu vermeinden, einfach die ganze Beschreibung vom Seidl in Dein Artikel zu übernehmen (eventuell bischen ergänzen) und danach von unserem Artikel löschen und in dem Menüpunkt "Ausführliche Beschreibung zu den Befehlen" nur den Link zu Deinem Artikel lassen. Das scheint mir sogar optimale Lösung zu sein. Ich habe genauso bei "Interface und Treiber" gemacht. Ich werde erst am Wochenende wieder aktiv.PICture 19:02, 11. Apr 2007 (CEST)


Habe den Register INTCON beschrieben... --Der Gärtner 09:07, 12. Apr 2007 (CEST)


Habe schon dort bischen geändert... Hoffentlich gefällt Dir. :)PICture 09:56, 12. Apr 2007 (CEST)


Ich würde die Register ANSEL und TIMER nicht speziell und so alleine beschreiben. Die gehören entweder zu den ADCs oder zu den einzelnen Timern. "ANSEL" ist z.b. einer von mind. 4 Registern, die von den ADCs benutzt werden. das Selbe gilt für Timer (stichwort TMR0-2 unterschiedliche Architektur/CCPM/PWM...)

@PICture: passt sehr gut, man sieht ich hab die Matura, aber auch, dass ich NICHT in Deutsch maturiert habe - da fehlts an Retorik, Grammatik und Einfühlungsvermögen für nichteingeweihte beim schreiben ;) --Der Gärtner 22:48, 12. Apr 2007 (CEST)


Kleine Frage am Rande, alle Pins an allen Ports der Midrangeserie sind BIDIREKTIONAL - oder...? Ich bin über einen 18F gestolpert, der da aus der Reihe tanzt. (4550er, die USB-Pins...)--Der Gärtner 22:53, 12. Apr 2007 (CEST)


@Gärtner

"Nobody is perfect". Beim jedem Lesen des Artikels finde ich Fehler die ich bisher übersehen habe. Überprüfe noch Deine Logiktabelle für XOR. So wie ich weiss, 1,1->0. XAND kenne ich nicht.

Wenn es um Mid-Range PICs geht, da sind alle Pins an allen Ports bidirektional. Aber bei fast allen diesen PICs gibt es einen Portpin, der nur open drain ist (z.B. beim 12F629 GPIO,3) und ohne pull-up keine 1 ausgeben kann. Übrigens, was sind "Fusebits" ? Ich (und wahrscheinlich jeder Anfänger auch) habe noch nicht gehört. Ich vermute, dass sich hier um "configuration bits" handelt, es müsste aber irgendwo in unserem Artikel definiert werden. Vielleicht am Ende des Artikels machen wir noch ein "Wörterbuch" für Anfänger ?

Ich freue mich sehr, dass immer mehr Autoren des Artikels gibt. Der nächste, aber fast sicher nicht der letzte, ist der BMS, der gerade ein Codeschnipsel für ADC geschrieben hat. Je mehr Autoren um so besser. Die vorgeschlagene Gliederung ist noch offen und kann jederzeit von jedem geändert werden (z.B. bei der Registerbeschreibung)

@BMS

Dein Codeschnipsel finde ich sehr gut, nur Kleinigkeit gefällt mir nicht: die Kommentare zu den Befehlen befinden sich dazwischen und nicht wie üblich rechts, was den Codefragment schwer durchschaubar macht. PICture 07:50, 13. Apr 2007 (CEST)


@Gärtner

Heute früh habe ich Deinen Artikel durchgelesen und mehrere Fehler gefunden. PICture 07:20, 14. Apr 2007 (CEST)


codeschnipsel werd ich gleich ändern (kommentare) bin erst wieder am montag da BMS 13:35, 17. Apr 2007 (CEST)


@BMS

Ich habe wieder "ein bischen" geschrieben. Wenn Du Zeit hättest, lese es, bitte, durch und eventuell verbessere oder lösche was Du nicht gut findest. Vielen Dank im voraus.:)PICture 10:21, 23. Apr 2007 (CEST)


zu: Erklärungen in diesem Artikel.
Begriffe wie Bit sind schon umfangreich an anderer Stelle erklört, daher wäre es evtl. sinnvoller, lediglich einen Verweis dorthin vorzusehen, statt einer eigenen Erklärung.
z.B. BIT: http://de.wikipedia.org/wiki/Bit
Gruß Andreas


diese meinung kann ich leider nicht mit dir teilen. als anfänger reicht einem eine kurze erklärung, und man will auch nicht den ganzen (sehr langen) wiki artikel dazu druchlesen, weil man auch gar nicht weiß, was alles wichtig für einen ist. Benedikt.Seidl 12:35, 29. Apr 2007 (CEST)


Ich habe "mein" Teil übers Programm schon beendet. Jetzt bleiben mir nur noch Hilfsmittel übrig. Das wird aber ein bischen dauern, da ich die Programme vom PIC18F252 fur Mid-Range umschreiben und testen muss. Werden wir überhaupt etwas über High-End schreiben?PICture 05:16, 30. Apr 2007 (CEST)


@Gärtner

Ich habe festgestellt, dass von wichtigen Register noch das "OPTION_REG" fehlt. Vielleicht könntest Du das auch, so schön wie bisherige, beschreiben?

@Benedikt.Seidl

Du hast im Codeschnipsel das "PWM" und "RS232" vorgeschlagen. Ich denke, dass für Anfänger das mit "RS232" überflüssig, aber das mit "PWM" sicher interessant wäre. Oder wird es gestrichen? PICture 02:15, 2. Mai 2007 (CEST)



LiFePO4 Speicher Test