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

STM32F1USB/CAN接口硬件电路设计

[复制链接]
STMCU小助手 发布时间:2023-2-21 21:36
01 USB接口
8 K& O4 N5 L3 |& u2 Z! C

STM32F1系列MCU支持USB2.0接口,查阅芯片规格书知道,当使用全速USB时,需要在信号线DP上上拉1.5kΩ至3.3V,详细如下图圈出的note所示。

3 y7 u- _; A' t; M' [& Y
- h% s" _( m2 }, h5 ?
微信图片_20230221213622.png
: g6 m! h3 ^, {7 b) M! u9 h& |+ }- h) y! e
( ?! q; r! H6 b+ s. K2 |8 ]% V- r
对于这个问题,ST的评估板提供了一个解决方案,先看下图,图中的1.5kΩ上拉电阻主要受三极管T1和T2的开关状态控制,这里做个控制逻辑分析。
a. 当JP14的2号脚被短接至JP14的1号脚,T1断开,这时T2的开关状态取决于USB口CN14是否接到PC端,如果接到PC端的话,PC为CN15供电,即U5V上有5V电压,T2打开,此时如果MCU内有USB相关的固件的话,PC端会检测到USB设备并枚举识别为全速USB设备。3 b: I! M% }7 D6 |5 d9 |0 ^0 w
b. 当JP14的2号脚被短接至JP14的3号脚,T1受GPIO信号控制,当GPIO为低电平时,情况跟上述a一样,当GPIO为高电平时,T1导通,T2断开,此时1.5kΩ电阻没有被上拉至3.3V,所以CN14接到PC的USB接口上后,不会被识别为全速设备。这里这样处理的目的主要有两个,一是软件可以控制切换USB工作模式,另外是USB线插在PC端后,重新烧录固件时不用手动插拔USB线让PC检测USB设备重新枚举。
9 T  @4 B$ K1 b( y. M
1 {% S- s, M% E9 S
微信图片_20230221213619.png
- b! H; |# s2 M  X9 }
" ^! G) }$ f, G# w
02 CAN接口

CAN是汽车、计算机控制系统和嵌入式工业控制局域网的标准总线,它有很多优点,如传输距离远(最远-),因为自带CRC校验和重传,所以传输可靠等。

STM32F1系列MCU集成了CAN2.0B的控制器,硬件设计时只需要再加一个CAN的PHY芯片即可,CAN有CAN_TX和CAN_RX两个信号,参考规格书的Table 5,我们可以知道有多个引脚可以复用为CAN信号,我们根据IO资源分配情况选择可以用的IO,如官方评估板使用的是PB8(CAN_RX)和PB9(CAN_TX)。对应CAN_TX连接到PHY芯片的D,CAN_RX连接到PHY芯片的R。PHY芯片的CANH和CANL是一对差分信号,当CAN总线上挂多个CAN设备时,需要在第一个和最后一个设备的CANH和CANL之间连接一个120Ω的匹配电阻,如下为ST官方评估板的CAN PHY参考设计。

微信图片_20230221213615.png
+ c8 `  P# e9 @* q
转载自: ecircuitlab
6 o: C' G3 K, s6 J; b

$ {2 G+ n3 ?7 L# X
赞 收藏 评论0 发布时间:2023-2-21 21:36

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版