by Stefanµ » 23 May 2012, 17:03
Danke.
das klappt ja alles soweit.
Aber leider doch nicht ganz.
Hier mein test: ich lade example.programm mittels IDE hoch.(Rol, wait,mst, ROR,wait,MST)
Starte mein Programm-schreiben.
Im TMCL-IDE -> Disassemble zeigt wunderbar mein Programm an.
(Firmware: 6.37, ide2.02, 612-SG)
wenn ich jetzt aber mittels C-Programm meine App starten will [sendCmd(1,129,1,0,0); oder sendCmd(1,129,0,0,0);] führt er immer noch das example-Programm aus.
(Habe schon aus-ein-schalten und reset probiert)
Muss man da noch einen Befehl-Pointer auf 0 setzen, bevor man den Download-Mode startet?
den Status protokolliere ich auch mit(100 bei 132 und 133, bei allen anderen 101), wie gewünscht.
-----
Programm-schreiben-Funktion:
private: System::Void butPwrite_Click(System::Object^ sender, System::EventArgs^ e) {
sendCmd(1, 132, 0, 0, 0); // Enter Download Mode Command
sendCmd(1,UF4,0,0,0); // #0 RamWritePointer auf 0 setzen
sendCmd(1,MVP, 2, 0, 0); // #1 Move to Coord Mo Var0
sendCmd(1,GAP, POS, 0, 0); // #2 Get act.Position
sendCmd(1,UF4, 4, 0, 0); // #3 Write Akku to RAM + Increment
sendCmd(1,UF0, 0, ADC4, 0); // #4 Get ADC-Value
sendCmd(1,UF4, 4, 0, 0); // #5 Write Akku to RAM + Increment
sendCmd(1,GGP,0,2,0); // #6 Get Global Parameter 0, Bank2
sendCmd(1,33,9,0,0); // #7 CALCX LOAD
sendCmd(1,SGP,132,0,0); // #8 SGP TickTimer,0,0
sendCmd(1,GGP,132,0,0); // #9 GGP TickTimer
sendCmd(1,33,1,0,0); // #10 CALCX SUB
sendCmd(1,20,0,0,0); // #11 COMP 0
sendCmd(1,21,6,0,9); // #12 JC LT, 9
sendCmd(1,GAP, 8, 0, 0); // #13 Get Position Reached
sendCmd(1,21, 0, 0, 2); // #14 Jump Conditional ZE Akku==0 zu Befehl 2
sendCmd(1,GAP, POS, 0, 0); // #15 Get act.Position
sendCmd(1,UF4, 4, 0, 0); // #16 Write Akku to RAM + Increment
sendCmd(1,UF0, 0, ADC4, 0);// #17 Get ADC-Value
sendCmd(1,UF4, 4, 0, 0); // #18 Write Akku to RAM + Increment
sendCmd(1,UF4, 2, 0, 0); // #19 Get WritePointer
sendCmd(1,35, 1, 2, 0); // #20 AGP 1,2 - Akku to GP
sendCmd(1,0,0,0,0); // End Marker für disassemble
sendCmd(1, 133, 0, 0, 0); // Exit Download Mode Command
}