aboutsummaryrefslogtreecommitdiffstats
path: root/testhal/MSP430X
diff options
context:
space:
mode:
authorAndrew Wygle <awygle@gmail.com>2016-05-22 12:41:42 -0700
committerAndrew Wygle <awygle@gmail.com>2016-06-05 13:51:10 -0700
commit456702ee87b1adbbb559778aafe98c349700178a (patch)
treed68bd2207a0cb7ccb2af0db58e7f33c2df168e3b /testhal/MSP430X
parent5d20ce4595a564c1f98a31445f5015de41e1e25f (diff)
downloadChibiOS-Contrib-456702ee87b1adbbb559778aafe98c349700178a.tar.gz
ChibiOS-Contrib-456702ee87b1adbbb559778aafe98c349700178a.tar.bz2
ChibiOS-Contrib-456702ee87b1adbbb559778aafe98c349700178a.zip
Cleaned up MSP430X port to match recent changes to ChibiOS mainline.
Also fixed a couple of bugs identified as part of the refresh.
Diffstat (limited to 'testhal/MSP430X')
-rw-r--r--testhal/MSP430X/EXP430FR5969/SPI/main.c40
1 files changed, 30 insertions, 10 deletions
diff --git a/testhal/MSP430X/EXP430FR5969/SPI/main.c b/testhal/MSP430X/EXP430FR5969/SPI/main.c
index 17f5c86..8d28198 100644
--- a/testhal/MSP430X/EXP430FR5969/SPI/main.c
+++ b/testhal/MSP430X/EXP430FR5969/SPI/main.c
@@ -34,11 +34,12 @@ const char * test_5_msg = "TEST 5: spiIgnore\r\n";
const char * test_6_msg = "TEST 6: spiExchange\r\n";
const char * test_7_msg = "TEST 7: spiSend\r\n";
const char * test_8_msg = "TEST 8: spiReceive\r\n";
-const char * test_9_msg = "TEST 9: spiStartExchange with exclusive DMA\r\n";
-const char * test_10_msg =
- "TEST 10: spiStartExchange with exclusive DMA for TX\r\n";
+const char * test_9_msg = "TEST 9: spiPolledExchange\r\n";
+const char * test_10_msg = "TEST 10: spiStartExchange with exclusive DMA\r\n";
const char * test_11_msg =
- "TEST 11: spiStartExchange with exclusive DMA for RX\r\n";
+ "TEST 11: spiStartExchange with exclusive DMA for TX\r\n";
+const char * test_12_msg =
+ "TEST 12: spiStartExchange with exclusive DMA for RX\r\n";
const char * succeed_string = "SUCCESS\r\n\r\n";
const char * fail_string = "FAILURE\r\n\r\n";
@@ -270,6 +271,25 @@ THD_FUNCTION(Thread1, arg) {
else {
chnWrite(&SD0, (const uint8_t *)succeed_string, strlen(succeed_string));
}
+
+ /* Test 9 - spiPolledExchange */
+ chnWrite(&SD0, (const uint8_t *)test_9_msg, strlen(test_9_msg));
+ strcpy(outstring, "After SPI test \r\n");
+ strcpy(instring, "Before SPI test \r\n");
+ if (strcmp("Before SPI test \r\n", instring) ||
+ strcmp("After SPI test \r\n", outstring)) {
+ chnWrite(&SD0, (const uint8_t *)fail_string, strlen(fail_string));
+ }
+ spiSelect(&SPIDB0);
+ outstring[0] = spiPolledExchange(&SPIDB0, instring[0]);
+ spiUnselect(&SPIDB0);
+ if (strcmp("Bfter SPI test \r\n", outstring) ||
+ strcmp("Before SPI test \r\n", instring)) {
+ chnWrite(&SD0, (const uint8_t *)fail_string, strlen(fail_string));
+ }
+ else {
+ chnWrite(&SD0, (const uint8_t *)succeed_string, strlen(succeed_string));
+ }
/* Reconfigure SPIDA1 to use exclusive DMA for both */
spiStop(&SPIDA1);
@@ -278,8 +298,8 @@ THD_FUNCTION(Thread1, arg) {
SPIDA1_config.spi_mode = 1; /* because why not get coverage */
spiStart(&SPIDA1, &SPIDA1_config);
- /* Test 9 - spiStartExchange with exclusive DMA */
- chnWrite(&SD0, (const uint8_t *)test_9_msg, strlen(test_9_msg));
+ /* Test 10 - spiStartExchange with exclusive DMA */
+ chnWrite(&SD0, (const uint8_t *)test_10_msg, strlen(test_10_msg));
strcpy(outstring, "After SPI test \r\n");
strcpy(instring, "Before SPI test \r\n");
cb_arg = 1;
@@ -307,8 +327,8 @@ THD_FUNCTION(Thread1, arg) {
SPIDA1_config.spi_mode = 2; /* because why not get coverage */
spiStart(&SPIDA1, &SPIDA1_config);
- /* Test 10 - spiStartExchange with exclusive DMA for TX */
- chnWrite(&SD0, (const uint8_t *)test_10_msg, strlen(test_10_msg));
+ /* Test 11 - spiStartExchange with exclusive DMA for TX */
+ chnWrite(&SD0, (const uint8_t *)test_11_msg, strlen(test_11_msg));
strcpy(outstring, "After SPI test \r\n");
strcpy(instring, "Before SPI test \r\n");
cb_arg = 1;
@@ -336,8 +356,8 @@ THD_FUNCTION(Thread1, arg) {
SPIDA1_config.spi_mode = 3; /* because why not get coverage */
spiStart(&SPIDA1, &SPIDA1_config);
- /* Test 11 - spiStartExchange with exclusive DMA for RX */
- chnWrite(&SD0, (const uint8_t *)test_11_msg, strlen(test_11_msg));
+ /* Test 12 - spiStartExchange with exclusive DMA for RX */
+ chnWrite(&SD0, (const uint8_t *)test_12_msg, strlen(test_12_msg));
strcpy(outstring, "After SPI test \r\n");
strcpy(instring, "Before SPI test \r\n");
cb_arg = 1;