Forum: Mikrocontroller und Digitale Elektronik Einfacher MC für Anfänger


von Manfred (Gast)


Lesenswert?

Hallo liebe MC-Freunde.

Könnt ihr mir was empfehlen für einen Anfänger mit kleinen Assember 
Kentnissen:

MC für:
 1 Eingang (Reed Kontakt) 1 Ausgang (Piepser)
und einem Analogen Eingang für Temperaturmessung oder schon integrierten
Temperaturfühler (???).

Das MC muss Timer haben, also :

Reed Kontakt ein: nach x Minuten piepseralarm
x ist Abhängig von Temperatur (tendenziell, nicht genau).

Das ganze mit Batteriebetrieb in einem kleinen Gehäuse,
darf also nicht allzuviel Strom verbrauchen.
Es soll an einen Fensterrahmen geklebt werden, also klein sein.

Ich will einmal so eine Schaltung bauen.
Wenn es sowas fertig gibt wäre auch nicht schlecht.

Danke, Manfred.

von Christian H. (netzwanze) Benutzerseite


Lesenswert?

attiny25

von Fred (Gast)


Lesenswert?


von Karl H. (kbuchegg)


Lesenswert?

Manfred schrieb:

> Könnt ihr mir was empfehlen für einen Anfänger mit kleinen Assember
> Kentnissen:

Welche Kentnisse?
Welchen Controller kennst du schon?

'Den optimialen Controller' gibt es nicht. Optimial kann im Zweifelsfall 
einfach nur der Controller sein, den du bereits kennst.

von Christian H. (netzwanze) Benutzerseite


Lesenswert?

Ich hätte auch noch den ATtiny10 anzubieten.
Der ist sehr klein und bietet noch einen Pin mehr, als Du benötigst.

von Fred (Gast)


Angehängte Dateien:

Lesenswert?

Da kannste deinen Reed-Kontakt bestimmt anschließen!

von Christian H. (netzwanze) Benutzerseite


Lesenswert?

Wenn sich "Anfänger" auch auf Löterfahrungen bezieht, würde ich eher 
einen Prozessor im DIP-Gehäuse empfehlen (ok, dadurch fällt auch der 
Attiny10 weg - oder gibt es den auch in DIP6?). Der MSP fällt da auf 
jeden Fall weg.

von Sebastian (Gast)


Lesenswert?

Der ATTiny25 ist nicht schlecht. Es gibt ihn in DIP oder SMD, er ist 
preisgünstig und nicht übertrieben komplex, trotz der Mehrfachbelegung 
der Portpins. Programmieren kann man mit AVR-Studio in Assembler, oder 
mit AVR-GCC/WinAVR auch in C. Wer nur Assembler macht, kommt auch mit 
dem Vorgängertyp ATTiny15 zurecht, der hat aber keinen eingebauten 
Temperatursensor.

von Harry (Gast)


Lesenswert?

Naja der MSP war ja wohl nur ein Scherz, denk ich. Das ist ja immerhin 
schon eher ein Monstrum von uC. Für nen Summer und nen Reed-Kontakt...:)

von spess53 (Gast)


Lesenswert?

Hi

Richtig klein: ATTINY10-TSHR im  SOT-23-6.

MfG Spess

von Manfred (Gast)


Lesenswert?

Vielen Dank an alle die mir mit ernstgemeinten Ratschlägen geholfen 
haben!

Der ATTiny25 scheint zu passen, da er DIL Gehäuse und integrierten
Temperatursensor hat.

Aber im Datenblatt habe ich gelesen, da er 0.2mA Stromaufnahme hat,
bei ca. 2V, wobei es da nochmal einen aktiven / inaktiven Modus gibt...

Für Batteriebetrieb ist das etwas viel, zudem müsste ich zwei Spannungen
benutzen, da ein Pieper / Summer ja eine höhere Spannung braucht

von Manfred (Gast)


Lesenswert?

Was mir noch über den Weg gelaufen ist ist ein PIC mit Flash-Speicher.

Habe mich noch nicht vertieft darin, aber vielleicht könnt ihr mir
ja von vornherein ab/- zuraten.

von Ohforf S. (ohforf)


Lesenswert?

Manfred schrieb:
> Was mir noch über den Weg gelaufen ist ist ein PIC mit Flash-Speicher.
>
> Habe mich noch nicht vertieft darin, aber vielleicht könnt ihr mir
> ja von vornherein ab/- zuraten.

Es gibt eine riesige Auswahl von PICs mit Flash-Speicher.
Vorteihaft ist, dass man die Dinger beim Hersteller als Muster schnorren 
kann (geht auch bei anderen Herstellern).
Sicher, AVRs und PICs sind für Anfänger gut geeignet, immerhin hast du 
damit ein Standardteil das in unglaublichen Stückzahlen eingesetzt wird.
Beispiele, Tips und Tricks gibts mehr als du jemals lesen willst.

von MarioT (Gast)


Lesenswert?

Manfred schrieb:
> Aber im Datenblatt habe ich gelesen, da er 0.2mA Stromaufnahme hat,
> bei ca. 2V, wobei es da nochmal einen aktiven / inaktiven Modus gibt...
>
> Für Batteriebetrieb ist das etwas viel,

Von wieviel Stromaufnahme träumst Du denn?

von Hans M. (bauzi)


Lesenswert?

Der ADuC814 ist ein "einfacher" 8051er mit integriertem 
Temperatursensor.
Hat ein 28-pin TSSOP package und funktioniert mit 3V oder 5V.
Natürlich hat das Teil einen integrierten Flash-Programmspeicher.
Und der lässt sich einfach per UART programmieren.

von Ohforf S. (ohforf)


Lesenswert?

MarioT schrieb:
> Von wieviel Stromaufnahme träumst Du denn?

Gute Frage, wenn man einen modernen Microcontroller im Schlafzustand 
betreibt, stirbt die Batterie eher an Alterung, wirlich leer wird die 
nicht.

von hans (Gast)


Lesenswert?

Manfred schrieb:
> Für Batteriebetrieb ist das etwas viel, zudem müsste ich zwei Spannungen
>
> benutzen, da ein Pieper / Summer ja eine höhere Spannung braucht

Der Tiny 25 kann auch schlafen und braucht dann weniger Stron.
Schau mal in das Datenblatt und in das Tutorial "Sleep".

Für den Alarm mit Piezo gibt es "aktive" mit eingebauter
Elektronik oder (hier besser) welche die man mit einer
"selbstgemachten" Frequenz ansteuert. Das wäre hier optimal.
Der Tiny 25 kann PWM und hat complementäre Ausgänge.
Wenn man dort bei 2 Volt VCC den Piezo anschließt "sieht"
dieser ein Rechtechsignal mit 4 Volt pp und macht schon
ausreichend Krach.

Hans

von Hans M. (bauzi)


Lesenswert?

Manfred schrieb:
> Aber im Datenblatt habe ich gelesen, da er 0.2mA Stromaufnahme hat,
> bei ca. 2V, wobei es da nochmal einen aktiven / inaktiven Modus gibt...

Man kann den µC automatisch in den Schlaf-Modus schicken, kurz das 
machen lassen, was er soll, und wieder in den Schlaf-Modus schicken, 
usw...
Dann kommt man mit sehr wenig Strom aus.
(Z.B. ADuC814: Power-down: 15 µA (32 kHz oscillator running)

von Ohforf S. (ohforf)


Lesenswert?

Wie klein muss das Ding sein ?
Ein PIC mit ADC kann z.B. 3x3mm gross sein - Atmel hat sicher was 
vergleichbares.
http://all-electronics.de/eJL/2-Bauelemente+aktiv/product/49322-Kleiner+Mikrocontroller+mit+schreibbarem+Flash?PHPSESSID=b48a03945e49b740baf62617b4b69378

von Manfred (Gast)


Lesenswert?

Nochmals Danke,
hier wird einem ja wirklich geholfen! :-)

Sleep - Modus:
Bis dahin hab ich mich im Datenblatt jetzt auch durchgelesen,
wäre ja Ideal für mich.
Warten auf REED offen, Alarm machen, wenn REED wieder zu: schlafen.

Kann ich 9V von einer Blockbatterie über eine "7V" - Zenerdiode in Reihe
an den AVR legen?

Das passt dann.

Zur Größe: die ganze Schaltung sollte in ein kleines Gehäuse
(max. Zigarettenschachtel) passen, das würde mit dem ATTiny ja klappen.

Da ich selber löten will/muss (Lochrasterplatine) und keinerlei SMD
Erfahrung oder Ausrüstung habe, ist so ein DIL (oder DIP?) Gehäuse
schon OK,  3x3 wäre sicher ZU klein.

Könnt ihr mir jetzt noch Tips geben, wo ich evt. ein Kompendium
und Schaltvorschläge herbekomme? Evt. sogar auf Deutsch?
Ist das hier 
http://www.amazon.de/gp/product/3772348998/ref=cm_rdp_product/278-5905358-1164735

sinnvoll?

von Ohforf S. (ohforf)


Lesenswert?

Schau mal ins Menü links oben, hier gibts jede Menge Kram für 
AVR-Anfänger.
Das Lernpaket Von Burkhard Kainka ist sicher nicht übel, aber das Geld 
kannst du dir sparen(für den Preis ist nun wirklich nicht viel drin).
Wichtig ist erstmal ein brauchbares Programmiergerät.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Noch einmal zum Stromverbrauch des Attiny25:

Für die Anwendung kann der Controller die meiste Zeit im Powerdown-Modus
mit deaktiviertem Watchdog-Timer bleiben. Zwei Mignonzellen mit 2000mAh
halten dann theoretisch über 1000 Jahre, wenn diese unangenehme
Selbstentladung nicht wäre. Der Controller reagiert dann nur auf den
Reed-Kontakt.

Während der x Minuten Wartezeit nach dem Schließen des Reed-Kontakts
reicht es, wenn der Watchdog-Timer läuft und den Controller bspw. einmal
pro Sekunde ganz kurz aufweckt. Wenn der Reed-Kontakt so oft betätigt
wird, dass der Timer nicht mehr abgeschaltet wird, halten die Batterien
immerhin noch gute 50 Jahre, wenn man die Selbstentladung nicht
berücksichtigt.

Selbst während des Piepsens muss die CPU des Controllers nicht
eingeschaltet sein, der Timer0 schafft das ganz alleine. Lässt man die
Schaltung ununterbrochen Piepsen, hält die Batterie immer noch über 3
Jahre, wenn man den Stromverbrauch des Piepsers weg lässt. Zusammen mit
einem Piezowandler bleiben dann zwar nur noch 1 Jahr übrig, aber dafür
kann ja der Controller nichts. Und wer lässt das Ding schon freiwillig
Tag und Nacht dauerpiepsen?

Mach dir also um den Stromverbrauch keine Sorgen. Aber auch bei anderen
neueren Mikrocontrollern spielt der Stromverbrauch für deine Anwendung
keine, aber auch gar keine Rolle, wenn du deren Sleep- und Powerdown-
Modi richtig einsetzt.

von Manfred (Gast)


Lesenswert?

Ohforf Sake: Danke, ich werd mich da mal durchlesen.
Unter "Prgrammiergerät" verstehst du eien Platine, die
an RS232 angeschlossen wird und in die der Tiny gesteckt wird?
Passen da alle ATTiny25, 20, 16, 13 und wie die alle heisen rein,
oder muss ich ein spezielles nehmen?

Yalu X.: Danke,
OK, die Batterielebensdauer ist ja wirklich kein Problem,
wenn man den Sleepmodus richtig einsetzt.
Eine 9V Blockbatterie wäre mir aus mechansiche Gründen lieber,
aber mit 2x Mignon werde ich wohl auch was hingebastelt bekommen.

von Max (Gast)


Lesenswert?

Für AVRs gibts Bascom, das ist ein extrem einfacher Basic Compiler von 
dem es auch gratis eine trial gibt die auf 4kB beschränkt ist (in deinem 
fall egal).
Für Leute die absolut keine Kenntnisse haben gibts noch Flowcode 
(programmierung mit grafischen elementen), mit den Preisen davon hab ich 
mich aber noch nich beschäftigt.

von Ohforf S. (ohforf)


Lesenswert?

Welches AVR Programmiergerät das beste ist weiss ich nicht.
Beim Reichelt gibts z.B. "AT AVR ISP" mit USB Anschluss.
ISP bedeutet, dass du den AVR eben nicht ins Programmiergerät steckst - 
das wäre unpraktisch.
Stattdessen baust du auf deine Versuchsplatine einen Anschluss, wo das 
ISP-Gerät angeschlossen wird.

Beim Pollin gibts "ATMEL Evaluations-Board Version 2.0.1 - Bausatz" mit 
seriellem Anschluss, lächerlich billig.
Für den Einstieg mag das Ding ganz nützlich sein.

von Manfred (Gast)


Lesenswert?

Ich habe mir das Reichelt - Teil mal angesehen.

Ich verbinde den  "AT AVR ISP" mit USB und stecke die Pfostensteckleiste
auf meine Platine mit dem Tiny? Wäre es dann hilfreich, auf dem fertigen
Gerät auch so eine Stiftleiste zum Programmieren zu haben?

Was macht dieser "AT AVR ISP" denn genau?
Ist das nur sowas wie ein USB - RS232 Wandler?

Die AVRStudio4 Software hab ich auch schon geladen,
wenn ich die Beschreibung richtig gelesen habe, kann ich ja vorab
schonmal mein Programm testen (Simulator).
Da könnte ich schonmal Probieren ob ich das was ich will auch kann.
Und dann die Platine löten.

von Manfred (Gast)


Lesenswert?

Noch nachgefragt:

Im DIP Gehäuse gibts:
ATTINY 25V-10 PU
ATTINY 25-20 PU

wo ist denn da der Unterschied?

von Ohforf S. (ohforf)


Lesenswert?

Manfred schrieb:
> Ich habe mir das Reichelt - Teil mal angesehen.
>
> Ich verbinde den  "AT AVR ISP" mit USB und stecke die Pfostensteckleiste
> auf meine Platine mit dem Tiny? Wäre es dann hilfreich, auf dem fertigen
> Gerät auch so eine Stiftleiste zum Programmieren zu haben?
>
> Was macht dieser "AT AVR ISP" denn genau?
> Ist das nur sowas wie ein USB - RS232 Wandler?
>
> Die AVRStudio4 Software hab ich auch schon geladen,
> wenn ich die Beschreibung richtig gelesen habe, kann ich ja vorab
> schonmal mein Programm testen (Simulator).
> Da könnte ich schonmal Probieren ob ich das was ich will auch kann.
> Und dann die Platine löten.

Was in dem original-ISP drin ist, weiss ich nicht.
Etwas ähnliches wird hier beschrieben :
http://www.sixca.com/eng/articles/avr_isp/
Ein ISP-anschluss in einem fertigen Gerät ist immer gut, damit man 
bequem updaten kann wenn das Programm zickt. Oder bei SMD AVRs, weil man 
die kaum in einen Sockel stecken kann.

Simulatoren sind nicht so toll, aber einen Versuch wert.
Richtig spassig ist "Proteus VSM for Atmel AVR" - damit kann man den AVR 
im Schaltplan simulieren, mit allem moglichen Schnickschnack aussenrum, 
wie LCD_Displays... Leider kostet das Programm richtig Geld.
http://www.labcenter.co.uk/products/avr.cfm

von Flo (Gast)


Lesenswert?

Unterschiede gibts beim Spannungsbereich und bei der maximalen 
(garantierten) Taktfrequenz.

von Manfred (Gast)


Lesenswert?

Der Pollin "ATMEL Evaluations-Board Version 2.0.1 - Bausatz":

Laut Beschreibung kann der keinen ATTiny25.
Stimmt das oder ist der 25er neu und deswegen nur nicht aufgeführt?

Auch hier im AVR Wiki ist der 25er nicht gelistet, oder hab ich da was 
übersehen?

von Yalu X. (yalu) (Moderator)


Lesenswert?

Der ATtiny25 kann problemlos mit dem Pollin-Board programmiert werden.
Er ist nur nicht ganz so uralt wie die in der Beschreibung aufgeführten
Typen (der ATtiny15 ist zwei Generationen älter und der ATtiny12 dürfte
schon langsam verwesen ;-)).

Bei dem Board musst du allerdings beachten, dass dein PC dazu eine
native RS-232-Schnittstelle haben muss. Ein USB-RS-232-Konverter geht
nicht oder höchstens unbefriedigend langsam.

Edit:

Ich habe die vorigen Beiträge nicht ganz gelesen. Wenn du vor hast,
einen Atmel AVR-ISP anzuschaffen, brauchst du die serielle Schnittstelle
nicht, dann reicht USB.

Edit 2:

> Auch hier im AVR Wiki ist der 25er nicht gelistet, oder hab ich da was
> übersehen?

Im Wiki

  http://www.mikrocontroller.net/articles/AVR_Typen

ist der ATtiny85 aufgelistet. Das ist ein ATtiny25 mit der vierfachen
Speichergröße (Flash, RAM und EEPROM). Angeschlossen und Programmiert
werden beide gleich, und für dein Vorhaben hat schon der ATtiny25
Speicher im Überfluss.

von Benni L. (sutter_cain)


Lesenswert?

Du könntest dich auch mal in der PIC16F oder PIC18F Ecke umsehen. Dort 
gibts es auch XLP (extreme low power) Controller, die für 
Batteriebetrieb bestens geeignet sind.

Bei Microchip findet man auch immer viele Reference Designs, Beispiele 
und Libraries.

von Hannes S. (Gast)


Lesenswert?

Also MSP sind meiner Meinung nach schon die richtigen Buchstaben. Nur 
die Zahlen dahinter sollten eher in die Richtung 430F2012 gehen.

Beim Einstieg solltest Du auch darauf achten, wie einfach die
Entwicklungsumgebung ist, Programmier-Adapter, Programmiersprache, etc.

