打印机与单片机接口设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PP40的选通(STB)接8031 的P3.4
PP40的忙信号接8031的INT1(P3.2)
8031和PP40的通讯可以采取: ·中断方式 ·查询方式
12
7
【程序设计】 [例1] 根据要求设计打印驱动程序 说明:计数方式,结束打印; 查询方式,交换数据; 编码数据,放在程序存储器。

编码设计 [CR] DC2 [CR]
转换,分8路输出。 [程序说明]

R1——数据指针,初值为60H; R2——通道编码暂存器(加1计数器),初值为E0H;
R3——通道循环(减1)计数器,初值为08H;
60H~67H——待转换的数据缓冲区。
12
25
[程序清单] MOV DPTR, MOV A, MOVX @DPTR, MOV R1, MOV R2, MOV R3, NEXT: MOV DPTR, MOV A, MOVX @DPTR, MOV DPTR, MOV A, MOVX @DPTR, INC R1 INC R2 DJNZ R3 ……………
12 18

驱动子程序2——打印外部RAM中的数据 DPTR, #TABL R7, #NNH A, @DPTR ;取编码 P1, A ;数据送P1口 P3.0 ;选通信号 P3.0 P3.3,WAIT ;查询 DPTR ;等待BUSY R7, LOOP
PRTRAM:MOV MOV LOOP: MOVX MOV CLR NOP SETB WAIT: JB INC DJNZ RET

DB 0DH,12H,0DH
…………………….
;[CR] DC2 [CR]
12
9
[例2] 根据要求设计打印驱动程序 说明:标志方式,结束打印; 中断方式,交换数据; 编码数据,放在数据存储器。 编码设计(从略) 驱动程序
ORG 0000H AJMP MAIN ORG 0013H AJMP INTPRT MAIN:MOV IE, #00H MOV DPTR,#TABL SETB IT1 MOV IE, #84H MOV SP, #60H HERE:SJMP HERE
D20,-10 [CR] ;绘线至(20,-10)点(DX,Y) R0, -5 [CR] ;相对移动至(20,-15)点 D0, -15 [CR] ;绘线至(0,-15)点 M5, -5 [CR] ;移至(5,-5)点 D5, -20 [CR] ;绘线至(5,-20)点 M10,-20 [CR] ;移至(10,-20)点 D10,-5 [CR] ;绘线至(10,-5)点 M15,-5 [CR] ;移至(15,-5)点 D15,-20 [CR] ;绘线至(15,-20)点 12
口,单片机可直接和8155相应端 连接而不需外加逻辑,Y4和P2.0
接8155的CE和IO/M,故8155的命 令状态口、PA、PB口和PC口地址 分别为9F00H~9F03H。


控制字:00000011B
8155初始化程序 MOV DPTR, #9F00H MOV A, #03H
MOVX @DPTR,A
12 10
INTPRT:PUSH ACC PUSH PSW MOVX A,@DPTR MOV P1,A CLR P3.4 NOP SETB P3.4 INC DPTR JNZ NEXT MOV IE,#00H LJMP HERE NEXT: POP PSW POP ACC RETI
;保护现场 ; ;取数据 ;数据送P1口 ;选通信号
12
16

编码数据表1 DB 。。。。。。。00H;标志

编码数据表2
DB。。。。。。。H ;计数

编码数据表的赋值: 将A/D结果分别放入 DPTR1、DPTR2、DPTR3 单元中。
12
17
驱动子程序1——打印表格和固定数据 PRTROM:MOV R1,#REL ;查表偏移量/加1计数 NEXT:MOV A,R1 MOVC A, @A+PC ;查编码 MOV P1,A ;数据送P1口 CLR P3.4 ;选通信号 NOP SETB P3.4 WAIT:JB P3.3,WAIT ;查询BUSY,等待 INC R1 JNZ NEXT RET DB----00H ;标志控制
12 3

【 PP40文本/图案编码设计】
在字符及图案绘制程序设计之前,要对绘制的字符或
图案进行编码设计。

