Fragen zu SPIN

Du hast ein Betriebssystem für den Hive geschrieben oder beschäftigst dich mit den grundlegenden Systemfunktionen, dann bist du hier richtig!
Benutzeravatar
PIC18F2550
Beiträge: 2832
Registriert: Fr 30. Sep 2011, 13:08

Re: Fragen zu SPIN

Beitrag von PIC18F2550 »

Code: Alles auswählen

  outa[HW#D7..HW#D0] := 0                            ' Datenbus auf 0 setzen
Besser so? in den Konstanten sind ja Zahlen drinn und die gehen ja von 0-31. Eindeutig zuviel PASM gekaut.

Code: Alles auswählen

   waitpeq(1<HW#BEL_CS + 1<HW#BUS_WR, 1<HW#BUS_WR, 0)   '/CS + WR
Hier müsste ich doch eigendlich in Binärmuster umrechnen da hier 0-$FFFFFFFF möglich sind. Ich hoffe das das so funktioniert.Oder sollte ich lieber + durch | ersetzen?

Ansonnsten muß ich noch Konstanten Anlegen.

Dein Code ist natürlich richtig. :oops:
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
kuroneko
Beiträge: 202
Registriert: Sa 22. Okt 2011, 13:05
Wohnort: FN, Germany

Re: Fragen zu SPIN

Beitrag von kuroneko »

Fuer waitpxx reicht in der Regel e.g. waitpne(|< pin, |< pin, 0) oder eben waitpne(1 << pin, 1 << pin, 0). Falls pin eine Konstante ist dann ist auch waitpne(constant(1 << pin), constant(1 << pin), 0) moeglich es sei denn Du definierst die Masken gleich als Konstante(n). Ob + oder | ist Deine Entscheidung, der einzige Nachteil bei + sind die Seiteneffekte falls doch mal zwei Parameter die gleichen Bits gesetzt haben. Ich nehm' normalerweise |.
Benutzeravatar
PIC18F2550
Beiträge: 2832
Registriert: Fr 30. Sep 2011, 13:08

Re: Fragen zu SPIN

Beitrag von PIC18F2550 »

:shock: Ich mach Masken das wird sonnst zu unübersichtlich.
Hab ich gerade im Projekt gemerkt außerdem sindie pinns fest deffiniert.

Danke das war wiedermal sehr lehrreich für mich.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Antworten