Mobil_surveillance_system 1
Functions | Variables
UART1.c File Reference

UART1 functions source file. More...

#include "UART1.h"

Go to the source code of this file.

Functions

void UART1_rxHandler (void)
void UART1_txHandler (void)
void UART1_initUART1 (void)
void UART1_primeTransmit (void)
void UART1_setAppendResponseCallbackFunction (tpfUART1AppendResponseCallbackFunction pfCallbackAppendResponse)
int UART1_read (void)
int UART1_write (char *pcBuffer, unsigned int uiLength)
void UART1_sendChar (void)
tBoolean UART1_isWritingDone (void)
void UART1_flushRx (void)
void UART1_flushTx (void)

Variables

tBoolean ge_tbUART1RXITFLAG = 0
 This flag are use to indicate if a character has just sent from the uart1 buffer.
tBoolean ge_tbUART1TXITFLAG = 0
 This flag are use to indicate if a chareacter has just arrived into the uart1 buffer.
tpfUART1AppendResponseCallbackFunction g_pfOnCallbackGPSAppendResponse
 Function pointer pointed to the GPS_appendResponse function.
unsigned char g_pcUart1RxBuffer [UART1_RX_BUFFER_SIZE] = {'\0'}
 FIFO buffer for the uart1 rx. All of the character coming form the uart1 will be taken into this buffer temporary.
unsigned int g_uiUart1RxWriteIndex = 0
 Write index variable of the g_pcUart1RxBuffer buffer.
unsigned int g_uiUart1RxReadIndex = 0
 Read index varibale of the g_pcUart1RxBuffer buffer.
unsigned char g_pcUart1TxBuffer [UART1_RX_BUFFER_SIZE] = {'\0'}
unsigned int g_uiUart1TxWriteIndex = 0
 Write index variable for the g_pcUart1TxBuffer buffer.
unsigned int g_uiUart1TxReadIndex = 0
 Read index variable for the g_pcUart1TxBuffer buffer.

Detailed Description

UART1 functions source file.

Definition in file UART1.c.


Function Documentation

void UART1_initUART1 ( void  )

proba

Definition at line 118 of file UART1.c.

{
    P3OUT &= ~(BIT6+BIT7);
    // P3.6,7 = USCI_A1 TXD/RXD
    P3SEL = 0xC0;
    // CLK = ACLK
    UCA1CTL1 |= UCSSEL_1; 
    // 9600
    UCA1BR0 = 0x03;      // 32kHz/9600 = 3.41  
    // 9600                       
    UCA1BR1 = 0x00;
    // Modulation UCBRSx = 5
    UCA1MCTL = UCBRS1 + UCBRS0; // 
    // **Initialize USCI state machine**              
    UCA1CTL1 &= ~UCSWRST; 
    // Enable USCI_A1 RX interrupt                    
    UC1IE |= UCA1RXIE;
    // Enable USCI_A1 TX interrupt     
    UC1IE |= UCA1TXIE;  
    // Enable global interrupt
    _bis_SR_register(LPM3_bits + GIE);
    // set RX ISR callback function
    Interrupts_setUSCI1RX_ISRCallbackFunction(&UART1_rxHandler);
    // set TX ISR callback function;    
    Interrupts_setUSCI1TX_ISRCallbackFunction(&UART1_txHandler);              
}
void UART1_setAppendResponseCallbackFunction ( tpfUART1AppendResponseCallbackFunction  pfCallbackAppendResponse)
Parameters:
pfCallbackAppendResponse

Definition at line 169 of file UART1.c.

{
    g_pfOnCallbackGPSAppendResponse = pfCallbackAppendResponse;
}
int UART1_write ( char *  pcBuffer,
unsigned int  uiLength 
)
Parameters:
pcBuffer
uiLength

Definition at line 206 of file UART1.c.

{
    unsigned int uiIdx;
    for( uiIdx = 0; uiIdx < uiLength; uiIdx++ ){
        if(!UART1_TX_BUFFER_FULL){
            g_pcUart1TxBuffer[g_uiUart1TxWriteIndex] = pcBuffer[uiIdx];
            UART1_ADVANCE_TX_BUFFER_INDEX(g_uiUart1TxWriteIndex);
        }
        else{
            // TODO if the tx buffer is full
        }
    }
    if(!UART1_TX_BUFFER_EMPTY){
        // send as many characters to the uart buffer as many can
        UART1_primeTransmit();
    }
    // return the number of the character written into the buffer
    return uiIdx;
}

Variable Documentation

unsigned char g_pcUart1TxBuffer[UART1_RX_BUFFER_SIZE] = {'\0'}

FIFO buffer for the uart1 tx. All of the character willing to send to the uart will be taken into this buffer before sending.

Definition at line 56 of file UART1.c.

This flag are use to indicate if a character has just sent from the uart1 buffer.

This flag inicates if any character has been received.

Definition at line 17 of file UART1.c.

This flag are use to indicate if a chareacter has just arrived into the uart1 buffer.

This flag inicates if any character has been sent.

Definition at line 20 of file UART1.c.

 All Data Structures Files Functions Variables Typedefs Enumerations Defines