asm in c übersetzen...

Gast #40335
Lesenswert?
• ▲
▼
mahlzeit...
gibt es die möglichkeit bzw. ein programm, dass einen assembler-code in 
c übersetzt?
ich hab nämlich von assembler nicht die leiseste ahnung, kann/will aber 
das programm nicht in der vorhandenen form benutzen (wg. 
hardwareänderungen).
ich habe irgendwo mal gelesen, dass es so einen übersetzer für die 
SPARC-architektur gibt, habe aber nichts über avr gefunden...
und beide alternativen (falls es sowas wie nen übersetzer nicht gibt), 
nämlich 1. das rad neu erfinden sprich das programm in c komplett neu 
schreiben oder 2. assembler lernen, schmecken mir nicht wirklich...
weiss jemand rat?

gruss
ms
Gast #40336
Lesenswert?
• ▲
▼
Hi

sehr sehr unwahrscheinlich das es sowas gibt. Die Aufgabe wäre zu 
komplex für den winzigen Anwenderkreis. Also entweder neu erstellen oder 
ASM-lernen und dann selber in C übersetzen.

Matthias
Gast #40337
Lesenswert?
• ▲
▼
danke für die antwort...
nun gut, dann werd ich wohl mal schauen müsse, wie ich weiterkomme...
hat vielleicht schon jemand erfahrungen gesammelt mit dem empfangen und 
dekodieren von rc5-codes?
oder gibt es da schon bibliotheken, die einem ein wenig arbeit 
erleichtern?
gruss
ms
Gast #40338
Lesenswert?
• ▲
▼
Hallo mikrosaft,

wenn Du Timings messen kannst und neben einem IR-Empfänger (z.B. 
TSOP17xx oder GP1UDxxxx - falls Du vom Letzteren welche auftreiben 
kannst, würde ich ein paar abnehmen) einen Oszi zur Verfügung hast 
sollte es relativ einfach sein einen RC5 Empfänger/Dekoder in C 
umzusetzen. Informationen zum Thema gibt es sehr viele.
Eine umfassende Liste gebräuchlicher Kodiervarianten findest Du unter:
http://bjorn.rhoads.nu/hp48/remote/remotes/
Die Timings solltest Du aber auf jeden Fall mit dem Oszi nachmessen und 
+-5 Prozent Toleranz einplanen. Mit dem AVR sind schon zahlreiche 
Projekte (MP3-Player, Fernebedienungen etc.) verfügbar, welche RC5 
Empfänger/Sender realisiert haben. Einfach suchen...


Gruß,
Claus
#40339
Lesenswert?
• ▲
▼
Der RC5 läßt sich super einfach dekodieren.
Er ist auch sehr unanfällig gegen Timingtoleranzen, da ja bei jedem Bit 
neu synchronisiert wird.

Anbei ein Beispiel für den 8051.

Alles, was Du brauchst, ist nur ein Timerinterrupt.

Der Ausdruck "XTAL  12  256" beschreibt den Takt des Timerinterrupts 
(XTAL = Quarzfrequenz, 12 = Vorteiler, 256 = Timerperiode).

Der Timerinterrupt ist so zu wählen, daß für PULSE1_2 und PULSEMAX 
sinvolle Werte rauskommen (4...250).

Wenn rc5_done == 1 ist, dann sind in rc5_data die Daten.


Peter
Angehängte Dateien:

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.