Sie sind auf Seite 1von 4

LCD DRIVER

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include

"xhw_types.h"
"xhw_memmap.h"
"xhw_ints.h"
"xhw_nvic.h"
"xhw_spi.h"
"xcore.h"
"xsysctl.h"
"xspi.h"
"xgpio.h"
"xhw_sysctl.h"

extern unsigned long GPIOToPortGet(unsigned long ulPort);


/*void
SPIConfigSetExpClk(unsigned long ulBase, unsigned long ulSPIClk,
unsigned long ulProtocol, unsigned long ulMode,
unsigned long ulBitRate, unsigned long ulShiftDirection);*/
/*void
SPIConfigSetExpClk(SPI1_BASE, unsigned long ulSPIClk,
SPI_FRF_MOTO_MODE_3, SPI_MODE_MASTER,
unsigned long ulBitRate, SPI_MSB_FIRST)
{
unsigned long ulTemp;
SysCtlPeripheralEnable(SYSCTL_PERIPH_SPI1);
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOC);
ulTemp = xSPI_MOTO_FORMAT_MODE_0 | xSPI_MODE_MASTER | xSPI_MSB_FIRST;
xSPIConfigSet(xSPI0_BASE, 2000000, ulTemp);
// Configure Some GPIO pins as SPI Mode//
xSPinTypeSPI(SPI1CLK, PC5);
xSPinTypeSPI(SPI1CS, PC4);
xSPinTypeSPI(SPI1MISO, PC7);
xSPinTypeSPI(SPI1MOSI, PC6);
xSPIEnable(xSPI1_BASE);
}*/
void Init_VA(void)
{
unsigned long ulTemp;
SysCtlPeripheralEnable(SYSCTL_PERIPH_SPI1);//Enabling peripheral//
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOE);

ulTemp = xSPI_MOTO_FORMAT_MODE_0 | xSPI_MODE_MASTER | xSPI_MSB_FIRST;


xSPIConfigSet(xSPI1_BASE, 2000000, ulTemp);
// Configure Some GPIO pins as SPI Mode

GPIO_PTE2_SPI1CLK

//
//xSPinTypeSPI(SPI1CLK, PTE2);
// xSPinTypeSPI(SPI1CS, PTE4);
// xSPinTypeSPI(SPI1MISO, PTE3);
// xSPinTypeSPI(SPI1MOSI, PTE1);
// Programming the PE2 port for AL2 function
// PIN_MUX=010 PINSHIFT=00000010, PORTBASE_SHIFT=0100
//
.....
0100 0000 0010 0010
GPIOPinConfigure(0x00004022);
// Programming the PE4 port for AL2 function
// PIN_MUX=010, PINSHIFT=00000100, PORTBASE_SHIFT=0100
//
.....
0100 0000 0100 0010
GPIOPinConfigure(0x00004042);
// Programming the PE3 port for AL2 function
// PIN_MUX=010, PINSHIFT=00000011, PORTBASE_SHIFT=0100
//
.....
0100 0000 0011 0010
GPIOPinConfigure(0x00004032);
// Programming the PE1 port for AL2 function
// PIN_MUX=010, PINSHIFT=00000001, PORTBASE_SHIFT=0100
//
.....
0100 0000 0001 0010
GPIOPinConfigure(0x00004012);
xSPIEnable(xSPI1_BASE);
}

void Purge_ALL_VA(void)
{
unsigned long ulData=0xA5AF;//Pattern for FORMAT command in aPR33AX//
SPIDataPut(SPI1_BASE,ulData);
}

void Play_VA(unsigned char msg)


{
unsigned long ulData=0x3000;
ulData |= (unsigned long)msg;//Pattern for PLAY command in aPR33AX//
SPIDataPut(SPI1_BASE,ulData);

void Del_msg_VA(unsigned short msg)


{
unsigned long ulData=0x1000;
ulData |= (unsigned long)msg;//Pattern for DELETE command in aPR33AX//
SPIDataPut(SPI1_BASE,ulData);
}

void Pup_VA(void)
{
unsigned long ulData=0xB100;//Pattern for POWER UP command in aPR33AX//
SPIDataPut(SPI1_BASE,ulData);

}
void Pdn_VA(void)
{
unsigned long ulData=0xB200;//Pattern for POWER DOWN command in
aPR33AX//
SPIDataPut(SPI1_BASE,ulData);
}

unsigned char Rec_VA(unsigned short msg)


{
unsigned long ulData=0x2000;
ulData |= (unsigned long)msg;
SPIDataPut(SPI1_BASE,ulData);
xGPIOSPinTypeGPIOInput(PE5);//Correct the port number

// Programming the PE5 port for AL1 function


// PIN_MUX=001, PINSHIFT=00000101, PORTBASE_SHIFT=0100
//
.....
0100 0000 0101 0001

//

GPIOPinConfigure(0x00004051);

((GPIOToPortGet(GPIOB_BASE) & 0x00000800) == 0x00000800);

void Stop_VA(void)
{
unsigned long ulData=0x0000;
SPIDataPut(SPI1_BASE,ulData);
}

Das könnte Ihnen auch gefallen