Ein Monitor für's Interne

oldmax

Mitglied
Premium Benutzer
03. Nov. 2008
595
15
18
Landkreis Göttingen
Sprachen
  1. Assembler
Hi
In einer früheren Antwort habe ich erwähnt, euch einen Einblick in eure Software im Controler zu liefern. Ich kenne das Problem, das eine Software so ganz eigene Ansichten von Logik entwickeln kann. Zu meiner Ausrüstung muß ich bekennen, das ich einen bescheidenen Programmer von Pollin benutze, das AVR-Studio und Ponyprog. Da stolpert man schon ganz gern einmal in einen kleinen Irrgarten und hat zu tun, diesen zu verlassen. Aus diesem Grund habe ich einen einfachen Monitor geschrieben, der die Werte der Variablen nach außen bringt. Möglichkeiten, damit auch mehr zu machen sind denkbar. Man muß nur entsprechend Variablen definieren und gezielt an bestimmten Programmabschnitten beschreiben. ist das Programm perfekt, kann die Kommunikation wieder entfernt werden, oder man läß sie drin, da der Speicherplatz vielleicht sowieso nicht gebraucht wird. So hat man die Zugriffe auf interne Werte immer griffbereit. Das Programm selbst wird nicht gestört, da der PC das lesen der Variablenwerte mittels Steuerzeichen anfordert. Empfängt der Controler dieses nicht, wird er auch nicht die Werte an die RS 232 senden.
Auf eine Beeinflussung der Werte habe ich bewußt verzichtet, da es nicht hilfreich ist, das Programm zu manipulieren, sondern ich möchte wissen, tut es das schwarze Ding oder nicht. Die angehängte Software ist Freeware, also für jeden ohne Lizenz nutzbar. Vielleicht brauch ich auch mal Hilfe und bin dann auch dankbar, wenn es mich nicht gleich etwas kostet.
Viel Spaß mit meinem Monitor und ich hoffe, er hilft grad den Anfängern über die "dunkle Zeit".
Gruß oldmax
 

Anhänge

  • CoMon Dokument.pdf
    373,6 KB · Aufrufe: 147
  • CoMonInstaller.zip
    175,8 KB · Aufrufe: 74
Wollt mal fragen ob mir jemand helfen kann mit dem avr32 studio und der toolchain.

ich hab irgendwie ein problem mit avr32-linux-gcc find das nirgends.
war zwar schon mal teilweise hier im forum beschrieben aber die letzte antwort war vor einigen monaten.
 
Hallo Oldmax,

ich habe das Thema mal hierher verschoben, da es im Forum AVR32 stand, das paßt dort nicht so gut hin.

Dein Monitor ist interessant, ich werde am Wochenende versuchen, dein Assemblercode in eines meiner Assembler-Projekte einzubauen und ihn auszutesten.

Grüße,
Dirk

@Mounti: Bitte ein neues Thema in einem neuen Thread im passenden Forum starten.
 
Hi
Ich muß noch die RS232 Empfangsroutine nachliefern. Vielleicht gibt es doch Probleme mit dem Verständnis der ReadPos und Writepos. Dies sind Ofsets auf die Adresse eines Puffers. ReadPos ist klar, da hole ich empfangene Daten ab. WritePos wird in der Interruptroutine hochgezählt, wenn Daten kommen und diese dann in den Puffer eingetragen. Hier mal der Code dieser Routine

Code:
;-------------------- Empfangsroutine im Controler -----------------

