Skip to main content
hg-chen
Associate III
April 15, 2008
Question

faster speed than 115200 with virtual com port or any other way?

  • April 15, 2008
  • 3 replies
  • 851 views
Posted on April 15, 2008 at 09:57

faster speed than 115200 with virtual com port or any other way?

    This topic has been closed for replies.

    3 replies

    lanchon
    Associate III
    May 17, 2011
    Posted on May 17, 2011 at 12:30

    you could experiment with

    http://www.st.com/mcu/forums-cat-6663-23.html

    and test the speed.

    hg-chen
    hg-chenAuthor
    Associate III
    May 17, 2011
    Posted on May 17, 2011 at 12:30

    Is there any way to reach speed more than baud rate 115200 with virtual com port?

    or any other USB communication method between STM32 and PC can speed up and ready to use for people who do not know USB at all?

    16-32micros
    Associate III
    May 17, 2011
    Posted on May 17, 2011 at 12:30

    Go to function :UART0_Config in ''Hw.config.c'' and then comment the first condition as I have done here and Now it is working with higher baudrates that are enabled in your PC.

    /*******************************************************************************

    * Function Name : UART0_Config.

    * Description : Configure the UART 0 according to the linecoding structure.

    * Input : None.

    * Return : Configuration status

    TRUE : configuration done with success

    FALSE : configuration aborted.

    *******************************************************************************/

    bool USART_Config(void)

    {

    /* set the bit rate*/

    /*if ((linecoding.bitrate > 115200) || (linecoding.bitrate < 1200) )

    {

    USART_Config_Default();

    return (FALSE);

    }*/////////////////////////: Modified by STOne-32.

    /* set the Stop bit*/

    switch (linecoding.format)

    {

    case 0:

    USART_InitStructure.USART_StopBits = USART_StopBits_1;

    break;

    case 1:

    USART_InitStructure.USART_StopBits = USART_StopBits_1_5;

    break;

    case 2:

    USART_InitStructure.USART_StopBits = USART_StopBits_2;

    break;

    default :

    {

    USART_Config_Default();

    return (FALSE);

    }

    }

    /* set the parity bit*/

    switch (linecoding.paritytype)

    {

    case 0:

    USART_InitStructure.USART_Parity = USART_Parity_No;

    break;

    case 1:

    USART_InitStructure.USART_Parity = USART_Parity_Even;

    break;

    case 2:

    USART_InitStructure.USART_Parity = USART_Parity_Odd;

    break;

    default :

    {

    USART_Config_Default();

    return (FALSE);

    }

    }

    /*set the data type : only 8bits and 9bits is supported */

    switch (linecoding.datatype)

    {

    case 0x07:

    USART_InitStructure.USART_WordLength = USART_WordLength_8b;

    break;

    case 0x08:

    USART_InitStructure.USART_WordLength = USART_WordLength_9b;

    break;

    default :

    {

    USART_Config_Default();

    return (FALSE);

    }

    }

    USART_InitStructure.USART_BaudRate = linecoding.bitrate;

    USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;

    USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;

    USART_Init(USART1, &USART_InitStructure);

    USART_Cmd(USART1, ENABLE);

    return (TRUE);

    }