Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2014
328
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.64 KB | None | 0 0
  1. #include "inc/hw_memmap.h"
  2. #include "inc/hw_ssi.h"
  3. #include "inc/hw_types.h"
  4. #include "driverlib/ssi.h"
  5. #include "driverlib/gpio.h"
  6. #include "driverlib/sysctl.h"
  7. #include "utils/uartstdio.h"
  8.  
  9. #define NUM_SSI_DATA 2
  10. unsigned long int data[NUM_SSI_DATA];
  11.  
  12. void SetupUART(void)
  13. {
  14.     SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
  15.  
  16.     GPIOPinConfigure(GPIO_PA0_U0RX);
  17.     GPIOPinConfigure(GPIO_PA1_U0TX);
  18.  
  19.     GPIOPinTypeUART(GPIO_PORTA_BASE, GPIO_PIN_0 | GPIO_PIN_1);
  20.  
  21.     UARTStdioInit(0);
  22. }
  23.  
  24. void SetupGPIO(void)
  25. {
  26.     GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE, GPIO_PIN_3);
  27. }
  28.  
  29. void SetupSPI(void)
  30. {
  31.     SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN |
  32.                    SYSCTL_XTAL_16MHZ);
  33.  
  34.     SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI0);
  35.  
  36.     SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
  37.  
  38.     GPIOPinConfigure(GPIO_PA2_SSI0CLK);
  39.     GPIOPinConfigure(GPIO_PA4_SSI0RX);
  40.  
  41.     GPIOPinTypeSSI(GPIO_PORTA_BASE, GPIO_PIN_2 | GPIO_PIN_4);
  42.  
  43.     SSIConfigSetExpClk(SSI0_BASE, SysCtlClockGet(), SSI_FRF_MOTO_MODE_1,
  44.                        SSI_MODE_MASTER, 1000000, 8);
  45.  
  46.     SSIEnable(SSI0_BASE);
  47. }
  48.  
  49. int main(void)
  50. {
  51.     SetupSPI();
  52.     SetupGPIO();
  53.     SetupUART();
  54.  
  55.     while (true)
  56.     {
  57.         GPIOPinWrite(GPIO_PORTA_BASE, GPIO_PIN_3, 0x00);
  58.  
  59.         int i;
  60.         for (i = 0; i < NUM_SSI_DATA; ++i)
  61.         {
  62.             SSI
  63.             SSIDataPut(SSI0_BASE, 0);
  64.             SSIDataGet(SSI0_BASE, &data[i]);
  65.             data[i] &= 0x00FF;
  66.             UARTprintf("1: '%c'", data[i]);
  67.             UARTprintf("\n");
  68.         }
  69.  
  70.         GPIOPinWrite(GPIO_PORTA_BASE, GPIO_PIN_3, GPIO_PIN_3);
  71.     }
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement