WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Elektronik(-Basteln) / Modellbau & PC (http://www.wcm.at/forum/forumdisplay.php?f=62)
-   -   u Controller (http://www.wcm.at/forum/showthread.php?t=138122)

xandl33 29.06.2004 16:20

u Controller
 
kennt jemand einen "einsteigerfreundlichen" bzw. billigen mirko Controller. möchte nämlich folgendes realisieren: temperaturabhängige lüftersteuerung fürn pc (soll für den lerneffekt sein, ich weiß eh das es solche bausteine ab 10 eur beim conrad gibt).

danke im voraus
:)

zed 29.06.2004 16:27

mirko controller? - wie wärs mit mircochip? :D

na spass beiseite. ein PIC von microchip is für solche angelegenheiten sicher eine gute wahl.

willst ASM oder C programmieren?

da so eine lüftersteuerung eh nix können muss und du kaum portpins brauchst kannst du je nach programmierspreache vom 12er aufwärts so ziemlich alles nehmen.

für die 16er und 18er familie gibts halt dann C compiler.


p.s.
eigentl. müsst ein 10er für sowas auch reichen. aber der is noch ned am markt.

Preacher 29.06.2004 16:56

Ich würd Dir die Controller von Atmel empfehlen. Dafür kannst Dir um ein paar ¤ einen billigen Programmer basteln, die Entwicklungsumgebung ist auch nicht übel.

Sonst wäre noch die ST7 und ST Five Familie von ST Microelectronic zu empfehlen. Dafür gibt es 30 Tage Testversionen von C-Compilern, die man natürlich mit Datum zurückstellen länger nutzen kann.

Mit PIC steh ich ein wenig auf Kriegsfuß.
Einerseits sind die Dinger recht teuer, die C-Compiler machen aufgrund der Architektur nicht wirklich effizienten Code und in Assembler sind die meiner Meinung nach ein Graus zu programmieren.
Du kannst nicht den Programmspeicher adressieren, der Befehlssatz ist sehr begrenzt und die Speicheradressierung ist auch sehr gewöhnungsbedürftig, weil Du Bänke zu 128Bytes hast und für die Adressierung einer anderen Bank immer die Bank wechseln musst - mühsam. Auch bei I/O Operationen. Die I/O Register liegen in Bank 0, die DDR ind Bank 1.
Für Assemblerfetischisten aber eine nette Spielwiese - ist wirklich Geschmackssache was einem gefällt und was nicht.

zed 29.06.2004 17:02

jup atmel und ST wär auch eine möglichkeit.

wobei grad die ST super sind. und auch im vergleich zum PIC normalerweise um einiges billiger sind. nur seh ich die ST eher in der professionelleren ecke.


@pic
- kostet ein "grosser" 18F pic mit 64kByte Flash, 2k RAM und 1k EEPROM ~4,5€.

- der C code ist okay. in assembler sind sie imho auch nicht besonders schwer zu programmieren

- die bänke sind 256Bytes gross - sofern der entsprechende controller soviel RAM hat. (soviel kannst du mit 8 Bit addressieren)

- das banking ist mühsam wenn du mehrere hast und ASM programmierst. stimmt. unter C is komplett tuttl ;)
beim neuen dsPIC30 gibts lineares RAM.

- was an den I/O operationen mühsamer als bei vergleichbaren controllern sein soll versteh ich nicht

- grad bei Microchip sind die compiler / debugger sehr günstig

Preacher 29.06.2004 17:24

Naja, das ist glaub ich bei den "größeren" 16xxx und den 18xxx der Fall.
Bei den kleineren 16xxx, jene mit 14 Bit Wort Befehlen hast nur 7 Adressbits für die Bänke.

zed 29.06.2004 17:31

stimmt, bei den "kleinen" sind die RAM banks oft 128Byte gross. hängt halt immer davon ab wie viel RAM das ding überhaupt hat.

aber das sind schon details. ich wollts nur anmerken, weil du ja absolut kein gutes haar an den PICs gelassen hast. imho muss man das relativieren, als das microchip auch recht gute µCs herstellt.

und ich find halt, dass die PICs im endeffekt um nix mehr oder weniger schwierig zu programmieren sind als vergleichbare µC.

Preacher 29.06.2004 18:15

Ja, war vielleicht etwas ungerecht.
Aber nach 80C537, 68HC05, Philips LPC ist PIC halt doch in gewisser Weise ein Kulturschock :-)))

xandl33 29.06.2004 18:31

am liebsten wärs mir wenn ich das ding in C programmieren könnte, und irgendwo einen gratis compiler und manual downloaden könnte. kennt da jemand ne addresse ?

zed 29.06.2004 21:02

also C. somit brauchst du einen etwas "grösseren" µC.

schau dich am besten mal bei den genannten herstellern um.
du brauchst einen 8-bit controller dessen architektur idealierweise "C unterstützt"

