Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "inc/hw_memmap.h"
- #include "inc/hw_ssi.h"
- #include "inc/hw_types.h"
- #include "driverlib/ssi.h"
- #include "driverlib/gpio.h"
- #include "driverlib/sysctl.h"
- #include "utils/uartstdio.h"
- #define NUM_SSI_DATA 2
- unsigned long int data[NUM_SSI_DATA];
- void SetupUART(void)
- {
- SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
- GPIOPinConfigure(GPIO_PA0_U0RX);
- GPIOPinConfigure(GPIO_PA1_U0TX);
- GPIOPinTypeUART(GPIO_PORTA_BASE, GPIO_PIN_0 | GPIO_PIN_1);
- UARTStdioInit(0);
- }
- void SetupGPIO(void)
- {
- GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE, GPIO_PIN_3);
- }
- void SetupSPI(void)
- {
- SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN |
- SYSCTL_XTAL_16MHZ);
- SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI0);
- SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
- GPIOPinConfigure(GPIO_PA2_SSI0CLK);
- GPIOPinConfigure(GPIO_PA4_SSI0RX);
- GPIOPinTypeSSI(GPIO_PORTA_BASE, GPIO_PIN_2 | GPIO_PIN_4);
- SSIConfigSetExpClk(SSI0_BASE, SysCtlClockGet(), SSI_FRF_MOTO_MODE_1,
- SSI_MODE_MASTER, 1000000, 8);
- SSIEnable(SSI0_BASE);
- }
- int main(void)
- {
- SetupSPI();
- SetupGPIO();
- SetupUART();
- while (true)
- {
- GPIOPinWrite(GPIO_PORTA_BASE, GPIO_PIN_3, 0x00);
- int i;
- for (i = 0; i < NUM_SSI_DATA; ++i)
- {
- SSI
- SSIDataPut(SSI0_BASE, 0);
- SSIDataGet(SSI0_BASE, &data[i]);
- data[i] &= 0x00FF;
- UARTprintf("1: '%c'", data[i]);
- UARTprintf("\n");
- }
- GPIOPinWrite(GPIO_PORTA_BASE, GPIO_PIN_3, GPIO_PIN_3);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement