Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: kleinste Zeitschleife Kategorie: Programmierung Basic (von Topmail - 4.11.2005 18:08)
 Als Antwort auf kleinste Zeitschleife von Arne Schwenk - 4.11.2005 11:17
Topmail nutzt:  CC1-Unit V1.1, CC1-M-Unit V1.1, CC1-Station V1.1, Open-Micro
Hallo!
> Hallo zusammen,
>
> ich will mit der Open-Micro eine Verbindung zwischen zwei Geräten herstellen, auf der einen Seite eine RS232-Schnittstelle, auf der anderen Seite eine SPI-Schnittstelle.
>   Den Takt der SPI-Schnittstelle gebe ich mit der Open-Micro vor.
>   Die SPI-Schnittstelle verlangt, dass die Daten 100ns vor dem Takt (ansteigende Flanke) bereits anliegen müssen und auch 100ns nach Ende des Takts (abfallende Flanke).
>   Da der Systemtakt der Open-Micro bei etwa 3MHz liegt, sollte ein einzelner Takt mit ca. 300ns bereits reichen, diese Zeit zur Verfügung zu stellen.
>   Ich habe also in die SPI-Routine ein gosub eingebunden, die gosub-Routine besteht aber nur aus einem
> return.
In Basic - oder in Assembler? In beiden Fällen dauert ein einfacher (Maschinen-)Befehl länger,
als einen Maschinenzyklus, als Verzögerung in Assembler genügt also ein "nop" sicher, in Basic
brauchst du keine weitere Verzögerung.
>
>   Meine Frage ist jetzt:
>   Macht der Compiler daraus tatsächlich (an und für sich unsinnige) Routinen, oder ist der Compiler so schlau und filtert das einfach weg - und vernichtet damit meine Zeitschleife?
Der Compiler (OCBasic, gilt auch für CCBasic) optimiert (bisher) nichts - falls du etwas von Compilerbau-
und Optimierung verstehst, nimmt deine Hilfe sicher gerne in Anspruch.

Cu Rene,
alias Topmail

 Antwort schreiben

Bisherige Antworten: