用户工具

站点工具


icore4t_30

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
icore4t_30 [2020/03/12 09:06]
zgf [四、 实验程序]
icore4t_30 [2022/04/01 10:48] (当前版本)
sean
行 1: 行 1:
  
 +|  **银杏科技有限公司旗下技术文档发布平台** ​ |||| 
 +|技术支持电话|**0379-69926675-801**||| 
 +|技术支持邮件|Gingko@vip.163.com||| 
 +^  版本 ​ ^  日期 ​ ^  作者 ​ ^  修改内容 ​ ^ 
 +|  V1.0  |  2020-03-12 ​ |  gingko ​ |  初次建立 ​ | 
  
 ===== STM32CubeMX教程三十——USB_MSC实验 ===== ===== STM32CubeMX教程三十——USB_MSC实验 =====
  
-1.在主界面选择File-->​New Project ​  ​或者直接点击ACCEE TO MCU SELECTOR ​  +1.在主界面选择File-->​New Project ​  ​或者直接点击ACCEE TO MCU SELECTOR。   
-  +{{ :​icore4t:​icore4t_cube_30_1.png?​direct |}}  
-2.出现芯片型号选择,搜索自己芯片的型号,双击型号,或者点击Start Project进入配置 +2.出现芯片型号选择,搜索自己芯片的型号,双击型号,或者点击Start Project进入配置在搜索栏的下面,提供的各 ​ 种查找方式,可以选择芯片内核,型号,等等,可以帮助你查找芯片。本实验选取的芯片型号为:STM32H750IBKx。 
-在搜索栏的下面,提供的各 ​ 种查找方式,可以选择芯片内核,型号,等等,可以帮助你查找芯片。本实验选取的芯片型号为:STM32H750IBKx。 +{{ :​icore4t:​icore4t_cube_30_2.png?​direct |}}  
-  +3.配置RCC,使用外部时钟源 
-3.配置RCC,使用外部时钟源 +{{ :​icore4t:​icore4t_cube_30_3.png?​direct |}}  
-  +4.时基源选择SysTick 
-4.时基源选择SysTick +{{ :​icore4t:​icore4t_cube_30_4.png?​direct |}} 
- +5.将PA10,​PB7,​PB8设置为GPIO_Output 
-5.将PA10,​PB7,​PB8设置为GPIO_Output +{{ :​icore4t:​icore4t_cube_30_5.png?​direct |}}  
-  +6.引脚模式配置 
-6.引脚模式配置 +{{ :​icore4t:​icore4t_cube_30_6.png?​direct |}}  
-  +{{ :​icore4t:​icore4t_cube_30_7.png?​direct |}}  
-  +7.配置串口 
-7.配置串口 +{{ :​icore4t:​icore4t_cube_30_8.png?​direct |}} 
-  +在NVIC Settings一栏使能接收中断 
-在NVIC Settings一栏使能接收中断 +{{ :​icore4t:​icore4t_cube_30_9.png?​direct |}}
- +
 引脚配置 引脚配置
-  +{{ :​icore4t:​icore4t_cube_30_10.png?​direct |}} 
-8.配置USB_OTG_HS +8.配置USB_OTG_HS 
-  +{{ :​icore4t:​icore4t_cube_30_11.png?​direct |}} 
-9.配置USB_HOST +9.配置USB_HOST 
-  +{{ :​icore4t:​icore4t_cube_30_12.png?​direct |}}  
-10.配置FATFS +10.配置FATFS 
-  +{{ :​icore4t:​icore4t_cube_30_13.png?​direct |}}  
-11.时钟源设置,选择外部高速时钟源,配置为最大主频 +11.时钟源设置,选择外部高速时钟源,配置为最大主频 
-  +{{ :​icore4t:​icore4t_cube_30_14.png?​direct |}}  
-12.工程文件的设置,​ 这里就是工程的各种配置 我们只用到有限几个,其他的默认即可 ​ IDE我们使用的是 MDK V5.27 +12.工程文件的设置,​ 这里就是工程的各种配置 我们只用到有限几个,其他的默认即可 ​ IDE我们使用的是 MDK V5.27 
-  +{{ :​icore4t:​icore4t_cube_30_15.png?​direct |}}  
-13.点击Code Generator,进行进一步配置 +13.点击Code Generator,进行进一步配置 
- +{{ :​icore4t:​icore4t_cube_30_16.png?​direct |}} 
   * **Copy all used libraries into the project folder**   * **Copy all used libraries into the project folder**
   * 将HAL库的所有.C和.H都复制到所建工程中   * 将HAL库的所有.C和.H都复制到所建工程中
