cancel
Showing results for 
Search instead for 
Did you mean: 

USB VCP Unknown Device

maxyork145
Associate
Posted on July 03, 2013 at 17:42

hi everybady

i have started an tutorial for UCB virtual com port (VCP), when the program start, alleways

Unknown device,

can help me

/**

  ******************************************************************************

  * @file    app.c

  * @author  MCD Application Team

  * @version V1.1.0

  * @date    19-March-2012

  * @brief   This file provides all the Application firmware functions.

  ******************************************************************************

  * @attention

  *

  * <h2><center>&copy; COPYRIGHT 2012 STMicroelectronics</center></h2>

  *

  * Licensed under MCD-ST Liberty SW License Agreement V2, (the ''License'');

  * You may not use this file except in compliance with the License.

  * You may obtain a copy of the License at:

  *

  *       

http://www.st.com/software_license_agreement_liberty_v2

  *

  * Unless required by applicable law or agreed to in writing, software

  * distributed under the License is distributed on an ''AS IS'' BASIS,

  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

  * See the License for the specific language governing permissions and

  * limitations under the License.

  *

  ******************************************************************************

  */

/* Includes ------------------------------------------------------------------*/

&sharpinclude ''usbd_cdc_core.h''

&sharpinclude ''usbd_usr.h''

&sharpinclude ''usb_conf.h''

&sharpinclude ''usbd_desc.h''

/** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY

  * @{

  */

/** @defgroup APP_VCP

  * @brief Mass storage application module

  * @{

  */

/** @defgroup APP_VCP_Private_TypesDefinitions

  * @{

  */

/**

  * @}

  */

/** @defgroup APP_VCP_Private_Defines

  * @{

  */

/**

  * @}

  */

/** @defgroup APP_VCP_Private_Macros

  * @{

  */

/**

  * @}

  */

/** @defgroup APP_VCP_Private_Variables

  * @{

  */

 

&sharpifdef USB_OTG_HS_INTERNAL_DMA_ENABLED

  &sharpif defined ( __ICCARM__ ) /*!< IAR Compiler */

    &sharppragma data_alignment=4  

  &sharpendif

&sharpendif /* USB_OTG_HS_INTERNAL_DMA_ENABLED */

  

__ALIGN_BEGIN USB_OTG_CORE_HANDLE    USB_OTG_dev __ALIGN_END ;

/**

  * @}

  */

/** @defgroup APP_VCP_Private_FunctionPrototypes

  * @{

  */

/**

  * @}

  */

/** @defgroup APP_VCP_Private_Functions

  * @{

  */

/**

  * @brief  Program entry point

  * @param  None

  * @retval None

  */

int main(void)

{

  __IO uint32_t i = 0; 

  /*!< At this stage the microcontroller clock setting is already configured,

  this is done through SystemInit() function which is called from startup

  file (startup_stm32fxxx_xx.s) before to branch to application main.

  To reconfigure the default setting of SystemInit() function, refer to

  system_stm32fxxx.c file

  */ 

 

  USBD_Init(&USB_OTG_dev,

&sharpifdef USE_USB_OTG_HS

            USB_OTG_HS_CORE_ID,

&sharpelse           

            USB_OTG_FS_CORE_ID,

&sharpendif 

            &USR_desc,

            &USBD_CDC_cb,

            &USR_cb);

 

  /* Main loop */

  while (1)

  {

    if (i++ == 0x100000)

    {

      STM_EVAL_LEDToggle(LED1);

      STM_EVAL_LEDToggle(LED2);

      STM_EVAL_LEDToggle(LED3);

      STM_EVAL_LEDToggle(LED4);

      i = 0;

    }

  }

}

&sharpifdef USE_FULL_ASSERT

/**

* @brief  assert_failed

*         Reports the name of the source file and the source line number

*         where the assert_param error has occurred.

* @param  File: pointer to the source file name

* @param  Line: assert_param error line source number

* @retval None

*/

void assert_failed(uint8_t* file, uint32_t line)

{

  /* User can add his own implementation to report the file name and line number,

  ex: printf(''Wrong parameters value: file %s on line %d\r\n'', file, line) */

 

  /* Infinite loop */

  while (1)

  {}

}

&sharpendif

/**

  * @}

  */

/**

  * @}

  */

/**

  * @}

  */

/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

#usb-vcp
3 REPLIES 3
Posted on July 03, 2013 at 18:06

What version of Windows? What version of the Driver?

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
maxyork145
Associate
Posted on July 09, 2013 at 17:13

hello

you need to see the system_stm32f4xx.c

if you dont yous the good clock, the pc cant know the device usb

this is is the configuration used with discovery Stm32f4

*=============================================================================

  *=============================================================================

  *        Supported STM32F4xx device revision    | Rev A

  *-----------------------------------------------------------------------------

  *        System Clock source                    | PLL (HSE)

  *-----------------------------------------------------------------------------

  *        SYSCLK(Hz)                             | 168000000

  *-----------------------------------------------------------------------------

  *        HCLK(Hz)                               | 168000000

  *-----------------------------------------------------------------------------

  *        AHB Prescaler                          | 1

  *-----------------------------------------------------------------------------

  *        APB1 Prescaler                         | 4

  *-----------------------------------------------------------------------------

  *        APB2 Prescaler                         | 2

  *-----------------------------------------------------------------------------

  *        HSE Frequency(Hz)                      | 8000000

  *-----------------------------------------------------------------------------

  *        PLL_M                                  | 8

  *-----------------------------------------------------------------------------

  *        PLL_N                                  | 336

  *-----------------------------------------------------------------------------

  *        PLL_P                                  | 2

  *-----------------------------------------------------------------------------

  *        PLL_Q                                  | 7

  *-----------------------------------------------------------------------------

  *        PLLI2S_N                               | NA

  *-----------------------------------------------------------------------------

  *        PLLI2S_R                               | NA

  *-----------------------------------------------------------------------------

  *        I2S input clock                        | NA

  *-----------------------------------------------------------------------------

  *        VDD(V)                                 | 3.3

  *-----------------------------------------------------------------------------

  *        High Performance mode                  | Enabled

  *-----------------------------------------------------------------------------

  *        Flash Latency(WS)                      | 5

  *-----------------------------------------------------------------------------

  *        Prefetch Buffer                        | OFF

  *-----------------------------------------------------------------------------

  *        Instruction cache                      | ON

  *-----------------------------------------------------------------------------

  *        Data cache                             | ON

  *-----------------------------------------------------------------------------

  *        Require 48MHz for USB OTG FS,          | Enabled

  *        SDIO and RNG clock                     |

Posted on July 09, 2013 at 17:23

You need an accurate/crystal based clock source to meet USB specs, the RC based HSI won't get you there.

CAN also requires an accurate clock.

Were you using the wrong clock settings?

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..