Topics / Index / english

QQTSTRM - Demonstration der Fließkommaarithmetic des Atmel AVR

Content (automatic)

Aufruf

QQTSTRM kann benutzt werden, um die Genauigkeit der fft- Programme ffladd.s fflmul.s und ffldiv.s zu überprüfen. Dazu werden durch einen Zufallsgenerator Zahlen erzeugt und seriell an den ATMEL AVR geschickt. Die Antwort wird verglichen mit Rechenergebnissen in doppelter Genauigkeit.

QQTSTRM kann auch als einfaches Terminalemulationsprogramm benutzt werden.

Nach dem Aufruf wird die Taste [F6] gedrückt, um in das Menü zu kommen. Durch Taste u wird dann der Test gestartet: Der Atmel-Prozessor mus vorher durch Ponyprog mit dem Programm qqtsfloa.hex geladen sein (das durch gcc-avr aus qqtsfloa.cpp entstanden ist)

Beispiel eines Starts mit Eingabe von [F6] ?

QQTSTRM : Terminal Exit from connection by PC:End-Key, VT340:Prev-Screen
interrupted Help = '?'----------------------------------------------------------

QQTSTRM - Test QQTSFLOA
compiled by : MDOS40 Microsoft Visual C Console Application Version 4.0 or 5.0

q - Quit Terminal program qqtstrm
c - Continue
        Interface settings:
r - Reset interface (reopen)                         not to reopen
b - Baud rate is                                     9600
s - Number of stopbits is 0 ... 1                    0
p - Parity is 'n'-none 'e'-even 'o'-odd                         n
d - Data bits is 5 ... 8                             8
h - Handshake is 'n'-none 'x'-Xone-Xoff 'h'-Hardware n
x - HeX display of received characters               OFF
        Special tests for qqtsfloa
t - Test with decimale number transfer
u - Test with hexadecimale number transfer

Beispiel eines Ergebnisses

qqtsser $Test with ha=-47.15998, hb=-68.61716
h
Input ha ?D2A33CC2
Input hb ?FD3B89C2

Result + =E68DE7C2
Answer number =[E68DE7C2]
      ADD,    769 expect=-115.77715, result=-115.77715, diff=0.00000ppm

Result - =50A8AB41
Answer number =[50A8AB41]
      SUB,    769 expect=21.45718, result=21.45718, diff=0.00000ppm

Result * =BF3F4A45
Answer number =[BF3F4A45]
      MUL,    769 expect=3235.98405, result=3235.98413, diff=0.02370ppm

Result / =52F22F3F
Answer number =[52F22F3F]
      DIV,    769 expect=0.68729, result=0.68729, diff=0.13167ppm


qqtsser $
User key abort
End of Test qqtsfloa
max diff ADD = 0.10127ppm
max diff SUB = 0.09749ppm
max diff MUL = 0.16986ppm
max diff DIV = 0.26742ppm

See also

../util/hetrm.htm HJHerberts Terminalemulationsprogramm
qqtrm.htm - Ein einfaches Terminal-Emulationsprogramm für die serielle Schnittstelle
qqtsfloa.htm - Das Programm, das auf dem ATMEL laufen muss.
../../../../../cc/qq/qqtstrm.cpp - Der Quellcode
../../atmel/lib/float.htm - Wie Fließkommazahlen binär aufgebaut sind.