mikrocontroller.net

Forum: Projekte & Code Taschenrechner: ATmega1284p - 15x 7-Segmentdisplay


Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
2 lesenswert
nicht lesenswert
Auf der Basis von Arduino bin ich dabei einen Taschenrechner zu bauen, 
den ich hiermit vorstellen möchte.

Der Taschenrechner besteht aus mehreren Komponenten.

1. Display:  15x 7-Segment LED
2. µC:  ATmega1284p bei etwa 3,5V und 12MHz
3. Eingabe:  2x 3x4 Tastenfeld.
4. RTC - Realtimeclock mit DCF77-Signal extern zum Uhrzeit stellen

Software: Alles wenn möglich in C und als Compiler die Umgebung von 
Arduino.

Es werden alle Tasten Analog eingelesen. 3800Hz ist mein Grundtakt. Mit 
95Hz wird die Anzeige refrescht. Der Multiplex ist 8:1.

Als Arithmetik wird Integer verwendet.
Das Zahlenformat hat folgenden Aufbau:
struct AVRational{  //     0.3 ... 3 x 10^expo
  int8_t  expo;     // <-- expo
  int32_t numer;    // <-- numerator
  int32_t denum;    // <-- denominator
};

Die Hard- und Software wird als Opensource veröffentlicht.

Die Software ist noch sehr am Anfang - aber es geht schon einmal die 
Zahleneingabe und die Zuordnung der vielen Funktionen. Bei meinem 
Tastaturlayout können bis zu 3 Tasten "gleichzeitig" gedrückt werden.

Viel Freude bei der Durchsicht meiner Dokumente wünsche ich.

Autor: Franz U. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jens,

ein Foto deines Prototyps fehlt! Du hast ja schon mal einen hergezeigt.

Der Charme und Reiz der 7 Segmentanzeigen kommen nur mit einem Bild 
richtig rüber.
Ich finde die Optik der großen 7 Segmentanzeigen genial und das erinnert 
mich an meinen ersten Taschenrechner (ein TI-30 mit rotem Led Display).

Eine Stückliste hab ich nicht gefunden und wäre praktisch zum Nachbauen. 
Ich denke, dass sich dein Projekt auch gut als Ausgangsbasis für 
allerlei Schnickschnack wie Laufschrift, Timer, Uhr,… eignet, wenn man 
auf den Retro Look steht.

Liebe Grüße
Franz

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Franz U. schrieb:
> .. Ausgangsbasis für
> allerlei Schnickschnack wie Laufschrift, Timer, Uhr,… eignet, wenn man
> auf den Retro Look steht.

Im Quellcode ist ein Excelsheet 
(Arduino\Projects\calculator_02\7segmentdesign_new.xls) mit einem 
Zeichensatz für die 7-Segment Anzeige.

Die 7-Segment Anzeige möchte ich noch ändern. Zur Zeit sind da 7,5mm 
breite LED drinn, es sollen aber 10mm breite LED werden.

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Anbei ein Bild vom Rechner als auch eine Materialliste.

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich bin etwas weiter gekommen und möchte neue Software veröffentlichen.

Es gibt noch viel zu tun. Ein Taschenrechner ist eine große 
"Finite-state machine" -- Zustandsautomat.

Es können jetzt 2 Eingaben gemacht werden ("Zahl" und "="), 1/x, ...
Was genau noch zu tun ist kann man hier nachlesen. 
http://www.stateworks.com/active/download/Calculator.pdf

Vom Bedienkonzept her halte ich mich an das Konzept vom Windows-Rechner.

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe weitere Funktionstasten definiert und die Hardware verändert. 
Das Bedienkonzept soll etwas anders als gewohnt werden. Zum Beispiel: 
Editieren von Werten innerhalb der schon eingegeben Formel.

Das ist jetzt mal ein Zwischenstand.

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Die erste mathematische Funktion ist fertig (x^2).

Das interne Datenformat erweist sich als sehr genau und zuverlässig. ;-)

: Bearbeitet durch User
Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Ein Bild vom "Taschenrechner" mit dem Ergebniss von 29x mal x^2 
gedrückt. Die Anfangsszahl ist "1,0000001". Intern ergeben sich etwa 18 
Stellen (62 Bit) Genauigkeit.

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Memory_Plus (M+) arbeitet jetzt. Addition und Multiplikation mit dem 
Bruchzahlen Datenformat .. "Slash Number System" funktionieren.

