|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
+ v# q0 K/ C5 h; l: K1 k[摘要]本文设计 了以AT89S52为核心的微型打印机接口硬件,介绍了AT89S52单片机接口转换电路及微打的串行通信方法,此方
4 B3 h! U2 y, u( v5 O6 |9 L法也可应用于其它类型的微型打印机及串行通信场合。系统可以无须通过微机直接打印,具有硬件构成简单、成本低、通信可靠的特点。. a+ y* P1 Z1 J9 N
[关键词]单片机接口微型打印机
; R& T* ?* k- M; b- j9 m8 v+ ^* A; d. h" m' g3 ]! _3 p$ @
1.引离
# R+ c: s9 `& `1 }由于单片机具有简单实用、可靠性高、性能价格比高、体积小等优
8 ~6 ?$ ^9 g' |9 M点,已经广泛应用在各个领域。微型打印机是各种智能化仪表、仪器及
4 }7 V i1 ]6 C' W& O各种微型计算机的重要输出设备,用途广阔。作者着重介绍AT89S52对
0 ^* A B: R0 \0 e) f s0 J串行接口的微型打印机的控制,以便人们更好地了解和掌握单片机对
! `: c9 o( ]( Q0 _. Y7 B外部接口的一些特殊功能的应用。
, Z" A( Z6 F; ]2 i2.系统组成) a. s. p# t& z+ F6 t3 n* ]
AT89S52单片机是一种低功耗高性能、片内含有8 kb闪存的8位! v. A, z/ ~5 f6 J" n
CMOS单片机,工作电压范围为2.7~6.0V ,8位数据总线。有一个可编
. Z4 K- d- V" U1 v. M程的全双工串行通信接口。通过RDX引脚(串行数据接收端)和TXD引5 ]2 s, |' ~7 Z+ z
脚(串行数据发送端)通信。MAX232 为RS232收发器, +5 v电源供电,4 M" i7 h; r' r5 @' i
容易实现从TTL电平转换到EIA电平,相当于EIA接口,电位5 V转换
3 |2 u2 i% k7 J/ t5 l) q为-8~-15V ,转换后信号由TXD输出,而打印机内部的MAX232芯片$ O! N3 D! T* u5 D; r
RXD引脚就接收该正负电位信号。系统硬件组成如图1所示,图1中
) t2 S- {, D/ t4 m3 r0 G7 m+ eVCC为电源;C1 ~ C6均为电容,T为晶体震荡器。( C( ~% ^2 h) Y
3.硬件设计6 ?! K/ r6 D& V
系统以AT89S52单片机为核心,通过串口经MAX232转换成
% t7 h+ [6 K$ HRS232电平向微型打印机传送。单片机程序主要包括串行口初始化设8 k. ~( x% Q: _& I/ C" B- w
计和串行数据传输模块。AT89S52 串行口工作方式,AT89S52串行口有
5 ?+ H; H! n9 d2 ^; w多种工作方式,有8位帧格式.10位帧格式和11位帧格式。系统中.
/ A/ K/ G* \% ~- A/ @7 w$ b" v- ?AT89S52串行口工作方式为帧11位的异步通信格式:1位起始位,8位# k1 u/ ^/ S; C' O2 g
数据位,1位可编程数据位TB8 ,1位停止位。发送前,由软件设置第9位. q& @9 o0 h7 T/ b2 L* }/ z
数据位TB8位1 ,再将要发送的数据写人SBUF ,启动发送过程。串行口
- t0 J* r% V9 k/ Q( y2 E# C( ~能自动把TB8取出,装人到第9位数据的位置,再逐一发送出去。发送完
8 V$ S2 J( a1 v3 {7 h2 M毕,使Tl= 1接收时,置SCON中的REN位为1 ,允许接收。当检测到
( P( j% g2 j) {RXD位为1时,开始接受9位数据,送入移位寄存器(9位)。当满足RI=0
6 n& p2 K4 e! { @5 k; l且SM2=0或接收到的9位数据为1时,前8位数据送人SUBF,第9位
- K- {. V1 r t7 j- B3 D数据送人SCON中的RB8 ,置RI为1 ;否则,此次接收无效,,不置位RI。
9 W. k3 a6 R! ?. k. y! D4 V单片机与打印机的通信协议如下:
+ Y4 |) M; F% e6 y! K1 W3 j- j0 U0 l
1 ^+ U5 l# c& W2 Y. C8 u' z- ]# S6 N: h5 n+ s+ R. s( o* w1 R
3 ], ^% h6 p7 T
|
|