|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
$ a5 n0 w/ j+ b0 O% a, F3 A7 E
[摘要]本文设计 了以AT89S52为核心的微型打印机接口硬件,介绍了AT89S52单片机接口转换电路及微打的串行通信方法,此方
7 E5 B1 i1 p% f2 W' [6 ^法也可应用于其它类型的微型打印机及串行通信场合。系统可以无须通过微机直接打印,具有硬件构成简单、成本低、通信可靠的特点。
: d$ ^, D) ^0 h6 R- U. r[关键词]单片机接口微型打印机
; G; Y9 `: L h6 C( U. Q) e2 z! j" V; {2 g8 Z
1.引离
" ?! Q4 }% I" c6 I: l由于单片机具有简单实用、可靠性高、性能价格比高、体积小等优
7 \7 o* b9 i) U点,已经广泛应用在各个领域。微型打印机是各种智能化仪表、仪器及
$ R' a; x: ]- m9 E7 g& y各种微型计算机的重要输出设备,用途广阔。作者着重介绍AT89S52对9 [/ B' K4 h: q0 `3 u# d) j5 e# |* `
串行接口的微型打印机的控制,以便人们更好地了解和掌握单片机对
" B- {; {# c4 x外部接口的一些特殊功能的应用。
8 a" A5 g+ u* u: R2 U: w4 r. h2.系统组成
! P, E& R6 @# x$ pAT89S52单片机是一种低功耗高性能、片内含有8 kb闪存的8位
, E' M7 _/ N! G- g5 oCMOS单片机,工作电压范围为2.7~6.0V ,8位数据总线。有一个可编3 H, }) L. d2 l4 |7 M/ f
程的全双工串行通信接口。通过RDX引脚(串行数据接收端)和TXD引8 Q! q" d* t" a# e: E) q
脚(串行数据发送端)通信。MAX232 为RS232收发器, +5 v电源供电,: D6 q( Z3 S) U. M6 w
容易实现从TTL电平转换到EIA电平,相当于EIA接口,电位5 V转换
9 C1 t5 w2 \( B1 A为-8~-15V ,转换后信号由TXD输出,而打印机内部的MAX232芯片
' o1 `8 x1 I9 N7 W' `RXD引脚就接收该正负电位信号。系统硬件组成如图1所示,图1中, o( v3 E+ h# i* a$ V) `1 ?( @
VCC为电源;C1 ~ C6均为电容,T为晶体震荡器。
* {2 m' D: H( N3.硬件设计
- r: W/ o$ H* R l系统以AT89S52单片机为核心,通过串口经MAX232转换成5 {6 H8 L) Q. S6 _* l9 E5 R
RS232电平向微型打印机传送。单片机程序主要包括串行口初始化设' \% R# m7 A ]- Y$ p- h
计和串行数据传输模块。AT89S52 串行口工作方式,AT89S52串行口有" p' D- f2 D+ X& A7 A. b) f
多种工作方式,有8位帧格式.10位帧格式和11位帧格式。系统中.
' f5 W0 j9 @, `& c1 x. B) H1 nAT89S52串行口工作方式为帧11位的异步通信格式:1位起始位,8位" M) W2 U2 h( e* W% R3 L
数据位,1位可编程数据位TB8 ,1位停止位。发送前,由软件设置第9位# r9 y% k) m. b5 v
数据位TB8位1 ,再将要发送的数据写人SBUF ,启动发送过程。串行口
/ w, W7 ~7 C5 @4 ` @0 x能自动把TB8取出,装人到第9位数据的位置,再逐一发送出去。发送完
! M% B: f1 X5 c0 u( i毕,使Tl= 1接收时,置SCON中的REN位为1 ,允许接收。当检测到
2 N( f" u' A( s8 T( u! o* DRXD位为1时,开始接受9位数据,送入移位寄存器(9位)。当满足RI=0
2 N1 N, i8 A" S" G; c8 z且SM2=0或接收到的9位数据为1时,前8位数据送人SUBF,第9位
! B9 y, r! t" z数据送人SCON中的RB8 ,置RI为1 ;否则,此次接收无效,,不置位RI。5 X2 N; s8 T5 w8 L) o- K
单片机与打印机的通信协议如下:
7 h0 _! s3 s' o; r1 g
2 r/ H& {/ q; { U. {
6 }! y$ u8 S) N Q6 D
, a8 E6 ]6 y5 Z( l% Y8 f# ^! N |
|