µCke Microcontroller Mücke (Atmel Tiny13)

OP #1346531
Lesenswert?

Hallo
das hier ist eine Mücke ohne Stachel ^_^
µCke - eine Microcontroller Mücke aus einem Tiny13.

Sourcecode, Schaltplan, Prinzip der Tonerzeugung und eine Beispiel MP3 
befindet sich in der .rar Datei hier im Anhang.

Die LED in dem Schaltplan dient hier als Lichtsensor. Die leuchtende 
Substanz von LEDs verhält sich wie ein lichtempfindlicher Kondensator. 
Die LED wird dabei in entgegengestzter Richtung aufgeladen, dann wird 
mit dem AD Wandler des Tiny13 geprüft nach wieviel Zeit sich dieser 'LED 
Kondensator' wieder entladen hat.
Je heller es ist desto schneller entlädt er sich.
Das verwende ich hier um Helligkeit zu 'sehen'. Wenn es Hell wird (Licht 
geht an oder Tags) dann ist die Muecke still.
Wird es wieder dunkel dann summt sie weiter nach 2 Minuten Pause. Das 
gibt den richtigen Nervfaktor hahahahaha :)

viel Spass
Alex
Angehängte Dateien:
OP #1346885
Lesenswert?

^_^ Danke für die netten Kommentare.

hab noch eine kleine Änderung an der 'niedrigsten Frequenz' abfrage 
gemacht.
Jetzt geht das Summen nicht mehr so tief. Werte von 900 auf 750 
geändert:
1
lf01:
2
    cpi r25,high(750)
3
    brne lg03
4
lg02:
5
    cpi r24,low(750)
6
    breq l100

...und ein kleiner Fehler im Comment in Zeile 136. Dort soll es 
natürlich nicht ';=addi r23,1' sondern ';=addi r17,1' heissen.
OP #1347056
Lesenswert?

@Läubi
Ja, das wäre besser aber ich bin halt ein chaotischer Programmierer :))

...mir fällt grad auch noch auf das subi r17,1 (zeile 130) und subi 
r17,-1 (zeile 136) auch mit dec r17 bzw. inc r17 ersetzt werden kann. 
Ausserdem ist der comment falsch. so sieht es dann aus:
1
cpi r17,8
2
    breq lf00
3
    dec r17 ;lautstaerke senken
4
    rjmp lf00
5

6
l116:  
7
    cpi r17,76
8
    breq lf00
9
    inc r17 ;lautstaerke erhoehen

das ist aber nur eine Schönheitsreparatur, an der Funktion des Programms 
ändert sich dadurch nichts.
OP #1347151
Lesenswert?

@Mindy
Von C habe ich leider keine Ahnung, aber wenn ich dir etwas an dem 
Assembler Programm erklären soll dann frag ruhig.
Das Programm ist wirklich sehr einfach und ich finde die Assembler 
Befehle sind selbsterklärend. Vieleicht gibt es auch ein Tool das 
Assembler nach C Konvertiert.
Gast #1347182
Lesenswert?

Axel S. schrieb:
>ich finde die Assembler
>Befehle sind selbsterklärend.

 LOL 
Dann hätte ja C nicht erfunden werden brauchen.
OK, bei so einem relativ kurzen Programm kann man noch einigermaßen 
folgen; ich bewundere nur die Leute, die es schaffen größere Programme 
rein in Assembler zu schreiben. Da könnte ich nicht mithalten.
OP #1347718
Lesenswert?

@Stefan Wimmer
Ich kenne nur die Mücke aus den '304 Schaltungen' von Elektor von 1996.
Schaltplan ist im Anhang. Der ist aber mit einem 4093 (Schmitt-Trigger) 
und 4020 (Binärzähler), würde aber auch mit samt 9V Batterie in eine 
Streichholzschachtel passen (die Versorgungsspannung kann laut 
Schaltplanbeschreibung zwischen 4,5 V und 9 V liegen, Stromverbrauch 2 
bis 5mA).
Meine µCke funktioniert ja fast so ähnlich wie die in diesem Schaltplan.
Angehängte Dateien:
Gast #1348172
Lesenswert?

Lustiges Projekt :-)

Mal ne dumme Frage, bin neu bei den ATMEL Controllern :)

Mit was kann man denn den ATtiny13 programmieren?

also was für ein programmier gerät und was für ne software? Das hex file 
in deinem Archiv kann man ja dann einfach draufspielen? Oder gibts sonst 
noch was zu beachten`?`?

MFG
OP #1348589
Lesenswert?

@AVRNeuling
es gibt mehrere Varianten:
Parallelport:
- ein paar Widerstände reichen = sehr Gefährlich für den PC wenn etwas 
falsch angeschlossen wird.
- oder mit einem 74HCT244 = sicherer
- oder ein fertiges Programmiergerät kaufen = natürlich teuerer als 
selberbauen.
USB Port:
- selberbau = kompliziert
- fertiges Programmiergerät kaufen = teuer

Ich benutze die Selbstbauvariante mit dem 74HCT244 am PC Parallelport 
und als
'Brennsoftware' das altbekannte PonyProg2000 (freeware).
Mit PonyProg kann man die .hex Datei problemlos in den Tiny13 schieben. 
Oben AVRmicro und ATtiny13 einstellen und nicht vergessen die 'fuses' 
vom Tiny13 auch richtig zu setzen, das geht bei dem 'Schloss' Button 
menü.

Um Programme zu schreiben benutze ich AVR Studio (freeware).

such mal nach 'AVR Programmieradapter' oder so... dann findest du 
Schaltpläne usw.

viel Spass
Alex
Gast #1348607
Lesenswert?

Axel S. schrieb:
> es gibt mehrere Varianten:
(...)
> USB Port:
> - selberbau = kompliziert

Bei der Selbstbauvariante mit USB-Port käme dann schnell das altbekannte 
"Henne-Ei-Problem" zum Tragen. Wenn er die Hardware zusammengestrickt 
hätte müsste er immer noch den µC auf dem Programmer mit der 
entsprechenden Firmware impfen. Dies wiederum geht nur über einen 
Programmer.

Neverending Story....      ;o)
#1349000
Lesenswert?

zum Henne Ei Problem:

da könnte man doch ein "Wander Mega8" Projekt daraus machen ;-). Es wird 
ein z.B. mit der USBASP Firmware programmierter Mega8 an den 1. 
Interessierten verschickt. Dieser verpflichtet sich dann wiederum an den 
nächsten Interessierten einen (mit seinem neuen USBASP) programmierten 
Mega8 zu verschicken.
So erhält jeder die Chance einen einfachen USB Programmierer zu bauen 
und kann dann auch gleich einem interessierten Neueinsteiger 
weiterhelfen.

Gerade für den USBASP gibt es einfache einseitige Layouts so dass weder 
der Nachbau auf Lochraster noch das Selberätzen einer Platine einen sehr 
hohen Einstiegslevel bedeuten.
Es gibt auch eine "alternative" Firmware für den USBASP dass dieser sich 
dann wie ein AVRISPmkII verhält. Also damit z.B. direkt aus dem 
AVR-Studio heraus programmiert werden kann.

Alternativ könnte man auch einfach ein serielles bzw. parport 
Programmierkabel "durchreichen".

Wenn einer hierzu einen Artikel aufsetzt, mit dem das ganze gesteuert 
wird, wäre ich bereit den initialen Mega8 bzw. das serielle 
Programmierkabel zu verschicken.
Ich hoffe es gibt keine rechtlichen Bedenken bzgl. der Firmware.

Grüße
 kaffeetas

P.S: Ich habe zu anfang auch Ponyprog mit einem einfachen seriellen 
Adapter verwendet. Es gelang mir selten die Fuses auf Anhieb richtig zu 
setzten. Heute lass ich mir die FuseBytes im Internet "ausrechnen" und 
setze sie dann per avrdude -> keine Probleme mehr mit den Fusebits.
OP #1349055
Lesenswert?

@Wim
habe gerade die .rar Datei heruntergeladen und bei mir ist alles da:
µCke Prinzip.jpg
µCke Schaltplan.jpg
µCke.mp3
info.txt
muecke.asm
muecke.hex

@kaffeetas
Gute Idee. Gerade auch weil ja modernere Motherboards keine Parallel- 
und Seriellports mehr haben, dann wäre Dein Vorschlag eine gute Hilfe.
OP #1349198
Lesenswert?

hab das 'Summen' noch etwas höher gemacht. So finde ich es besser.
Siehe Anhang: muecke(hoeheres summen).rar
Inhalt:
muecke(hoeheres summen).asm
muecke(hoeheres summen).hex
µCke Foto.jpg

Änderungen zur Vorgängerversion:

zeile 78: ldi r24,low(326) ;pre- und postpause initialisieren...
zeile 79: ldi r25,high(326) ;...
zeile 150: cpi r25,high(300)
zeile 153: cpi r24,low(300)
zeile 156: sbiw r25:r24,2
zeile 160: cpi r25,high(350)
zeile 163: cpi r24,low(350)
zeile 166: adiw r25:r24,2
Angehängte Dateien:
OP #1349214
Lesenswert?

