Hallo,
ich befasse mich gerade neu mit der MSP430 Plattform, nachdem ich
bereits einige Erfahrung mit ATmegas sammeln konnte.
Bisher hatte ich ein myAVR Board und ein STK500 in Nutzung, nun habe ich
mir für den MSP430 das TI Board gekauft:
http://focus.ti.com/docs/toolsw/folders/print/msp-exp430fg4618.html
Ich habe dazu nun einige Anfängerfragen, da es sich doch etwas von einem
Board wie dem myAVR unterscheidet.
Zur Beantwortung braucht es vermutlich jemanden der oben genanntes Board
selbst besitzt oder schon mal benutzt hat.
a) Das Board wird ja über den MSP-FET430UIF via USB mit Strom versorgt.
Der 4618 läuft normalerweise mit 3,3V soweit ich weiß. Kann ich denn an
dem Board auch irgendwie die 3.3V direkt oder gar die 5V von USB
abgreifen um weitere Bauteile wie Sensoren o.ä. mit Strom zu versorgen?
Soweit ich weiß, soll man ja nach Möglichkeit nicht den µC als
Stromquelle nutzen, da der schnell überlastet sein kann? Gibt es denn
auf dem Board auch eine Möglichkeit entsprechend GND anzuschließen??
Entweder für die entsprechende externe Komponente oder z.B. für ein
Oszi? Das myAVR Board oder auch das STK500 hat ja extra GND Pins. Hier
habe ich im Schaltplan keine expliziten PINs gefunden...
Hmm, da gibt es ja noch diese "Breadboard area", aber die Löcher sind
weiter als bei einem richtigen Breadboard, d.h. Jumperwires etc. haben
da Spiel, dass kann ja eigentlich auch nicht der Sinn sein?
b) Mit etwas Mühe(tm) ist es mit gelungen, den on-board UART
anzusprechen und Meldungen über die serielle Schnittstelle auszugeben
(über die PINs 2.4 und 2.5). Dies möchte ich beibehalten um eine
einfache Möglichkeit zu haben, zu debuggen (zusätzlich zum
FET-Debugger). Aktuell möchte ich nun einen ADXL345-Sensor über SPI
ansprechen, da das mit den AVR-Board nicht so recht funktionieren wollte
und ich möchte sehen, ob es an meiner 5V->3.3V Wandlerschaltung lag oder
ob der Sensor vlt. wirklich nen Hau hat (scheint ein wenig "picky" zu
sein, was man so liest)
Ich habe nun also im Schaltplan nachgesehen, welche PINs am 4618er für
SPI vorgesehen sind und bin aber immer noch verwirrt:
* Seite 14 im Manual: Header H1, SPI Configuration: 1-2 SDI-UCB0SIMON,
3-4 SDO-UCB0SOMI, 5-6 P1.4-P3.0 (CS), 7-8 SCLK-UCB0CLK, "no
communication possible via SPI". An jenem besagten Header sind bei mir
1-2 und 3-4 gebrückt. Geht jetzt SPI oder nicht? Für SPI bräuchte ich
aber doch auch noch ein CLK Signal? Und damit müsste ja auch 7-8
gebrückt werden, oder? Den Sinn von 5-6 sehe ich nicht, denn den
jeweiligen Sensor könnte ich doch im Prinzip mit einem beliebigen Pin
selektieren, den ich auf Low schalte? Laut Datenblatt Seite 15 scheint
sich dieser Header aber ja ohnehin nur auf den 2013 Chip zu beziehen der
auch noch on board ist und gar nicht auf den 4618er?? Verstehe ich das
richtig?
* Wo schließe ich denn nun meine vier Kabel für CLK, MOSI, MISO und SS\
an?
Muß ja wohl an den Header PINs passieren. Ah OK, an H6 gibt es UCA0SOMI
(3), UCA0SIMO (2) und UCA0CLK (4). Das wäre ja eigentlich alles was ich
brauche. Hmm, da fällt mir auf: Meine serielle Schnittstelle, die ich
zum Debuggen nutze hängt an P2.4/P2.4 UCA0TXD/UCA0RXD, also auch UCA0 -
heißt dass nun, ich kann gar nicht parallel SPI und UART nutzen?? Oder
kann der UCA0-Baustein zeitgleich SPI und UART?
* Wenn ich das richtig sehe, muß ich also die Pins P7.3-P7.1
entsprechend konfigurieren, da dort UCA0CLK/... nach außen geführt wird.
Allerdings sehe ich bei P3.1-P3.3 auch UCB(!)0SOMI/SIMO/CLK. Dafür finde
ich aber keine Header-PINs. Heißt das dann, dass ich diese Pins gar
nicht wirklich für diesen Zweck nutzen kann?? Ich kann ja nur die Pins
einsetzen, an denen ich auch wirklich was anschließen kann?
* Dann sehe ich auch noch P4.3-4.5, diesmal UCLK1, SOMI1, SIMO1. Auch
hier scheint es keinen "externen Zugang" zu geben? Was mache ich damit?
* Oder ist es so, dass ich immer nur grundsätzlich die Bezeichnung
ausserhalb der Chipfläche auf dem Schaltplan betrachten muß, weil die
die entsprechende Verschaltung angibt und die Beschreibung "innerhalb"
des Chips (z.B. P3.1/UCB0SIMO/UCB0SDA) für dieses Board einfach nicht
relevant ist?
Vielen Dank für die "Starthilfe"
Markus
Was die Stromversorgung angeht: Das Board muss nicht per USB versorgt
werden, sondern sieht auch die Versorgung mit einem Netzteil vor. Wenn
Du eigene Hardware daran betreiben willst, solltest Du diese Option auch
nutzen.
Sieh Dir mal Seite 6 in slau213a.pdf an.
Markus D. schrieb:> Hmm, da gibt es ja noch diese "Breadboard area", aber die Löcher sind> weiter als bei einem richtigen Breadboard, d.h. Jumperwires etc. haben> da Spiel, dass kann ja eigentlich auch nicht der Sinn sein?
Das sind Lötaugen, keine Steckkontakte. Im Englischen werden auch
Lochrasterplatinen als "breadboard" bezeichnet, nicht nur diese
Plastikdinger, in die man bedrahtete Bauteile hineinstecken kann.
Die restlichen Fragen sollten durch näheres Betrachten des Schaltplanes
in slau213a.pdf und des User's Guide des 'F4618 zu klären sein. Das
Board sieht eine bestimmte Beschaltung vor, wie z.B. die Nutzung des
zweiten MSP430, des 'F2013, der über eine I2C-Schnittstelle mit dem
'F4618 verbunden wird. Das muss man aber nicht nutzen; wenn man die
Jumper auf H1 weglässt, sind die korrespondierenden Pins des 'F4618
nicht mehr mit dem anderen Kram verbunden.
Wenn Du SPI nutzen willst, solltest Du Dir ansehen, welche
Schnittstellenperipheriemodule der 'F4618 einsetzt (TI hat in seinen
verschiedenen Mitgliedern der MSP430-Reihe verschiedene Varianten im
Einsatz), und dann solltest Du ansehen, wieviele davon im Controller
vorhanden sind. Die seriellen Schnittstellen sind oft so aufgebaut, daß
ein Peripheriemodul nur alternativ als UART oder SPI-Interface genutzt
werden kann, da dieselben Pins dafür verwendet werden.
Üblicherweise gibt es aber mehrere dieser Funktionsblöcke, so daß Du da
schon was aussuchen können solltest.
Ob das Board jetzt der Weisheit letzter Schrei ist, das steht auf einem
ganz anderen Blatt - TI liefert gerne Boards, die darauf aus sind, ein
ganz bestimmtes "feature set" zu demonstrieren, und die sich weniger als
allgemeine Test- und Bastelplatinen eignen.
So etwas liefert dann z.B. die Firma Olimex.
Rufus Τ. Firefly schrieb:> Was die Stromversorgung angeht: Das Board muss nicht per USB versorgt> werden, sondern sieht auch die Versorgung mit einem Netzteil vor. Wenn> Du eigene Hardware daran betreiben willst, solltest Du diese Option auch> nutzen.>> Sieh Dir mal Seite 6 in slau213a.pdf an.>
Das heißt ich muß hier VCC und GND auch mit einem entsprechenden
Jumperwire direkt auf die PINs zuführen? Eine andere Buchse für ne
"Wandwarze" gibt es ja offenbar nicht. Dann habe ich aber dann trotzdem
immer noch keinen PIN an dem ich externe Sensoren/Bauteile direkt von
der Stromversorgung speisen kann, sondern nur über PINs des µC, oder
verstehe ich das falsch?
Was ist denn die maximale Spannung die ich anlegen darf? 3.3V?
>> Markus D. schrieb:>> Hmm, da gibt es ja noch diese "Breadboard area", aber die Löcher sind>> weiter als bei einem richtigen Breadboard, d.h. Jumperwires etc. haben>> da Spiel, dass kann ja eigentlich auch nicht der Sinn sein?>> Das sind Lötaugen, keine Steckkontakte. Im Englischen werden auch> Lochrasterplatinen als "breadboard" bezeichnet, nicht nur diese> Plastikdinger, in die man bedrahtete Bauteile hineinstecken kann.>
Das heißt die erwarten, dass ich da wirklich was in das 100 EUR Board
reinlöte??? Wer macht denn sowas, das kriegt man doch nie wieder ganz
sauber raus??
> Die restlichen Fragen sollten durch näheres Betrachten des Schaltplanes> in slau213a.pdf und des User's Guide des 'F4618 zu klären sein. Das> Board sieht eine bestimmte Beschaltung vor, wie z.B. die Nutzung des> zweiten MSP430, des 'F2013, der über eine I2C-Schnittstelle mit dem> 'F4618 verbunden wird. Das muss man aber nicht nutzen; wenn man die> Jumper auf H1 weglässt, sind die korrespondierenden Pins des 'F4618> nicht mehr mit dem anderen Kram verbunden.
Ich habe mir die Anleitung ja durchaus schon angesehen (mehrfach), aber
ich bin in diesen Themen leider nicht so fit, möchte es aber gerne
lernen.
Du spielst vermutlich auf Abschnitt 6.2.3 und Table B-1 an?
Heißt das, ich muss dann die beiden Jumper 1-2 und 3-4 entfernen (ah,
Augen auf, direkt über "SPI Configuration" kommt ja der gleiche Header
nochmal in i2c Comm vor... ok!)
Ok, ich versuche das mal nachzuvollziehen. Bitte um Antwort ob ich das
dann richtig verstanden habe. Die PINs 3.1 - 3.3 sind erstmal nicht frei
nutzbar, sondern auf dem Mainboard über den H1 direkt mit dem 2013er
verbunden, damit man dort entsprechende Beispiele ablaufen lassen kann,
die demonstrieren wie die beiden 430er miteinander kommunizieren.
Wenn ich in H1 dann aber J1-2 und J3-4 ziehe, ist die Verbindung
unterbrochen und ich kann das i2c Signal direkt am Pin 2/4 des H1
abgreifen - ODER, wenn ich P3.1 P3.2 entsprechend umkonfiguriere als SPI
anstatt i2c, dann auch UCB0SIMO und UCB0SOMI. Die SPI CLK wäre dann Pin8
auf dem H1, der ohnehin unbelegt ist?
Da ich für meine serielle Verbindung zum PC den UCA0 nutze und für SPI
dann den UCB0, kann ich dann beides parallel nutzen. P3.0 könnte ich
beispielsweise (oder einen der P6.x Pins z.B.) dann als SS\ nutzen um
den Sensor auszuwählen.
> Wenn Du SPI nutzen willst, solltest Du Dir ansehen, welche> Schnittstellenperipheriemodule der 'F4618 einsetzt (TI hat in seinen> verschiedenen Mitgliedern der MSP430-Reihe verschiedene Varianten im> Einsatz), und dann solltest Du ansehen, wieviele davon im Controller> vorhanden sind. Die seriellen Schnittstellen sind oft so aufgebaut, daß> ein Peripheriemodul nur alternativ als UART oder SPI-Interface genutzt> werden kann, da dieselben Pins dafür verwendet werden.> Üblicherweise gibt es aber mehrere dieser Funktionsblöcke, so daß Du da> schon was aussuchen können solltest.>
Ok, am Beispiel des konkreten Boards heißt dass dann: Der UCA kann
paralle SPI und RS232, da er dafür in Summe 5 Pins vorhält (P2.4/P2.5,
P7.1-P7.3), der UCB kann aber nur entweder SPI oder i2c, da bei beiden
Die Pins 3.1-3.3 verwendet werden. So richtig? Beim UCA habe ich im
Moment aber dennoch nicht die Wahl, da ich ja hier auf RS232 festgelegt
bin, zwecks Debugausgaben. Was mich aber wundert: Wenn die Funktion
alternativ ist/wäre, warum hat TI dann hier in Summe 5 anstatt 3 Pins
spendiert. Kann es bei dem konkreten Controller 4618 dann doch sein,
dass der mit UCA gleichzeitig RS232 und SPI kann? Ich habe mir schon mal
im Manual des 4618 das ganze Thema mit der seriellen Kommunikation
angesehen, aber ich muß gestehen, die Datasheets von AVR finde ich
weitaus verständlicher :-/
> Ob das Board jetzt der Weisheit letzter Schrei ist, das steht auf einem> ganz anderen Blatt - TI liefert gerne Boards, die darauf aus sind, ein> ganz bestimmtes "feature set" zu demonstrieren, und die sich weniger als> allgemeine Test- und Bastelplatinen eignen.>> So etwas liefert dann z.B. die Firma Olimex.
Hast Du hier ein paar Empfehlungen welche Boards?
Danke für Deine Mühe!
Markus D. schrieb:> Das heißt die erwarten, dass ich da wirklich was in das 100 EUR Board> reinlöte??? Wer macht denn sowas, das kriegt man doch nie wieder ganz> sauber raus??
Ja, selbstverständlich. Das ist keine Hobbyware, das ist ein Testboard,
das im Labor/der Entwicklungabteilung mal für 'ne Woche zum Spielen und
Testen genutzt wird und danach im Schrank landet.
> Hast Du hier ein paar Empfehlungen welche Boards?
Für den 'FG4618 hat Olimex nichts, nur für den Bruder 4619. Und das ist
auch nur so ein Test-Board:
http://olimex.com/dev/msp-4619lcd.html
Bei anderen MSP430-Derivaten sehen die Boards z.B. so aus:
http://olimex.com/dev/msp-p2274.html
Der Lochrasterbereich ist auch hier dafür gedacht, Bauteile einzulöten.
Wenn Du wirklich mit diesen Plastiksteckbrettern arbeiten willst, ist
vielleicht die Kombination aus so einem Ding und so etwas
http://olimex.com/dev/msp-h2618.html für Dich geeignet.
Okay, danke. Da haben wohl alle mehr oder weniger ein paar Nachteile
(das Std.-alone Board hat ja z.B. keine JTAG-Buchse, die ich erst dran
basteln müssten bei den anderen muss man einlöten)... Mal sehen, da wird
sich schon was finden. Das 4619er Board sieht diesbezüglich ja am Besten
aus...
Blöde Frage: Mit meinem original JTAG-FET kann ich die ja alle
proggen/debuggen, oder? Ich brauche nicht den Olimex-JTAG-Adapter?
Könntest Du bzgl. meiner "Analyse" der UCA* Pins noch was schreiben, ob
ich da richtig liege, bitte?
Markus D. schrieb:> Blöde Frage: Mit meinem original JTAG-FET kann ich die ja alle> proggen/debuggen, oder? Ich brauche nicht den Olimex-JTAG-Adapter?
Ja, das Original funktioniert mit jedemMSP430. Das Olimex-Teil ist
ein Nachbau, der andere Devicetreiber benötigt (da eine andere
USB-Anbindung genutzt wird). Dafür ist der Olimex-Nachbau etwas
schneller.
Der 'FG4618 hat zwei unterschiedliche für serielle Schnittstellen
zuständige Module, USART1 und die zweigeteilte USCI_A0/_B0
USART1 kann als asynchrone serielle Schnittstelle und als SPI-Interface
genutzt werden, USCI_A0 kann ebenso als asynchrone serielle
Schnittstelle, für SPI und für IrDA genutzt werden, währenddem USCI_B0
nur die synchronen Schnittstellen SPI und I2C unterstützt.
Du hast also drei unterschiedliche Möglichkeiten, eine SPI-Schnittstelle
zu nutzen:
- per USART1 als Alternativbelegung zu P4.2-P4.5
P4.2 ist nur erforderlich, wenn ein SPI-Slave implementiert wird
Die anderen Leitungen sind im Schaltplan mit UCLK1, SOMI1 und SIMO1
bezeichnet (unten rechts an U3, Pins 48..50), sind auf H3 geführt.
- per USCI_A0 als Alternativbelegung zu P7.0-P7.3
P7.0 ist nur erforderlich, wenn ein SPI-Slave implementiert wird
Hier heißen die Leitungen UCA0CLK, UCA0SOMI und UCA0SIMO
(U3, Pins 42..44), wird auf H6 geführt.
- per USCI_B0 als Alternativbelegung zu P3.0-P3.3
P3.0 ist nur erforderlich, wenn ein SPI-Slave implementiert wird
Im Schaltplan als UCB0CLK, UCB0SCL und UCB0SDA (U3 Pins 68..70)
bezeichnet, weil das als I2C-Schnittstelle für die Verbindung mit
dem 'F2013 genutzt wird. Wird auf H1 und H7 geführt.
(und natürlich als reine Softwarelösung per "Bitbanging" auf jedem
beliebigen Port)
Hallo Rufus,
danke für die ausführliche Beschreibung. Ich denke, ich habe es nun
verstanden und werde mich mal an eine Umsetzung meiner Idee machen! :-)
So, habe nun doch wieder Probleme...
Vielleicht kann mir nochmal jemand helfen bitte:
Anbei ein Ausschnitt (Hilfsfunktionen usw. sind explizit rausgelassen)
aus meinem Programm:
1
#include<msp430FG4618.h>
2
#include<stdio.h>
3
4
voiduart_putstring(char*);
5
voiduart_putchar(char);
6
7
volatilecharstate=0;
8
9
voidmain(void)
10
{
11
volatileunsignedlongi;
12
volatileunsignedcharData;
13
14
WDTCTL=WDTPW+WDTHOLD;// Stop WDT
15
FLL_CTL0|=XCAP14PF;// Configure load caps
16
17
do{
18
IFG1&=~OFIFG;// Clear OSCFault flag
19
for(i=0x47FF;i>0;i--);// Time for flag to set
20
}
21
while((IFG1&OFIFG));// OSCFault flag still set?
22
23
// Setup timer, up mode up to TACCR0 value
24
/*
25
TACTL |= TASSEL0; // Set bit 8 = ACLK
26
TACTL |= ID0; // Set prescaler /2
27
TACTL |= MC0; // UP mode
28
TACTL |= TAIE;// Enable interrupt for Timer_A
29
30
TACCTL0 |= CCIE; // Enable compare interrupt
31
*/
32
CCTL0=CCIE;
33
CCR0=20000-1;
34
TACTL=TASSEL_1+MC0;
35
36
37
// LEDs are configured on P2.1 (2) and P2.2 (4)
38
39
// Configure SPI
40
// On a MSP430F2274:
41
// P3.0 = UCB0STE/UCA0CLK --> on a 4618: P3.0 (UCB0STE), P7.3 (UCA0CLK)
42
// P3.1 = UCB0SIMO/UCB0SDA --> on a 4618: P3.1 (UCB0SIMO/UCB0SDA)
43
// P3.2 = UCB0SOMI/UCB0SCL --> on a 4618: P3.2 (UCB0SOMI/UCB0SCL)
44
// P3.3 = UCB0CLK/UCA0STE --> on a 4618: P3.3 (UCB0CLK)
45
// P3.4 = UCA0TXD/UCA0SIMO --> on a 4618: P4.3 (SIMO1), P7.1 (UCA0SIMO)
46
// P3.5 = UCA0RXD/UCA0SOMI --> on a 4618: P4.4 (SOMI1), P7.2 (UCA0SOMI)
P3DIR|=0x0b;// Outputs on P3.0 (SS\), P3.1 (MOSI), P3.3 (CLK). [P3.2 = MISO as input)
54
P3OUT|=0x01;
55
// SPI Initialization
56
UCB0CTL0|=UCCKPH+UCCKPL+UCMSB+UCMST+UCMODE1+UCSYNC;// 4-pin, 8-bit SPI master, STE active low
57
UCB0CTL1|=UCSSEL_2;// Select SMCLK as CLK
58
UCB0BR0|=0x02;
59
UCB0BR1=0;
60
UCB0CTL1&=~UCSWRST;// **Initialize USCI state machine**
61
62
uart_putstring("RS232 and SPI configured...\r\n");
63
64
while(1)
65
{
66
uart_putstring("Selecting sensor\r\n");
67
P3OUT&=~0x1;// Chip select active low on P3.0
68
[...]
69
// Deactivate sensor
70
uart_putstring("Got back answer");
71
P3OUT|=0x1;
72
}
73
74
}
Das Problem ist nun, dass sich an dem Pin 3.0 nie etwas tut. Mit
P3DIR=0x0b wurde er ja als Output-Pin definiert und mit P3OUT |= 0x01
hätte ich erwartet, dass der Pegel dann von 0 auf 3,3V geht? (Messe mit
dem Oszi nach). Ich wollte also einfach mal sehen, ob ich die richtigen
Pins "erwischt habe".
Weder der Pin H7.1 noch H1.6 (bei gezogenem Jumper) ändert sich.
Ich bin also eigentlich noch gar nicht so weit, überhaupt via SPI was zu
versenden, aber das klappt schon nicht...
Oder ist das jetzt so, dass das USCI Modul selbst die Kontroller über
den P3.0 Pin hat durch meine P3SEL Anweisung, und ich da hinschreiben
kann was ich will und es sich nicht ändert?
Habe ich das richtig verstanden, dass ich den Jumper 1-2 und 3-4 bei H1
gar nicht ziehen müsste, da alle Signale ja auch bei H7 anliegt?
Apropos Oszi: Wie eingangs ja schon geschrieben, brauche ich ja auch für
das Oszi zum Messen eine Masse. Aus Ermangelung eines Pins habe ich
Masse vom Oszi nun an GND der Spannungsversorgung am Steckbrett geclipst
wo mein Sensor drinnen sitzt (Läuft mit 3.3V)
Hmm, ok es war wirklich das "P3SEL |= 0x0f". In diesem Fall wird wohl
auch P3.0 vom USCI kontrolliert.
Kann mir nochmal jemand mit dem Schreiben über SPI helfen bitte?
Ich habe es so versucht:
1
IFG2&=~UCB0TXIFG;// Clear int flag
2
// Send a byte
3
UCB0TXBUF=0x00;
4
while((IFG2&UCA0RXIFG)==0);// Wait until MC received a byte back
5
IFG2&=~UCB0RXIFG;// Clear int flag
6
// Send another byte
7
UCB0TXBUF=0x00;
8
while((IFG2&UCB0RXIFG)==0);
9
returnUCB0RXBUF;
Aber es scheint wiederum nie was "auf die Leitung" zu gehen (ich habe
versucht auf CLK zu triggern, auf SS, ...)
Sieh Dir die Codebeispiele an, die TI für die verschiedenen
MSP430-Familien zur Verfügung stellt, die beschreiben i.d.R. recht gut,
wie mit bestimmten Peripheriemodulen umzugehen ist.
http://www.ti.com/lit/zip/slac118
OK, habe ich gemacht und mich auch eng an die Beispiele gehalten...
Für alle die es sonst vlt. noch interessiert:
Der Fehler war, dass ich den USCI in "4-wire mode" konfiguriert hatte,
anstatt 3-wire. Mich hatte die Beschreibung verwundert, da ich ja immer
4-Drähte habe (MOSI/MISO, CLK und SS\). Das ist aber nach MSP430 Lesart
der 3-Wire mode, da SS\ wohl immer vom Anwender gesetzt werden muß.
Leider hat sich hier beim MSP430 das gleiche Fehlerbild gezeigt, wie bei
meinen anfänglichen Versuchen mit dem ATmega... Der ADXL 345 reagiert
extrem seltsam auf Verbindungsversuche: Beim Abfragen der Device-ID
kommt auf MISO ein sauberes Signal rein, allerdings bei jeder zweiten
Abfrage ein anderes (immer im Wechsel) [Anm.: Nein, es handelt sich
hierbei nicht um die eigentliche Antwort, die um 1 Byte versetzt kommt.
Ich meinte hiermit schon die jeweils 2 Byte Übertragungen im Wechsel].
Wenn ich dann Versuche den Sensor zum Messen zu überreden kommt ein
Signal zurück, was so um die 0.2-0.3 V rumeiert (vorher waren die
Flanken sauber umrissen) und was dann natürlich als logisch 0
interpretiert wird und nach 3-4 weiteren Versuchen kann es sein, dass er
sich komplett weghängt.
Ich habe daraufhin noch mit der CLK-Geschwindigkeit rumgespielt, da ich
mir dachte, vlt. sendet der MSP430 zu schnell, aber außer dass dann alle
Signale entsprechend länger wurden tat sich nichts...
Vielleicht versuche ich jetzt nochmal den Chip mittels i2c anzusprechen,
aber wenn das auch nicht klappt, dann scheint der Chip wohl wie bei so
vielen hinüber zu sein... :-(
Wen es interessiert, hier der Code:
1
/*
2
* 20101218 - MSP430FG4618/2013 Experimenter's board and ADXL 345 sensor
3
*
4
* This code connects to an ADXL 345 sensor via SPI and
5
* tries to set the measurement mode by writing the value 0x28 to the register at 0x2d (POWER_CTL register)