Hardware Emulator

Georg

Neues Mitglied
30. Okt. 2008
5
0
0
Sprachen
Frage:
gibt es einen bezahlbaren Hardwareemulatur (in Circuit), der auch den 8515 unterstützt.
Ich verwende zur Zeit das Entwicklungsboard STK500 und habe öfters mit eigenentwickelten Programmen (asm,c) Probleme. Die lassen sich im AVR Studio simulieren und laufen dort meiner Meinung nach, aber nach dem flashen geht nichts mehr. Das Board und der uC ist ok, das Testprogramm von AVR läuft ohne Probleme.:mad:
 
Hallo @ Georg...,
zeig doch mal Deine Programme zumindes Schnipsel davon , die auf dem geflashten ATMega 8515 nicht laufen sollten.
Ist das Include-File auch eingebunden?

.list.
.include "m8515def. inc"
.nolist

nicht etwa
include 8515 bloß
ohne M


Es ist ein weit verbreiteter Irrtum, daß im Simulator, bzw. Debugging die Programme auch einwandfrei funktionieren lassen, ihrem Bestimmungszweck entsprechend. Beispiel:
Debugging: Bleibt in der Abfrageschleife des RXC-Bits bei der seriellen Ausgabe natürlich hängen. Es ist ja kein UART echt vorhanden beim Simulator, der so freundlich ist, um das Flag im Empfangsregister auch zu setzen, oder rückzusetzen.

sendebereit:

sbis UCSRA, TXC (oder so ähnlich ....quick and dirty...mal schnell aus dem Kopf .......)
rjmp sendebereit
ret

Logo.

Der Assembler-Compiler, also unsere Studio4-Programmiersoftware schaut nur "mal drüber", ob grobe Syntaxfehler im Programm sind, prüft auch in Menü "Built and Run"-Debugging nicht nach, ob zum Beispiel
die Fuses auch richtig gesetzt sind. Das sollte man in der Programming-Maske mal nachprüfen.
Bei mir kamen schon mal die Menüeinträge vom letzten Programmierversuch direkt reingesetzt. Die müssen natürlich auch mal
aktualisiert werden. Oben Device ATMega8515 drin aber es sollte doch ein ATTiny2313 geflasht werden. Das kann nicht gutgehen.
Prompt: Device not recognized- Meldung.


Aha...

Poste mal mehr,
bin mal gespannt.



Gruß
von Oskar01
 
Hi
Nun, ich habe nach einer endlos langen Zeit im Pascal-Sektor zu den Microcontrolern gefunden, da die Hardwarezugriffe oberhalb Win98 nicht mehr so einfach möglich sind und ich immer noch mit PC Steuerungsaufgaben bewältigen möchte. Daher kenne ich zur genüge die Gemeinheiten der kleinen schwarzen Plastikteile, die, bevor sie sich überreden lassen, ihre Aufgabe zu erfüllen, sich erst mal kräftig zur Wehr setzen. :confused: Da meine Programme aber alle durchweg eine serielle Kopplung haben, bin ich auf die Idee gekommen, alle Variablen zum PC zu übertragen und nun kann ich in den AVR hineinschauen. Im nächsten Jahr denke ich, werde ich eine universelle Software haben, die mittels kleinem Hilfsprogrammes im Controler die Variablen an den PC und in sichtbare Felder schickt. Die Vorgehensweise ist relativ einfach:
Es wird eine Oberfläche geben, die in Editfeldern die Variablen anzeigt. Über eine Liste sind die Namen zu vergeben und die Formate zu bestimmen.
(Zahlwert oder Binärdarstellung)
Mit einem Befehl vom PC wird nun die Übertragung aller Variablen angestoßen. Da die Adressen der Variablen in Folge abgelegt sind, ist durch eine einfache Schleife mit der Anzahl aller Variablen ein Abbild übertragbar.
Sobald ich das Programm erstellt habe, werde ich gern dieses hier veröffentlichen.
Gruß oldmax
 
Hallo Oldmax,

das hört sich sehr interessant an.

Schau dir auch hierzu mal das Projekt WinAvrMon von Rangar in unserem Forum an. Man kann mit dem Monitorprogramm u.a. die Inhalte von Special-Function-Register (SFR) und Variablen (Speicherbereiche) mit unterschiedlichen Größen darstellen und überwachen. Vielleicht kommst du hier auf neue Ideen. So ein Monitorprogramm ist sehr hilfreich, wenn man sein Programm debuggen möchte.

Grüße,
Dirk
 
Simulation versus Realität

Hallo zusammen,

ich möchte noch einen kurzen Beitrag zum Thema "Simulation versus Realität" leisten.

Die lassen sich im AVR Studio simulieren und laufen dort meiner Meinung nach, aber nach dem flashen geht nichts mehr.

Ja so ist das eben mit dem Unterschied zwischen Theorie und Praxis :eek: Davon kann ich auch einige Lieder singen. Wenn es im Simulator funktioniert bedeutet dies noch lange nicht, dass es dann auf dem Target funktioniert.
Selbst mit InCircuit-Emulatoren kann es noch die tollsten Effekte geben.

Die Probleme mit den Simulatoren lassen sich aber relativ leicht erklären. In der Regel simuliert ein Simolator nur, berücksichtig Taktzyklen einzelner Operationen usw. aber die wirklichen Timing-Verhältnisse werden in der Regel nicht berücksichtigt. So laufen in der Regel Timer überhaupt nicht oder nur "pseudo"-Genau, Interrupts laufen nur teilweise und und auch nicht mit dem Timing wie sie sollen und so schöne Dinge wie HW-Watchdog usw. können in der Regel nicht abgebildet werden.

Simulatoren betrachte ich in der Regel nur als ganz grobes Hilfsmittel für einfache Dinge aber wenn es dann HW nah wird und Timer und Interrupts mit ins Spiel kommen versagen Simulatoren in der Regel. Da hilft nur die reale HW mit dem ecten µC.

Grüße,
Markus
 
Simulator und Debugging/Disassembling

Hallo,
hier noch die geballten Erfahrungen eines eingefleischten
Eprom-von-Hand-Brenn-Enthusiasten (Eprom CMOS-27er-Serie, MCU MC8051 und älter)
Hier wird jedes Bit mit Handschlag begrüßt:

Adressen über Jumper einstellen,
(oder schon mit TTL-Aufwärtszähler)

An selbstgebastelter diodenmatrixbasierter Hexanzeige-Eingabe-Tastatur
mit prellfreien Tastern (Siebensementanzeige mit pinkompatiblem Treiber erweitert auf A bis F, Darstellung A,b,C,d,E,F)

Daten/ Opcodes eingeben

Strobe-Impuls 50 ms Dauer +24 Volt an "Brenn-"Eingang des Eproms.

Fertig. Abhaken auf Programmzettel.

Nächste Adresse etc.

Das Ganze 1024-mal oder so.

Anschließend wird beim 8048-er Controller nach Verifying der Read-Anschluß endgültig
per 24-Volt Spannungsstoß abgebrannt. Damit ist ein späterer Zugriff
auf den Programmcode hardwaremäßig vereitelt.

Nun ja,
mit Flashtechnologie gehts doch erheblich leichter:

Nur,
ein einmal per ISP ausgelesenes Hex-File bietet eine Reihe von Rätseln, die ein "Invers-Engineering" praktisch unmöglich machen. Eher sollen diese Debug-Disassemble-Features im Studio4 ein pädagogisches Ziel verfolgen.
Besonders interessant das Debugging, wo das Aufklappen der einzelnen
Bits in Statusregistern (oder UART) etc.. Hier kann ich sehen, was nun tatsächlich enabled/disabled wurde, falls Zweifel darüber bestehen sollten.
Gut so.

Auch nur unter diesem mehr pädagogischen Aspekt folgen hier ein paar Screenshots, die vom
Studio4 abgespitzt worden sind.
(Distanziere mich hiermit nochmals ausdrücklich von eventuell dubiosen Absichten.)

Trotzdem, viel Spaß beim Knobeln und Tüfteln.

Gruß von Oskar01
 

Anhänge

  • Simulator_01.zip
    61,2 KB · Aufrufe: 11
Hallo Oskar01,
das Problem sitzt, wie meistens, mal wieder VOR dem Bildschirm - der Programmablauf ist gerettet.
Mir fehlt aber immer noch die Antwort auf den Hardwareemulator, da ich meine Hardware selbst baue. gibt es für dem 8515 einen Hardwareemulator, da der Steuerablauf über die Ports geprüftwerden muss, oder ist es sinnvoller auf einen JTAG-fähigen uC umzusteigen??
 

Ü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)