|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
示例目的
5 ]- [6 [* I/ `6 ]) d8 i演示AT32F415C OTG 新功能的使用方法,415C新增两个功能,0 M0 B1 v+ W/ {$ G/ e3 L
功能1:在OTGFS Device模式下,VBUS(PA9)可通过配置释放给其它外设使用。* R _2 Q! f$ E% |- f8 J: g! b* J. [
功能1使能方法:设置寄存器OTG_FS_GCCFG bit[21] 为1。
6 h- s/ e& H4 W# Z: }功能2:在OTG_FS Device模式下,端点3支持重配置,使能该功能之后,使用这个端点可同时支持端点3和端点4与主机通信,具体使用端点3还是端点4是通过USB设备的配置描述进行配置。. T4 u1 X" k; H$ [ {! A2 l" B
功能2使能方法:((uint32_t *)0x40021044) |= 0x80000000。该示例适用于雅特力科技的AT32F415系列中的C版本芯片。该芯片系列集成了ARM™ 32位Cortex®-M4内核。表2列出了所有的产品型号。表1列出了本文涉及产品的识别:5 p# I' H2 c8 w: C8 `; u
- 通过芯片封装上产品标识下的版本号
- 通过包装盒标签上的产品标识的最后1个数字1 i8 W% O, l5 G
& u8 Y+ G" C- j9 x, L4 l8 ^7 K/ R1 w0 O
- 产品容量信息和器件唯一ID寄(UID基地址:0x1FFF F7E8)中的Bit[78:76] Mask_Version指明芯片的版本号,即通过地址0x1FFFF7F1的Bit[6:4]获知版本号,比如B版:0b001C版:0b010
- 关于在不同芯片封装上识别版本号,请参 2 产品上硅版本号标示。; m' N4 ~) n2 x0 F8 o" N
支持型号列表:1 W# m! E% {! r1 c
AT32F415C4 g$ l" o* E: `2 @) o4 i0 [9 I5 W
主要使用外设列表:" z$ g" N4 ]4 a+ U- m9 Y; t3 f) E
OTG0 S/ V$ B2 E+ o$ L- G5 W+ l
快速使用方法
# T3 L4 S$ K b: }硬件资源
8 E# R" H9 I8 H( `8 d/ D
- AT-START-F415 开发板
+ [# M" F) D! n% J) k% v - USB接口
. F& V6 H# e5 `软件资源
" X: f1 b$ h% u - SourceCode
; \( j$ X; J, V8 f0 {* y; U 415_OTG_Device_NewFunction: }$ v1 E/ s2 f4 p4 C$ P0 @! T
功能 1 示例使用(PA9 释放)( O0 l& Q4 R7 P6 i
- 打开 project\at_start_f415\examples\usb_device\ vcp_Loopback_funtion1,编译后下载到实验板
. t% `9 r5 Q U4 h% F4 G - 实验使用AT-START-F415开发板
" F/ v- w" } D( n5 Y: t1 p - 此例程展示了如何在AT32F415C使用OTG Device的时候释放VBUS(PA9)引脚给其它外设使用,此例程将PA9释放给USART使用。
% M; k u) s W& @5 J - 示例代码部分展示,打开USB_VBUS_IGNORE宏定义: |! \0 p; T- G: U$ j! n( K
/*** @brief ignore vbus detection, only available in at32f415xx revision C.* at32f415xx revision B: (not support)* the vbus detection pin (pa9) can not be used for other functionality.* vbus pin must kept at VBUS or VDD.** at32f415xx revision C: (support)* ignore vbus detection, the internal vbus is always valid.* the vbus pin (pa9) can be used for other functionality*/#define USB_VBUS_IGNORE - 使用此例程时,将例程下载到目标板,然后将OTG接口与PC连接即可,USB连接上主机之后,可观察到USB和USART都能正常收发数据。
5 ~: S4 T n% g0 T* c) D功能 2 示例使用(端点 3,4 同时使用)+ K( T; h6 L4 ^4 C' y! A1 f
1)打开 project\at_start_f415\examples\usb_device\ custom_hid_funtion2 源程序,编译后下载到实验板
. N& v3 c1 A( M" c, u2)实验使用AT-START-F415开发板
7 M8 [! g" x) T; C3)此例程展示了如何在AT32F415C使用端点号4的功能,使用 project\at_start_f415\examples\usb_device\ Artery_UsbHid_Demo_V1.0.1 上位机进行通信测试。
$ e; L# g) H _6 F: r0 R8 O4)如下是USB抓包结果:OUT使用端点3, IN使用端点4
+ ^7 K. h A) u3 h" ~* D , J( @3 ^3 c* E( I, H' S
- m3 v, x" h e1 A
产品上硅版本号标示$ H6 X3 @. F2 G( k
下图显示了AT32F415芯片上硅版本标示的位置,标出的部分是R (Revision Code)的第1碼。+ |% Y+ _; N/ |& ?$ N5 z/ j: s
’C’表示該芯片硬件版本為硅版本C。! k5 E" j- q) H8 f5 q2 z
![]()
, Q @( j7 s' _" s1 V3 w# f3 M! Y
L) y: L! O2 U# K, t" W8 E9 o |
|