Microchip
PIC16 oder ein kleiner PIC18

Atmel
tinyAVR oder ein kleiner ATmega

ST
ein kleiner ST5, ST6 oder ein ganz kleiner ST7


wobei deine anwendung eigentl. nur einen mini-µC braucht.
ASM wär da eigentl. völlig ausreichend. C für diese anwendung total überdimensioniert. allerdings natürlich wesentl. einfacher.

ich würd auf alle fälle einen speziellen C compiler des jeweiligen herstellers nehmen oder eines drittanbieters. weil mit einem reinen GNU C-compiler wirst bei den controllerspezifischen teilen ned glücklich werden.

compiler testversionen gibts so ziemlich von allen. gehn meist 30 tage. danach kosten sie aber ordentlich.
kostenpunkt: ~450€ aufwärts.

wenn du weiterführende programme machen willst die umfangreicher werden würd ich dir auf alle fälle einen In-Circuit-Debugger ans herz legen. du wirst ihn zu schätzen wissen
kostenpunkt: ~150€ aufwärts

weiters gibts von allen herstellern sogen. demo-boards die sehr nützlich sein können da schon einiges an hardware drauf is (taster, leds, poti, summer, lcd, rs232 etc).
kostenpunkt: ~100€ aufwärts

somit wärst du dann komplett ausgestattet ;)

bei deiner anwendung solltest du natürlich mit einem selbstgebastelten programmiergerät und dem emulator aus der entwicklungsumgebung das auslangen finden.


@preacher
also vom motorola hc08 bin ich ned grad begeistert. das nur am rande.
im übrigen rult der ST10 ;)

xandl33 30.06.2004 17:31

thx

xandl33 03.07.2004 14:39

hab mich für einen atmel controller entschieden, da ich eine anleitung für das programmierkabel bzw. eine aufbauschaltung gefunden habe.

zed 03.07.2004 22:27

alles klar. halt uns am laufenden wies da geht ;)

Ger_17 03.07.2004 23:15

Zitat:

Original geschrieben von xandl33
hab mich für einen atmel controller entschieden, da ich eine anleitung für das programmierkabel bzw. eine aufbauschaltung gefunden habe.
schade! ich hab das selbe mit PIC16F877 und PIC16F876 vor!
bauteile hab ich schon alle zu hause und mit dem programmieren hab ich auch schon angefangen!
ich programmiere in assembler und die pics beschreib ich mit icd debugger 1 bzw. icd debugger 2

hier ein paar details:
gesteuert werden 4 Gehäuselüfter und 1 CPU Lüfter!
umgeschalten wir zwischen 3 Spannungen (voraussichtlich 12V/7V/5V) und aus!
jeder gehäuselüfter hat einen eigenen ein/ausschalter und zusätzlich noch einen "spannungswahl" schalter
zusätzlich gibt es noch einen übergeordneten ein/ausschalter und "spannungswahl" schalter, der alle 4 gehäuselüfter auf einmal schaltet (wird er betätigt,werden die extra schalter für die lüfter ignoriert)

die schalterstellungen werden mit 2LED's pro lüfter angezeigt:
LED1 ... grün -> Lüfter ein
LED1 ... rot -> Lüfter aus

LED2 ... rot -> 12V
LED2 ... orange/gelb -> 7V
LED2 ... grün -> 5V

der CPU lüfter kann nur zwischen 12V/7V/5V umgeschalten werden!
vor dem umschalten muss aber für 2 sec. ein taster betätigt werden, erst dann wird auch wirklich umgeschaltet!

gemessen werden 5 temperaturen und die drehzahl des cpu lüfters
angezeigt wird die temp/drehzahl mit 7-Segment-Anzeigen (grün)

sollte das soweit funzen,werd i die µ-Controller denken lassen und die lüfter automatisch regeln lassen!
wahrscheinlich werd ich dann noch einen schalter einbauen, der zwischen auto/manuell umschalten wird

falls noch jemand verbesserungsvorschläge hat bitte einfach posten!

THX

xandl33 04.07.2004 12:25

wow

xandl33 04.07.2004 12:26

wieviel hat der debugger gekostet ?

zed 04.07.2004 17:51

der ICD2 kostet ca. 150€.

xandl33 04.07.2004 19:45

die atmel variante kostet wennts es selber baust ca. 25 eur inkl. testaufbau.

Ger_17 04.07.2004 22:32

programmiergeräte gibts auch für microchip zum selberbauen kosten: 1EUR-200EUR schau mal auf www.sprut.de ist ne super seite mit einer einführung in assembler programmieren und vielen beispielprojekten!

der ICD 1 hat ca. 1000ATS, also ca 70EUR gekostet und der ICD 2 hat ca. 140EUR gekostet!

wenn du nur programmieren willst, dann reicht einer der programmiergeräte von www.sprut.de, ich kann mir aber nicht wirklich vorstellen, wie man größere programme sinnvoll ohne ICD programmieren kann!