@Klaus Huber
hab einen mit 28mm Durchmesser verwendet, siehe Foto.
Der 'SUMMER BM 15B' hat zwar nur 17mm aber das wird völlig ausreichen um 
genügend Mückenlärm zu verbreiten ^_^.

EDIT: Oh, es könnte sein das der 'SUMMER BM 15B' schon eine 
Summelektronik beinhaltet (Alarmmelder). Das geht dann natürlich nicht. 
Es muss der 'nackte' Piezo Schallwandler sein.
Angehängte Dateien:
Gast #1377937
Lesenswert?

Hey Alex - Prima Projekt - alle "Zutaten" habe ich hier noch gefunden 
und zugleich eine Mücke gebastelt. - Programmiert und finde: eine tolle 
Idee!

Jedoch finde ich, es gäbe Verbesserungsmöglichkeiten:
Findet Ihr auch, dass es gut wäre, wenn es nicht die ganze Zeit surren 
würde, sondern auch Pausen dazwischen wären?
Ausserdem: mit welchem Controller bekäme man einen geringeren 
Stromverbrauch hin?

Viele Gruesse
Eb
Gast #1384859
Lesenswert?

Hi, Alex ich hab das mal nachgebaut soweit funkt es auch nur das mit der 
IR - LED Katode an Pin3 Anode an GND da tut sich bei mir nichts.

IRLED ist von Reichelt LD 274-3 liegt es vieleicht an der?

übrigens "Klasse Projekt"

Armin
#1392682
Lesenswert?

erstmal ein großes Lob:

super Projekt (Daumenhoch)

Mein Nachbau funktioniert fast perfekt, nur die IR-LED reagiert nicht 
empfindlich genug. Es moß schon extrem hell sein bis die Mücke Ruhe 
gibt. Wie müßte ich den Code anpassen? Soweit ich das verstanden habe 
gibt es hier keinen absoluten Wert für die hell/dunkel-Schwelle. Die 
relative Änderung wird aber nicht korrekt erkannt. Bitte gebt mir einen 
Tip
OP #1397126
Lesenswert?

Oh, vielen Dank an euch...^_^

@ Eb
Um das Mückensummen zu unterbrechen ohne das Licht auf die Diode 
gefallen ist kannst du es z.B. so ändern:
1
l110:  
2
        ldi r16,2
3
        cpi r21,253
4
        brlo xxx
5
        dec r16
6
xxx:    cpi r23,123
7
        brne l115
8
        dec r16
9
        breq l117
10
        
11
        ;lpm ;3fach nop (ausgleichstakte)
12
        ;lpm ;3fach nop (ausgleichstakte)
13
        ;lpm ;3fach nop (ausgleichstakte)
wenn die Zufallsgenerator-Register r21>=253 und r23=123 sind dann gibts 
ne pause. Gute Idee, dadurch wirds noch nerviger denn wenn die Mücke 
nicht mehr summt dann ist sie bestimmt gelandet und sticht zu ^_^.
Stromverbrauch senken? die braucht doch nur 1,7mA.


@ Armin
vieleicht falsch herum angeschlossen? Meine IR Diode hatte mir auch 
einen Streich gespielt. Ich gehe immer davon aus das die breite Seite in 
der Diode die Kathode ist, bei der IR-Diode war es aber genau 
andersherum.


@ Martin S.
versuch mal bei 'l119:' anstelle von cpi 'r19,0' statt 0 höhere Werte 
auszuprobieren oder nimm einfach eine andere Diode. Das Programm muss 
leider so einigermassen Taktgenau ablaufen desshalb kann es nicht so 
einfach an andere Entladekurven angepasst werden.

viel Spass
Alex
Gast #1606170
Lesenswert?

Hallo AlexS,
was für ein geniales Projekt. Top Deluxe.
 Hab’s gleich nachgebaut, und war echt überrascht wie echt und nervig 
der Sound doch ist :- )
Leider hat die IR-LED mit streiken angefangen. So ein Biest, und ich 
wollte doch noch am selben Abend das Teil im Wohnzimmer verstecken  :-p

Aufgeben wollte ich die Muecke aber auch nicht. Also beschloss ich mich 
den Source an einen LDR-Widerstand anzupassen. Hat auch prima geklappt, 
nur leider musste ich den Schaltplan etwas ändern.

