Forum: Mikrocontroller und Digitale Elektronik Zu viel Arbeit für einen ATMEGA32?


von M. G. (sirmel)


Lesenswert?

Morgen zusammen,

Ich würde gerne mit einem AT32 folgende Aufgabe lösen:

1.) Erster Hardwareinterrupt mit maximal alle 3ms Auslösung 
(Drehzahlerfassung)
2.) Zweiter Hardwareinterrupt mit maximal alle 20ms Auslösung 
(Geschwindigkeitserfassung)
3.) Berechnen verschiedener Werte für Streckenangabe
4.) Erfassen eines Analogwertes (Temperaturerfassung)
5.) Anzeigen der Werte auf einem 128x64 LCD mit einer Refresh-Rate von 
200ms

Bei der Ausgabe der Werte sollte die Drehzahl und die Temperatur 
möglichst als eine Art Balkendiagramm angezeigt werden, was glaub ich 
noch mal ein bisschen mehr Rechenleistung erfordert als die Werte 
einfach als Zahl auszugeben oder? Der µC sollte an 8Mhz laufen, kann 
aber auch 16Mhz etc. sein. Ich hatte früher schon mal sowas ähnliches 
programmiert und da hatte ich immer Problem wenn ich alles schön als 
Balkendiagramm darstellen wollte aber es kann auch sein dass ich da 
andere Fehler gemacht hab...ist schon etwas her=). Bin um jede Hilfe 
dankbar.

Mfg Mel

von Hannes Lux (Gast)


Lesenswert?

Punkt 3 ist zu allgemein formuliert und daher nicht einschätzbar.

Und da kommen vermutlich noch Bedienelemente dazu, oder?

Wenn Punkt 3 nicht zu hohe Ansprüche stellt, sollte ein Mega32 das mit 
1MHz schaffen, vernünftige (warteschleifenfreie) Programmierung 
vorausgesetzt.

...

von M. G. (sirmel)


Lesenswert?

Nein Bedienelemente eigentlich nicht. Nur noch eine Analogwerterfassung 
über ein Poti. Punkt 3 beinhaltet die Berechnung der Geschwindigkeit, 
die Berechnung der zurückgelegten Strecke, ggf. Berechnen der Werte für 
eine Balkenanzeige (dass der Ausschlag der Gesamtskala angepasst und ob 
der Wert fallen oder steigend ist und Berechnen der Temperatur aus dem 
Analog/Digitalwert. Ich versuche möglichst nur mit Integer oder 
Word-Werten zu rechnen um den Aufwand gering zu halten

von Karl H. (kbuchegg)


Lesenswert?

M. G. schrieb:

> Analog/Digitalwert. Ich versuche möglichst nur mit Integer oder
> Word-Werten zu rechnen um den Aufwand gering zu halten

Super.
Und was tust du, damit sich der Mega32 nicht zu Tode langweilt?

Es ist schon erstaunlich. Die Menschheit ist mit einem Bruchteil der 
Rechenleistung heutiger µC zum Mond geflogen und heute hat man Angst, 
dass ein 8Mhz getakteter µC 3 oder 4 Balkenanzeigen nicht hinkriegt.

von Johnny (Gast)


Lesenswert?

Wenn Du auf dem Display jeweils nur die veränderten Daten (Balken) 
aktualisierst und nicht alle 200ms den ganzen Displayinhalt, dann wird 
der uC wirklich mehr schlafen als rechnen... Sollte also bei 
vernünftiger Implementation kein Problem geben mit der Rechenleistung.

von M. G. (sirmel)


Lesenswert?

@Karl heinz Buchegger
Ist ja toll dass du so den Plan hast....aber auf solche sinnlosen 
Kommentare kann man eig. verzichten.

Gut dann werd ich das mal die Tage ausprobieren aber wenns Probleme gibt 
kann ich ja Karl heinz Buchegger fragen der weis ja wie ich die 
Rechenleistung optimieren kann

Mfg

von Karl H. (kbuchegg)


Lesenswert?

M. G. schrieb:
> @Karl heinz Buchegger
> Ist ja toll dass du so den Plan hast....aber auf solche sinnlosen
> Kommentare kann man eig. verzichten.
>
> Gut dann werd ich das mal die Tage ausprobieren aber wenns Probleme gibt
> kann ich ja Karl heinz Buchegger fragen der weis ja wie ich die
> Rechenleistung optimieren kann

Du wirst keine Probleme haben :-)
Aber wenn du Fragen hast, du bist jederzeit gerne gesehen.

Ich weiß schon, das du eine andere Generation bist als diejenigen die 
noch mit 1 Mhz, 4 Mhz, 8 Mhz Rechnern aufgewachsen sind, auf denen 
komplette Betriebssystem samt Anwenderprogrammen gelaufen sind. Mein 
Kommentar war eigentlich mehr auf Microsoft gemünzt, welche es 
problemlos geschafft haben, der ganzen Welt einzureden, man braucht 
einen 3Ghz Prozessor um einen Brief zu schreiben.

von Falk B. (falk)


Lesenswert?

@  Karl heinz Buchegger (kbuchegg) (Moderator)

>Du wirst keine Probleme haben :-)

Klar, der OP ist ja auch topfit und es geht nur um Software . . .

von spess53 (Gast)


Lesenswert?

Hi

>Ist ja toll dass du so den Plan hast....aber auf solche sinnlosen
>Kommentare kann man eig. verzichten.

Wo er Recht hat, hat er Recht. Bei 8MHz kann der ca. 1 Mio. 
Befehle/0,2sec abarbeiten. In Assembler würde ich das Programm, für 
deine Aufgabenstellung, grosszügig mit 3-4 kByte einschätzen. Also 
bleibt dem ATMega32 nichts weiter übrig, als die grösste Zeit Däumchen 
zu Drehen.

MfG Spess

von Karl H. (kbuchegg)


Lesenswert?

Falk Brunner schrieb:
> @  Karl heinz Buchegger (kbuchegg) (Moderator)
>
>>Du wirst keine Probleme haben :-)
>
> Klar, der OP ist ja auch topfit und es geht nur um Software . . .

Auch wieder wahr :-)

von M. G. (sirmel)


Lesenswert?

Alles klar dann hab ich das ein bisschen missverstanden=). Ich werd es 
die Tage testen und euch dann schreiben obs klappt oder nicht. Vielen 
Dank an alle

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.