微型打印机及LCD控制设计报告副本.docx
- 文档编号:17931086
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:22
- 大小:63KB
微型打印机及LCD控制设计报告副本.docx
《微型打印机及LCD控制设计报告副本.docx》由会员分享,可在线阅读,更多相关《微型打印机及LCD控制设计报告副本.docx(22页珍藏版)》请在冰点文库上搜索。
微型打印机及LCD控制设计报告副本
临沂大学
课程设计书
2011.5《单片机原理与应用课程》
设计项目名称:
微型打印机及LCD控制实验
设计完成人:
班级:
电子信息工程XXX
姓名:
XXX学号:
2008XXXXX
正文
一、设计的目的
1.学习液晶显示的编程方法,了解液晶显示模块的工作原理。
掌握液晶显示模块与单片机的接口方法。
2.学习和了解微型打印机模块的工作原理。
掌握微型打印机模块与单片机的接口方法。
二、设计的题目和要求
编程实现在液晶显示屏上显示且实现打印双行中文汉字“临沂大学信息学院”。
三、设计报告的内容
3.1、总体实验功能要求
设计并实现程序:
1、在点阵式LCD模块上双行显示“临沂大学信息学院”。
2、打印机双行打印“临沂大学信息学院”字样。
3.2、实现方案
1、LCD液晶显示屏模块
在点阵式LCD模块上双行显示“临沂大学信息学院”:
硬件接口
接口协议为请求/应答(REQ/BUSY)握手方式。
应答BUSY高电平(BUSY=1)表示OCMJ忙于内部处理,不能接收用户命令;BUSY低电平(BUSY=0)表示OCMJ空闲,等待接收用户命令。
发送命令到OCMJ可在BUSY=0后的任意时刻开始,先把用户命令的当前字节放到数据线上,接着发高电平REQ信号(REQ=1)通知OCMJ请求处理当前数据线上的命令或数据。
OCMJ模块在收到外部的REQ高电平信号后立即读取数据线上的命令或数据,同时将应答线BUSY变为高电平,表明模块已收到数据并正在忙于对此数据的内部处理,此时,用户对模块的写操作已经完成,用户可以撤消数据线上的信号并可作模块显示以外的其他工作,也可不断地查询应答线BUSY是否为低(BUSY=0?
),如果BUSY=0,表明模块对用户的写操作已经执行完毕。
可以再送下一个数据。
如向模块发出一个完整的显示汉字的命令,包括坐标及汉字代码在内共需5个字节,模块在接收到最后一个字节后才开始执行整个命令的内部操作,因此,最后一个字节的应答BUSY高电平(BUSY=1)持续时间较长,具体的时序图和时间参数说明查阅相关手册。
2.点阵打印机模块
打印机双行打印“临沂大学信息学院”字样:
进纸按钮:
按下时,自动进纸。
启动/停止按钮:
向上时,启动打印;向下时,停止打印。
设计实现流程框图如下:
3.3、实验模块
CPU挂箱对象挂箱接口挂箱CPU模块(80C31)点阵式LCD模块针式微型打印机模块8251/8255扩展模块8051CPU模块
3.4、系统定义
定义CPU挂箱上的K1平推开关为打印机控制开关
3.5、实验连线
LCD显示模块
用串口电缆将串口(DB9)与计算机的COM1相连
有关LCD屏显模块的连线
1、用导线将 PA.0(CPU模块) 与DB0(LCD模块) 相连
2、用导线将 PA.1(CPU模块) 与 DB1(LCD模块) 相连
3、用导线将 PA.2(CPU模块) 与 DB2(LCD模块) 相连
4、用导线将 PA.3(CPU模块) 与 DB3(LCD模块) 相连
5、用导线将 PA.4(CPU模块) 与 DB4(LCD模块) 相连
6、用导线将 PA.5(CPU模块) 与 DB5(LCD模块) 相连
7、用导线将 PA.6(CPU模块) 与 DB6(LCD模块) 相连
8、用导线将 PA.7(CPU模块) 与 DB7(LCD模块) 相连
9、用导线将 PC7(CPU模块) 与 BUSY(LCD模块) 相连
10、用导线将 PC0(CPU模块) 与 REQ(LCD模块) 相连
片选信号CS8255选择CS0。
针式微型打印机模块
有关打印机模块的连线
1、用导线将 P1.0(CPU模块) 与 RESET(PRINTER模块) 相连
2、用导线将 P1.1(CPU模块) 与 TIMEDETECT(PRINTER模块) 相连
3、用导线将 P1.2(CPU模块) 与 PRINTPOWER(PRINTER模块) 相连
4、用导线将 P1.3(CPU模块) 与 PSA(PRINTER模块) 相连
5、用导线将 P1.4(CPU模块) 与 PSB(PRINTER模块) 相连
6、用导线将 P1.5(CPU模块) 与 PSC(PRINTER模块) 相连
7、用导线将 P1.6(CPU模块) 与 PSD(PRINTER模块) 相连
8、用导线将 P1.7(CPU模块) 与 K1(CPU挂箱) 相连
3.6、实验现象观察与调试
1、 首先检查连线,保证连线正确,然后给系统加电。
2、 上位机运行8051的上位机程序,系统连接正常后,打开试验程序WXDYJJLCDKZ.ASM经编译、连接后,全速运行程序(根据需要可单步运行、单步跟踪、设置断点)。
3、LCD显示模块:
程序全速运行后,在LCD模块显示“临沂大学信息学院”。
4、打印:
打印机模块上有一个进纸按钮:
按下时,自动进纸。
K1是启动/停止按钮:
向上时,启动打印;向下时,停止打印。
打印出两行字“临沂大学信息学院”。
四、结论
8255扩展模块是一种常用的可编程并行I/O接口芯片,片内有PA、PB、PC三个8位可编程双向通用扩展I/O口。
控制线控制8255的读、写、复位及片选等:
RD:
读控制线,低电平有效,当其为低电平时,CPU对8255进行读操作,此时8255相应口为输入口。
WR:
写控制线,低电平有效,当其为低电平时,CPU输出数据或命令到8255端口,
此时8255相应口为输出口。
RESET:
复位端,高电平有效。
当其为高电平时,8255内部寄存器全部清零,24条I/O口线为高阻态。
CS:
片选端,低电平有效。
当其为低电平时,CPU选中此8255芯片。
通过CPU模块的控制LCD、打印机模块,使其发挥相应的功能,完成CPU控制的总功能。
五、参考文献
[1]张迎新,等.单片机初级教程[M].北京.北京航空航天大学出版社,2000.
[2]何立民.MCS-51系列单片机应用系统设计配置与接口技术[M].北京.北京航空航天大学出版社,1990.
[3]孟利利MCS-51系列单片机应用实验课程报告《微型打印机及LCD控制实验》,2011.
附录:
程序代码
;correct
CSEGAT4000H
LJMPSTART
CSEGAT4100H
START:
MOVP1,#0FFH
START1:
MOV20H,#00H
MOV21H,#00H
MOV50H,20H
LCALLDELAY100M
MOVR5,#08H
MOVR6,#90H
MOVR7,#2
MOVR1,#0
JNBP1.7,PRINT603
LJMPSTART1
PRINT603:
MOVA,20H
JBACC.0,PRINT51
CLRP1.2
PRINT50:
LCALLPRINTLINE
MOVR7,#33H
DJNZR5,PRINT50
NOP
SETBP1.2
LCALLDELAY100M
MOVR5,#8
CLRP1.2
PRINT51:
LCALLPRINTLINE
MOVR7,#33H
DJNZR5,PRINT51
NOP
SETBP1.2
LCALLDELAY100M
MOVR5,#7
CLRP1.2
PRINT52:
LCALLPRINTLINE
MOVR7,#33H
DJNZR5,PRINT52
NOP
SETBP1.2
LCALLDELAY100M
LJMPSTART100
DELAY100M:
MOVR6,#40;60ms
DEL1:
MOVR7,#250
DEL2:
NOP
NOP
DJNZR7,DEL2
DJNZR6,DEL1
RET
WAIT:
CLRA
MOVC,P1.1
RLCA
MOV41H,A
MOV50H,A
XRLA,40H
JZWAIT
MOV40H,41H
MOV50H,41H
RET
PRINTLINE:
NOP
JNBP1.0,PRINTLINE
MOVR2,#60H
MOVR3,#00H
CLRA
MOVC,P1.1
RLCA
MOV40H,A
MOV50H,40H
LCALLWAIT
PRINT300:
MOVDPTR,#TABLE11
LCALLPRINT1
MOVDPTR,#TABLE12
LCALLPRINT2
MOVDPTR,#TABLE13
LCALLPRINT3
MOVDPTR,#TABLE14
LCALLPRINT4
INCR3
MOVA,R3
CJNEA,#8,PRINT300
MOVR3,#0
INCR1
DECR7
MOVA,R2
JNZPRINT300
NOP
RET
PRINT1:
MOVA,R3
JNZPRINT400
MOVA,R1
MOVCA,@A+DPTR
MOV43H,A
PRINT400:
MOVA,43H
JNBACC.7,PRINT111
CLRP1.3
LCALLWAIT
SETBP1.3
LJMPPRINT311
PRINT111:
LCALLWAIT
PRINT311:
MOVA,43H
RLA
MOV43H,A
MOV50H,43H
RET
PRINT2:
DECR2
MOVA,R3
JNZPRINT401
MOVA,R1
MOVCA,@A+DPTR
MOV44H,A
PRINT401:
MOVA,44H
JNBACC.7,PRINT11
CLRP1.4
LCALLWAIT
SETBP1.4
LJMPPRINT312
PRINT11:
LCALLWAIT
PRINT312:
MOVA,44H
RLA
MOV44H,A
MOV50H,44H
RET
PRINT3:
DECR2
MOVA,R3
JNZPRINT402
MOVA,R1
MOVCA,@A+DPTR
MOV45H,A
PRINT402:
MOVA,45H
JNBACC.7,PRINT21
CLRP1.5
LCALLWAIT
SETBP1.5
LJMPPRINT313
PRINT21:
LCALLWAIT
PRINT313:
MOVA,45H
RLA
MOV45H,A
MOV50H,45H
RET
PRINT4:
DECR2
MOVA,R3
JNZPRINT403
MOVA,R1
MOVCA,@A+DPTR
MOV46H,A
PRINT403:
MOVA,46H
JNBACC.7,PRINTEND
CLRP1.6
LCALLWAIT
SETBP1.6
LJMPPRINT314
PRINTEND:
LCALLWAIT
PRINT314:
MOVA,46H
RLA
MOV46H,A
MOV50H,46H
DECR2
INCR7
RET
TABLE12:
DB00H,00H,00H,00H,00H,00H,10H,00H,00H,0CH,00H,78H,04H,1FH,80H,04H
DB10H,00H,00H,90H,00H,01H,10H,00H,21H,10H,00H,32H,10H,0CH,12H,1FH
DB0F0H,12H,10H,40H,04H,10H,40H,04H,10H,40H,04H,30H,40H,08H,30H,40H
DB78H,20H,40H,18H,20H,40H,18H,60H,40H,18H,40H,40H,18H,80H,40H,19H
DB00H,40H,02H,00H,40H,00H,00H,00H
TABLE11:
DB00H,00H,00H,00H,00H,00H,03H,86H,00H,01H,06H,00H,01H,0CH,00H,31H
DB08H,08H,31H,0FH,0FCH,11H,10H,00H,11H,12H,00H,11H,21H,80H,11H,40H
DB0C0H,11H,80H,40H,11H,00H,08H,11H,1FH,0FCH,11H,11H,88H,11H,11H,88H
DB11H,11H,88H,31H,11H,88H,31H,11H,88H,21H,11H,88H,01H,1FH,0F8H,01H
DB10H,08H,01H,10H,08H,02H,00H,00H
TABLE13:
DB00H,00H,00H,00H,00H,00H,00H,18H,00H,00H,10H,00H,00H,10H,00H,00H
DB10H,00H,00H,10H,00H,00H,10H,0CH,3FH,0FFH,0FEH,00H,10H,00H,00H,18H
DB00H,00H,18H,00H,00H,34H,00H,00H,34H,00H,00H,22H,00H,00H,22H,00H
DB00H,41H,00H,00H,0C1H,80H,00H,80H,0C0H,01H,00H,60H,02H,00H,38H,0CH
DB00H,1CH,30H,00H,08H,00H,00H,00H
TABLE14:
DB00H,00H,00H,00H,00H,00H,04H,20H,60H,02H,10H,40H,03H,18H,0C0H,01H
DB18H,80H,01H,11H,00H,10H,02H,0CH,1FH,0FDH,0FEH,10H,00H,18H,30H,00H
DB0A0H,27H,0FFH,0C0H,00H,03H,00H,00H,04H,00H,00H,18H,00H,00H,18H,18H
DB3FH,0FFH,0E0H,00H,18H,00H,00H,18H,00H,00H,18H,00H,00H,18H,00H,00H
DB0F8H,00H,00H,30H,00H,00H,00H,00H
START100:
MOV20H,#00H
MOV21H,#00H
MOV50H,20H
LCALLDELAY200M
MOVR5,#08H
MOVR6,#90H
MOVR7,#2
MOVR1,#0
JNBP1.7,PRINT6032
LJMPSTART1
PRINT6032:
MOVA,20H
JBACC.0,PRINT512
CLRP1.2
PRINT502:
LCALLPRINTLINE2
MOVR7,#33H
DJNZR5,PRINT502
NOP
SETBP1.2
LCALLDELAY200M
MOVR5,#8
CLRP1.2
PRINT512:
LCALLPRINTLINE2
MOVR7,#33H
DJNZR5,PRINT512
NOP
SETBP1.2
LCALLDELAY200M
MOVR5,#7
CLRP1.2
PRINT522:
LCALLPRINTLINE2
MOVR7,#33H
DJNZR5,PRINT522
NOP
SETBP1.2
LCALLDELAY200M
LJMPSTART1
DELAY200M:
MOVR6,#40;60ms
DEL12:
MOVR7,#250
DEL22:
NOP
NOP
DJNZR7,DEL22
DJNZR6,DEL12
RET
WAIT2:
CLRA
MOVC,P1.1
RLCA
MOV41H,A
MOV50H,A
XRLA,40H
JZWAIT2
MOV40H,41H
MOV50H,41H
RET
PRINTLINE2:
NOP
JNBP1.0,PRINTLINE2
MOVR2,#60H
MOVR3,#00H
CLRA
MOVC,P1.1
RLCA
MOV40H,A
MOV50H,40H
LCALLWAIT
PRINT3002:
MOVDPTR,#TABLE21
LCALLPRINT12
MOVDPTR,#TABLE22
LCALLPRINT22
MOVDPTR,#TABLE23
LCALLPRINT32
MOVDPTR,#TABLE24
LCALLPRINT42
INCR3
MOVA,R3
CJNEA,#8,PRINT3002
MOVR3,#0
INCR1
DECR7
MOVA,R2
JNZPRINT3002
NOP
RET
PRINT12:
MOVA,R3
JNZPRINT4002
MOVA,R1
MOVCA,@A+DPTR
MOV43H,A
PRINT4002:
MOVA,43H
JNBACC.7,PRINT1112
CLRP1.3
LCALLWAIT
SETBP1.3
LJMPPRINT3112
PRINT1112:
LCALLWAIT
PRINT3112:
MOVA,43H
RLA
MOV43H,A
MOV50H,43H
RET
PRINT22:
DECR2
MOVA,R3
JNZPRINT4012
MOVA,R1
MOVCA,@A+DPTR
MOV44H,A
PRINT4012:
MOVA,44H
JNBACC.7,PRINT112
CLRP1.4
LCALLWAIT
SETBP1.4
LJMPPRINT3122
PRINT112:
LCALLWAIT
PRINT3122:
MOVA,44H
RLA
MOV44H,A
MOV50H,44H
RET
PRINT32:
DECR2
MOVA,R3
JNZPRINT4022
MOVA,R1
MOVCA,@A+DPTR
MOV45H,A
PRINT4022:
MOVA,45H
JNBACC.7,PRINT212
CLRP1.5
LCALLWAIT
SETBP1.5
LJMPPRINT3132
PRINT212:
LCALLWAIT
PRINT3132:
MOVA,45H
RLA
MOV45H,A
MOV50H,45H
RET
PRINT42:
DECR2
MOVA,R3
JNZPRINT4032
MOVA,R1
MOVCA,@A+DPTR
MOV46H,A
PRINT4032:
MOVA,46H
JNBACC.7,PRINTEND2
CLRP1.6
LCALLWAIT
SETBP1.6
LJMPPRINT3142
PRINTEND2:
LCALLWAIT
PRINT3142:
MOVA,46H
RLA
MOV46H,A
MOV50H,46H
DECR2
INCR7
RET
TABLE23:
DB00H,00H,00H,00H,00H,00H,10H,00H,00H,0CH,00H,78H,04H,1FH,80H,04H
DB10H,00H,00H,90H,00H,01H,10H,00H,21H,10H,00H,32H,10H,0CH,12H,1FH
DB0F0H,12H,10H,40H,04H,10H,40H,04H,10H,40H,04H,30H,40H,08H,30H,40H
DB78H,20H,40H,18H,20H,40H,18H,60H,40H,18H,40H,40H,18H,80H,40H,19H
DB00H,40H,02H,00H,40H,00H,00H,00H
TABLE24:
DB00H,00H,00H,00H,00H,00H,03H,86H,00H,01H,06H,00H,01H,0CH,00H,31H
DB08H,08H,31H,0FH,0FCH,11H,10H,00H,11H,12H,00H,11H,21H,80H,11H,40H
DB0C0H,11H,80H,40H,11H,00H,08H,11H,1FH,0FCH,11H,11H,88H,11H,11H,88H
DB11H,11H,88H,31H,11H,88H,31H,11H,88H,21H,11H,88H,01H,1FH,0F8H,01H
DB10H,08H,01H,10H,08H,02H,00H,00H
TABLE22:
DB00H,00H,00H,00H,00H,00H,00H,18H,00H,00H,10H,00H,00H,10H,00H,00H
DB10H,00H,00H,10H,00H,00H,10H,0CH,3FH,0FFH,0FEH,00H,10H,00H,00H,18H
DB00H,00H,18H,00H,00H,34H,00H,00H,34H,00H,00H,22H,00H,00H,22H,00H
DB00H,41H,00H,00H,0C1H,80H,00H,80H,0C0H,01H,00H,60H,02H,00H,38H,0CH
DB00H,1CH,30H,00H,08H,00H,00H,00H
TABLE21:
DB00H,00H,00H,00H,00H,00H,04H,20H,60H,02H,10H,40H,03H,18H,0C0H,01H
DB18H,80H,01H,11H,00H,10H,02H,0CH,1FH,0FDH,0FEH,10H,00H,18
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微型打印机及LCD控制设计报告 副本 微型打印机 LCD 控制 设计 报告