Updated MSP432 tests description
authorBorja Martinez <borja.martinez@gmail.com>
Mon, 12 Sep 2016 13:46:52 +0000 (15:46 +0200)
committerBorja Martinez <borja.martinez@gmail.com>
Mon, 12 Sep 2016 13:46:52 +0000 (15:46 +0200)
Basic-Test-Package/MSP432/Test_MSP432_3wSPI_M25P40/main.c
Basic-Test-Package/MSP432/Test_MSP432_3wSPI_SlaveIRQ_CC2650_Master/main.c [changed mode: 0755->0644]
Basic-Test-Package/MSP432/Test_MSP432_Blink_SysTick/main.c
Basic-Test-Package/MSP432/Test_MSP432_ClockSystem/main.c
Basic-Test-Package/MSP432/Test_MSP432_DebugUART_EchoPC/main.c
Basic-Test-Package/MSP432/Test_MSP432_I2C_M24xx256/main.c
Basic-Test-Package/MSP432/readme.md

index cbd25b1666ed7108442d7433500b5c647a6cb7b1..6240674ce10987fa312370b66aa39f541ecf9459 100644 (file)
@@ -1,21 +1,23 @@
 /******************************************************************************
- * MSP432 SPI - 3-wire Master Interface to On board M24P40
+ * MSP432 SPI - 3-wire Master Interface to on-board M24P40
  *
+ * Reads M25P40 Chip ID:
  *
  * ACLK = ~32.768kHz, MCLK = SMCLK = DCO 12MHz
  *
- * Use with SPI Slave Data Echo code example.
  *
  *                MSP432P401
  *              -----------------
  *             |                 |
+ *             |             P1.4|-> FLASH_SPI_CSN (GPIO)
  *             |                 |
+ *             |             P1.5|-> FLASH_SPI_CLK (UCB0CLK)
  *             |                 |
- *             |             P1.6|-> Data Out (UCB0SIMO)
+ *             |             P1.6|-> FLASH_SPI_MOSI_PIN (UCB0SIMO)
  *             |                 |
- *             |             P1.7|<- Data In (UCB0SOMI)
+ *             |             P1.7|<- FLASH_SPI_MISO_PIN (UCB0SOMI)
  *             |                 |
- *             |             P1.5|-> Serial Clock Out (UCB0CLK)
+ *
  * Author: B.Martinez
 *******************************************************************************/
 #include "i3mote.h"
@@ -27,9 +29,7 @@
 /* Standard Includes */
 #include <stdint.h>
 #include <stdlib.h>
-
 #include <stdbool.h>
-
 #include <stdio.h>
 
 /* Statics */
