Hallo,
ich fange gerade an mit MSP430F2003 zu üben.
Ich möchte per SPI mehrere Byte herausschicken.
Aber irgendwie kommt nicht das heraus, was ich will.
Das ist meine Einstellung vom SPI:
1 | //SPI config
|
2 | USICTL0 |= USIPE7 + USIPE6 + USIPE5 + USIMST + USIOE; // Port, SPI master
|
3 | USICTL1 |= USICKPH + USIIE; //Rising Edge, Counter interrupt, flag remains set
|
4 | USICKCTL |= USISSEL_2; //SMCLK
|
5 | USICTL0 &= ~USISWRST; // USI released for operation
|
6 | USICNT = 8; // 8 bit transfer
|
Und dann fängt es an mit den Fragezeichen.
DMACTL0: Was muss ich für DMA2TSELx einstellen?
Und auch bei den anderen DMA-Register bin ich mir nicht sicher. D.h.
eigentlich suche ich ein schönes Beispiel aller:
1 | void send(int data[], unsigned size) {
|
2 | //DMA config
|
3 |
|
4 | while (size!=0)
|
5 | {
|
6 | // Bytes verschicken
|
7 | spi_send(data[--size]);
|
8 | }
|
9 | }
|
10 | //
|
11 | unsigned spi_send(unsigned byte){
|
12 | // SPI send
|
13 | }
|
Kann mir da jemand helfen? Es ist einwenig kompliziert, da das SPI und
JTAG am gleichen Port hängen und somit das Debuggen auch etwas schwierig
ist.
Schönen Gruß,
Johannes