打印机和单片机接口设计课件.ppt
博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,1,六、打印机与单片机接口设计,【硬件说明】本系统选用LASER PP40微型打印机,P3.2输入PP40工作状态信号,采用查询工作方式(BUSY) P3.4输出PP40的选通信号。 【打印方式】本系统有三种打印方式,即定时打印、手动打印和故障备忘打印。 【打印功能】可打印出时间值和当时各测点温(湿)度、设定的控制曲线及其参数,以及故障原因等。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,2,【PP40接口信号时序】,接口信号时序如图所示。在单片机应用系统中实际使用时,一般不使用ACK信号。芯位 信 号 功 能 说 明 1 STROBE 选通输入信号线29 DATA1DATA8 8位并行数据总线10 ACK 应答信号表示描绘器准备接收下一批 数据11 BUSY 描绘器“忙”状态信号,该信号高电平表示描绘器不能接收新数据送入12、15 GND 其余不接,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,3,【 PP40的打印模式】,PP40具有两种工作模式文本模式 图案模式上电后,初始状态为文本模式。在文本模式状态下,如果主机将回车控制字符CR(0DH)和绘图控制字符DC2(12H)写入PP40则PP40由文本模式变为图案模式。再将回车控制符CR(0DH)和文本模式控制字符 DC1(11H)写入PP40,则PP40又回到文本模式。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,4,【 PP40文本/图案编码设计】,在字符及图案绘制程序设计之前,要对绘制的字符或图案进行编码设计。首先将要绘制的字符、表格及图案变成一系列由命令码、控制码及文字字符组成的字符串;然后再将它们“翻译”成相应的以十六进制表示的数据串,作为提供给PP40微型图机使用的数据表。由于PP40微型描绘器具有向后回纸的功能,给文本设计及绘图设计带来极大的方便。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,5,1、编程要点,在完成编码设计和硬件确定之后,进入程序设计,其编程要点:建立打印编码数据表 一般空表编码、固定字符编码表等设在程序存储器中,数据填表编码表设在数据存储器中。打印驱动子程序 根据硬件电路和打印机接口时序的要求,设计打印机驱动子程序,将数据编码表中的编码输入打印机,完成打印功能。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,6,打印结束控制有两种方法 计数控制(根据编码表长度赋计数初值,一般适合编码较少的场合), 设结束标志,即在编码表之后增设一个字节,一般为00H。 单片机与PP40交换数据方式 根据实际情况配合硬件电路,选择: 中断方式 查询方式,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,7,2、打印子程序设计,【硬件说明】 PP40的DATA1DATA8接在8031的P1口 PP40的选通(STB)接8031 的P3.4 PP40的忙信号接8031的INT1(P3.2)8031和PP40的通讯可以采取: 中断方式 查询方式,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,8,【程序设计】例1 根据要求设计打印驱动程序说明:计数方式,结束打印; 查询方式,交换数据; 编码数据,放在程序存储器。编码设计 CR DC2 CR HM1,-1CR ;笔架抬起先回起点再移至A点。 L0,J0,-2,2,0,0,2 CR 从A B C D相对绘线 R-1,1 CR ;相对移动 D2,-3CR ;绘线E F M0,-4CR ;笔架抬起,移至左下端,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,9,驱动程序 MOV R7,#NN ;编码表长度 MOV R1,#REL ;查表偏移量/加1计数NEXT:MOV A,R1 MOVC A, APC ;查编码 MOV P1,A ;数据送P1口 CLR P3.4 ;选通信号 NOP SETB P3.4 WAIT:JB P3.2,WAIT ;查询BUSY,等待 INC R1 DJNZ R7,NEXT ;计数控制 。 编码程序 DB 0DH,12H,0DH ;CR DC2 CR .,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,10,例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,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,11,INTPRT:PUSH ACC ;保护现场 PUSH PSW ; MOVX A,DPTR ;取数据 MOV P1,A ;数据送P1口 CLR P3.4 ;选通信号 NOP SETB P3.4 INC DPTR ;指针加1 JNZ NEXT ;结束标志判断 MOV IE,#00H ;关中断 LJMP HERE ;返回主程序NEXT: POP PSW ;恢复现场 POP ACC RETI,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,12,编码程序 TABL:DB 0DH,12H,0DH; CR DC2 CR DB 00 例3 设计表格打印程序说明: (1)计数/标志方式,结束打印; (2)查询方式,交换数据; (3)编码数据,放在程序存储器/数据存储器。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,13,分析 红色表格和蓝色字符为固定值,其编码数据放在程序存储器,而且,数据较多采用设标志结束打印;紫色数据变化值,其编码数据放在数据存储器,数据较少采用计数结束打印。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,14,编码设计1固定打印编码CR DC2,C3 CR;图案模式,红色打印头HM0,-5CR ;笔架抬起先回起点再移至(0,-5)点。 L0,J20,0,0,-15,-20,0,0,15 CR;绘四框R0,-5 CR ;相对移动至(0,-10)点 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)点,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,15,C1,S2,M0,-8 CR ;蓝色、2号字,移至(0,-8)点P ABC CR M0,-13 CR ;移动至第二列DC1 CR ;文本模式 D ;空格和字符DDC2 CR ;图案模式M0,-18 CR ;移动至第三列DC1 CR ;文本模式 E ;打印空格和字符E,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,16,编码设计2变化打印编码CR DC2,C2 CR;图案模式,绿色打印头M5,-13CR ; 移至(5,-13)点PXXX CR ;打印M5,-18CR ; 移至(5,-18)点PXXX CR ;打印M0,-20 CR,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,17,编码数据表1 DB 。00H;标志编码数据表2 DB。H ;计数编码数据表的赋值: 将A/D结果分别放入 DPTR1、DPTR2、DPTR3 单元中。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,18,驱动子程序1打印表格和固定数据PRTROM:MOV R1,#REL ;查表偏移量/加1计数NEXT:MOV A,R1 MOVC A, APC ;查编码 MOV P1,A ;数据送P1口 CLR P3.4 ;选通信号 NOP SETB P3.4WAIT:JB P3.3,WAIT ;查询BUSY,等待 INC R1 JNZ NEXT RET DB00H ;标志控制,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,19,驱动子程序2打印外部RAM中的数据PRTRAM:MOV DPTR, #TABL MOV R7, #NNHLOOP: MOVX A, DPTR ;取编码 MOV P1, A ;数据送P1口 CLR P3.0 ;选通信号 NOP SETB P3.0 WAIT: JB P3.3,WAIT ;查询 INC DPTR ;等待BUSY DJNZ R7, LOOP RET,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,20,表格打印主程序 ORG 0000HMAIN:MOV SP,#60H MOV R3, #06H MOV R0,30HNEXT: 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,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,21,七、单片机与执行机构连接,本系统执行机构为调节阀,它主要有两种类型,一种是开关量输出控制的开关电磁阀,另一种是模拟量电流输出的电动或气动连续调节阀,前者简单可靠,易于掌握;后者可进行PID等各种调节,调节性能好,精度高。 根据实际控制精度和要求,本系统从机0和从机1采用电磁阀控制水风开关的闭合,而从机2采用电动调节阀来调节蒸气流量。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,22,1、从机2(控制麦芽烘干)连续调节系统 这种调节方式需把单片机中数字量经DA转换器再转换成模拟量。为降低成本,本系统只用一个DA转换器,用多路模拟开关加多个采样保持放大器实现多路输出调节,具体电路见下图。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,23,本系统通过8155扩展并行接口,单片机可直接和8155相应端连接而不需外加逻辑,Y4和P2.0接8155的CE和IO/M,故8155的命令状态口、PA、PB口和PC口地址分别为9F00H9F03H。控制字:00000011B8155初始化程序MOV DPTR, #9F00HMOV A, #03HMOVX DPTR,A,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,24,D/A转换器选用8位电流型输出的DAC0832芯片,且它采用单缓冲方式工作,8155的输出口PA接0832的数据输入端DI0DI7,输出口PB接0832两输入寄存器的控制端和CD4051多路开关的通道选择端 。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,25,DAC0832 程序设计,程序功能 通过8155接口,启动D/A,将60H67H单元中的数据转换,分8路输出。程序说明 R1数据指针,初值为60H; R2通道编码暂存器(加1计数器),初值为E0H; R3通道循环(减1)计数器,初值为08H;60H67H待转换的数据缓冲区。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,26,程序清单 MOV DPTR, #9F00H ;8155初始化 MOV A, #03H MOVX DPTR, A MOV R1, #60H MOV R2, #0E0H MOV R3, #08HNEXT: MOV DPTR, #9F01H ;8155PA口输出数据 MOV A, R1 MOVX DPTR, A MOV DPTR, #9F02H ;8155PB口输出通道编码 MOV A, R2 ;选通D/A和CD4051 MOVX DPTR, A ;转换输出 INC R1 INC R2 DJNZ R3 NEXT ,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,27,电路工作时,0832按分时方式巡回地对各路数字量进行转换。同时,4051也接通相应的由运放LF347和电容组成的保持电路。每路电容上电压经运放与复合三极管相配合输出010mA标准电流(也可调为420mA),此电流送至DDZ2型伺服放大部件,放大后驱动DKZ-4400B型电动调节阀进行调节工作(麦牙烘干)。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,28,2、开关量输出控制的开关电磁阀 此时不需DA转换器,开关控制量直接从8031的P1口多路输出,每路都需经74LS06反相驱动,TILl17光电隔离,再由MC1416达林顿复合管反相驱动(每片内部有7路达林顿复合管,每路均有二极管保护电路)JZX-17F型中功率微型继电器的线圈,最后,小继电器触点再控制电磁阀工作。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,29,七、系统监控集成电路“看门狗”电路 种类 MAX703709/813L(8种)P4952 功能系统复位备份电池切换“看门狗”定时输出电源电压监测 原理P52 应用 START:CPL P1.0 LJMP START,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,30,八、系统报警电路,当系统自检程序发现软、硬件错误,或者温(湿)度控制且超过极限范围,或者串行通讯出错时,系统能发出声、光报警信号和切断执行机构电源,,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,31,语音报警电路设计单片机8031通过一片74LS377锁存器实现对ISDI420的多种控制操作,片选信号接Y5,其语音接口地址为BFFFH。D6控制放音开始,D7控制录音、放音选择,A0、A1固定接地,8031输出数据D0D7与ISD1420录放控制码对应关系见表10.2-1,本例共分40段,每段时间长度05s。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,32,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,33,(1)录音子程序RECORD: MOV DPTR,0BFFFH ;语音接口地址 MOV A, 0FFH MOV DPTR,A ;送停止录放音码 MOV A, 40H ;录音控制码由40H送入A ACALL TIMA ;延时20ms MOVX DFTR,A ACALL TIMB ;延时05s对麦克风发音录单 MOV A,0FFH MOVX DPTR,A ;停止录音 RET,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,34,(2)放音子程序(40H放音地址及控制码暂存单元) PLAY:MOV DFTR, #0BFFFH MOV A, 0FFH ;复位信号 MOV DPTR,A MOV A, 40H ;放音地址及控制码由40H送A ACALL TIMA ;延时20MS MOVX DPTR ,A ACALL TIMB ;延时放音时间 ;单字时05s,词段时1.5s) MOV A, 0FFH ;停止放音 MOVX DPTR,A RET,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,35,(2)放音实例 例 放音内容为“当前水压285kPa”,各字段录入顺序如下表 。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,36,程序入口:百位数、十位数、个位数的控制码 分别存放在R0、Rl、R2。程序如下:ALARM:MOV 40H,8EH ;“当前水压为”字码 ACALL PLAY ;调放音(子程序延时15s) MOV 40H,R0 ;“2” ACALL PLAY MOV 40H,8BH ;“百” ACALL PLAY,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,37,MOV 40H, R1 ;“8” ACALL PLAY MOV 40H,8CH ;“十” ACALL PLAY MOV 40H, R2 ;“5” ACALL PLAY MOV 40H,8AH ;“千” ACALL PLAY MOV 40H,8DH ;“帕” ACALL PLAY END,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,38,语音程序设计要点:录音编码设计录音子程序设计录音编码地址表放音编码设计放音子程序设计放音编码地址表主程序设计结 论:各段语音存放在ISD1420由A7A2决定的地址单元中;各段语音的录音由录音编码RD=0、 PL=1和A7A2决定;各段语音的放音由放音编码RD=1、 PL=0和A7A2决定;录音编码/放音编码可以以表格的形式存放在各类存储器中;编写相应的录音/放音子程序。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,39,九、主机从机间通讯,本系统主机选用的是IBM一PCXT或其兼容机,从机则为上述的MCS-51系统的8031单片机扩展系统。主机可带宽行打印机,以打印正规的工业报表和曲线,还配有高分辨率彩色显示器,可显示25行汉字。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,40,【说明】 由于本系统设计成主从分布式的目的并不是为了资源共享,而是实时完成信息交换和控制,另外,我们要求的通讯信息量少、信息类别固定、波特率低、传送距离近。 本通讯系统具有如下特点:通讯方式异步全双工;接口标准一RS一232C;网络结构 主从总线式;传送介质双绞线;通讯格式每帧 起始位、8位数据位多机通讯标识、1位停止位;波特率9600bps;校验方式累加和;控制方式轮流呼叫。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,41,【主、从机多机通讯的原理 】,首先使所有从机的SM2置1,处于只接收地址帧的状态;主机先发送一帧的地址信息,用于确定主机与哪台从机通讯,此帧包含8位从机地址,第9位为地址数据标志位RB8,第9位置1表示发送的是地址;由于从机的SM21且接收的第9位RB8=1,故它们引起RI接收中断,在各自的服务程序中,待所接收的地址与本机的地址比较,地址相符的从机SM2清0,而不符的从机,保持SM21状态;接着,主机再发送控制命令与数据给被寻址的从机,这时发出的每帧第9位数据TB8置0,表示命令与数据,只有地址相符的从机因其SM2=0才激活RI,接收命令与数据,而其余从机SM2=1且接收的第9位数据RB8为0,故不接收数据。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,42,通讯程序,主机(上位机PC机)通讯程序 参照P413-417程序 从机(下位机单片机)通讯程序 参照P417-418程序,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,43,十、从机程序设计步骤,程序结构从机软件由主程序、中断服务程序、子程序组成。(1)主程序 它由准备程序、键功能程序和系统控制程序三部分组成:准备程序完成系统初始化、系统自检提示符,显示和键扫描等待;键功能程序区别开数字键与控制键,如为控制键,则根据键号散转到各个功能程序模块,本系统设置了多个设置修改键(包括设置日历钟初值、控制曲线、PID等参量)、多个显示键(包括显示日历钟初值、PID 等参量、各通道控制量)、多个控制键(包括运行、自动手动、复位、暂停等),其中有些键一键多用。系统控制程序实现各键正确转移。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,44,(2)中断服务程序 本系统从机有5个中断服务程序: 系统时钟中断 A/D采样中断 键盘中断 掉电检测保护中断 串行口中断 由于时钟是系统工作的基准,以及掉电发生时须立即保护现场,因此,时钟和掉电中断设置为高级别中断,另外三个中断则为低级别中断。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,45,(3)运行控制程序模块键盘/显示程序模块A/D转换程序模块D/A转换程序模块语音报警程序模块打印控制程序模块时钟程序模块数据处理程序模块串行通讯程序模块等,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,46,地址单元分配,(1)程序存储器/固定数据表格地址分配 特殊地址 0000H系统复位入口地址 0003H外部中断INT0入口地址 000BH定时器T0中断入口地址 0013H外部中断INT1入口地址 001BH定时器T1中断入口地址 0023H串行口中断入口地址 功能程序模块 固定数据表格注意:各模块之间要留有一定空间,以便程序修改。,博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,47,(2)数据存储器地址分配,内部RAM (00H7FH) 00H1FH 工作寄存器区(R0-R7) 20H2FH 位寻址区(00H7FH 标志、位操作) 30H7FH 数据缓冲区(堆栈、数据缓冲、工作单元)外部RAM 数据缓冲区(A/D转换结果、动态数据等),博学之,审问之,慎寺之,明辩之,笃行之。精心整理,欢迎收藏,48,十一、相关工作,1、设计制作印刷电路板 绘制完整的硬件电路图 设计印刷电路制版图 制作印刷电路板 焊接安装2、机箱设计 箱体 面板 电源3、软硬件调试4、资料汇总 硬件图纸 电路板图纸 元器件、配件、设备成本一览表 使用说明书5、成果鉴定/推广应用,谢谢!,