Atmel AT91SAM7X-EK Betriebsanweisung Seite 34

  • Herunterladen
  • Zu meinen Handbüchern hinzufügen
  • Drucken
  • Seite
    / 36
  • Inhaltsverzeichnis
  • LESEZEICHEN
  • Bewertet. / 5. Basierend auf Kundenbewertungen
Seitenansicht 33
www.uTasker.com
µ
Tasker – AT91SAM7X Tutorial
V1.4
uTaskerV1.4_SAM7X.doc/0.03 34/36 31.07.2009
This transmission activation takes place in the file sam7x.c in the function fnStartEthTx()
so search for it and set a break point there. Once the program reaches this point it will stop
and you can see which registers are set up and verify that all is correct.
Here you will also see that the simulator comes into play once the data is ready and the
registers have been set up correctly. This code, which will not be discussed here, basically
tries to behave as the EMAC transmitter does by interpreting the register set up and
transmitting the data buffer contents to your local network.
9. Off-Line Simulation
Normally the simulator, or the target, will have responded to the ping request very quickly
and the ping test would have been successful. We, being human beings, are rather slow and
we probably took several minutes to work our way through the code before your ping reply
was finally sent back. This was of course much too late as the ping test has already
terminated, informing that the test failed.
This is not only a problem with the ping test but with many protocols since they use timers
and expect replies within quite a short time, otherwise an error is assumed and links break
down. Debugging of such protocols can become quite hard work due to this fact.
This is where the µTasker can save the day again since it supports operation in OFF-LINE
mode. This means simply that it can interpret Wireshark recordings as if they were real data
from the network. Since we previously made a recording we can try this out right now!
A. Prepare a break point
I suggest that you set a break point in the ICMP routine itself since we have already seen
how the message arrives there ad this will avoid false triggers due to broadcast frames in
the mean time. Let the project run again by hitting F5.
B. Open the Wireshark recording
In the menu Wireshark select Load Wireshark/Ethereal file to play back.
Then select the ping.eth file which was previously recorded. If the simulation is
repeated, the command Replay last File can be used instead – this is only valid
after the simulator is terminated normally.
Perform this action and the Wireshark file will be interpreted. The times that frames arrived
will be respected – if there is a gap or 1s between two frames then these two frames will also
arrive with a 1s gap. You will see that the recorded ping will be received via the receive
Ethernet interrupt routine and be passed up through the software until the breakpoint in the
ICMP routine is encountered. The difference is that the break point and stepping in code can
not disturb the protocol since also the recording is stopped.
This can be a great advantage when debugging protocols!
Before terminating this discussion there are a few points which should be noted, so here is a
list of all relevant details which could be of use or interest.
Seitenansicht 33
1 2 ... 29 30 31 32 33 34 35 36

Kommentare zu diesen Handbüchern

Keine Kommentare