|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 hanser 于 2020-3-18 09:13 编辑 * i8 R6 O5 r# S, f A( f& m' n
j% C+ Z% \3 [9 P, w
& p7 h# r6 N7 y5 C2 g6 Y5 X( x摘要:设计了一套USB总线与CAN总线的转换电路及其软件。系统以8位单片机为转换电路的控制器,用CH374芯片作为USB
$ M5 N, Q; H7 t端的主控芯片,用SJA1000作为CAN接口芯片。设计了系统的硬件电路,给出了基于该电路的软件实现方案,并编写了程序代码。为
5 C1 m" `4 ^% F+ t% `" L了克服CAN总线容易受到外界干扰的弱点,使用6N137进行信号隔离。对设计的系统进行了实验测试,实现了USB与CAN总线转换
5 o" j9 R/ q0 S$ Z. d2 b的功能。
' _$ z: o- ^& f2 p+ k0 h9 l% X关键词: USB总线; CAN总线;单片机; CH3740 S# J- a$ q, s0 S! r) m4 T
6 l8 D& S5 C3 E2 N) v @9 m0 引言. c5 o/ p* E% h4 K/ \% K( A) F
随着计算机技术、网络技术的发展,工业控制领域及自动
5 o4 v8 x0 l7 I: u3 F化领域对网络通信、系统的可靠性、安全性、易操作性和易维
m l2 j/ B# ]8 L3 i护性都有了更进- -步的要求。现场总线是当今自动化领域技术
( v5 i) h9 C6 o7 W" \9 y发展的特点之一,被誉为自动化领域的计算机局域网。它是现
5 M" f+ ^1 ]/ w% @3 i8 Z代计算机、通信和控制技术的集成,即通常所谓的3C (Com-
( X7 V, c- k" W5 D( g' W* ~* v; `puter, Communication, Control) 技术。分布式控制系统是现代
" e2 s) P+ h0 f, r3 _1 g7 Z# ]控制系统的主流,而CAN卓越的特性、极高的可靠性和独特的
, [" a! q) R& U G5 h2 j$ R- i8 t设计,特别适合工业过程监控设备的互联,因此越来越受工业
2 y# R% H) e& I( Q7 v界的重视。USB速度快、连线简单和即插即用的特性是与上位# \0 V' z3 ^3 B g
机通讯非常好的外设接口。因此,基于USB接口实现CAN总
0 Q4 y8 j) c" h) w4 C) x/ u线与PC机之间数据通信的研究具有一定的应用意义[1-2]
3 t4 d' i" y- b: D2 j1系统硬件设计- ^ z8 m; Y' S
硬件电路主要由微控制器、CAN总线接口、USB总线接1 { }' j$ z% c( X1 ^& S
口和信号隔离模块等部分组成,其中控制器采用AT89S52单
4 i1 A3 Z. R* {" h0 {1 d片机。系统整体功能框图如图1所示。* D* ]7 S, k4 l$ i, R, Z
系统主要功能为:单片机模块上电复位以后,完成对- W/ c' l- E' q' f' z* ~
CAN主控芯片SAJ1000和USB主控芯片CH374的初始化。7 w! q' R6 L! x3 n8 C- c1 \
PC机通过USB数据线连接到USB接口的主控芯片CH374,
% R# @ N% o5 s2 H( P; G/ x2 QUSB接口模块通过8位数据线完成与单片机接口的数据传输,* e& \4 z8 c. N0 h, g
然后由单片机把数据传输到CAN总线上[3-6]。2 S, u' Y$ E$ d3 r" Y. W( ~
1.1USB模块的硬件设计
7 M4 ]* u) b; s; Y9 F( c* K& a7 K本系统USB接口模块采用CH374作为主控芯片。CH374
" S3 T' k3 i3 ?3 ~是USB通用设备接口芯片,完全满足USB1.1标准,具有8. R$ o( D" d6 k; ?
位数据总线D[0-7],接口地址输人A0、读RD#、写WR#、! R8 U+ d2 w% s* r- t5 \ Q
片选CS#及中断输出INT#,可以方便地挂接到微处理器的: j1 V$ k7 m. _# \& A5 n& W8 b
数据总线上田。同时,在PC计算机端,CH374芯片的驱动程
! x9 M1 {' c! l! C序以及动态链接库等软件为PC计算机应用层提供了应用层接
& ^$ w- W) G4 I7 X! @6 k8 {口;只要将CH374芯片的驱动程序、动态链接库拷贝到上位
# L9 @( b+ r1 dPC计算机中,利用CH374动态链接库DLL提供的API接口+ _/ D9 J3 O" E% p& u
函数对其进行操作,对USB总线的访问及通信控制就非常简! B6 w' p* N- q
单了。USB模块硬件电路见文献[3].
# h) O2 K1 V! K3 E& U3 k1 g x3 a1.2 CAN模块硬件设计5 }) w1 F: ` V3 y8 C/ }
作为控制器局域网,CAN总线是国际上应用最广泛的现
- ~, u. q2 D9 N0 J1 D3 i场总线之一,主要用于各种设备监测及控制。CAN总线系统
+ Q! f, ^2 }2 r5 R的硬件部分一般由微处理器及可编程的CAN控制芯片组成,
. w. x+ @+ m" z* E本设计采用AT89S52 作为CAN总线系统的微处理器,而
3 a$ \8 W* ]* A$ \3 c
/ \/ k+ ?" A% {( N( F- l; y4 m8 E5 A4 r" |0 o* B
附件下载:7 k9 S# W9 ~, M9 G$ ^
% q. I6 c- M/ m* X8 \; b/ D
, `2 C/ \. V p6 }8 r2 e |
|