你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

F745+CY7C68003(USB PHY),枚举不到设备问题

[复制链接]
daddyk 提问时间:2017-1-18 09:06 /
使用F745+CY7C68003(USB PHY) ,USB HS通信,单发现枚举不到设备。 请ST的工程师给出帮助。 Thansk
附件是部分原理图和代码。系统晶振26mhz,stm32的vcc1.8v

stm32f7.pdf

下载

23.75 KB, 下载次数: 19, 下载积分: ST金币 -1

实验56 USB读卡器(Slave)实验.zip

下载

2.63 MB, 下载次数: 14, 下载积分: ST金币 -1

收藏 3 评论8 发布时间:2017-1-18 09:06

举报

8个回答
daddyk 回答时间:2017-1-18 09:30:52
下面是部分需改的代码:
  1. void Stm32_Clock_Init(u32 plln,u32 pllm,u32 pllp,u32 pllq)
  2. {
  3.     HAL_StatusTypeDef ret = HAL_OK;
  4.     RCC_OscInitTypeDef RCC_OscInitStructure;
  5.     RCC_ClkInitTypeDef RCC_ClkInitStructure;
  6.           RCC_PeriphCLKInitTypeDef PeriphClkInitStruct;
  7.         
  8.     __HAL_RCC_PWR_CLK_ENABLE();

  9.     __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
  10.       
  11.     RCC_OscInitStructure.OscillatorType=RCC_OSCILLATORTYPE_HSE;
  12.     RCC_OscInitStructure.HSEState=RCC_HSE_ON;
  13.     RCC_OscInitStructure.PLL.PLLState=RCC_PLL_ON;
  14.     RCC_OscInitStructure.PLL.PLLSource=RCC_PLLSOURCE_HSE;
  15.     RCC_OscInitStructure.PLL.PLLM=pllm;
  16.     RCC_OscInitStructure.PLL.PLLN=plln;
  17.     RCC_OscInitStructure.PLL.PLLP=pllp;
  18.     RCC_OscInitStructure.PLL.PLLQ=pllq;
  19.     ret=HAL_RCC_OscConfig(&RCC_OscInitStructure);
  20.     if(ret!=HAL_OK) while(1);
  21.    
  22.     ret=HAL_PWREx_EnableOverDrive(); //¿ªÆôOver-Driver¹¦ÄÜ
  23.     if(ret!=HAL_OK) while(1);
  24.     /* Select PLLSAI output as USB clock source */
  25.                 PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_CLK48;
  26.                 PeriphClkInitStruct.Clk48ClockSelection = RCC_CLK48SOURCE_PLLSAIP;
  27.                 PeriphClkInitStruct.PLLSAI.PLLSAIN = 432;
  28.                 PeriphClkInitStruct.PLLSAI.PLLSAIQ = 9;
  29.                 PeriphClkInitStruct.PLLSAI.PLLSAIP = RCC_PLLSAIP_DIV2;
  30.                 if(HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct)  != HAL_OK)
  31.                 {
  32.                         while(1) { ; }
  33.                 }
  34.     //Ñ¡ÖÐPLL×÷ΪϵͳʱÖÓÔ´²¢ÇÒÅäÖÃHCLK,PCLK1ºÍPCLK2
  35.     RCC_ClkInitStructure.ClockType=(RCC_CLOCKTYPE_SYSCLK|RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2);
  36.     RCC_ClkInitStructure.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK;
  37.     RCC_ClkInitStructure.AHBCLKDivider=RCC_SYSCLK_DIV1;
  38.     RCC_ClkInitStructure.APB1CLKDivider=RCC_HCLK_DIV4;
  39.     RCC_ClkInitStructure.APB2CLKDivider=RCC_HCLK_DIV2;
  40.    
  41.     ret=HAL_RCC_ClockConfig(&RCC_ClkInitStructure,FLASH_LATENCY_5);
  42.     if(ret!=HAL_OK) while(1);
  43.                
  44. }
复制代码
  1. void CY7C68003_Init(void)
  2. {
  3.     GPIO_InitTypeDef GPIO_InitStruct;
  4.     __HAL_RCC_GPIOA_CLK_ENABLE();
  5.           __HAL_RCC_GPIOF_CLK_ENABLE();
  6.         
  7.           //CY7C68003 NRST
  8.     GPIO_InitStruct.Pin=GPIO_PIN_7; //PA7
  9.     GPIO_InitStruct.Mode=GPIO_MODE_OUTPUT_PP;
  10.     GPIO_InitStruct.Pull=GPIO_NOPULL;
  11.     GPIO_InitStruct.Speed=GPIO_SPEED_HIGH;
  12.     HAL_GPIO_Init(GPIOA,&GPIO_InitStruct);
  13.         
  14.         
  15.           //CY7C68003 NCS
  16.     GPIO_InitStruct.Pin=GPIO_PIN_11; //PF11
  17.     GPIO_InitStruct.Mode=GPIO_MODE_OUTPUT_PP;
  18.     GPIO_InitStruct.Pull=GPIO_NOPULL;
  19.     GPIO_InitStruct.Speed=GPIO_SPEED_HIGH;
  20.     HAL_GPIO_Init(GPIOF,&GPIO_InitStruct);
  21.         
  22.           //RCC_MCO1SOURCE_HSE  RCC_MCO1SOURCE_PLLCLK
  23.           HAL_RCC_MCOConfig(RCC_MCO1,RCC_MCO1SOURCE_HSE ,RCC_MCODIV_1);                //PA8  MCO1
  24.         
  25.    
  26.     HAL_GPIO_WritePin(GPIOA,GPIO_PIN_7,GPIO_PIN_SET);

  27.     HAL_GPIO_WritePin(GPIOF,GPIO_PIN_11,GPIO_PIN_RESET);


  28. }