Deshalb würde ich ganz eindeutig das EZ430 Tool von TI empfehlen: 
Relativ billigm USB Anschluss, in C programmierbar. Und mit IAR eine 
einfache und trotzdem gute Entwicklungsumgebung.
Die Module mit dem Prozessor kann man abnehmen und dann auch per 
Stiftleiste auf eine Lochrasterplatine aufstecken oder löten.
Und Batteriebetrieb war und ist schon immer eine der stärken der MSP430 
Serie.

von Manfred (Gast)


Lesenswert?

MSP:
Ich werde mich diesbezüglich schlau zu machen versuchen.
Hat er auch einen integrierten Temperatursensor oder doch einen
Analogeingang?

Allerdings ist C nicht so mein Ding,
Turbo-Pascal, Delphi, etwas Basic und eben ASM aus
grauen Vorzeiten, das traue ich mir zu.
Ins C einsteigen wollte ich eigendlich wegen diesem Projekt nicht.

von Sven H. (dsb_sven)


Lesenswert?

Manfred schrieb:
> Eine 9V Blockbatterie wäre mir aus mechansiche Gründen lieber,
> aber mit 2x Mignon werde ich wohl auch was hingebastelt bekommen.

Wenn du tatsächlich mit der Idee spielst eine 9V Batterie zu nutzen, 
solltest du aber keinen Längsregler nehmen. Sonst verbrennst du bei 3V 
CPU Spannung mal locker 2/3 der Leistung am Regler ;-)

von Uwe (Gast)


Lesenswert?

Hi!
>Reed Kontakt ein: nach x Minuten piepseralarm
>x ist Abhängig von Temperatur (tendenziell, nicht genau).
>Das ganze mit Batteriebetrieb in einem kleinen Gehäuse,
>darf also nicht allzuviel Strom verbrauchen.
>Es soll an einen Fensterrahmen geklebt werden, also klein sein.

> Eine 9V Blockbatterie wäre mir aus mechansiche Gründen lieber

Wenn ich dich richtig verstanden habe willst du bei geöffnetem Fenster
und 'kleinen' Temperaturen einen Pieper einschalten der dich völlblökt
"Fenster zu!" Wenn ja, wozu brauchst du da einen AVR?
Bei mir würde da ein 9V Block, ein Reedkontakt, ein NE7555, ein Pieper, 
ein PTC und etwas Hünerfutter langen.
Der Redkontakt hängt zw. Bat. und 7555. Der 7555 mit dem PTC verzögert 
den Alarm temperaturabhängig und als Pieper sind selbstschwingende 
billig zu bekommen.
Habe ich irgendwas falsch gedeutet?

Viel Erfolg, Uwe

von Hannes S. (Gast)


Lesenswert?

Nochmal zum MSP430F2012: Natürlich kannst Du den auch in Assembler 
programmmieren. Der Assambler ist sogar relativ schön, da der Prozessor 
16-Bit und eine ganz brauchbare Anzahl von Registern hat.
Und Analoge Eingänge und ADC sind auch drin. Im Falle des MSP430F2013 
mit differentiellem Eingang. Ein Temperatur Sensor ist glaub ich aber 
nur beim F2012 integriert. Und eher auch nur ein Schätzeisen und muss 
auf jeden Fall für genauere Temperaturmessungen kalibriert werden.
Alles weitere hier: http://focus.ti.com/lit/ds/symlink/msp430f2012.pdf

von Manfred (Gast)


Lesenswert?

Uwe:

Klar, ein 555 oder ein 723 OP (Schmitt-Trigger, Monoflop...)
würden es auch tun.

Aber wenn es sowas schon nicht fertig gibt und ich mich selber
ans Basteln machen muss, dann würde ich schon lieber nen MC
einsetzen um auf dem Gebiet mich mal einzuarbeiten und ggf.
zukünftig mich mehr damit zu beschäftigen.

Ich weis nur immer noch nicht genau, wie ich am besten anfange,
hab ja jetzt ne Menge Infos hier bekommen und muss mich da mal 
durchkauen.

Wer noch Tips zu einem Einsteiger MC - Paket (mit Programmer und
Entwicklungsboard) geben kann, immer her damit!

An alle nochmals Dank für die vielen Tips und Infos!!!

von stephan_ (Gast)


Lesenswert?

schau Dir mal den PIC 12F683 an ..., betreibe ihn mit 2.5 oder 3 Volt 
(2x Akku oder 1x Lithium) und 32 kHz, dabei braucht er einen Ruhestrom 1 
µA mit timer1, Betriebsstrom 15 µA, hat ADCs onboard, oder den 12F675, 
braucht 4 µA Ruhestrom bei timer1,

-> die laufen beide mit einer CR2032 jahrelang ...

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.