(1 / (1 / (1 / 0.0038 - 263) -6) -3) =  0.0000e+00

Beim Rechnen mit ganzen Zahlen (Integer) entstehen keine oder wenig 
Rundungsfehler. Differenzen nahe Null sind gut zu verarbeiten.

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meine Projektfiles sind ab jetzt auf Github.

https://github.com/JensGrabner/snc98_Slash-Number-Calculator

Autor: elektronik-sammlung.jimdo.com (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Ich finde dein Projekt richtig cool und möchte es gerne unter deinem 
Namen auf meiner Website www.elektonik-sammlung.jimdo.com 
veröffentlichen, wenn du nichts dagegen hast.

Schreib mich einfach an, dann können wir die Details ausmachen ;-)

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Werbung kann ich immer brauchen. Also bitte mit Nennung meines Namens 
das Projekt veröffentlichen. Ist alles Open-Source-Open-Hardware.

Das Layout für das Display ist gerade fertig. Die Platine kann hier 
bestellt werden.

Mehr Informationen gibt es auf Github -- Wichtig: So richtig rechnen und 
benutzen kann man es "noch" nicht. Die Entwicklung der Hard- und 
Software wird noch etwa 12 Monate dauern. Das Tastaturlayout ist nahezu 
perfekt.

Wichtig: Das Projekt heißt:  "snc98 - Slash Number Calculator"

Autor: Nils S. (kruemeltee) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schön, wie du dich da reinhängst und nicht nur oberflächlich was 
zusammenfrickelst.

Vorallem mit der provisorischen Tipse umzugehen stelle ich mir manchmal 
frustrierend vor. Tasten suchen, doch falsch getippt, ...

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jens G. schrieb:
> Die Platine kann hier
> bestellt werden.
https://oshpark.com/profiles/Jens_G

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nils S. schrieb:
> Vorallem mit der provisorischen Tipse umzugehen stelle ich mir manchmal
> frustrierend vor.

Für die Taster verwende ich ... "Eingabetaster, 12x12 mm, DIPTRONICS 
DTS-21N, 10 Stück" .. zu bestellen bei .. http://www.pollin.de/ mit der 
Bestellnummer: 420 763.

Es sind Taster mit 160g Tastendruck.
http://www.pollin.de/shop/dt/NjMyOTc1OTk-/Baueleme...

Autor: Nils S. (kruemeltee) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm schlechtreden kann man alles und was dagegen findet auch jeder 
gleich...

Aber mit diesen Buttons würde ich mir die Arbeit nicht machen. Ich hab 
hier mehrere davon verbaut und nach ein paar Monaten Standzeit klemmen 
die und reagieren nicht mehr richtig.
Im Dauer-Drück-Betrieb glaube ich nicht, dass die 4 Wochen durchhalten.

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nils S. schrieb:
> Aber mit diesen Buttons würde ich mir die Arbeit nicht machen.

Besten Dank für den Hinweis. Diese Taster haben ein Standardformat. 
Sollte die Qualität nicht ausreichend sein, so kann ich zu einem anderen 
Hersteller wechseln. Qualität hat seinen Preis.

Um den Taster wird es eine Hebelmechanik geben. Vorteile:

1. der Tastenweg wird länger
2. der Tastendruck wird kleiner
3. Taster werden mechanisch weniger belastet
4. die Tastgeräuche werden kleiner

Eine Skizze dazu folgt noch. Ein Hinweis noch: Das Prellen der Tasten 
ist kein Problem, da ich mit Software jede Taste entprelle.

: Bearbeitet durch User
Autor: soul eye (souleye)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nils S. schrieb:

> Im Dauer-Drück-Betrieb glaube ich nicht, dass die 4 Wochen durchhalten.

Da das Gerät eh nicht so filigran werden wird: besorg Dir eine alte 
Cherry G80 und nimm deren Tastenmodule. Die haben eine 1a Haptik und 
sind unkaputtbar.


Ich sehe gerade, man bekommt die Dinger auch einzeln: 
https://www.cherry.de/cid/tastenmodule.htm?
(JavaScript erforderlich)

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Diese Taster sind eine echte Alternative. Auch 12 x 12mm und nicht so 
hoch.

https://www.conrad.at/de/drucktaster-12-vdc-001-a-...

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Als Ersatz für Pollin-Taster:
B3FS-4002P von Omron: 
http://www.tme.eu/at/details/b3fs-4002p/tact-pcb-m...

Mein Tastatur PCB ist auch für SMD ausgelegt.

Autor: Mw En (Firma: fritzler-avr.de) (fritzler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wird sich denn an einem bestehenden Taschenrechner orientiert vom Fluss 
der Bedienbarkeit oder wird ein völlig eigenes KOnzept entwickelt?

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei der "Bedienbarkeit" wird sich "einiges" ändern.

1. Bis zu 3 Tasten "müssen" bei Funktionen "gleichzeitig" gedrückt 
werden
2. 15 Stellen zur Anzeige ermöglichen die Anzeige von Bedienbefehlen 
z.Bsp. MR MS MEx + - * /. (besonders wichtig bei Funktionen mit 3 
Tasten)
3. Es wird bis zu 19 Klammerebenen geben
4. Maximal 19 Zahlen sollen verarbeitet werden (inkl. Memmory)
5. 9 Memmoryplätze die im EEProm gespeichert werden
6. max. 99 Eingabeschritte
7. eine eingebene Formel soll wiederholt verwendet werden können

Ich habe einige Taschenrechner gekauft um die Unterschiede der 
Bedienbarkeit zu sehen. Da alles auf der Kommandozeile abläuft (eine 
Zeile zur Eingabe) .. da mache ich mir Gedanken, wie ich auf einer 
Eingabezeile navigiere.

: Bearbeitet durch User
Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
8. ich erwarte weitaus weniger Fehler durch Rundung von Zahlen

Autor: Nix fertig (Gast)
Datum:

Bewertung
-2 lesenswert
nicht lesenswert
Jens G. schrieb:
> Auf der Basis von Arduino bin ich dabei einen Taschenrechner zu bauen,
> den ich hiermit vorstellen möchte.

Schön.

> Der Taschenrechner besteht aus mehreren Komponenten.
>
> 1. Display:  15x 7-Segment LED
> 2. µC:  ATmega1284p bei etwa 3,5V und 12MHz
> 3. Eingabe:  2x 3x4 Tastenfeld.
> 4. RTC - Realtimeclock mit DCF77-Signal extern zum Uhrzeit stellen
>
> Software: Alles wenn möglich in C und als Compiler die Umgebung von
> Arduino.

Gut.

> Es werden alle Tasten Analog eingelesen. 3800Hz ist mein Grundtakt. Mit
> 95Hz wird die Anzeige refrescht. Der Multiplex ist 8:1.
>
> Als Arithmetik wird Integer verwendet.
> Das Zahlenformat hat folgenden Aufbau:
> struct AVRational{  //     0.3 ... 3 x 10^expo
>   int8_t  expo;     // <-- expo
>   int32_t numer;    // <-- numerator
>   int32_t denum;    // <-- denominator
> };
> Die Hard- und Software wird als Opensource veröffentlicht.

Toll.

> Die Software ist noch sehr am Anfang - aber es geht schon einmal die
> Zahleneingabe und die Zuordnung der vielen Funktionen. Bei meinem
> Tastaturlayout können bis zu 3 Tasten "gleichzeitig" gedrückt werden.

Gut gut.

> Viel Freude bei der Durchsicht meiner Dokumente wünsche ich.

Danke.

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nix fertig schrieb:
> aber es geht schon einmal die
>> Zahleneingabe und die Zuordnung der vielen Funktionen

dieses Zitat bezieht sich auf den 14.07.2015 22:15 und ist damit nicht 
mehr gültig. Bei Interesse des Verlaufs meines Projektes verweise ich 
auf Github:

https://github.com/JensGrabner/snc98_Slash-Number-Calculator
https://github.com/JensGrabner/snc98_Slash-Number-...

: Bearbeitet durch User
Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wer schon heute ein ähnliches Projekt sein Eigen nennen möchte, dem kann 
ich auf 
http://www.spikenzielabs.com/Catalog/index.php?mai... 
verweisen. Mein Zielpreis liegt bei 99 Dollar. Etwas Geduld wird nötig 
sein ;-) .

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mw E. schrieb:
> Wird sich denn an einem bestehenden Taschenrechner orientiert vom Fluss
> der Bedienbarkeit oder wird ein völlig eigenes KOnzept entwickelt?

Ich bin dabei ein Statechart meiner bisherigen Arbeit zu erstellen. 
Daraus kann man das Bedienkonzept entnehmen.

Autor: Joe G. (feinmechaniker) Benutzerseite
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Eine recht ausgefeilte Variante für UPN findet man hier [1]. Dreh- und 
Angelpunkt sind SEHR zuverlässige Tasten. Soll der Taschenrechner kein 
Spielzeug bleiben, so muss man sich in jedem Fall blind auf die Eingaben 
verlassen können, auch noch in 4 Wochen. An dieser Stelle würde ich auf 
keinen Fall Kompromisse eingehen und auf wirklich erprobte Lösungen wie 
u.a. Cherry-Tasten zurück greifen. Auch der Entwickler (und die Nutzer) 
von Swiss Micros mußte leider diese Erfahrung machen :-(

[1] https://www.swissmicros.com/

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joe G. schrieb:
> An dieser Stelle würde ich auf
> keinen Fall Kompromisse eingehen ...

Das stimmt soweit. Ein Preis-Leistungs-Wunder muss es also sein. Bei 
einem Verkaufspreis von 99 Dollar darf das Material nicht mehr als 33 
Dollar sein. Da wird es mit qualitativ hochwertigen Tasten schon sehr 
eng. Das PCB kostet auch etwas.

Wenn man sich so umschaut, so hat das Thema Tasten kein Hobbyprojekt 
wirklich beachtet. Ich habe mal 2 Numemrnblöcke für USB bestellt (in 
Summe sind das, ohne Versandgebühr, 20 Euro).

Mit Software verhindere ich Mehrfacheingaben. Das 
Software-Tiefpassfilter benötigt etwas Zeit. Dann kann man nicht so 
schnell eingeben. Ein ackustischer Feedback ist über den Summer möglich.

Aber, besten Dank für das mitdenken. Das Tastenfeld von Conrad ist es 
nicht ... weil die Kunststofftasten beginnen sich abzureiben und wackeln 
dann.

: Bearbeitet durch User
Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jens G. schrieb:
> Eine Skizze dazu folgt noch.

Ich habe vom Patentamt ein Gebrauchsmuster gefunden, das sehr genau 
beschreibt, wie ich mir Kipptaster vorstelle.

Titel: [DE] Lagerung mehrerer Wipptasten innerhalb eines Gehäuses
https://depatisnet.dpma.de/DepatisNet/depatisnet?a...

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ein Zwischenbericht: Bei der Anzeige und der Tastatur gibt es einen 
neuen Stand der Leiterplatte. Zu bestellen wie immer bei: 
https://oshpark.com/profiles/Jens_G

Als Nächstes wird die Hauptplatine mit dem Prozessor gemacht. Das 
Stromversorgungskonzept muss überarbeitet werden, da der Ruhestrom zu 
hoch ist.

Autor: Jens Grabner (jensg)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Die Software ist etwas weiter gekommen. Ein Ringbuffer ist dazu 
gekommen. Der Ringbuffer verhindert, das Eingaben verloren gehen können 
-- sehr wichtig um die Funktionen sauber abarbeiten zu können.

https://github.com/JensGrabner/snc98_Slash-Number-Calculator

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jens G. schrieb:
> Als Nächstes wird die Hauptplatine mit dem Prozessor gemacht. Das
> Stromversorgungskonzept muss überarbeitet werden, da der Ruhestrom zu
> hoch ist.

Stromversorgungskonzept überarbeitet - Ruhestrom < 10µA.

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Eine neue Displayplatine ist von mir erstellt worden. Es können 3-Digit 
Display verwendet werden. 
http://www.tme.eu/at/katalog/#search=LTD040AUE-101A
Die Display sind preiswerter und es muss weniger gelötet werden. 60 
Lötstellen sind weniger als 150 Lötstellen bei 15 einzelnen Digits.

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Das Mainboard des Taschenrechners ist in Arbeit.

Eine Übersicht über meine entwickelten PCB findet man hier:
https://oshpark.com/profiles/Jens_G

Weitere Informationen folgen.

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier .. mein neues Tastatur-Layout.

Mit der "+/-" Taste und "0" .. "9" können 5 verschiedene Einheiten 
umgerechnet werden.

1. Temperatur  °C <--> °F     ("+/-" + "8") bzw. ("+/-" + "9")
2. Länge       mm <--> mil    ("+/-" + "5") bzw. ("+/-" + "6")
3. Gewicht     kg <--> Lb     ("+/-" + "2") bzw. ("+/-" + "3")
4. Verkehr   Mile <--> km     ("+/-" + "7") bzw. ("+/-" + "4")
4. Volumen      l <--> US-gal ("+/-" + "1") bzw. ("+/-" + "0")

Autor: Thomas Glass (taximan)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Respekt vor deiner Arbeit! Aber mir wäre die Tastatur zu Überladen, 3-6 
Tasten mehr dürften die Sache übersichtlicher machen. Ja, ich weiss: 
Neudesign; erstmal selber machen etc...

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es ist schön das ein wenig Interesse hier gibt ;-)

Es war ein langer Prozess bis ich die Zuordnung der Tasten so hatte -- 
bis zu 32 Tasten sind mit der Software möglich. Einen Analogeingang 
müsste ich dann mehr "verdrahten". Das Interesse ist aber eher sehr 
gering etwas zu verändern.

Als nächstes wird es Tastaturplättchen auf 0,8mm PCB geben.

Von der Software ist noch einiges zu machen -- es rechnet immer noch 
nicht -- bis zu 19 Zahleneingaben mit den Rechenoperationen können aber 
schon verwaltet werden - mit der Taste "CE" kann man von hinten nach 
vorne wieder fehlerhafte Eingaben löschen.

"Mr"  -- Memory read
"M_"  -- Memory safe
"M+=" -- Add to Memory
"Ex_" -- Exchange (tausch von Anzeigeregister mit Memory)
"1/x" "x^2" "Quadrahtwurzel"   ..  gehen schon  ;-)

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas G. schrieb:
> Respekt vor deiner Arbeit! Aber mir wäre die Tastatur zu Überladen, 3-6
> Tasten mehr dürften die Sache übersichtlicher machen. Ja, ich weiss:
> Neudesign; erstmal selber machen etc...

Ach ja, was auch immer zu beachten ist sind die Kosten .. bei einem 
erfolgreichem Projekt -- die Leiterplattenfläche sowie auch die Tasten 
mit Beschriftung kosten etwas -- weniger kann hier mehr sein.

: Bearbeitet durch User
Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mw E. schrieb:
> Wird sich denn an einem bestehenden Taschenrechner orientiert vom Fluss
> der Bedienbarkeit oder wird ein völlig eigenes KOnzept entwickelt?

Ja es wird sich etwas ändern  --  Konstantarithmetic mit Variabler 
Konstante.
(n + K) oder (K + n).

Beispiele:
2 +     = (4) = (6) =  (8)  0 = (2)
2 + 3   = (5) = (8) = (11)  0 = (3)
2 + + 3 = (5) = (7) =  (9)  0 = (2)

Autor: Thomas V. (thomasv)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
super Projekt!
Wenn ich mehr Zeit habe möchte ich das gerne nachbauen

Gruß
Thomas

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die 4 Grundrechenarten mit Konstantarithmetic und Tausch
x <-> y
 sind programmiert. (n + K), (K + n), (n - K), (K - n), (n x K), (K x 
n), (n / K), (K / n) .. in den Beispielen ist auf 2 Ziffern gerundet.
2 +     =  (4) =  (6) =  (8) 0 =  (2)
2 + 3   =  (5) =  (8) = (11) 0 =  (3)
2 + + 3 =  (5) =  (7) =  (9) 0 =  (2)
2 -     =  (0) = (-2) = (-4) 0 = (-2)
2 - 3   = (-1) = (-4) = (-7) 0 = (-3)
2 - - 3 =  (1) = (-1) = (-3) 0 = (-2)
2 x     =  (4) =  (8) = (16) 1 =  (2)
2 x 3   =  (6) = (18) = (54) 1 =  (3)
2 x x 3 =  (6) = (12) = (24) 1 =  (2)
2 /     = (1,00) = (0,50) = (0,250) 1 = (0,50)
2 / 3   = (0,67) = (0,22) = (0,074) 1 = (0,33)
2 / / 3 = (1,50) = (0,75) = (0,375) 1 = (0,50)

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Eine neue Reset-Schaltung ist entworfen worden.

Damit kann ich mit FTDI
oder
 ICSP programmieren.

: Bearbeitet durch User
Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Neue Info -- main_CPU geändert und Software verbessert  --
sqrt(2)^2 = 2  --  es gab Rundungsfehler --
https://github.com/JensGrabner/snc98_Slash-Number-Calculator

: Bearbeitet durch User
Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
neue "Funktionen" eingepflegt:
                                a + c
  Arithmetic mean:  AM(a,c) =  -------
                                  2

  Geometric mean:   GM(a,c) =  sqrt(ac)

                                     2
  Harmonic mean:    HM(a,c) =  -------------
                               (1/a) + (1/c)

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jens G. schrieb:
> Konstantarithmetic und Tausch

Das Vertauschen der Operanden bei zweimaligem Drücken der Operatortaste 
finde ich interessant, würde mit wünschen mein Taschenrechner könnte das 
auch, aber was ist mit 2 unterschiedlichen Operatoren ?

a + * b =

Das nutzt mein Rechner um das + als Tippfehler durch das * zu ersetzen.

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja genau so ist es auch bei mir  --  Korrektur der Eingabe

Das doppelte drücken der Operationstasten wird im Display durch einen 
Punkt markiert. Drücke ich 3x die gleiche Taste verschwindet der Punkt 
wieder.

Wichtig: .. Zur Zeit kann ich "nur" mit 2 Zahlen umgehen. Nach der 
Eingabe von 2 Zahlen wird der Nutzer "genötigt" ein "=" zu drücken  -- 
"gut Ding" braucht etwas Zeit in der Entwicklung.

Die Eingabe und Korrektur von bis zu 19 Zahlen wird möglich sein.

: Bearbeitet durch User
Autor: Karl M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jens,

kennst Du die UPN (Umgekehrte polnische Notation) Eingabe von Zahlen mit 
"ENTER" und Operanten?

Ich habe diese damals in meinem Studium mit einigen HP Taschenrechnern 
erlebt. Konkret HP-41CX mit Modul-Erweiterungen.

https://de.wikipedia.org/wiki/Umgekehrte_polnische_Notation

Dieses Vorgehen zerlegt schon bei der Eingabe der Zahlen Punkt- vor 
Strichrechnung und Klammern.

Mehr dazu im Wiki.

Autor: Jens Grabner (jensg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Karl M. schrieb:
> Hallo Jens,
>
> kennst Du die UPN (Umgekehrte polnische Notation) Eingabe von Zahlen mit
> "ENTER" und Operanten?
ja das kenne ich .. und es gab auch Anfragen wegen UPN.

Antwort - mache ich nicht, da junge Leute diese Denkweise nicht kennen 
und sich umstellen müssten.

Ich selbst hatte im Studium folgenden Taschenrechner genutzt.
https://en.wikipedia.org/wiki/Elektronika_MK-61

Es währe sehr leicht diesen Rechner, als voll kompatible Emulation in 
Hardware, zu bauen  --  aber klarer Nachteil: sehr lausige Genauigkeit, 
die ich überbieten möchte.

Als Trost gegen UPN wird es max. 19 Klammerebenen geben. Welche Klammer 
in Verwendung ist wird im Display angezeigt.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jens G. schrieb:

> Ich selbst hatte im Studium folgenden Taschenrechner genutzt.
> https://en.wikipedia.org/wiki/Elektronika_MK-61

Das Teil ist ja kultig. ;-)  Ich wusste gar nicht, dass die Sowjets
UPN-Taschenrechner gebaut haben.  Weiß nicht, ob ich hätte 85 Rubel
dafür ausgeben wollen, aber wenn ich das gewusst hätte, hätt' ich
mir möglicherweise von meiner ersten (und einzigen) SU-Reise auch
sowas mitgebracht.

Ich staune, dass sie zu dieser Zeit noch VFDs verbaut haben und keine
LCDs.

Dein Projekt finde ich ansonsten hübsch! – Brauch' es aber selbst
nicht.  Habe noch einen HP48G, der jedoch mittlerweile auch weitgehend
in der Schublade bleibt, weil dessen Emulatoren dafür auf PC und
Android einfach schneller zur Hand sind.

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
HM (6, 24) =  9.6
AM (6, 24) = 15
GM (6, 24) = 12

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Eine kleine Statistik zu sqrt(1 - 100). 9900 Berechnungen wurden 
ausgeführt. Von den 9900 Zahlen passen 9821 Zahlen in den Bereich vom 
Fehler -4.20E-17 bis 4.20E-17. Fehler = (Ist / Exact) - 1.

: Bearbeitet durch User
Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Eine Grafik sagt mehr .. von -1E-15 bis +1E-15 die Häufigkeit vom Fehler 
bei sqrt(1 .. 100).

Autor: Jens Grabner (jensg)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ein neues Mainboard ist in der Bestellung.
https://oshpark.com/profiles/Jens_G

Aktuelle Dokumente - wie immer hier:
https://github.com/JensGrabner/snc98_Slash-Number-Calculator

Ein Thermometer kommt drauf - mit Anschluss per Onewire.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.