|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
% v- d9 W i9 B# T1 y摘要针对一电机测试装置,在Delphi 7下用PComm实现微机与PIC18F458单片机的串行通信。对该装7 \- f& s0 |* m7 I; W1 ]; I
置检测仪高速上传数据而引起数据丢失的情况进行了重点讨论,利用PComm提供的中断服务函数很好地解决了
/ ^6 P4 T& v9 ?) x此问题,保证了实时性,并对涉及到的回调函数进行了详细的阐述。0 W: g" h' j2 c" J
关键词串行通信;高速上传数据; PComm; PIC单片机
x% j# g' k' C/ p! E& z# @2 L* e7 P1 ]1 c6 A: R! J# S
0 引言2 U! r* M" P3 y7 K: l
串行通信具有传输线少,操作简便等特点,被广
$ k5 F- r# ]# E$ z泛应用于工业自动化领域和远程监系统中,以实现微
9 I8 G, M! T1 b6 H( l$ V- [- K机(.上位机)与单片机、微机与微机之间的数据交换。1 Z' O6 L2 v1 K |9 Z4 p
Delphi是一种非常优秀的Windows应用程序开发工
3 x3 Q/ N* S% G2 C具,也是数据库应用程序最优秀的开发工具之一,可
4 \1 J7 T9 N4 \: m大大缩短软件的开发周期。利用Delphi实现串行通
: Z/ i, c, a8 C; V信主要有3种方法: (1 )利用Windows的通信API函& X0 W0 \! Y/ w y& \
数,它提供的串口函数库比较少,且语法十分复杂,所/ {3 `7 o4 a7 S- y: p& J
以在Windows下开发串口应用软件会感到相当困难;
- }$ V8 R' ~4 v4 p1 j; |(2)利用Windows操作系统中注册的控件,虽然它比9 R3 V6 d J% ?/ r; X
API函数简单易用,但是并不能满足所有系统的性能
+ w0 f1 C, T) o扩展,如微软公司提供的ActiveX 控件MSComm最大
" \( i1 n% ~3 T5 u W0 _% b+ j9 V% f
3 z' Q% X- Z; Y2 A! Q只支持16个串口;(3)调用其它串口通信程序,例如:; E9 T4 X5 @: I# N) X( p. m% c; u
台湾MOXA(摩莎)公司开发的串口开发软件包/ ?3 c' r5 a$ @, B ?
PComm Library,它提供了专为异步通讯设计的API: p ~8 w8 b' Z
函数库,在相应的硬件支持下,如加装专用串行通讯
+ U) q& s2 ]2 w4 S5 |" Q. A4 n接口等,其最高传输速度可达921.6kbps。 本文采用) I ]- @. }+ S" V) f4 [
第3种方法。- b; ^5 M5 g/ M0 Z7 h
, F% R5 S' R9 W1 V1 I5 X1 系统组成/ Q1 a/ s& x, P2 z/ C( D
PIC18Fxxx系列单片机是美国微芯( Microchip )
$ S' A/ W5 w! X7 k* |8 r3 P( t4 i公司推出的CMOS8位单片机,采用了精简指令集
% v& O2 u+ P" f- m- ]: K( RISC)、哈佛( Harvard)总线结构和流水线取指令方
. N8 }9 u; @" ]5 O) w: }" j式,具有实用、低价、指令集小、简单易学、低功耗、高2 R9 x3 w" ?' a; d; J
速度、体积小、功能强及抗干扰能力强等特点。大量.
% g4 H. m* ^4 f* a i5 \( d用于汽车电气控制、低功耗的应用的表计和测量仪表
; T5 ~% W& _) D& q: w: l" j( A M
% }' r( P d) s9 ~8 g" u; v& C( m; R& {/ b/ w* P# H2 h4 K) a
$ @7 k+ F7 P6 S1 x8 u7 L q
# B; g0 \$ I$ |4 _* I& g- x W
0 H/ D) N! M- t& O Q* ^ A/ A& m9 W
|
|