mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Zeitschleife in einem Vorhanden Pogramm ändern??


Autor: HanZ (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, Und zwar wollte ich fragen ob mir einer die Zeitschleife von 
diesem Programm ändern könnte. Sprich das Ready soll 3sec stehen bleiben 
anstatt ca. 1sec.



Vielen dank....


MFG HanZ

Autor: Sven Johannes (svenj)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin...

Du zahlst wieviel, damit sich jemand durch diesen unkomentierten Haufen 
Code wühlt?

--
 SJ

Autor: Tropi der Ungewollte (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ HansZ: Haste mal n Euro?

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist wohl ein Disassembler-Output.



Peter

Autor: Tropi der Ungewollte (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ne, da sind doch ein paar Kommentarfragmente drin. Ist wohl eher der 
Ausfluß eines genialen Geistes...

Autor: HanZ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, Richtig erkannt! Es handelt sich um  ein Disassembler-Output 
Programmcode! Eigendlich müste ja die Zeitschleife nach dem Reday 
kommen!?(habe ich auskomentiert) da ich mich mit der programierun von 
PIC`s nicht auskenne wäre ich euch sehr dankbar, wenn des jemand 
hinbekommen würde.

MfG HanZ

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mühsam ernährt sich der Rückwärts-Ingenieur...
Ich hab sowas mit 6502-Programmen schon gemacht, jetzt muß der 
Texteditor mit der Suchen-und-Ersetzen-Funktion ran. Alle symbolischen 
Labels, sobald man eine vermutliche Funktion erkannt hat umbenennen, die 
Portpins nach Schaltplan soweit bekannt ebenfalls mit verständlichen 
Namen versehen, dann klärt sich das langsam. Wo ist die 
Interrupt-Routine versteckt, die kann gleich mal vom Rest getrennt 
werden.

Autor: Daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei Disassemblierung ist sowieso viel Nacharbeit notwendig.

Der Disassembler führt das Programm ja normalerweise nicht aus, und 
übersetzt
es, sondern geht strickt der Reihe nach. Sollten während des 
Programmcodes
Konstanten Tabellen oder ähnliches sein, werden die gleich mit übersetzt
als Befehle.
Oder macht das Dein Disassembler intelligenter?

Dirk

Autor: HanZ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, also mein Dissalbler Programm heißt "PicDisasm.exe" dei muss man 
grad ausfühern und den richtigen PIC auswählen.

Fangt da wo der Pfeil ist nicht die Zeitschleife an?

CALL LADR_0x00BB
    MOVLW 0x52      ; R
    MOVWF LRAM_0x22
    CALL LADR_0x010C
    MOVLW 0x65      ; e
    MOVWF LRAM_0x22
    CALL LADR_0x010C
    MOVLW 0x61      ; a
    MOVWF LRAM_0x22
    CALL LADR_0x010C
    MOVLW 0x64      ; d
    MOVWF LRAM_0x22
    CALL LADR_0x010C
    MOVLW 0x79      ; y
    MOVWF LRAM_0x22
    CALL LADR_0x010C
 -> BSF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    BSF TMR0,5           ; !!Bank!! TMR0 - OPTION_REG
    BSF TMR0,3           ; !!Bank!! TMR0 - OPTION_REG
    BCF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    MOVLW 0x01
    MOVWF LRAM_0x42


MFG HanZ

Autor: HanZ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, kann mir den keiner sagen wo genau sich Zeitschleifen in diesem 
Programmcode verbergen? Und welchen Wert muss man verändern das sie 
verlängert wird?

Vielen dank

HanZ

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich weiß schon, warum ich keinen PIC benutze, der Code ist einfach zu 
kryptisch.

Beim 8051 wärs dagegen ganz easy, da müßte man nur nach DJNZ suchen, um 
Schleifen zu finden.


Schön ist auch zu sehen, daß massig Code für irgendwelche 
Bankumschaltungen draufgeht.


Peter

P.S.:
Auch wenn ich es könnte, es widerstrebt mir, fremde Programme zu 
cracken.

Autor: HanZ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, ich habe nicht verlangt mit meinem letzten post, dass es jemand 
das Programm cracken soll. Wenn mir jemand zeigen könnt wie ein Timer 
oder zeitscheleife für diesen pic aufgabut ist, könnte ich es selber 
umprogen.

MFG HanZ


Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach Gott was für ein Elend! Fast eine Woche geistert das hier rum. In 
der Zeit hat sich manch einer in PIC Assembler reingeschafft...

@ HanZ

...rede mit dem Programmierer und der baut dir die Anpassung ratzfatz 
ein. Wenn der Hund die Sourven gefressen hat oder du mit dem 
Programmierer dermaßen verkracht bist...

Bist du sicher, dass es überhaupt eine Pause von 1s gibt?

Der Code sieht mir als Laien so aus, als ob es keine Pause nach dem 
Ready gibt bzw. was du als Pause interpretierst ist bereits Messzeit. 
Daran gefummelt und deine Messung wird ungenau.

Etwas Schleifenähnliches ist in der Subroutine LADR_0x00AD. Der Code 
dort wird 255*249 mal durchgeführt. Aber ich kenne die Taktrate von 
deinem PIC nicht und bin jetzt auch zu strack die Takte in der Schleife 
auszuzählen.

Du könntest auch direkt probieren nach der Ready-Ausgabe diese Schleife 
2x (2x1s Fake + 1s Original-Messzeit = 3s) einzufügen und dann schauen, 
was der Ball macht.

;   ...
    MOVWF LRAM_0x22
    CALL LADR_0x010C
    MOVLW 0x79      ; y
    MOVWF LRAM_0x22
    CALL LADR_0x010C
; ############# NEU ############
    MOVLW 0xFF
    MOVWF LRAM_0x24
    CALL LADR_0x00AD

    MOVLW 0xFF
    MOVWF LRAM_0x24
    CALL LADR_0x00AD
; ############# NEU ############

    BSF STATUS,RP0       ; !!Bank Register-Bank(0/1)-Select
    BSF TMR0,5           ; !!Bank!! TMR0 - OPTION_REG
    BSF TMR0,3           ; !!Bank!! TMR0 - OPTION_REG
;   ...

Allerdings wird dein Code dadurch länger und es entscheidet sich dabei, 
wie gut dein Disassembler/Assembler ist ;-)

Autor: HanZ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

vielen dank mit der Zeitschleife funktioniert es wunderbar.


MFG Hanz

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.