Seite 6 von 9

Re: PASM Bootloader

Verfasst: Sa 28. Sep 2013, 16:46
von BorgKönig
du hast kein dos vor dir, @dosdorf ;)

so mal ernsthaft: alle cogs sind auf reset/ 0...? wenn ja, müsste der propeigene loader (spin/ eeeprom) anspringen... resetet der prop wirklich, oder setzt du nur den ram/ zeiger auf 0...?

Re: PASM Bootloader

Verfasst: Sa 28. Sep 2013, 19:02
von PIC18F2550
Hi,
ich denke das das drohne235 in Administra richtig gemacht hat.
Ich will nur ein #99 senden und anschließend die Konfiguration lesen.(von Regnatix aus)

Re: PASM Bootloader

Verfasst: Sa 28. Sep 2013, 19:39
von drohne235
Administra ist wahrscheinlich noch nicht fertig. Mit welcher Frequenz fährt dein Prop? ;)

Re: PASM Bootloader

Verfasst: Sa 28. Sep 2013, 20:46
von PIC18F2550
Hi drohne235
So gehts

Code: Alles auswählen

'#####################################################################################
'# RESET von Administra & Bellatrix
'#####################################################################################
            mov     reg_a,  #A_MGRREBOOT
            call    #aput
            call    #wait1                    ' 0,5s Warten bis bellatrix neu gestartet ist <<-----

            mov     reg_a,  #B_CMD
            call    #bput
            mov     reg_a,  #B_MGRREBOOT
            call    #bput
Das ist aber komisch wieso darf ich während des Bootens von Administra keine Daten an Bellatrix senden?

So nicht

Code: Alles auswählen

'#####################################################################################
'# RESET von Administra & Bellatrix
'#####################################################################################
            mov     reg_a,  #A_MGRREBOOT
            call    #aput

            mov     reg_a,  #B_CMD
            call    #bput
            mov     reg_a,  #B_MGRREBOOT
            call    #bput
            call    #wait1                    ' 0,5s Warten bis administra & bellatrix neu gestartet sind <<-----

Re: PASM Bootloader

Verfasst: Sa 28. Sep 2013, 21:20
von drohne235
Hmm, 0,5 Sekunden kommt mir etwas kurz vor. Im IOS hab ich drei Sekunden drin, ist aber mehr ein empirischer Wert.

Ansonsten würde ich die Chips nicht unbedingt verschachtelt neu starten. Reagiert denn jetzt Administra korrekt, da du ja geschrieben hast, dass der Chip nach dem Reset nicht mal auf cmd #0 anspricht...
Das ist aber komisch wieso darf ich während des Bootens von Administra keine Daten an Bellatrix senden?
Vielleicht "wackelt" irgendwas an den Steuerleitungen bei einem Reset und stört die Kommunikation. Ich kann jetzt zwar auch nicht erkennen wo, aber das muß nichts heißen. Mußt du halt die Chips nacheinander mit einer Pause dazwischen starten.

Re: PASM Bootloader

Verfasst: Sa 28. Sep 2013, 22:25
von PIC18F2550
Die 0,5 braucht nur Administra Bellatrix kann ich sogar ohne Pause benutzen.
Und das macht mich irgendwie nachdenklich.
Eigendlich sollte es ja in den Routinen von Bellatrix und Administra keine Unterschiede in bezug auf das Busverhalten geben.

Kommt Zeit kommt Rat. ;)

Re: PASM Bootloader

Verfasst: Sa 28. Sep 2013, 22:35
von drohne235
Bella hat bei der Initialisierung vielleicht mehr zu tun. Allein das Einbinden der SD-Card braucht Zeit. Aber wie gesagt: Ich kann auch nicht genau sagen, wo Administra den Busdialog stört, würde mich interessieren, da solche Unstimmigkeiten oft auf versteckte Fehler hindeuten, welche einem das Leben sehr schwer machen können.

Naja, wie du schon schreibst: Kommt Zeit, kommt Rat!

Re: PASM Bootloader

Verfasst: Mo 30. Sep 2013, 22:03
von PIC18F2550
Ich komme irgendwie nicht zum Erfolg :cry: vieleicht verstehe ich da was Falsch.

Code: Alles auswählen

'#####################################################################################
'# Copy Dateinahmen
'#####################################################################################
' reg_a  zeiger auf hRAM $7FFE wo spin den Zeiger eintägt
' reg_b  zeiger auf COG-RAM auf PATH_1
' reg_c  Zählumfang
            rdword  reg_a,  STATUSADR
            mov     reg_b,  PATH_1                 ' Zeiger auf internen Datenblock
            mov     reg_c,  #$24                   ' Datenblock anzahl der long werte zum copieren
cop_1
            rdlong  reg_b,  reg_a
            add     reg_a,  #1
            add     reg_b,  #1
            djnz    reg_c,  #cop_1    wz
Das Problem ist das garnichts scheinbar copiert wird.

Re: PASM Bootloader

Verfasst: Di 1. Okt 2013, 00:00
von kuroneko

Code: Alles auswählen

'#####################################################################################
'# Copy Dateinahmen
'#####################################################################################
' reg_a  zeiger auf hRAM $7FFE wo spin den Zeiger eintägt
' reg_b  Zählumfang
            rdword  reg_a,  STATUSADR
            movd    cop_1,  #PATH_1             ' Zeiger auf internen Datenblock
            mov     reg_b,  #24                 ' Datenblock anzahl der long werte zum copieren

cop_1       rdlong  0-0,    reg_a
            add     cop_1,  dst1                ' next cog register
            add     reg_a,  #4                  ' next long
            djnz    reg_b,  #cop_1

dst1        long    |< 9

Re: PASM Bootloader

Verfasst: Di 1. Okt 2013, 10:15
von PIC18F2550
Oh das sieht ja ganz anderst aus das was ich da so Zusammengebastelt habe.
So ergibt das ja auch einen Sinn.
Mit movd hatte ich auch rummgebastelt habe das aber wegen Ermangelung eines Erfolges als Fehler eingestuft.
Dabei lag der Fehler bei mir im add reg_a, #1Da binn ich wiedermal über long/byte gestolpert. :(

Danke kuroneko für die Hilfe.