其林贝尔

服务热线:17511683092
17511683092

他们都在找: 96孔微孔板混匀仪QB-8002 旋涡混合器VORTEX-5 多管混匀仪BE-2600
当前位置主页 > 新闻动态 > 行业动态 >

USB转接器的硬件设计-振荡器的应用!

返回列表 来源:未知 发布日期:2019-10-08 11:14【

一、CAN/USB 转接器基本原理

(一)CAN 总线协议概述 控制器局域网(CAN)是一种总线型 串行通信网络,在汽车行业和工业上均有 广 泛 应 用。Robert Bosch GmbH 的《CAN Specification Version 2.0》发布于 1991 年,在这篇文档中该公司宣布了一种新版 本 的 CAN 总 线 协 议, 即 CAN2.0。 新 标 准 CAN2.0B 与旧标准 CAN2.0A 或 CAN1.2 的主 要区别在仲裁场识别符的位数上,新标准的 识别符扩展到了 29 位,这不但使得总线上 可以容纳更多的节点设备,也使得节点设备 的识别符编号能够更加标准化。
(二)转接器的功能 本设计中的转接器是用于连接 CAN 总线 和 USB 总线,包含两方面的内容:首先, 转接器应该能够从 CAN 总线上接收数据,并 将其发送到 USB 总线上;其次,转接器也应 该能够从 USB 总线上接收数据,然后将其发 送到 CAN 总线上。为了实现上述功能,该转 接器必须具备的能力包括:CAN 总线数据接 收、CAN 总线数据发送、USB 总线数据接收 和 USB 总线数据发送。
(三)系统硬件结构 本文设计的 CAN/USB 转接器以 51 单片 机为核心。由单片机负责接收其中一个总线 上的信号,并将其转发到另一个总线上,同 时也由单片机负责对来不及发送的数据进行 缓存。前者要求单片机有足够快的处理速度, 后者则要求单片机有尽可能大的 RAM 空间。 51 单片机既没有对 CAN 总线的支持,也没 有对 USB 总线的支持,因此这两种总线都需 要用专门接口额外连接相应的转接芯片。常 见的 USB 转接芯片是 CH340 系列,它可以将 USB 接口和 UART 串口的数据进行转换。而 CAN 总线的硬件部分通常由处理器、CAN 控 制器和 CAN 收发器三部分构成。这里让单片 机通过 UART 接口连接 USB 转串口芯片;通 过 P0 和 P2 两个扩展存储器接口连接 CAN 控 制器,CAN 控制器通过光耦合器与 CAN 收发器连接以实现信号隔离,避免干扰。硬件框 图如下图 1。


二、元件选取

(一)单片机的选取 单片机是整个设计的核心,是连接 CAN 总线和 USB 总线的中枢。由于 UART 的速度 通常只有几 kbps 到几百 kbps,因此瓶颈主 要在 UART 总线上。UART 的波特率最大值取 决于单片机所支持的最大时钟频率,时钟频 率越大,波特率越大。 国 产 51 单 片 机 STC15F2K60S2 的 最 大 频率可达 28MHz,在 1T 模式下,波特率最 大 可 达 875000。 距 离 CAN 总 线 1Mbps 的 最高速度相差不大。因此本设计中使用 STC15F2K60S2 这款单片机。
(二)CAN 控制器 考 虑 到 CAN 总 线 协 议 标 准 的 最 新 版 本 为 CAN2.0B, 选 取 的 总 线 控 制 器 一 方 面必须能够很好的兼容原有的协议,即 CAN.2.0A 协议,又应该支持新的扩展标准, 即 CAN2.0B。设计中的 CAN 控制器选择了 SJA1000,这是一款独立 CAN 控制器芯片。 具备 BasicCAN 和 PeliCAN 两种模式,支持 CAN2.0A 和 CAN2.0B 协议标准。 SJA1000 提供了对 51 单片机的支持, 可以通过 P0 和 P2 两组扩展存储器的接口连 接到单片机,访问的方式也与扩展存储器的 访问方式相同。
(三)CAN 收发器 CAN 收发器使用的是 PCA82C250 芯片, 具备最高 1Mbps 的高速率以及良好的抗干扰可以替换。
(四)USB 转串口芯片 USB 转串口芯片选用了 CH340T,这是一 款常用的 USB 转串口芯片,并且提供了电 脑端 USB 模拟串口的驱动程序,使得电脑端 程序的开发和使用更加方便,已有的基于 RS232 的程序不需要重新编写。
(五)光耦合器 为防止线路上的干扰,在控制器和收 发器之间有一个光耦合器来进行电流隔 离。本文的电流隔离使用了 6N137 这样一款 光耦合器芯片。这个芯片的转换速率可达 10Mbps,摆率可达 10kV/us。

三、硬件设计

硬件系统以 51 单片机为核心,通过单 片机运行的软件进行 CAN 总线和 UART 串口 之间的中转,并通过 CH340T转换为 USB总线。 电源模块可以省略,直接依靠 USB 供电。
(一)CAN 总线连接 1. 单片机与控制器的连接 SJA1000 与 51 单片机之间的连接是以 扩展 RAM 存储器的方式连接的。INT 端口提 供对单片机的外部中断输出,该中断为低电 平有效。XTAL1 和 XTAL2 为外接振荡器(海门市其林贝尔微型振荡器MH-1型)的接 口。可以独立接晶振,也可以和单片机共用 晶振。在本设计中,SJA1000 与单片机的晶 振是共用的。 2. 控制器与收发器的连接 控制器和收发器之间通过光耦合器6N137 连接,光耦合器使得两个芯片的电路 部分没有物理连接,增强了系统的稳定性和 抗干扰性。CAN 收发器 PCA82C250 的 TXD 端 口用于输入需要发送的数据,接 SJA1000 的 TX0;RXD 端口用于输出从总线上接收到的 数据,接 SJA1000 的 RX0;Rs 是斜率电阻输 入,通过一个斜率电阻接单片机的复位电路, Vref 是参考电压输出,直接悬空。CANH 和 CANL 两个端口接 CAN 总线的高低电平线路。
(二)USB 总线连接 USB 总线一侧是通过 CH340T 将单片机 输出的 UART 总线转换为 USB 总线。CH340T 的 TXD 和 RXD 两个端口分别用于连接单片机 的对应端口,进行 UART 总线的输入输出;UD+ 和 UD- 两个端口分别连接 USB 接口的 D+ 和 D- 端口,用于 USB 总线的输入输出;XI 和 XO 用于连接一个 12M 的晶振;V3 则连接 到一个 100pF 的退耦电容上。