@@ -44,7 +44,7 @@ const eUSCI_SPI_MasterConfig spiMasterConfig =
 {
        EUSCI_A_SPI_CLOCKSOURCE_SMCLK,            // SMCLK Clock Source
        SYSFREQ,                                  // SMCLK = DCO = 12MHZ
-       50000,                                    // SPICLK = 50khz
+       100000,                                   // SPICLK = 100kbps
        EUSCI_A_SPI_MSB_FIRST,                    // MSB First
        EUSCI_A_SPI_PHASE_DATA_CHANGED_ONFIRST_CAPTURED_ON_NEXT,  // Phase (Default)
        EUSCI_A_SPI_CLOCKPOLARITY_INACTIVITY_HIGH, // High polarity
@@ -73,8 +73,8 @@ int main(void)
 
 
     /* CS Configuring P3.0 as output */
-    MAP_GPIO_setAsOutputPin(FLASH_SPI_PORT, FLASH_SPI_NCS_PIN);
-    MAP_GPIO_setOutputHighOnPin(FLASH_SPI_PORT, FLASH_SPI_NCS_PIN);
+    MAP_GPIO_setAsOutputPin(FLASH_SPI_PORT, FLASH_SPI_CSN_PIN);
+    MAP_GPIO_setOutputHighOnPin(FLASH_SPI_PORT, FLASH_SPI_CSN_PIN);
 
     /* SPI */
     GPIO_setAsPeripheralModuleFunctionInputPin(FLASH_SPI_PORT,
@@ -96,7 +96,7 @@ int main(void)
     while (!(SPI_getInterruptStatus(EUSCI_A2_BASE,EUSCI_A_SPI_TRANSMIT_INTERRUPT)));
 
     // CS
-    MAP_GPIO_setOutputLowOnPin(FLASH_SPI_PORT,FLASH_SPI_NCS_PIN);
+    MAP_GPIO_setOutputLowOnPin(FLASH_SPI_PORT,FLASH_SPI_CSN_PIN);
 
     /* Transmitting first command to slave */
     TXData=0x9E;
@@ -166,7 +166,7 @@ void EUSCIA2_IRQHandler(void)
 
         if(RXDataCnt==5){
 
-            MAP_GPIO_setOutputHighOnPin(FLASH_SPI_PORT, FLASH_SPI_NCS_PIN);
+            MAP_GPIO_setOutputHighOnPin(FLASH_SPI_PORT, FLASH_SPI_CSN_PIN);
 
             /* Enable SysTick and Blink Forever */
             MAP_SysTick_enableModule();
old mode 100755 (executable)
new mode 100644 (file)
index 26ca9a2..a86aee1
@@ -1,18 +1,15 @@
 /******************************************************************************
- * MSP432 SPI - 3-wire Master Incremented Data
+ * MSP432 SPI - 3-wire Slave Echo
+ *
+ * This example shows how SPI slave echoes to SPI master using 3-wire mode.
  *
- * This example shows how SPI master talks to SPI slave using 3-wire mode.
  * Incrementing data is sent by the master starting at 0x01. Received data is
  * expected to be same as the previous transmission.  eUSCI RX ISR is used to
- * handle communication with the CPU, normally in LPM0. Because all execution 
- * after LPM0 is in ISRs, initialization waits for DCO to stabilize against 
- * ACLK.
+ * handle communication with the CPU, normally in LPM0.
  *
- * Note that in this example, EUSCIA1 is used for the SPI port. If the user
- * wants to use EUSCIA for SPI operation, they are able to with the same APIs
- * with the EUSCI_AX parameters.
+ * Transactions are started by the slave (MSP432) through IRQ line.
  *
- * ACLK = ~32.768kHz, MCLK = SMCLK = DCO 3MHz
+ * ACLK = ~32.768kHz, MCLK = SMCLK = DCO 12MHz
  *
  *                MSP432P401
  *              -----------------
@@ -64,8 +61,8 @@ const eUSCI_SPI_SlaveConfig spiSlaveConfig =
  * http://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/MSP430BaudRateConverter/index.html
  */
 #ifdef UART_BAUD_9600
-const eUSCI_UART_Config uartConfig =
-{
+       const eUSCI_UART_Config uartConfig =
+       {
                EUSCI_A_UART_CLOCKSOURCE_SMCLK,          // SMCLK Clock Source
                78,                                      // BRDIV = 78
                2,                                       // UCxBRF = 2
@@ -75,12 +72,12 @@ const eUSCI_UART_Config uartConfig =
                EUSCI_A_UART_ONE_STOP_BIT,               // One stop bit
                EUSCI_A_UART_MODE,                       // UART mode
                EUSCI_A_UART_OVERSAMPLING_BAUDRATE_GENERATION  // Oversampling
-};
+       };
 #endif
 
 #ifdef UART_BAUD_115200
-const eUSCI_UART_Config uartConfig =
-{
+       const eUSCI_UART_Config uartConfig =
+       {
                EUSCI_A_UART_CLOCKSOURCE_SMCLK,          // SMCLK Clock Source
                6,                                      // BRDIV = 78
                8,                                       // UCxBRF = 2
@@ -90,7 +87,7 @@ const eUSCI_UART_Config uartConfig =
                EUSCI_A_UART_ONE_STOP_BIT,               // One stop bit
                EUSCI_A_UART_MODE,                       // UART mode
                EUSCI_A_UART_OVERSAMPLING_BAUDRATE_GENERATION  // Oversampling
-};
+       };
 #endif
 
 
@@ -101,7 +98,6 @@ int main(void)
     /* Halting WDT  */
     WDT_A_holdTimer();
 
-       /* LEDS Configuring P8.x as output */
     /* Set LED Pins as Output */
     MAP_GPIO_setAsOutputPin(HID_PORT,LEDG|LEDR);
     MAP_GPIO_setOutputLowOnPin(HID_PORT,LEDG|LEDR);
index 7011617be1bfbcd6cca48dab76e8543f91fd9325..0ad179c96d364096204300dad85b86faa94a18ba 100644 (file)
@@ -1,9 +1,13 @@
 /*******************************************************************************
- * MSP432 Clock System - HFXT Startup
+ * MSP432 Blink
  *
- * Description: Starts the DCO to 48MHz sources MCLK from it,
+ * Description:
  * Blinks two LEDs using SysTick (which is sourced from MCLK).
  *
+ * Configuration:
+ * Starts the DCO to 12MHz and sources MCLK from it.
+ * BT1 pauses blinking.
+ *
  *
  *              MSP432P401
  *             ------------------
@@ -19,7 +23,6 @@
  ******************************************************************************/
 #include "i3mote.h"
 
-
 /* DriverLib Includes */
 #include "driverlib.h"
 
@@ -41,8 +44,8 @@ int main(void)
 
     /* Set LED Initial Value */
     MAP_GPIO_setOutputLowOnPin(HID_PORT, LEDG);
-    //MAP_GPIO_setOutputLowOnPin(HID_PORT, LEDR);
-    MAP_GPIO_setOutputHighOnPin(HID_PORT, LEDR);
+    MAP_GPIO_setOutputLowOnPin(HID_PORT, LEDR);
+    //MAP_GPIO_setOutputHighOnPin(HID_PORT, LEDR);
 
     /* Setting the external clock frequency (This API is optional) */
     CS_setExternalClockSourceFrequency(32000,12000000);
@@ -74,5 +77,4 @@ void SysTick_Handler(void)
        if(MAP_GPIO_getInputPinValue(HID_PORT,BUTTON)){
                MAP_GPIO_toggleOutputOnPin(GPIO_PORT_P6, GPIO_PIN2|GPIO_PIN3);
        }
-
 }
index 3ba4325cfb9a32106cf86fae039646607c47760e..e4df6957c63787a922c0b511e5835757fbc531fd 100644 (file)
@@ -15,7 +15,7 @@
  * Starts the DCO
  * Sources SMCLK from DCO
  *
- * Blinks an LED using SysTick (which is sourced from MCLK).
+ * Blinks LEDs using SysTick (which is sourced from MCLK).
  *
  *
  *
@@ -49,7 +49,6 @@
 
 /* Standard Includes */
 #include <stdint.h>
-
 #include <stdbool.h>
 
 int main(void)
index e296f08dd62030ee23b26ad802bd7059e16c52ea..8fc2001fda30ae1e208579d0c71c8f25a1e0e8b4 100644 (file)
@@ -86,7 +86,7 @@ int main(void)
     MAP_GPIO_setAsPeripheralModuleFunctionInputPin(UART_PORT,
                UART_RX_PIN | UART_TX_PIN, GPIO_PRIMARY_MODULE_FUNCTION);
 
-       /* LEDS Configuring P8.x as output */
+       /* Set LEDS as output */
     MAP_GPIO_setAsOutputPin(HID_PORT,LEDG|LEDR);
     MAP_GPIO_setOutputLowOnPin(HID_PORT,LEDG|LEDR);
 
index 2c7286c5d04e7fc40201e9ed186805e58404b3ed..6c38663d0a79597d6e151df01cd55b9e24ef4626 100644 (file)
@@ -45,7 +45,7 @@ void main(void)
 \r
     /* LEDs */\r
     MAP_GPIO_setAsOutputPin(HID_PORT,LEDG|LEDR);\r
-    MAP_GPIO_setOutputLowOnPin(HID_PORT, LEDG|LEDR);\r
+    MAP_GPIO_setOutputLowOnPin(HID_PORT,LEDG|LEDR);\r
 \r
     /* Initialize I2C communication */\r
     Init_I2C_GPIO();\r
index 2d3a212c41ce2ded2545c69ffe163f99845ba03d..821bc5422c4a60244d984f1c6e9450a5c2ed877c 100644 (file)
@@ -1 +1,87 @@
-## Contents
+Basic Test Package for I3MOTE-MSP432
+====================================
+
+Test MSP432-Blink-SysTick
+-------------------------
+Blinks two LEDs using SysTick (which is sourced from MCLK). BT1 pauses blinking.
+
+#### Configuration:
+* DCO @ 12MH
+* MCLK sourced from DCO.
+
+***
+
+Test MSP432-ClockSystem
+-------------------------
+Configures MCLK, HSMCLK and ACLK outputs for crystal testing. 
+
+#### Configuration:
+* P4.2 -> ACLK:  32.768 KHz (Source 32.768Khz crytal @ LFXTL)
+* P4.3 -> MCLK:  12.000 MHz (Source 48Mhz crytal @ HFXTL)
+* P4.4 -> HSMCLK: 6.000 MHz
+* P7.0 -> SMCLK:  6.000 Mhz
+
+***
+
+Test MSP432-DebugUART-EchoPC
+----------------------------
+Echoes back characters received via a PC serial port. 
+
+#### Configuration:
+* DCO @ 12MHz -> SMCLK 
+* SMCLK sourced from DCO.
+* Uart 115200.
+
+***
+
+Test MSP432-I2C-M24xx256
+------------------------
+Writes and checks on-board I2C EEPROM.
+
+#### Configuration:
+* DCO @ 12MH 
+* SMCLK sourced from DCO.
+* I2C 100kbps.
+
+***
+
+Test MSP432-I2C-Sensors
+-----------------------
+Reads General Purpose Sensors IDs.
+
+#### Configuration:
+* DCO @ 12MH 
+* SMCLK sourced from DCO.
+* I2C 100kbps.
+
+***
+
+Test MSP432-3wSPI-M25P40
+------------------------
+Reads on-board SPI flash memory ID (M25P40).
+
+#### Configuration:
+* DCO @ 12MH 
+* SMCLK sourced from DCO.
+* SPI 100kbps.
+
+***
+
+Test MSP432-3wSPI-SlaveIRQ-CC2650-Master
+----------------------------------------
+SPI slave echoes to SPI master using 3-wire mode.
+Incrementing data is sent by the master starting at 0x01. 
+Received data is expected to be same as the previous transmission.  
+Transactions are started from the slave (MSP432) using the IRQ line.
+
+#### Configuration:
+* DCO @ 12MH 
+* SMCLK sourced from DCO.
+* Requires Test CC2650-3wSPI-Master-MSP432-SlaveIRQ running on CC2650
+
+***
+
+Tested using *MSPWare_3_30_00_18* and *TI-v15.12.1-LTS* Compiler
+
+
+