Hi µC! Ich habe nun die letzten 3 Tage gegoogelt, gesucht, gelesen und geschaut ... doch je länger ich darüber nachdenke und desto mehr Informationen ich in mich rein stopfe desto unschlüssiger werde ich mir ... Angefangen hat alles mit der Suche nach einem Ambient-Light zum Nachrüsten für den PC ... gibt es nix tolles ... also informiert was es so zum selber basteln gibt, was man braucht ... wie es realisiert werden kann ... nun bin ich auf ein tolles Video gestoßen - und der Wille ist da es nachzubauen ... auf eigene Faust! (http://www.youtube.com/watch?v=mXBqg3Zeg0k) Nun bin ich so weit das ein paar Dinge fest stehen ... - es soll per USB angeschlossen werden - es sollen min. 8 oder 9 LEDs ansteuerbar sein - ich möchte die Helligkeit mittels PWM regeln (idealerweise die PWM selbst programmieren, kein D/A-Wandler ... diese Features können zwar auf dem µC vorgesehen sein, aber zu Übungszwecken möchte ich das später selbst programmieren :) ) - das ganze soll kostengünstig sein --- Dabei möchte ich mich schrittweise voran tasten ... erst nur eine LED ansteuern (an / aus), dann eine LED mit PWM, später mehrere LEDs faden, ganz zum Schluss die Farben der LEDs mit einer eigenen Software setzen --- Nun aber meine eigentliche Frage: Was benötige ich so richtig ... ich dachte an ein Launchpad von TI ... oder Microstick ... oder Arduino ... oder oder oder ... ich weiss vor lauter Varianten schon garnicht mehr wonach ich suchen sollte ... Was könnt ihr für einen Einsteiger empfehlen? (Delphi, C++ und andere Sprachen beherrsche ich "fließend" ;) aber das hier ist Neuland) (grrr) Ist das viel Text geworden - aber vllt. liest es sich ja jemand durch und hilft mir ein wenig auf die Sprünge :)
Hallo Rene, Also zum Thema USB kann ich dir nur die USB-Seriell-Wandler empfehlen. Mit denen lässt sich die Kommunikation zwischen PC und Mikrocontroller extrem einfach gestalten. Häufig werden die Chips von FTDI, z.B. der FT232RL verwendet: http://www.ftdichip.com/Products/ICs/FT232R.htm Es gibt auch fertige Platinen, bestückt mit diesem IC. Da RXD und TXD von diesem IC 5V-Pegel haben, lassen die sich direkt mit jedem UART-fähigen Mikrocontroller verbinden. PC-Seitig wird dir ein serieller Port simuliert, welcher sich sehr einfach auch mit Delphi usw. ansprechen lässt. Dafür gibt es fertige Bibliotheken. mfg
PIC 18F2550 o.ä., Quarz und eine USB Buchse. Software von www.sprut.de Einfacher gehts nimmer... Im Bild mal 2 Testaufbauten, links RFM12 Funkmodul mit USB Anschluß Holger
Nimm nen ATmega328 oder irgendwas Arduino kompatibles, interessant wäre auch noch das hier für dein Vorhaben: http://www.obdev.at/products/vusb/index-de.html
Um die PICs zu programmieren braucht man doch ein extra Programmiergerät? Das wollte ich wenn möglich vermeiden und bevorzuge ISP - daher auch die Idee auf eines der oben genannten Starterkits zurückzugreifen - zumindest für die ersten Gehversuche ... Demoboards scheint es ja auch welche für die PICs zu geben - nur die sind auch gleich ein Stück teurer Die ATmega kann man doch mit dem AVR-Studio programmieren, debuggen, etc.? Das ist schon eher etwas für den Anfang - glaube ich zumindest - oder lasse ich mich da blenden?
Wenn man dem PIC den USB Bootloader spendiert kann man ihn per USB flashen. Aber der Bootloader muss erstmal rein... Holger
Das meine ich ja, und damit der rein kommt brauche ich z.B.: nen Brenner wie bei sprut.de ... nach dem Motto: Warum einfach wenn's auch kompliziert geht? Bei so einem fertigen Board habe ich ja auch alles drauf was ich brauche, und kann nach Wunsch den µC durch einen anderen (baugleichen) ersetzen + programmieren ohne das ich da extra einen Bootloader flashen muss? Oder sehe ich das falsch? Der BL müsste dort doch direkt auf dem Chip schon drauf sein?
Ich habe mir nun 2 TI MSP430 LaunchPads bestellt die nächste Woche eintreffen. Falls der Speicher zu wenig ist müssen noch ein paar größere Chips her, die Kosten dann aber auch nur wenige Cent. Werde euch auf dem laufenden halten über das erste kleine Projekt sobald ich die Teile in der Hand halte :)
So, habe die Launchpads seit 3 Tagen bei mir. Bin mit der Qualität ganz zufrieden. Der mitgelieferte Quarz ist eine ganz schöne Fummelei - zumindest ohne vernünftigen Lötkolben ... ansonsten die ersten Programme zum laufen gebracht, und aktuell eine RGB-LED die ich mittels Soft-PWM ansteuere. Dabei nutze ich den Watchdog-Timer, da ich diesen später für dieses Projekt eh nicht benötige.
1 | /*
|
2 | 3-Kanal-Soft-PWM mithilfe des Watchdog-Timers
|
3 | */
|
4 | |
5 | #include <msp430g2211.h> |
6 | |
7 | int max = 100; |
8 | volatile int timer = 0; |
9 | int pwm[3] = {90, 100, 100}; // weiss |
10 | |
11 | void main(void) { |
12 | WDTCTL = WDT_MDLY_0_064; |
13 | // 100 x 0.064 ms = 6.4 ms = ~156 fps
|
14 | |
15 | P1DIR |= BIT0; |
16 | P1OUT |= BIT0; |
17 | P1DIR |= BIT1; |
18 | P1OUT |= BIT1; |
19 | P1DIR |= BIT2; |
20 | P1OUT |= BIT2; |
21 | |
22 | IE1 |= WDTIE; |
23 | |
24 | __bis_SR_register(CPUOFF + GIE); |
25 | |
26 | do {} while (1); |
27 | }
|
28 | |
29 | #pragma vector=WDT_VECTOR
|
30 | __interrupt void WDT_ISR(void) { |
31 | ++timer; |
32 | |
33 | if (timer == max) { |
34 | timer = 0; |
35 | |
36 | P1OUT |= BIT0; |
37 | P1OUT |= BIT1; |
38 | P1OUT |= BIT2; |
39 | }
|
40 | |
41 | if (timer == pwm[0]) { |
42 | P1OUT &= ~BIT0; |
43 | }
|
44 | if (timer == pwm[1]) { |
45 | P1OUT &= ~BIT1; |
46 | }
|
47 | if (timer == pwm[2]) { |
48 | P1OUT &= ~BIT2; |
49 | }
|
50 | }
|
Ist sicher noch nicht die beste Lösung, aber für den Anfang bin ich ganz zufrieden damit ... später muss daraus aber eine 27-Kanal-PWM-Steuerung werden - vermutlich mithilfe 2er TLC5940 - also habe ich noch einiges vor mir. Nun aber noch 2 kleine Fragen: - Gibt es epmfehlenswerte Bücher zur MSP430G - Reihe (ValueLine, Launchpad-kompatibel) - Ist es möglich über das Launchpad (USB) ein Kommunikationsschnittstelle zum PC aufzubauen? (Ich möchte darüber die Farbwerte ändern können) MfG
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.