Forum: Mikrocontroller und Digitale Elektronik Schallmessung in dB mit AD Wandler mit SAB 80C535


von Holger (Gast)


Lesenswert?

Hallo,

ich brauche für ein kleines Projekt ein Programm für eine Schallmessung 
mit dem Mikrocontroller SAB 80C535. Angezeigt werden soll alles auf 
einem LCD-Display in dB. Ein AD-Wandler soll auch noch mit eingebunden 
werden.

Die Hardware ist vorhanden, jedoch bin ich leider im 
programmier-technischen Bereich nicht so begabt wie im 
Hardware-technischen Bereich.

Kann mir da einer helfen ein Programm in C zu schreiben?

Für jede Hilfe danke ich sehr!

Liebe Grüße, Holger :-)

: Verschoben durch User
von irgendeiner (Gast)


Lesenswert?

Ist wieder Hausaufgabenzeit? ;-)

von Stefan K. (stefan64)


Lesenswert?

Holger schrieb:
> mit dem Mikrocontroller SAB 80C535

Wo hast Du denn diese alte Möhre her?
Damit wirst Du Dich sehr schwer tun und wahrscheinlich ziemlich wenig 
qualifizierte Hilfe finden. Allein das Programm in das dort nötige Eprom 
(Flash?) zu bekommen, ist nicht so einfach.

Ich empfehle Dir, auf ein aktuelles ATmega Board umzusteigen, gerne auch 
einen Arduino. Dafür gibt es fertige Entwicklungsumgebungen umsonst und 
sehr viele Leute, die sich damit auskennen. Preislich kostet Dich das 
inkl. neuem Display höchstens 20€.

Viele Grüße, Stefan

von Lothar (Gast)


Angehängte Dateien:

Lesenswert?

Stefan K. schrieb:
> Ich empfehle Dir, auf ein aktuelles ATmega Board umzusteigen
> Preislich kostet Dich das inkl. neuem Display höchstens 20€

Bloss nicht! Für 28€ kann die Schule auf ein aktuelles 8051 Board 
umsteigen mit LCD, Debugger, 72 MHz, 14-Bit ADC, 4x 12-Bit DAC und 
professioneller IDE umsonst und Space Invaders Demo :-)

http://de.rs-online.com/web/p/entwicklungskits-prozessor-mikrocontroller/9158802/

von Stefan K. (stefan64)


Lesenswert?

@Lothar:
Gerne. Ganz allgemein könnten wir uns auf:

"Für xx€ kann die Schule auf ein IRGENDWEIN aktuelles xxx-Board 
umsteigen"

einigen. Vorausgesetzt, die Einstiegshürde ist entspechend niedrig.

Ich befürchte aber, dass dort irgendein Lehrer/Prof dahintersteckt, der 
sich auf seinen 25 Jahre alten Scripten ausruht. Und daher am 80535 
nicht zu rütteln ist.

Viele Grüße, Stefan

von Olaf (Gast)


Lesenswert?

> Und daher am 80535 nicht zu rütteln ist.

Du versteht nicht. Die Handbuecher zum MCS51 gab es auf Deutsch. Da 
kommen also Schueler die was lernen wollen besser mit klar. Und die 
Dumbatzen die nur abschreiben wollen finden bei so ollen Teilen nichts 
zum klauen und man kann als Lehrer einfach das Netz nach dummen 
Suchanfragen abscannen und sie dann durchfallen lassen.

Olaf

von Bernd N (Gast)


Lesenswert?

Selbst wenn es alt ist kann man die Aufgabe doch lösen. Die Frage ist an 
welcher Stelle du Hilfe benötigst oder anders formuliert was kannst du 
denn selbst machen ?

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Bernd N schrieb:
> Selbst wenn es alt ist kann man die Aufgabe doch lösen

Ganz so einfach ist die Messung von Schall nicht, denn unser Ohr 
empfindet unterschiedliche Frequenzen unterschiedlich laut. Zu 
Messzwecken werden deswegen Bewertungskurven eingesetzt, die dieses 
Verhalten berücksichtigen:
https://de.wikipedia.org/wiki/Frequenzbewertung

Ein 'richtiges' Schallpegelmessgerät hat die vier hauptsächlichen Kurven 
(A-D) umschaltbar vor dem eigentlichen Logarithmierer als Filter 
implementiert.

von Lothar (Gast)


Lesenswert?

Stefan K. schrieb:
> Und daher am 80535 nicht zu rütteln ist

Die EFM8 sind aber halt 8051 und erst mal zu 90% zum 80535 kompatibel 
sogar in Assembler. Und serieller Bootloader ist vorinstalliert.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Olaf schrieb:
>> Und daher am 80535 nicht zu rütteln ist.
>
> Du versteht nicht. Die Handbuecher zum MCS51 gab es auf Deutsch

Daß der 80535 ein MCS-51 ist, ist Dir entgangen?

von Olaf (Gast)


Lesenswert?

> > Du versteht nicht. Die Handbuecher zum MCS51 gab es auf Deutsch

> Daß der 80535 ein MCS-51 ist, ist Dir entgangen?

Das hab ich vorausgesetzt, schliesslich hab ich die olle Moehre selber 
mal programmiert. Aber du hat mein Post nicht verstanden. .-)


Aber jetzt mal im Ernst man muss sicher nicht immer jeden modernen 
Firlefanz mitmachen, aber wenn man Schuelern etwas beibringen will dann 
bietet es sich doch heute DRINGENST an einen Controller zu verwenden den 
man auf dem Board flashen kann und fuer den es einen Debugger auf 
Sourcecodeebene gibt. Damit erhoeht man doch die Lerneffizienz deutlich.

Olaf

von Lothar (Gast)


Lesenswert?

Olaf schrieb:
> einen Controller zu verwenden den man auf dem Board flashen kann
> und fuer den es einen Debugger auf Sourcecodeebene gibt

Also doch das EFM8 8051 Board mit dem J-Link Debugger drauf für 28 EUR 
:-)

von Holger (Gast)


Lesenswert?

Hallo, ich verstehe rein garnichts vom Programmieren. Ich habe nicht die 
nötige Art zu denken... ich kann aller höchstens  + - * / rechnen und 
das ergebnis ausgeben

Beitrag #5150926 wurde von einem Moderator gelöscht.
von Karl M. (Gast)


Lesenswert?

Guten Mittag,

Holger schrieb:
> Hallo, ich verstehe rein garnichts vom Programmieren. Ich habe
> nicht die
> nötige Art zu denken... ich kann aller höchstens  + - * / rechnen und
> das ergebnis ausgeben

ich habe dann noch ein Verständnisproblem: Was erwartest Du dann in 
einem Forum, wenn die gesamte Materie deiner Frage Dir noch nicht 
geläufig ist ?

Was alle "Antworter" schön beschrieben hatten, ist eine allg. 
Vorgehensweise und ein Ausblick auf aktuelle Entwicklungsumgebungen samt 
Hardware(platform).

Klar sollte doch sein: so ein SAB 80C535 benötigt als Motor ein Chassis 
(i.a. Platine genannt), Benzin (Strom) und einen Fahrer (Programm).

Wenn ich einen Formel 1 Rennwagen bauen müsste, würde ich u.a. eine 
Ausbildung machen und versuchen bei den Rennteams ein Praktikum machen 
zu dürfen.

Klar es ist aus deiner jetzigen Sichtweite ein weiter Weg, aber so in 2 
Jahren könntest Du das alles alleine schaffen.

von Bernd N (Gast)


Lesenswert?

>> Hallo, ich verstehe rein garnichts vom Programmieren.
Und was erwartest du jetzt ? ist schliesslich deine Aufgabe, nicht 
unsere. Wenn das Alles ist was du einbringst dann kannst du keine Hilfe 
hier erwarten.

von Route_66 H. (route_66)


Lesenswert?

Olaf schrieb:
> Aber jetzt mal im Ernst man muss sicher nicht immer jeden modernen
> Firlefanz mitmachen, aber wenn man Schuelern etwas beibringen will dann
> bietet es sich doch heute DRINGENST an einen Controller zu verwenden den
> man auf dem Board flashen kann und fuer den es einen Debugger auf
> Sourcecodeebene gibt. Damit erhoeht man doch die Lerneffizienz deutlich.

Ich finde es unerträglich, dass eine einfache technische Anfrage als 
Aufhänger für eine Kritik an unserem Schulsystem missbraucht wird.

