X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=Demo%2Fmsp430_GCC%2Fserial%2Fserial.c;h=40570ac552127a0cb1c29e989edc1aca2db54d2f;hb=d331926edbe13b4486ee9a1603b6d6d97fe862ab;hp=56c4d3f1a9a8f8079f0d41e9edeb8d15fa2c1d3e;hpb=00c742ab093a218228fdd925e6f555167421c32e;p=freertos diff --git a/Demo/msp430_GCC/serial/serial.c b/Demo/msp430_GCC/serial/serial.c index 56c4d3f1a..40570ac55 100644 --- a/Demo/msp430_GCC/serial/serial.c +++ b/Demo/msp430_GCC/serial/serial.c @@ -1,48 +1,49 @@ /* - FreeRTOS V5.4.2 - Copyright (C) 2009 Real Time Engineers Ltd. + FreeRTOS V6.0.0 - Copyright (C) 2009 Real Time Engineers Ltd. - This file is part of the FreeRTOS distribution. + This file is part of the FreeRTOS distribution. - FreeRTOS is free software; you can redistribute it and/or modify it under - the terms of the GNU General Public License (version 2) as published by the - Free Software Foundation and modified by the FreeRTOS exception. - **NOTE** The exception to the GPL is included to allow you to distribute a - combined work that includes FreeRTOS without being obliged to provide the - source code for proprietary components outside of the FreeRTOS kernel. - Alternative commercial license and support terms are also available upon - request. See the licensing section of http://www.FreeRTOS.org for full - license details. + FreeRTOS is free software; you can redistribute it and/or modify it under + the terms of the GNU General Public License (version 2) as published by the + Free Software Foundation and modified by the FreeRTOS exception. + **NOTE** The exception to the GPL is included to allow you to distribute a + combined work that includes FreeRTOS without being obliged to provide the + source code for proprietary components outside of the FreeRTOS kernel. + Alternative commercial license and support terms are also available upon + request. See the licensing section of http://www.FreeRTOS.org for full + license details. - FreeRTOS is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - more details. + FreeRTOS is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + more details. - You should have received a copy of the GNU General Public License along - with FreeRTOS; if not, write to the Free Software Foundation, Inc., 59 - Temple Place, Suite 330, Boston, MA 02111-1307 USA. + You should have received a copy of the GNU General Public License along + with FreeRTOS; if not, write to the Free Software Foundation, Inc., 59 + Temple Place, Suite 330, Boston, MA 02111-1307 USA. - *************************************************************************** - * * - * Looking for a quick start? Then check out the FreeRTOS eBook! * - * See http://www.FreeRTOS.org/Documentation for details * - * * - *************************************************************************** + *************************************************************************** + * * + * The FreeRTOS eBook and reference manual are available to purchase for a * + * small fee. Help yourself get started quickly while also helping the * + * FreeRTOS project! See http://www.FreeRTOS.org/Documentation for details * + * * + *************************************************************************** - 1 tab == 4 spaces! + 1 tab == 4 spaces! - Please ensure to read the configuration and relevant port sections of the - online documentation. + Please ensure to read the configuration and relevant port sections of the + online documentation. - http://www.FreeRTOS.org - Documentation, latest information, license and - contact details. + http://www.FreeRTOS.org - Documentation, latest information, license and + contact details. - http://www.SafeRTOS.com - A version that is certified for use in safety - critical systems. + http://www.SafeRTOS.com - A version that is certified for use in safety + critical systems. - http://www.OpenRTOS.com - Commercial support, development, porting, - licensing and training services. + http://www.OpenRTOS.com - Commercial support, development, porting, + licensing and training services. */ @@ -64,7 +65,7 @@ #include "serial.h" /* Constants required to setup the hardware. */ -#define serTX_AND_RX ( ( unsigned portCHAR ) 0x03 ) +#define serTX_AND_RX ( ( unsigned char ) 0x03 ) /* Misc. constants. */ #define serNO_BLOCK ( ( portTickType ) 0 ) @@ -78,7 +79,7 @@ static xQueueHandle xRxedChars; /* The queue used to hold characters waiting transmission. */ static xQueueHandle xCharsForTx; -static volatile portSHORT sTHREEmpty; +static volatile short sTHREEmpty; /* Interrupt service routines. */ interrupt (UART1RX_VECTOR) wakeup vRxISR( void ); @@ -86,9 +87,9 @@ interrupt (UART1TX_VECTOR) wakeup vTxISR( void ); /*-----------------------------------------------------------*/ -xComPortHandle xSerialPortInitMinimal( unsigned portLONG ulWantedBaud, unsigned portBASE_TYPE uxQueueLength ) +xComPortHandle xSerialPortInitMinimal( unsigned long ulWantedBaud, unsigned portBASE_TYPE uxQueueLength ) { -unsigned portLONG ulBaudRateCount; +unsigned long ulBaudRateCount; /* Initialise the hardware. */ @@ -98,8 +99,8 @@ unsigned portLONG ulBaudRateCount; portENTER_CRITICAL(); { /* Create the queues used by the com test task. */ - xRxedChars = xQueueCreate( uxQueueLength, ( unsigned portBASE_TYPE ) sizeof( signed portCHAR ) ); - xCharsForTx = xQueueCreate( uxQueueLength, ( unsigned portBASE_TYPE ) sizeof( signed portCHAR ) ); + xRxedChars = xQueueCreate( uxQueueLength, ( unsigned portBASE_TYPE ) sizeof( signed char ) ); + xCharsForTx = xQueueCreate( uxQueueLength, ( unsigned portBASE_TYPE ) sizeof( signed char ) ); /* Reset UART. */ UCTL1 |= SWRST; @@ -113,11 +114,11 @@ unsigned portLONG ulBaudRateCount; U1TCTL |= SSEL1; /* Setup baud rate low byte. */ - U1BR0 = ( unsigned portCHAR ) ( ulBaudRateCount & ( unsigned portLONG ) 0xff ); + U1BR0 = ( unsigned char ) ( ulBaudRateCount & ( unsigned long ) 0xff ); /* Setup baud rate high byte. */ ulBaudRateCount >>= 8UL; - U1BR1 = ( unsigned portCHAR ) ( ulBaudRateCount & ( unsigned portLONG ) 0xff ); + U1BR1 = ( unsigned char ) ( ulBaudRateCount & ( unsigned long ) 0xff ); /* Enable ports. */ ME2 |= UTXE1 + URXE1; @@ -140,7 +141,7 @@ unsigned portLONG ulBaudRateCount; } /*-----------------------------------------------------------*/ -signed portBASE_TYPE xSerialGetChar( xComPortHandle pxPort, signed portCHAR *pcRxedChar, portTickType xBlockTime ) +signed portBASE_TYPE xSerialGetChar( xComPortHandle pxPort, signed char *pcRxedChar, portTickType xBlockTime ) { /* Get the next character from the buffer. Return false if no characters are available, or arrive before xBlockTime expires. */ @@ -155,7 +156,7 @@ signed portBASE_TYPE xSerialGetChar( xComPortHandle pxPort, signed portCHAR *pcR } /*-----------------------------------------------------------*/ -signed portBASE_TYPE xSerialPutChar( xComPortHandle pxPort, signed portCHAR cOutChar, portTickType xBlockTime ) +signed portBASE_TYPE xSerialPutChar( xComPortHandle pxPort, signed char cOutChar, portTickType xBlockTime ) { signed portBASE_TYPE xReturn; @@ -208,7 +209,7 @@ signed portBASE_TYPE xReturn; */ interrupt (UART1RX_VECTOR) wakeup vRxISR( void ) { -signed portCHAR cChar; +signed char cChar; portBASE_TYPE xHigherPriorityTaskWoken = pdFALSE; /* Get the character from the UART and post it on the queue of Rxed @@ -232,7 +233,7 @@ portBASE_TYPE xHigherPriorityTaskWoken = pdFALSE; */ interrupt (UART1TX_VECTOR) wakeup vTxISR( void ) { -signed portCHAR cChar; +signed char cChar; portBASE_TYPE xTaskWoken = pdFALSE; /* The previous character has been transmitted. See if there are any