首先将要绘制的字符、表格及图案变成一系列由命令 码、控制码及文字字符组成的字符串; 然后再将它们“翻译”成相应的以十六进制表示的数 据串,作为提供给PP40微型图机使用的数据表。


由于PP40微型描绘器具有向后回纸的功能,给文本设
Hale Waihona Puke Baidu12、15 GND 其余不接
12 2
【 PP40的打印模式】
PP40具有两种工作模式

文本模式 图案模式 上电后,初始状态为文本模式。

在文本模式状态下,如果主机将回车控制字符CR(0DH) 和绘图控制字符DC2(12H)写入PP40则PP40由文本模 式变为图案模式。
再将回车控制符CR(0DH)和文本模式控制字符 DC1(11H)写入PP40,则PP40又回到文本模式。
12
27
2、开关量输出控制的开关电磁阀
此时不需D/A转换器,开关控制量直接从8031的P1口多
路输出,每路都需经74LS06反相驱动,TILl17光电隔离,
再由MC1416达林顿复合管反相驱动(每片内部有7路达林 顿复合管,每路均有二极管保护电路)JZX-17F型中功率 微型继电器的线圈,最后,小继电器触点再控制电磁阀 工作。
12 20
七、单片机与执行机构连接

本系统执行机构为调节阀,它主要有 两种类型,一种是开关量输出控制的开关
电磁阀,另一种是模拟量电流输出的电动
或气动连续调节阀,前者简单可靠,易于 掌握;后者可进行PID等各种调节,调节
性能好,精度高。

根据实际控制精度和要求,本系统从 机0和从机1采用电磁阀控制水/风开关的
;指针加1 ;结束标志判断 ;关中断 ;返回主程序 ;恢复现场
12
11

编码程序
TABL:DB 0DH,12H,0DH; [CR] DC2 [CR]
DB …………………… 00
[例3] 设计表格打印程序

说明:
(1)计数/标志方式,结束打印; (2)查询方式,交换数据; (3)编码数据,放在程序存储器/数据存储器。
14
C1,S2,M0,-8 [CR] ;蓝色、2号字,移至(0,-8) 点 P -------A----B----C [CR] M0,-13 [CR] ;移动至第二列 DC1 [CR] ;文本模式 --D ;空格--和字符D DC2 [CR] ;图案模式 M0,-18 [CR] ;移动至第三列 DC1 [CR] ;文本模式 --E ;打印空格--和字符E
12 23
D/A转换器选用8位电流型输出的DAC0832芯片,且它采用单 缓冲方式工作,8155的输出口PA接0832的数据输入端DI0~ DI7,输出口PB接0832两输入寄存器的控制端和CD4051多路
开关的通道选择端 。
12
24
• DAC0832 程序设计
[程序功能]
通过8155接口,启动D/A,将60H~67H单元中的数据
HM1,-1[CR] ;笔架抬起先回起点再移至A点。
L0,J0,-2,2,0,0,2 [CR] 从A B C D相对绘线
R-1,1 [CR] ;相对移动 D2,-3[CR] ;绘线E F
8
12 M0,-4[CR] ;笔架抬起,移至左下端
驱动程序 MOV R7,#NN ;编码表长度 MOV R1,#REL ;查表偏移量/加1计数 NEXT:MOV A,R1 MOVC A, @A+PC ;查编码 MOV P1,A ;数据送P1口 CLR P3.4 ;选通信号 NOP SETB P3.4 WAIT:JB P3.2,WAIT ;查询BUSY,等待 INC R1 DJNZ R7,NEXT ;计数控制 。。。。。。 编码程序
12 5

打印结束控制有两种方法 ·计数控制(根据编码表长度赋计数初值,一般适合 编码较少的场合), ·设结束标志,即在编码表之后增设一个字节,一般 为00H。

单片机与PP40交换数据方式 根据实际情况配合硬件电路,选择: ·中断方式
·查询方式
12
6
2、打印子程序设计
【硬件说明】


PP40的DATA1~DATA8接在8031的P1口
#9F00H ;8155初始化 #03H A #60H #0E0H #08H #9F01H ;8155PA口输出数据 @R1 A #9F02H ;8155PB口输出通道编码 R2 ;选通D/A和CD4051 A ;转换输出
NEXT
12 26
电路工作时,0832按分时方式巡回地对各路数字量进行转换。同时, 4051也接通相应的由运放LF347和电容组成的保持电路。每路电容上 电压经运放与复合三极管相配合输出0~10mA标准电流(也可调为 4~20mA),此电流送至DDZ—2型伺服放大部件,放大后驱动DKZ4400B型电动调节阀进行调节工作(麦牙烘干)。
12
19

表格打印主程序
ORG 0000H
MAIN:MOV SP,#60H MOV R3, #06H MOV R0,30H NEXT: LCALL A/D MOV @R0, A INC R0 DJNZ R3, NEXT LCALL PRTROM MOV A, 30H MOV DPTR,#DPTR1 MOVX @DPTR , A MOV DPTR,#DPTR2 MOV A, 31H MOVX @DPTR , A MOV A, 32H MOV DPTR,#DPTR3 MOVX @DPTR , A ………………… LCALL PRTRAM
闭合,而从机2采用电动调节阀来调节蒸
气流量。
12 21
1、从机2(控制麦芽烘干)连续调节系统
这种调节方式需把单片机中数字量经D/A转换器再
转换成模拟量。为降低成本,本系统只用一个D/A转 换器,用多路模拟开关加多个采样保持放大器实现多 路输出调节,具体电路见下图。
12
22
本系统通过8155扩展并行接
12
12
[分析]

红色表格和蓝色字符为固定值,其编码数据放在程序 存储器,而且,数据较多采用设标志结束打印;

紫色数据变化值,其编码数据放在数据存储器,数据较
少采用计数结束打印。
12
13

编码设计1——固定打印编码
[CR] DC2,C3 [CR];图案模式,红色打印头 HM0,-5[CR] ;笔架抬起先回起点再移至(0,-5)点。 L0,J20,0,0,-15,-20,0,0,15 [CR];绘四框 R0,-5 [CR] ;相对移动至(0,-10)点
六、打印机与单片机接口设计
【硬件说明】本系统选用LASER PP40微型打 印机,P3.2输入PP40工作状态信号,采用查 询工作方式(BUSY) P3.4输出PP40的选通 信号。 【打印方式】本系统有三种打印方式,即定 时打印、手动打印和故障备忘打印。 【打印功能】可打印出时间值和当时各测点 温(湿)度、设定的控制曲线及其参数,以 及故障原因等。
12
1
【PP40接口信号时序】

接口信号时序如图所示。在单片机应
用系统中实际使用时,一般不使用 ACK信号。 芯位 信 号 功 能 说 明 1 STROBE 选通输入信号线 2~9 DATA1~DATA8 8位并行数据总线 10 ACK 应答信号表示描绘器准备接收下一批
数据
11 BUSY
描绘器“忙”状态信号,该信号 高电平表示描绘器不能接收新数据送入
12
15

编码设计2——变化打印编码
[CR] DC2,C2 [CR];图案模式,绿色打印头 M5,-13[CR] ; 移至(5,-13)点
P--X----X----X [CR] ;打印×××
M5,-18[CR] ; 移至(5,-18)点 P--X----X----X [CR] ;打印××× M0,-20 [CR]
计及绘图设计带来极大的方便。
12
4
1、编程要点

在完成编码设计和硬件确定之后,进入程序设计,其
编程要点:

建立打印编码数据表 一般空表编码、固定字符编码表等设在程序存储器 中,数据填表编码表设在数据存储器中。 打印驱动子程序

根据硬件电路和打印机接口时序的要求,设计打印
机驱动子程序,将数据编码表中的编码输入打印机, 完成打印功能。
相关文档
最新文档