Warteschleife 58 µs
Samstag, 19. Mai 2012
 
 

PIC Mikrocontroller Forum  |  PIC Mikrocontroller  |  Programmiersprache Assembler  |  Timer (Assembler)  |  Warteschleife 58 µs « vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: Warteschleife 58 µs  (Gelesen 2813 mal)
 
zugvogel1
Jr. Member
**
Offline Offline

Beiträge: 54


Profil anzeigen
« am: März 07, 2006, 15:40:49 »

Hallo

meine Warteschleife 58 µs will nicht so richtig.

Verwende den Pic18F458 und möchte 18Bit am PortA-0 einlesen.
Also wenn ich an PortA-0 18x (alle 58 µs)den Wert 1 erhalten habe und dann eine 0 kommt dann lese die weiteren 8bit auch noch, wenn aber keine 0 dann springe zum Anfang der schleife.

danke schon mal
Gespeichert
Bernd
Globaler Moderator
Hero Member
*****
Offline Offline

Beiträge: 3815



Profil anzeigen
« Antworten #1 am: März 07, 2006, 17:56:45 »

[Ironie an] Ganz klar ein Fehler im Code. Vertausche mal Zeile 46 mit Zeile 33, dann funktioniert es mit Sicherheit. [/Ironie aus]


Viele Grüße

Bernd
Gespeichert

zugvogel1
Jr. Member
**
Offline Offline

Beiträge: 54


Profil anzeigen
« Antworten #2 am: März 08, 2006, 11:18:20 »

Hallo Bernd

Warteschleife 58 µs

Ich kann zwar nichts anfangen mit der Antwort aber ein bissssssssen spaß ist auch gut. Lächelnd Lächelnd
Es sind auch keine Hausaufgaben sondern ein neues Projekt von mir.

Ich möchte folgenden Code lesen können....(laut NMRA-Norm)
         18bit                 0    8bit       0     8bit        0      8bit    0     8bit
         preamp                   Data1          Data2            Data3          Data4   
111111111111111111  0  aaaaaaaa  0  bbbbbbbb  0  cccccccc  0  dddddddd  1

Ich muß nun unbedingt die ersten 18bit haben damit die anderen dann zugeornet werden können.
und das sind so meine ersten Gedanken und bin auch für jeden anderen Tipp offen.
Daten:
Pic18f458 - mit 8Mhz
Eingang ist PortA,0

Später soll dann die Abfrage in den ISR aber das muß ich noch prüfen ob das rein logisch überhaupt geht.

mfg Helga

Code:

Start:
Btfss PORTA,0
Goto Start
INCF Zählerbit,F
Call Delay58
movlw .18
Cpfseq Zählerbit               
Goto Weiter1
Goto Start

Weiter1:
hier müßte ich nun weiterlesen

Delay58:
movlw 0x11
movwf loop1
Delay58_0:
decfsz loop1, f
goto Delay58_0
goto $+1
return

EDIT: Der Code muss ZWISCHEN die code-Tags! Sandynister
« Letzte Änderung: März 08, 2006, 12:05:42 von Sandynister » Gespeichert
Bernd
Globaler Moderator
Hero Member
*****
Offline Offline

Beiträge: 3815



Profil anzeigen
« Antworten #3 am: März 08, 2006, 19:07:15 »

Eine prinzipielle Vorgehensweise für die Erkennung der Präambel findest Du in diesem Thread.

Viele Grüße

Bernd
Gespeichert

Seiten: [1] Nach oben Drucken 
« vorheriges nächstes »
Gehe zu:  

Powered by MySQL Powered by PHP Made for Mozilla (Firefox) Made for Internet Explorer
Seite erstellt in 0.042 Sekunden mit 19 Zugriffen.
 
Top! Top!