野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 15112|回复: 7

读写USB PB14,PB15 改成PA11,PA12需要改哪些地方?

[复制链接]
发表于 2016-6-14 14:19:46 | 显示全部楼层 |阅读模式
火哥!你的开发板跑FstFS_UDisk这个例程用PB14,PB15是可以读目录和文件内容的,但是我该成PA11,PA12,就挂载不成功
代码对比一下,不知道那需要改哪里?请指点一下。谢谢
PB14,PB15
void USB_OTG_BSP_Init(USB_OTG_CORE_HANDLE *pdev)
{
  GPIO_InitTypeDef GPIO_InitStructure;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB , ENABLE);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_14 | GPIO_Pin_15;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_Init(GPIOB, &GPIO_InitStructure);  

GPIO_PinAFConfig(GPIOB,GPIO_PinSource14,GPIO_AF_OTG2_FS) ;
GPIO_PinAFConfig(GPIOB,GPIO_PinSource15,GPIO_AF_OTG2_FS) ;
RCC_AHB1PeriphClockCmd( RCC_AHB1Periph_OTG_HS, ENABLE) ;
  /* Intialize Timer for delay function */
  USB_OTG_BSP_TimeInit();   
}


PA11,PA12
void USB_OTG_BSP_Init(USB_OTG_CORE_HANDLE *pdev)
{
  GPIO_InitTypeDef GPIO_InitStructure;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA , ENABLE);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11 | GPIO_Pin_12;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_Init(GPIOA, &GPIO_InitStructure);  

GPIO_PinAFConfig(GPIOA,GPIO_PinSource11,GPIO_AF_OTG2_FS) ;
GPIO_PinAFConfig(GPIOA,GPIO_PinSource12,GPIO_AF_OTG2_FS) ;
RCC_AHB1PeriphClockCmd( RCC_AHB1Periph_OTG_HS, ENABLE) ;
  /* Intialize Timer for delay function */
  USB_OTG_BSP_TimeInit();   
}
回复

使用道具 举报

发表于 2016-6-14 14:44:36 | 显示全部楼层
我硬件上连的是PB14 PB15,你单单把软件改成 PA11 PA12,这样改怎么会起作用
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-6-14 14:55:36 | 显示全部楼层
fire 发表于 2016-6-14 14:44
我硬件上连的是PB14 PB15,你单单把软件改成 PA11 PA12,这样改怎么会起作用

火哥!我表达有问题,我的硬件是PA11,PA12,移植你的代码,改成了我板子上的引脚
回复 支持 反对

使用道具 举报

发表于 2016-6-14 14:57:39 | 显示全部楼层
冷面寒枪 发表于 2016-6-14 14:55
火哥!我表达有问题,我的硬件是PA11,PA12,移植你的代码,改成了我板子上的引脚

你的也是F429嘛 ?  还有,你要确定下 PA11 跟 PA12 是否 具有 PB14 PB15的功能
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-6-14 15:09:34 | 显示全部楼层
fire 发表于 2016-6-14 14:57
你的也是F429嘛 ?  还有,你要确定下 PA11 跟 PA12 是否 具有 PB14 PB15的功能

芯片是STM32F429,



QQ图片20160614150422.png

FS和HS的区别,我看到你板子上PB14,PB15可以查U盘,PA11,PA12是模拟优盘的minusb接口
难道是FS和HS的区别?所以一直没通,我单步运行,有一个地方我的程序没进去
  case HOST_IDLE :
   
    if (HCD_IsDeviceConnected(pdev))  
    {
      phost->gState = HOST_DEV_ATTACHED;
      USB_OTG_BSP_mDelay(100);
    }
    break;


这个if语句我的程序没进去直接break,而你的开发板是进去了的,

但是不知道要改哪里???
回复 支持 反对

使用道具 举报

发表于 2016-6-14 15:11:34 | 显示全部楼层

改不通的,这两个是不一样的功能,你这个PA11 PA12 只有 usbdevice的功能,不能这样用,是的就是hs跟hs的区别
回复 支持 反对

使用道具 举报

发表于 2017-4-6 21:41:11 | 显示全部楼层
fire 发表于 2016-6-14 15:11
改不通的,这两个是不一样的功能,你这个PA11 PA12 只有 usbdevice的功能,不能这样用,是的就是hs跟hs的 ...

stm32f103 可以做USB 通信么
回复 支持 反对

使用道具 举报

发表于 2017-8-11 10:19:51 | 显示全部楼层
九下兮兮 发表于 2017-4-6 21:41
stm32f103 可以做USB 通信么

可以做USB设备,但不能做主机
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2025-1-16 17:07 , Processed in 0.070511 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表