|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
示例目的; M7 s- y2 ^2 y# P% V3 @
演示AT32F415C OTG 新功能的使用方法,415C新增两个功能,
1 g, V1 X( a$ z3 |5 H+ h" Z+ x2 w功能1:在OTGFS Device模式下,VBUS(PA9)可通过配置释放给其它外设使用。
8 M0 e% L7 F- N! \# {! G功能1使能方法:设置寄存器OTG_FS_GCCFG bit[21] 为1。% v! U4 s0 K+ [% I
功能2:在OTG_FS Device模式下,端点3支持重配置,使能该功能之后,使用这个端点可同时支持端点3和端点4与主机通信,具体使用端点3还是端点4是通过USB设备的配置描述进行配置。
! c- @7 p& K% M" B* R( r+ B; A功能2使能方法:((uint32_t *)0x40021044) |= 0x80000000。该示例适用于雅特力科技的AT32F415系列中的C版本芯片。该芯片系列集成了ARM™ 32位Cortex®-M4内核。表2列出了所有的产品型号。表1列出了本文涉及产品的识别:
P# ^- q2 u' W2 V( d4 j$ m4 n+ _4 h2 U- 通过芯片封装上产品标识下的版本号
- 通过包装盒标签上的产品标识的最后1个数字
1 E8 b: E8 R( R7 g; u7 f2 O; {![]()
' W) V8 H8 i! p) ~9 [" R
- 产品容量信息和器件唯一ID寄(UID基地址:0x1FFF F7E8)中的Bit[78:76] Mask_Version指明芯片的版本号,即通过地址0x1FFFF7F1的Bit[6:4]获知版本号,比如B版:0b001C版:0b010
- 关于在不同芯片封装上识别版本号,请参 2 产品上硅版本号标示。
; l4 _1 e9 |4 K6 X- w支持型号列表:% q/ ?: k: e: }2 e) N$ K; n) r- w
AT32F415C- S2 P, [4 m8 _5 [0 X, W5 D2 A
主要使用外设列表:
0 I& W9 F" O5 x9 S! _5 iOTG
5 p+ l9 F/ k7 g快速使用方法# h! U: P0 _8 |+ p) ]! f2 j% l/ ^* K
硬件资源. r/ P5 t# p* N7 u+ W
- AT-START-F415 开发板
8 `1 P5 P" p% U: ?5 S% Y - USB接口
- x, ^; o( Z( @, U) N, f软件资源$ _5 ?1 P: f- ^# ?3 T
- SourceCode
9 |0 |7 k6 v/ x/ I! ? 415_OTG_Device_NewFunction
' [$ R" B% Q- `9 b( M2 c功能 1 示例使用(PA9 释放)4 b3 P6 m4 N7 T7 q& w
- 打开 project\at_start_f415\examples\usb_device\ vcp_Loopback_funtion1,编译后下载到实验板9 [$ ~1 U) g9 Q, K6 j
- 实验使用AT-START-F415开发板
. K/ J: C% {" h+ {. m - 此例程展示了如何在AT32F415C使用OTG Device的时候释放VBUS(PA9)引脚给其它外设使用,此例程将PA9释放给USART使用。; {# |; h: L; f+ ?- t' n
- 示例代码部分展示,打开USB_VBUS_IGNORE宏定义:- ]/ w' c( b$ S8 @2 l" ?
/*** @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都能正常收发数据。& t! S2 R6 j% D( k4 p9 _
功能 2 示例使用(端点 3,4 同时使用)
- {9 C2 \; @4 K+ d/ z6 [/ f1)打开 project\at_start_f415\examples\usb_device\ custom_hid_funtion2 源程序,编译后下载到实验板
& @, q/ u# b$ }. w& S2)实验使用AT-START-F415开发板
7 b. E+ ~* | y: X3)此例程展示了如何在AT32F415C使用端点号4的功能,使用 project\at_start_f415\examples\usb_device\ Artery_UsbHid_Demo_V1.0.1 上位机进行通信测试。
* L; B3 s& k4 p q/ A+ s4)如下是USB抓包结果:OUT使用端点3, IN使用端点42 X" H: S( S8 y8 y- J7 g5 [+ o
![]()
& V$ ^. v- h0 I$ d7 G8 p4 w7 y3 { R1 A% o
产品上硅版本号标示
% X8 O- ?/ B, j0 K3 F0 ]0 _下图显示了AT32F415芯片上硅版本标示的位置,标出的部分是R (Revision Code)的第1碼。
, `+ m# W, W7 N0 v' @* G’C’表示該芯片硬件版本為硅版本C。) V* Z+ j; l0 J* I8 R( [/ H
: H* `$ l; z1 ]' N
) K3 I3 Q7 u3 m' } |
|