int_rxc:	PUSH	  temp_Reg			; temp auf dem Stack sichern
		IN	  temp_Reg, sreg		; SREG sichern    
		PUSH	  temp_Reg
		PUSH	  S_Merker                  ; weitere benutzte 
		PUSH	  T_Merker                  ; Register
		CLR	  Temp
		LDS	  T_Merker, WritePos    ; letzte Schreibposition
                IN	  Work_Reg, UDR          ; empfangenen Wert holen
		LDI	  XL,LOW(Com_Buff)	; x-Pointer auf Empfangspuffer
		LDI	  XH,HIGH(Com_Buff)
		ADD	  XL, T_Merker
		ADC	  XH, Temp	                ; x-Registerpaar berechnen
		ST	  X, Work_Reg             ; und Wert in Puffer eintragen
                INC	  T_Merker                  ; auf nächte Pufferzelle
		CPI	  T_Merker, 90             ; 90 ste Stelle erreicht
		BRLO	  Store_Wr                  ; wenn nicht, dann abspeichern
		CLR	  T_Merker                  ; Zeiger wieder auf 1. Pufferzelle
Store_Wr:	STS	  WritePos, T_Merker    ; und Zeiger zurückschreiben
		
        	POP	  T_Merker                  ; Register wieder herstellen
		POP	  S_Merker
		POP	  temp_Reg    
		OUT	  sreg, temp_Reg		; SREG wiederherstellen
		POP	  temp_Reg			; temp wiederherstellen    
		RETI
So, jetzt sollte alles beschrieben sein. Wer es testet, ich bin dankbar für jede konstruktive Kritik. Wer in Delphi programmiert, der kann sich bei mir auch den Quelltext holen. Ist mit Version D3 erstellt.
Gruß oldmax

PS: mußte nochmal nachbessern. So funktioniert's aber bei mir.
 
Hallo oldmax,

ich bin grad dabei von den 8051-ern auf die ATMELS um zusteigen. Was ich hier sofort vermisse, ist ein "Monitor" wie man ihn als (Assemblerprogrammierer) von Keil, für die 51-er hatte.

AVR-studio ist eine sehr gute Hilfe, aber die "Innereien" der Controller sind damit nicht ersichtlich...

- Also, hast du deinen Monitor verbessert, vervollständigt??, würde mich interessieren....

Wolfgang
 
Monitor

Hallo oldmax,
-ich will das Rad nicht immer neu erfinden, wenn ich dafür nicht gerade ein Vermögen bezahlen muss...

Ist dein Monitor auch für andere verfügbar,???

--oder machst du uns nur den Mund wässerig??..

-- muss mich beim Forum vielleicht schon wieder für meine Ausdrucksweise entschuldigen....

--- Wolfgang
 
Hi
Rein zufällig schau ich hier mal vorbei und sehe, das da doch noch Fragen bezüglich meinem Monitorprogramm bestehen. So wie's aussiht, ist die Datei OpenEye gar nicht dabei :confused: was mich etwas erstaunt. Da geh ich immer von aus, das ich sie bereits hier hineingestellt habe und dann das ....:pleasantry:
Ok, ich schau mal, ob ich sie noch ausgraben kann und werd sie nochmal nachliefern.
Im allgemeinen ist's eigentlich egal, welche Plattform:
Das Prinip ist einfach- ich sende ein Zeichen an den Controller, der daraufhin mit der Übertragung seiner Variablen antwortet. Im PC zerlege ich diese Information und zeige die Werte im Byte, ASCII oder Integer (8Bit) an.
Dadurch kann ich aber kontrollieren, ob die erwarteten Werte in den Variablen stehen. Diese kleine Aufgabe müßt ihr eurem µC beibiegen. Ist aber in der Doku beschrieben.
Gruß oldmax
 

Anhänge

  • OpenEye_Doku_Zip.zip
    134,9 KB · Aufrufe: 33
  • OpenEye_Exe_Zip.zip
    177,2 KB · Aufrufe: 28
Hallo Oldmax,

danke für deine Antwort. Habe mir alles genauer angesehen und grundsätzlich ist auch alles klar, bin nur noch nicht dazugekommen, dein Utility prakrisch einzusätzen. Leider kommen auch auf einen Rentner immer wieder andere Aufgaben zu, die dann Vorrang haben. Wenn ich mal soweit bin mit der Praxis, werde ich mich wieder melden. Nochmals, Dank.

Wolfgang
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)