es gibt aber auch das icd 1 zum nachbauen auf diversen seiten!

ist deine entscheidung einen atmel zu nehmen schon fix, oder lässt du dich vielleicht noch überreden :)

@xandl33
was hast du eigentlich genau vor?
erzähl ein bisschen was!

xandl33 06.07.2004 08:12

im prinzip dasselbe wie du, nur "muß" ich zur zeit ein wenig einfacher anfangen, sprich ich möchte mal ne lüftersteuerung mit 1 temperatursensor, 1 lüfter und poti aufbauen. wenn ich das geschafft habe möchte ich noch ein lcd dazuhängen. danach gehts dann werdens halt 4 lüfter mit ein paar tempsensoren werden. wird aber wahrscheinlich dauern, da ich noch nie assembler programmiert bzw. es schon ein paar jahre her das ich überhaupt was programmiert habe.

helmix 06.07.2004 12:00

http://www.demotech.dk/index.html?ta...tml&lang=en-us

Das wär' doch gleich die richtige HW-Basis für dein Projekt, oder:
ATMega128, LCD, Taster, usw...

xandl33 06.07.2004 14:34

danke für den link, da ich mir den größten mal abgesehen vopm lcd schon gekauft habe und auch eine anleitung für die programmierung gefunden habe, werde ich das selber zsam löten.

Ger_17 06.07.2004 21:19

@xandl33
wenn du oder jemand anderer billige elektonikbauteile brauchst, schau einfach bei www.pollin.de vorbei!
Dort gibts unter anderem spottbillige ldc's, aber auch andere brauchbare dinge!
allerdings würde ich dir abraten auf nachnahme zu bestellen,da dann das porto schnell auf über 20EUR steigt!
vorauskassa ist viel billiger und sollte es mal probleme mit der lieferung geben (defekt, falsche Bauteile, ..) brauchst nur ne Mail schreiben und du bekommst kostenlos neue bauteile nachgeschickt oder das geld zurück! (geld zurück hab ich selber schon mal gemacht)

xandl33 06.07.2004 23:15

danke für den link wenn ich zeit hab werd ich mal hinschauen, hab zur zeit mit rechner zu kämpfen da anscheinend das bios im a.... ist.

xandl33 17.07.2004 16:52

ich hab mal ne frage: geh ich recht in der annahme das der at90s231
3 5V auf den jeweiligen port ausgibt wenn der ausgang high zustand hat bzw. weiß jemand wieviel strom so ein port liefert ?

Preacher 17.07.2004 17:24

Kommt drauf an, mit welcher Spannung Du den Controller versorgst und wie das DDR konfiguriert ist.
Die AT können normalerweise OC, Push-Pull, und OC mit einem schwachen Pull-Up bei einem Ausgangsport.

xandl33 17.07.2004 17:29

???

ich hab 5V VCC, und einen port als ausgang definiert(sorry für die wagen angaben, da ich erst angefangen jhabe mich mit dem thema zu beschäftigen).

Preacher 17.07.2004 19:16

Nebst DDR hast noch ein Optionregister, mit dem Du die Art des Ausganges bestimmst.
Mit 3,5V Ausgangsspannung bei 5V Versorgung hast sicher etwas falsch konfiguriert, wahrscheinlich hast den schwachen Pull-up und Open Collector eingeschaltet.
Der "weak pull-up" hat meinst zwischen 100kOhm und 1MOhm, wenn du da mit einem normalen DMM gegen Masse misst, dann ergibt sich durch den dadurch gebildeten Spannungsteiler entsprechend wenig Ausgangsspannung.
Im Datenblatt sind üblicherweise Angaben für Treiberleistung "source" und "sink", wobei letzteres meinst viel größer ist.
Source heisst, wie viel Strom der mit VCC verbundene Transistor treiben kann, üblicherweise sind das ca. 10-20mA.
Sink heisst, wieviel der Transistor gegen Masse ziehen kann, manche Controller können da an die 200mA.

Hansman 17.07.2004 19:54

also ich würd auf jeden fall immer ne transistorstufe als verstärker hinten dran hängen, egal wieviel strom der port hergibt!
hab ich in meinem maturaprojekt genauso gmacht.

man kann ja schließlich niemals wissen auf welche blöde ideen die dahinterliegende schaltung kommt, die schickt dir wenns schlecht hergeht gleich mal vollen kurzschlussstrom wennst an käse einbaust:D

xandl33 17.07.2004 21:07

@preacher

sorry der 3 gehört zu bezeichnung des uC, es sind natürlich 5V
:bier:

Preacher 17.07.2004 21:23

Zitat:

Original geschrieben von xandl33
@preacher

sorry der 3 gehört zu bezeichnung des uC, es sind natürlich 5V
:bier:

Dann kannst davon ausgehen, dass bei 5V Versorgung gut 4,95V am Ausgang anliegen :-)))


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:25 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag