欢迎来到天天文库
浏览记录
ID:46954691
大小:315.00 KB
页数:32页
时间:2019-12-01
《计算机接口与通信第3章并行通信接口》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第3章并行通信接口§3.1.48255A的应用举例1、用方式0与打印机接口设8255的端口地址是300~303H.对应源程序为:┇MOVDX,303H;控制口地址MOVAL,81H;(10000001)A口方式0输出,上C口输出,下C口输入OUTDX,AL;输出方式控制字MOVAL,0FH;使PC7=1(置STROBE=1)OUTDX,AL;输出命令字MOVDX,302H;C口地址PRN:INAL,DX;读C口,查询PC2ANDAL,04H;BUSY=0?JNZPRN;忙,则等待MOVDX,300H
2、;不忙,则输出数据MOVAL,AHOUTDX,ALMOVDX,303HMOVAL,0EH;使PC7=0,输出选通负脉冲STROBEOUTDX,ALNOP;适当延时,维持一定的脉宽NOPMOVAL,0FH;使PC7=1,结束STROBE脉冲OUTDX,AL┇2、用方式1与打印机接口设8255的端口地址为300H~303H,则源程序为:PRINT:PROCPUSHAXPUSHBXPUSHCXPUSHDXMOVDX,303HMOVAL,0A0H;设A口为方式1输出(10100000)OUTDX,ALMOV
3、AL,0CH;INTEA(PC6)=0,禁止中断OUTDX,ALMOVCX,CONT;打印字节数送CXMOVBX,OFFSETBUFFER;取缓冲区首址PRN1:MOVAL,[BX];取一个数MOVDX,300HOUTDX,AL;从A口输出MOVDX,302HPRN2:INAL,DX;读C口TESTAL,80H;检测OBF(PC7)为1否?JZPRN2;为0,继续检测INCBX;为1,数据已输出,准备取下一个数LOOPPRN1POPDXPOPCXPOPBXPOPAXRETPRINTENDP问题:为什
4、么检测打印机是否收到数据不测PC6,而测PC7?3、用方式2实现双机通信(用中断实现,先自学)§3.2并行打印机接口3.2Centronics并行打印机接口表3-3Centronics标准的引脚定义引脚信号引脚信号123456789101112131415161718STROBE(选通信号)TATA0TATA1TATA2TATA3TATA4TATA5TATA6TATA7ACK(应答信号)BUSY(忙信号)PE(缺纸信号)SLCT(联机信号)AUTOFEEDXT(自动走纸)NC(不用)逻辑地机壳NC
5、(不用)192021222324252627282930313233343536信号地信号地信号地信号地信号地信号地信号地信号地信号地信号地信号地信号地INIT(初始化信号)ERROR(出错信号)地NC(不用)+5VSLCTIN3.2.3PC机并行打印口寄存器表3—4并行口的端口地址并行口数据端口状态端口控制端口LPTl378H379H37AHLPT2278H279H27AHCPU向打印机传送打印数据时,通过数据端口,对数据寄存器进行写操作。向打印机传送控制命令时,通过控制端口,对控制寄存器进行写操
6、作。CPU要获得打印机状态时,则通过状态端口,对状态寄存器进行读操作。控制寄存器各位的含义如图3-19。状态寄存器各位的含义如图3-203.2.4打印机接口编程⑴查询方式通过不断测试BUSY信号进行的,如果BUSY信号为低电平,打印机空闲,则发送欲打印的数据,同时发送选通信号STB,将数据送入打印机缓冲区。例:使用查询方式通过并行口1,打印一行字符“HELLO!”程序如下:DATASEGMENTBUFFERDB‘HELLO!’,0DH,0AHCOUNTEQU$-BUFFERDATAENDSCODES
7、EGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVBX,OFFSETBUFFERMOVCX,COUNTCHECK:MOVDX,379HINAL,DX;读状态字ANDAL,80HJZCHECK;BUSY=0,继续检测MOVAL,[BX]MOVDX,378H;BUSY=1,OUTDX,AL;则输出一个字符MOVAL,00001101BMOVDX,37AHOUTDX,ALMOVAL,00001100BOUTDX,AL;发选通脉冲INCBXLOOPC
8、HECK;循环输出下一个字符MOVAH,4CHINT21HCODEENDSENDSTART(2)中断方式(先自学,学完第5章再回来讨论它)§3.3软件加密狗软件狗:一种插在微机并行口上的一个软件保护装置。为了大型专用软件的加密而开发的。它包括主机检查程序和密钥(也称加密盒)两部分,体积很小且不带电源,主机检查程序是加密代码的一部分,加密盒是用来存放密码的。常见的软件狗加密盒外形,如两个D行25针连接器(DB-25M和DB-25F)倒接在一起,DB-25M插在并行口上,
此文档下载收益归作者所有