Dann soollte aber auch Ross uund Reiter benannt werden.

Warum müssen unsere Kinder und Enkel wohl noch in bescheiden 
ausgestatteten Schulen unterrichtet werden?

von Route_66 H. (route_66)


Lesenswert?

Moderator: Bitte löschen!

Danke.

von NOOB (Gast)


Lesenswert?

Wenn es nicht unbedingt der SAB sein müsste, würde sich hier bestimmt 
jemand finden, der dir das programmiert. Hier gibt es zwar viele 
Skeptiker bei sowas, es kann aber funktionieren (wenn auch nicht 
kostenlos)

von Peter D. (peda)


Lesenswert?

Matthias S. schrieb:
> Ganz so einfach ist die Messung von Schall nicht, denn unser Ohr
> empfindet unterschiedliche Frequenzen unterschiedlich laut.

So ist es, die Aufgabe ist alles andere als trivial. Und ohne den 
Schaltplan kann das eh keiner programmieren. Da der 8051 kein sonderlich 
guter DSP ist, muß ja viel schon analog verarbeitet werden.

Nicht programmieren können ist nicht schlimm, dann kauft man eben ein 
fertiges Meßgerät.

von Messtechniker (Gast)


Lesenswert?

Holger schrieb:
> Angezeigt werden soll alles auf einem LCD-Display in dB.

dB ist ein logarithmisches Maß für ein Leistungs- verhältnis
Für ein Messgerät wirst du eine Bezugsleistung festlegen müssen.

von MaWin (Gast)


Lesenswert?

Holger schrieb:
> Die Hardware ist vorhanden

Also hast du ein Messmikrophon, einen Verstärker mit A-Bewertungskurve, 
einen Logarithmierer und ein 80535 Board an das eine Anzeige 
angeschlossen ist die zumindest 3 Ziffern darstellen kann.
Super.
Das Programm ist einfachst, aber wenn man nicht weiss an welchem A/D 
Kanal der Mikrophonverstärker hängt und welches Display wo angeschlossen 
ust, kann man nichts programmieren, also Verschaltung aufzeichnen.

von MaWin (Gast)


Lesenswert?

Messtechniker schrieb:
> dB ist ein logarithmisches Maß für ein Leistungs- verhältnis

Es heisst zunächst mal: 10 mal so laut, 3dB mehr anzeigen.

> Für ein Messgerät wirst du eine Bezugsleistung festlegen müssen

Einen Absolutwertbezug wird er beim Basteln eh nicht erreichen können, 
er bräuchte eine 'Normlärmquelle' oder ein kalibriettes 
Vergleichsinstrument und das wird er nicht haben.

von Messtechniker (Gast)


Lesenswert?

MaWin schrieb:
> Einen Absolutwertbezug wird er beim Basteln eh nicht erreichen können,
> er bräuchte eine 'Normlärmquelle'

Auch ohne Normlärmquelle wird er sich bei der Anzeige in dB auf 
irgendeinen Bezugslevel festlegen müssen. Dimensionsbehaftete Größen aus 
einem Mikrophon kann man nicht logarithmieren. Das sagt schon die 
Mathematik - oder was ist der Logarithmus von mV?

von MaWin (Gast)


Lesenswert?

Messtechniker schrieb:
> Auch ohne Normlärmquelle wird er sich bei der Anzeige in dB auf
> irgendeinen Bezugslevel festlegen müssen. [Nicht-] Dimensionsbehaftete Größen 
aus
> einem Mikrophon kann man nicht logarithmieren. Das sagt schon die
> Mathematik - oder was ist der Logarithmus von mV?

Ohne Bezugslevel kann er sich den 1-Punkt, bzw. Log-0-Punkt beliebig 
aussuchen, und dann kann et logarithmieren.

von Stefan F. (Gast)


Lesenswert?

Flash Controller sind zwar praktischer, aber auch damals mussten "wir" n 
icht wie Behinderte arbeiten.

Anszelle eines Eproms hatten wir z.B. ein Batteriegepuffertes RAM 
verwendet. Teilweise sogar mit In-System-Programming Schnittstelle zum 
PC.

Ja, das war teuer und klobig, hat aber funktioniert.

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.