Ich hoffe dass du nichts dagegen hast, wenn ich meinen Source hier rein 
poste.

Danke noch mal für das simple und doch so tolle Projekt.

Gruß
gtf
Angehängte Dateien:
OP #1615910
Lesenswert?

Hallo gtf

SUPER! Ich bin begeistert.
Schön, das dir die µCke gefällt. Deine SMD-Version kommt ja von der 
Grösse her schon fast an eine echte Mücke ran :)
Deine LDR-Änderung werd ich mir auch mal aufbauen.
Da hab ich wohl glück gehabt mit meinen IR-LEDs denn die Empfindlichkeit 
ist bei mir gut (die waren aus einer alten TV-Fernbedienung).

viele Grüsse
Alex
(du hast keinen Fehler gemacht, so heisse ich. Keine Ahnung warum ich 
mich hier als Axel angemeldet habe.)
Gast #1695933
Lesenswert?

Mal eine kurze Frage:
Die Mücke erzeugt das Tonsignal ja nun eigenständig..., aber,
...mit welchem AVR könnte ich z.B. das Miauen meiner Katze,
welches ich vorher aufnehme, rippe und als mp3 abspeichere,
einlesen und per Zufallsgenerator ca. alle 20 Min ausgeben?
Gast #1696081
Lesenswert?

friedel schrieb:
> Mal eine kurze Frage:
> Die Mücke erzeugt das Tonsignal ja nun eigenständig..., aber,
> ...mit welchem AVR könnte ich z.B. das Miauen meiner Katze,
> welches ich vorher aufnehme, rippe und als mp3 abspeichere,
> einlesen und per Zufallsgenerator ca. alle 20 Min ausgeben?

Das hat nix mit diesem Thread zu tun, also unterlasse bitte das 
Entführen von fremden Thread für deine Fragen. Mach ein neuen auf, für 
neue Fragen.
Gast #2642584
Lesenswert?

Hallo

Entschuldigt wenn ich den Therd noch einmal ausgrabe, aber das Projekt 
sieht interessant aus. Aber leider kann ich die mit der ".rar"-Datei 
nichts anfangen kann das bitte Jemand in eine Zip-Datei convertieren?
#2649141
Lesenswert?

hmm, ich bin grad dabei ;)

Nur derzeit ist die Mücke noch im Entwicklungsstadium.

Als Akku verwende ich nen Memopuffer (Reichelt), welchen ich bei bedarf 
über einen Fet(KSQ) laden kann. Das erste Layout wurde leider von meinem 
Vater aufgrund einer nächtlichen Störung komplett zerstört. :(

Tm
Gast #3660915
Lesenswert?

Für alle, die noch auf eine C-Version für die Mücke warten, habe ich 
eine solche geschrieben.
Gegenüber der Originalversion wird die Helligkeit nicht durch eine
Fotodiode und dem ADC, sondern über ein Fotowiderstand und dem 
Komparator
abgefragt.

Robin
Angehängte Dateien:
(Firma: Spezialeinheit) #3779930
Lesenswert?

Mein Sohn kam neulich mit einer dieser Kinderzeitschriften mit Spielzeug 
an. Das Spielzeug war eine „Scherz Mücke“, Made in China. Vom Aufbau 
entspricht die Schaltung der hier vorgestellten, lediglich der Chip 
versteckt sich unter einem Plastikklecks. Ist schon erstaunlich wie 
Ideen aus dem Forum den Weg in die freie Wirtschaft finden.
OP #3867401
Lesenswert?

@ Fred Feuerstein

Die 'Scherz Mücke' aus der Kinderzeitschrift 'Micky Maus Extra' 33/2014 
vom 8.8.2014 habe ich mir jetzt besorgt. Ich glaube das ist die, die du 
meinst.

Das ist eine sehr langweilige Mücke denn die verwendet einen kurzen 
Audiosample der sich, ohne Variation, ständig wiederholt und von der 
Tonhöhe viel zu tief ist. Es hört sich eher wie ein leiser Türsummer an. 
Immerhin verwendet die eine LED als Helligkeitssensor. Schaltung läuft 
mit einer 3V Knopfzelle.

Hab mir noch eine andere Kommerzmücke besorgt aber da ist es bis auf 
eine andere Schaltung genau das Selbe. Auch ein langweiliger kurzer 
Audiosample-Loop (auch viel zu tiefe Tonhöhe) und LED als Sensor. 
Schaltung läuft mit 3x1,5V Knopfzellen.

Also die beiden sind bei weitem keine ernstzunehmende Konkurenz für 
meine Mücke :)
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren