Remove BOTHER

git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4972 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
patacongo
2012-07-24 15:10:21 +00:00
parent 464f8d822b
commit 393b2646c2
18 changed files with 131 additions and 126 deletions
+1 -1
View File
@@ -491,7 +491,7 @@ examples/modbus
that can be downloaded in its entirety from http://developer.berlios.de/project/showfiles.php?group_id=6120.
CONFIG_EXAMPLES_MODBUS_PORT, Default 0 (for /dev/ttyS0)
CONFIG_EXAMPLES_MODBUS_BAUD, Default 38400
CONFIG_EXAMPLES_MODBUS_BAUD, Default B38400
CONFIG_EXAMPLES_MODBUS_PARITY, Default MB_PAR_EVEN
CONFIG_EXAMPLES_MODBUS_REG_INPUT_START, Default 1000
+3 -2
View File
@@ -64,6 +64,7 @@
#include <string.h>
#include <unistd.h>
#include <pthread.h>
#include <termios.h>
#include <signal.h>
#include <errno.h>
@@ -80,7 +81,7 @@
#endif
#ifndef CONFIG_EXAMPLES_MODBUS_BAUD
# define CONFIG_EXAMPLES_MODBUS_BAUD 38400
# define CONFIG_EXAMPLES_MODBUS_BAUD B38400
#endif
#ifndef CONFIG_EXAMPLES_MODBUS_PARITY
@@ -192,7 +193,7 @@ static inline int modbus_initialize(void)
* MB_RTU = RTU mode
* 0x0a = Slave address
* CONFIG_EXAMPLES_MODBUS_PORT = port, default=0 (i.e., /dev/ttyS0)
* CONFIG_EXAMPLES_MODBUS_BAUD = baud, default=38400
* CONFIG_EXAMPLES_MODBUS_BAUD = baud, default=B38400
* CONFIG_EXAMPLES_MODBUS_PARITY = parity, default=MB_PAR_EVEN
*/
+3 -2
View File
@@ -33,6 +33,7 @@
#include <stdint.h>
#include <stdbool.h>
#include <termios.h>
#ifdef __cplusplus
PR_BEGIN_EXTERN_C
@@ -136,7 +137,7 @@ typedef enum
* address or to the broadcast address are processed.
* \param ucPort The port to use. E.g. 1 for COM1 on windows. This value
* is platform dependent and some ports simply choose to ignore it.
* \param ulBaudRate The baudrate. E.g. 19200. Supported baudrates depend
* \param ulBaudRate The baudrate. E.g. B19200. Supported baudrates depend
* on the porting layer.
* \param eParity Parity used for serial transmission.
*
@@ -149,7 +150,7 @@ typedef enum
* - eMBErrorCode::MB_EPORTERR IF the porting layer returned an error.
*/
eMBErrorCode eMBInit( eMBMode eMode, uint8_t ucSlaveAddress,
uint8_t ucPort, uint32_t ulBaudRate, eMBParity eParity );
uint8_t ucPort, speed_t ulBaudRate, eMBParity eParity );
/*! \ingroup modbus
* \brief Initialize the Modbus protocol stack for Modbus TCP.
+1 -1
View File
@@ -71,7 +71,7 @@ bool xMBPortEventGet( /*@out@ */ eMBEventType * eEvent );
/* ----------------------- Serial port functions ----------------------------*/
bool xMBPortSerialInit( uint8_t ucPort, uint32_t ulBaudRate,
bool xMBPortSerialInit( uint8_t ucPort, speed_t ulBaudRate,
uint8_t ucDataBits, eMBParity eParity );
void vMBPortClose( void );
+1 -1
View File
@@ -106,7 +106,7 @@ static volatile uint8_t ucMBLFCharacter;
/* ----------------------- Start implementation -----------------------------*/
eMBErrorCode
eMBASCIIInit( uint8_t ucSlaveAddress, uint8_t ucPort, uint32_t ulBaudRate, eMBParity eParity )
eMBASCIIInit( uint8_t ucSlaveAddress, uint8_t ucPort, speed_t ulBaudRate, eMBParity eParity )
{
eMBErrorCode eStatus = MB_ENOERR;
( void )ucSlaveAddress;
+1 -1
View File
@@ -37,7 +37,7 @@ PR_BEGIN_EXTERN_C
#ifdef CONFIG_MB_ASCII_ENABLED
eMBErrorCode eMBASCIIInit( uint8_t slaveAddress, uint8_t ucPort,
uint32_t ulBaudRate, eMBParity eParity );
speed_t ulBaudRate, eMBParity eParity );
void eMBASCIIStart( void );
void eMBASCIIStop( void );
+1 -1
View File
@@ -130,7 +130,7 @@ static xMBFunctionHandler xFuncHandlers[CONFIG_MB_FUNC_HANDLERS_MAX] = {
/* ----------------------- Start implementation -----------------------------*/
eMBErrorCode
eMBInit( eMBMode eMode, uint8_t ucSlaveAddress, uint8_t ucPort, uint32_t ulBaudRate, eMBParity eParity )
eMBInit( eMBMode eMode, uint8_t ucSlaveAddress, uint8_t ucPort, speed_t ulBaudRate, eMBParity eParity )
{
eMBErrorCode eStatus = MB_ENOERR;
+13 -11
View File
@@ -106,7 +106,7 @@ void vMBPortSerialEnable(bool bEnableRx, bool bEnableTx)
}
}
bool xMBPortSerialInit(uint8_t ucPort, uint32_t ulBaudRate,
bool xMBPortSerialInit(uint8_t ucPort, speed_t ulBaudRate,
uint8_t ucDataBits, eMBParity eParity)
{
char szDevice[16];
@@ -164,18 +164,20 @@ bool xMBPortSerialInit(uint8_t ucPort, uint32_t ulBaudRate,
if (bStatus)
{
/* Set the new baud using the (non-standard) BOTHER mechanism
* supported by NuttX.
*/
xNewTIO.c_ispeed = (speed_t)ulBaudRate;
xNewTIO.c_ospeed = (speed_t)ulBaudRate;
/* NOTE: In NuttX, cfset[i|o]speed always return OK. Failures will
* only be reported when tcsetattr() is called.
/* Set the new baud. The following might be compatible with other
* OSs for the following reason.
*
* (1) In NuttX, cfset[i|o]speed always return OK so failures will
* really only be reported when tcsetattr() is called.
* (2) NuttX does not support separate input and output speeds so it
* is not necessary to call both cfsetispeed() and
* cfsetospeed(), and
* (3) In NuttX, the input value to cfiset[i|o]speed is not
* encoded, but is the absolute baud value. The following might
* not be
*/
if (cfsetispeed(&xNewTIO, BOTHER) != 0 || cfsetospeed(&xNewTIO, BOTHER) != 0)
if (cfsetispeed(&xNewTIO, ulBaudRate) != 0 /* || cfsetospeed(&xNewTIO, ulBaudRate) != 0 */)
{
vMBPortLog(MB_LOG_ERROR, "SER-INIT", "Can't set baud rate %ld for port %s: %d\n",
ulBaudRate, szDevice, errno);
+1 -1
View File
@@ -80,7 +80,7 @@ static volatile uint16_t usRcvBufferPos;
/* ----------------------- Start implementation -----------------------------*/
eMBErrorCode
eMBRTUInit( uint8_t ucSlaveAddress, uint8_t ucPort, uint32_t ulBaudRate, eMBParity eParity )
eMBRTUInit( uint8_t ucSlaveAddress, uint8_t ucPort, speed_t ulBaudRate, eMBParity eParity )
{
eMBErrorCode eStatus = MB_ENOERR;
uint32_t usTimerT35_50us;
+1 -1
View File
@@ -34,7 +34,7 @@
#ifdef __cplusplus
PR_BEGIN_EXTERN_C
#endif
eMBErrorCode eMBRTUInit( uint8_t slaveAddress, uint8_t ucPort, uint32_t ulBaudRate,
eMBErrorCode eMBRTUInit( uint8_t slaveAddress, uint8_t ucPort, speed_t ulBaudRate,
eMBParity eParity );
void eMBRTUStart( void );
void eMBRTUStop( void );