找回密码
 注册
关于网站域名变更的通知
查看: 403|回复: 1
打印 上一主题 下一主题

[毕业设计] AVR单片机与PC机打印口高速双向数据通信接口

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-3-13 09:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
1 F  c# ]8 Q# Y+ d, C/ B
摘要4 @$ D- Y2 g! R; h" A0 N& Q8 X
文章给出了一个简单而又实用的利用PC机打印口进行高速双向数据通信的接口,详细介绍了接口的原理和
2 n# G. n: S% x7 @" u1 x# L7 _: G8 uWindows环境下驱动程序的设计,并以该接口与AVR单片机的连接为例,介绍了它的使用方法。最后给出了各种情况下8 h' r4 ?. j' C
通信性能的测试结果。. ?6 S; u1 M) B; |% ~

( K6 W: y( f& q2 I' o+ G) \关键词:数据通信   EPP接口   Windows   驱动程序   单片机
. H. m6 j+ M$ q8 u; \- q: ]3 j8 k& w+ Y5 s( V' M) D. Q2 h
基于PC机的数据采集和监测控制系统往往用各种单片) @2 J4 X' Z( S; U- e* |
机构成现场部件,因为它具有高可靠、低成本、小体积和抗干扰9 g/ M+ n) F5 p% a2 C
性好的特点,而PC机则完成数据分析处理和构成友好易用的
/ u8 L5 q  m) o) K' s人机界面。在这样的系统中,单片机与PC机间的数据通信是( v9 y8 O. N7 ^% L% m9 L0 _; V
不可缺少的一一个环节。传统系统多利用PC机的串行接口与单
" h3 S8 f* _: X4 S片机进行数据通信,一则因为系统的数据量不大,二则因为大& C2 W# o  @0 M3 N- {1 z$ v  [
多数单片机都内置了串行接口,数据通信只需要简单的软件编6 v9 H) ]( {$ T5 T' a! G
程即可实现。* o7 {% G5 Z# H
随着计算机的发展,一方面传统串行接口因速率太低而逐& _  y6 m) y# O. X- S. E7 P0 w* \
渐被淘汰,尤其是便携计算机,已很少再配备传统的串行接  b( k1 ]: M/ f  A; z( s# B
口了;另一方面,应用系统要求的数据通信量也不断增加,16 P& i- t$ C/ r% o
传统串行接口已不能满足要求。虽然新型USB串行接口的I
1 w7 ~' d/ h6 S0 w出现解决了PC机传统串行接口速率低的问题,但同时也大
5 U0 B9 z1 @4 {大增加了通信的软硬件成本,造成用于通信的成本和复杂!
, m( \3 a! I3 u1 [3 k  [$ ^性大于现场设备本身的现象。在批量较少的情况下,问题更& {% k5 m' Z7 |- e6 u+ }4 u% ?
为突出。8 C) v- w6 l% X" d7 v9 L. k# A
在PC机提供的各种接口中,打印接口一直是必备的接
2 u0 Q1 p0 z: |3 T9 _2 s0 @口,而且已经从SPP方式的单向输出接口扩充为EPP和ECP
; I, f# `; f' T方式的双向接口,其通信速率也可以达到500KBytes/s到
; K5 C# C, N) i+ l( \. k. l3 Q2MBytes/s。利用PC机打印接口进行数据双向通信的成本和! ^; G* B0 {! a
复杂性又远比USB接口低,因此是单片机与PC机间数据通6 O8 Z1 p! m% r5 C& C3 _2 ~
信的一个较好的替代方案。与利用传统的串行接口通信方案
  Z, P( d0 d$ ?! D  n9 C5 ?6 B& s相比,该方案涉及到硬件接口设计和Windows驱动程序设计
5 x0 n# g. X; p- o  N& ]# p两个额外的问题,本文就这两方面的问题给出了较为详细的1 V/ Y! s  o) ^/ U
论述。) ?- y, Y9 o; B1 b2 d
1 @. h2 s* a: G
1、EPP端口通信原理8 t0 i! k2 E1 ^' m; a
1.1
3 V% f# R% K5 N$ MEPP端口的引脚和定义
8 F3 v2 m8 h7 |% H6 {4 q  E用于进行数据双向通信的EPP端口相关的引脚和定义如# B0 C7 p& _. l1 x8 ~5 `6 q
表1所示。4 f' h* Y( l' D- f; n) B
1 a7 @/ m+ U( m# `, C
1.2
  v/ k# n6 t5 c$ h" x) [EPP端口的操作.
; w3 i: n/ @) ?( nEPP端口的操作分数据和地址两种,通过对数据寄存器和- _+ V7 D7 s6 J  \7 h
地址寄存器的读写操作可以完成数据和地址的输人和输出。在2 o) _. m! C+ E, V: p9 ]$ p1 r0 v
端口上,则以nDStrb和nAStrb分别为低加以区分。除了这两个' u6 g* {0 b$ l( j% Y* H
信号外,数据和地址操作的其他信号状态完全一样。每-条对; @7 p! _" g+ k0 G" G
数据或地址寄存器的读写指令,便会自动启动并完成一次EPP5 v9 Y5 ]0 y6 S+ J" I
端口的输人或输出操作。EPP端口的寄存器地址和定义如下:4 O2 i$ M$ f  ^: J& s2 s: \
基地址(378h):端口数据输出,锁存输人地址。
0 ]) N) W" D: c8 u1 \基地址+1 (379h):状态输人端口,bit6~bit3分别为端口引$ R# S2 h- d/ j; H  W0 v! J& f
脚10,12,13和15的状态。1 W2 K$ |3 Y* f( K$ L; i8 l
: n+ C4 x: @. a% `4 j

! h6 q4 [2 |- p
. M  G3 P$ {9 x5 g+ V1 B
附件下载:
游客,如果您要查看本帖隐藏内容请回复
; {3 Q9 T1 _; K9 r* {, }" t2 T1 \
, J- c4 o  x& E/ J5 L5 e

该用户从未签到

2#
发表于 2020-3-13 09:36 | 只看该作者
单片机有高可靠、低成本、小体积和抗干扰性好的特点
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-2 08:45 , Processed in 0.140625 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表