复制代码
  1. void USB_OTG_BSP_Init(USB_OTG_CORE_HANDLE *pdev)
  2. {
  3.      GPIO_InitTypeDef  GPIO_InitStruct;
  4.     __HAL_RCC_GPIOA_CLK_ENABLE();
  5.           __HAL_RCC_GPIOB_CLK_ENABLE();
  6.           __HAL_RCC_GPIOC_CLK_ENABLE();
  7.         
  8.           __HAL_RCC_USB_OTG_HS_CLK_ENABLE();
  9.           __HAL_RCC_USB_OTG_HS_ULPI_CLK_ENABLE();
  10.          
  11.                 // CLK
  12.                 GPIO_InitStruct.Pin = GPIO_PIN_5 ;
  13.                 GPIO_InitStruct.Mode=GPIO_MODE_AF_PP;
  14.     GPIO_InitStruct.Pull=GPIO_NOPULL;
  15.     GPIO_InitStruct.Speed=GPIO_SPEED_HIGH;
  16.     GPIO_InitStruct.Alternate=GPIO_AF10_OTG_HS ;
  17.     HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
  18.                


  19.                 // D0
  20.                 GPIO_InitStruct.Pin = GPIO_PIN_3  ;
  21.                 GPIO_InitStruct.Mode=GPIO_MODE_AF_PP;
  22.     GPIO_InitStruct.Pull=GPIO_NOPULL;
  23.     GPIO_InitStruct.Speed=GPIO_SPEED_HIGH;
  24.     GPIO_InitStruct.Alternate=GPIO_AF10_OTG_HS ;
  25.     HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
  26.                

  27.                 // D1 D2 D3 D4 D5 D6 D7
  28.                 GPIO_InitStruct.Pin = GPIO_PIN_0 | GPIO_PIN_1  |
  29.                          GPIO_PIN_5 | GPIO_PIN_10 | GPIO_PIN_11| GPIO_PIN_12 |
  30.                          GPIO_PIN_13 ;
  31.     GPIO_InitStruct.Mode=GPIO_MODE_AF_PP;
  32.     GPIO_InitStruct.Pull=GPIO_NOPULL;
  33.     GPIO_InitStruct.Speed=GPIO_SPEED_HIGH;
  34.     GPIO_InitStruct.Alternate=GPIO_AF10_OTG_HS ;
  35.     HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
  36.                

  37.                 // STP DIR NXT
  38.                 GPIO_InitStruct.Pin = GPIO_PIN_0  | GPIO_PIN_2  |
  39.                      GPIO_PIN_3 ;
  40.                 GPIO_InitStruct.Mode=GPIO_MODE_AF_PP;
  41.     GPIO_InitStruct.Pull=GPIO_NOPULL;
  42.     GPIO_InitStruct.Speed=GPIO_SPEED_HIGH;
  43.     GPIO_InitStruct.Alternate=GPIO_AF10_OTG_HS ;
  44.     HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);

  45. }
复制代码
  1. int main(void)
  2. {
  3. Cache_Enable();
  4.     HAL_Init();
  5.     Stm32_Clock_Init(216,26,2,9);
  6. CY7C68003_Init();
  7. USBD_Init(&USB_OTG_dev,USB_OTG_FS_CORE_ID,&USR_desc,&USBD_MSC_cb,&USR_cb);
  8.         delay_ms(1800);                           
  9.         while(1)
  10.         {
  11.         }                                                                          
  12. }
复制代码
daddyk 回答时间:2017-1-18 09:31:59
除以上需要改的地方,还有什么地方我忽略了么?
无薪税绵 回答时间:2017-2-15 08:17:01
没有接触过,只能帮楼主加人气了。
chaplin1999-262 回答时间:2017-2-15 09:14:45
不懂帮顶了
boboo-23776 回答时间:2017-2-15 10:27:25
不懂路过
cldym 回答时间:2017-2-15 13:59:43
没有接触过,只能帮楼主加人气了。
toofree 回答时间:2017-2-15 18:17:05
这个太高端,没板子,不会玩
zcl201207 回答时间:2017-2-15 20:37:26

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版