行 49: 行 52:
     * 缺点:复制到其他电脑上或者软件包位置改变,就需要修改相对应的路径     * 缺点:复制到其他电脑上或者软件包位置改变,就需要修改相对应的路径
   * 自行选择方式即可   * 自行选择方式即可
-14.然后点击GENERATE CODE  创建工程 +14.然后点击GENERATE CODE  创建工程 
- +{{ :​icore4t:​icore4t_cube_30_17.png?​direct |}} 
 创建成功,打开工程。 创建成功,打开工程。
  
行 64: 行 67:
   - 掌握KEILMDK 集成开发环境使用方法。   - 掌握KEILMDK 集成开发环境使用方法。
 ==== 二、 实验设备及平台 ==== ==== 二、 实验设备及平台 ====
-  - iCore4T 双核心板。 +  - iCore4T 双核心板。[[https://​item.taobao.com/​item.htm?​spm=a1z10.1-c.w137644-251734891.3.5923532fDrMDOe&​id=610595120319|点击购买]] 
-  - JLINK(或相同功能)仿真器。+  - JLINK(或相同功能)仿真器。[[https://​item.taobao.com/​item.htm?​id=554869837940|点击购买]]
   - Micro USB线缆。   - Micro USB线缆。
   - Keil MDK 开发平台。   - Keil MDK 开发平台。
行 132: 行 135:
  
   * STM32H7中存在两个OTG_HS模块(OTG_HS1和OTG_HS2)。尽管他们都可以编程为HS操作,但只有OTG_HS1具有可访问的ULPI接口,因此允许使用外部HS收发器进行高速操作。   * STM32H7中存在两个OTG_HS模块(OTG_HS1和OTG_HS2)。尽管他们都可以编程为HS操作,但只有OTG_HS1具有可访问的ULPI接口,因此允许使用外部HS收发器进行高速操作。
-  +{{ :​icore4t:​icore4t_arm_hal_30_1.png?​direct |}}  
- +{{ :​icore4t:​icore4t_arm_hal_30_2.png?​direct |}} 
 === 4.OTG_HS中断 === === 4.OTG_HS中断 ===
-  * +
   * 当OTG_HS控制器在一种模式下(设备模式或主机模式)工作时,应用程序不得以另一种角色模式访问寄存器。如果发生了非法访问,将会产生模式不匹配中断并在模块中断寄存器(OTG_GINTSTS寄存器中的MMIS位)中反映。当模块从一种角色模式切换到另一种角色模式时,新工作模式下的寄存器必须重新编程为上电复位后的状态。如图显示了中断层级:   * 当OTG_HS控制器在一种模式下(设备模式或主机模式)工作时,应用程序不得以另一种角色模式访问寄存器。如果发生了非法访问,将会产生模式不匹配中断并在模块中断寄存器(OTG_GINTSTS寄存器中的MMIS位)中反映。当模块从一种角色模式切换到另一种角色模式时,新工作模式下的寄存器必须重新编程为上电复位后的状态。如图显示了中断层级:
- +{{ :​icore4t:​icore4t_arm_hal_30_3.png?​direct |}} 
 === 5.原理图 === === 5.原理图 ===
 +{{ :​icore4t:​icore4t_arm_hal_30_4.png?​direct |}} 
   * 由于STM32不带高速PHY,在这里我们用STM32H750和USB3300连接的方式来实现数据的高速传输。本实验通过移植ST官方提供的代码来实现STM32对U盘或者读卡器等大容量USB存储设备的读写操作。   * 由于STM32不带高速PHY,在这里我们用STM32H750和USB3300连接的方式来实现数据的高速传输。本实验通过移植ST官方提供的代码来实现STM32对U盘或者读卡器等大容量USB存储设备的读写操作。
 ==== 四、 实验程序 ==== ==== 四、 实验程序 ====
行 320: 行 323:
   - 也可以进入Debug 模式,单步运行或设置断点验证程序逻辑。   - 也可以进入Debug 模式,单步运行或设置断点验证程序逻辑。
 ==== 六、 实验现象 ==== ==== 六、 实验现象 ====
- +{{ :​icore4t:​icore4t_arm_hal_30_5.png?​direct |}} 
- +
  
icore4t_30.1583975204.txt.gz · 最后更改: 2020/03/12 09:06 由 zgf