微机接口习题课件

上传人:无*** 文档编号:241326944 上传时间:2024-06-18 格式:PPT 页数:44 大小:338.04KB
返回 下载 相关 举报
微机接口习题课件_第1页
第1页 / 共44页
微机接口习题课件_第2页
第2页 / 共44页
微机接口习题课件_第3页
第3页 / 共44页
点击查看更多>>
资源描述
微机接口习题习题习题7.7参参看看图图7-57-5,编编程程实实现现以以下下功功能能:当当K0K0键键单单独独按按下下时时,发发光光二二极极管管L0L0L7L7将将依依次次点点亮亮(L0L0,L1L1,L2L2,L7L7),每每个个维维持持200ms200ms;当当K1K1键键单单独独按按下下时时,发发光光二二极极管管L0L0L7L7将将反反向向依依次次点点亮亮(L7L7,L6L6,L5L5,L0L0),每每个个也也维维持持200ms200ms;在在其其他他情情况况下下各各发发光光二二极极管管均均不不点点亮亮。假假定定有有延延时时200ms200ms的的子子程程序序DELAYDELAY可直接调用。可直接调用。习题习题7.7解答(解答(1)again:again:mov dx,8000hmov dx,8000hin al,dxin al,dxcmp al,0fehcmp al,0feh;D7;D7D0D011111110B 11111110B?jz next1jz next1;单独按下单独按下K0K0,转移到,转移到next1next1cmp al,0fdhcmp al,0fdh;D7;D7D0D011111101B 11111101B?jz next2jz next2;单独按下单独按下K1K1,转移到,转移到next2next2jmp againjmp again;其它情况不点亮其它情况不点亮习题习题7.7解答(解答(2)next1:next1:mov cx,8mov cx,8 mov al,1 mov al,1;从从K0K0开始开始next11:next11:out dx,alout dx,al;某个某个LEDLED点亮点亮 call delay call delay;延时延时200ms200ms shl al,1 shl al,1 ;rol al,1 ;rol al,1 loop next11 loop next11 jmp again jmp again习题习题7.7解答(解答(3)next2:mov cx,8next2:mov cx,8 mov al,80h mov al,80h;从从K7K7开始开始next21:out dx,alnext21:out dx,al;某个某个LEDLED点亮点亮 call delay call delay;延时延时200ms200ms shr al,1 shr al,1;ror al,1;ror al,1 loop next21 loop next21 jmp againjmp again习题习题7.8现现有有一一个个输输入入设设备备,其其数数据据端端口口地地址址为为FFE0HFFE0H,状状态态端端口口地地址址为为FFE2HFFE2H。当当状状态态标标志志D0D01 1时时,表表明明一一个个字字节节的的输输入入数数据据就就绪绪。请请编编写写利利用用查查询询方方式式进进行行数数据据传传送送的的程程序序段段,要要求求从从该该设设备备读读取取100100个个字字节节保保存到存到BUFFERBUFFER缓冲区。缓冲区。习题习题7.8解答解答 mov bx,offset buffer mov bx,offset buffer mov cx,100 mov cx,100again:mov dx,0ffe2hagain:mov dx,0ffe2hstatus:in al,dxstatus:in al,dx;查询一次查询一次 test al,01h test al,01h jz status jz status mov dx,0ffe0h mov dx,0ffe0h in al,dx in al,dx;输入一个字节输入一个字节 mov bx,al mov bx,al inc bx inc bx loop again loop again;循环,输入循环,输入100100个字节个字节习题习题7.9某某个个字字符符输输出出设设备备,其其数数据据端端口口和和状状态态端端口口的的地地址址均均为为80H80H。在在读读取取状状态态时时,当当标标志志位位D7D70 0时时,表表明明该该设设备备闲闲,可可以以接接收收一一个个字字符符。请请编编写写利利用用查查询询方方式式进进行行数数据据传传送送的的程程序序段段,要要求求将将存存放放于于缓缓冲冲区区ADDRADDR处处的的一一串串字字符(以符(以0 0为结束标志)输出给该设备。为结束标志)输出给该设备。习题习题7.9解答解答 mov bx,offset addr mov bx,offset addragain:cmp byte ptr bx,0again:cmp byte ptr bx,0 jz done jz donestatus:in al,80hstatus:in al,80h;查询查询 test al,80h test al,80h jnz status jnz status mov al,bx mov al,bx out 80h,al out 80h,al;输出一个字节输出一个字节 inc bx inc bx jmp again jmp again;循环循环习题习题8.6试试按按如如下下要要求求分分别别编编写写82538253的的初初始始化化程程序序,已已知知82538253的的计计数数器器0 02 2和和控控制制字字I/OI/O地地址址依依次次为为204H204H207H207H。使使计计数数器器1 1工工作作在在方方式式0 0,仅仅用用8 8位位二二进进制制计计数,计数初值为数,计数初值为128128。使使计计数数器器0 0工工作作在在方方式式1 1,按按BCDBCD码码计计数数,计计数值为数值为30003000。使计数器使计数器2 2工作在方式工作在方式2 2,计数值为,计数值为02F0H02F0H。习题习题8.6解答(解答(1)mov al,50h mov al,50h;01010000b01010000bmov dx,207hmov dx,207hout dx,alout dx,almov al,128mov al,128;80h80hmov dx,205hmov dx,205hout dx,alout dx,al习题习题8.6解答(解答(2)mov al,33h mov al,33h ;00110011b00110011bmov dx,207hmov dx,207hout dx,alout dx,almov ax,3000hmov ax,3000h;不是;不是30003000mov dx,204hmov dx,204hout dx,alout dx,almov al,ahmov al,ahout dx,alout dx,al习题习题8.6解答(解答(3)mov al,0b4h mov al,0b4h ;10110100b10110100bmov dx,207hmov dx,207hout dx,alout dx,almov al,02f0hmov al,02f0hmov dx,206hmov dx,206hout dx,alout dx,almov al,ahmov al,ahout dx,alout dx,al习题习题8.10用用82558255端端口口A A方方式式0 0与与打打印印机机接接口口示示例例中中,如如果果改改用用端端口口B B,其其他他不不变变,说说明明应应该该如如何何修修改接口电路和程序。改接口电路和程序。解答:解答:修修改改电电路路:将将端端口口B B的的PB0PB0PB7PB7接接打打印印机机的的数数据位据位DATA0DATA0DATA7DATA7即可。即可。修改程序:将输出数据端口改为修改程序:将输出数据端口改为FFFAHFFFAH即可。即可。习题习题8.11用用82558255端端口口A A方方式式1 1与与打打印印机机接接口口,如如果果改改用用端端口口B B,其其他他不不变变,说说明明如如何何修修改改接接口口电电路路和程序。和程序。解答解答 修修改改电电路路:PA0PA0PA7PA7改改为为PB0PB0PB7PB7;PC6PC6改改用用PC2PC2,PC7PC7改用改用PC1PC1,PC3PC3改用改用PC0PC0。习题习题8.11解答(解答(1)修改程序:修改程序:mov dx,0fffehmov dx,0fffehmov al,mov al,84h84hout dx,alout dx,almov al,mov al,04h04h;使使INTEBINTEB(PC2PC2)为)为0 0,禁止中断,禁止中断out dx,alout dx,almov cx,countermov cx,counter;打印字节数送打印字节数送CXCXmov bx,offset buffermov bx,offset buffer;取字符串首地址取字符串首地址call printscall prints;调用打印子程序调用打印子程序习题习题8.11解答(解答(2)printsprints procprocpush axpush ax;保护寄存器;保护寄存器push dxpush dxprint1:print1:mov al,bx mov al,bx ;取一个数据;取一个数据mov dx,mov dx,0fffah0fffahout dx,al out dx,al ;从端口;从端口B B输出输出mov dx,0fffchmov dx,0fffchprint2:print2:in al,dxin al,dxtest al,test al,02h02h ;检测(;检测(PC1PC1)为)为1 1否否?jz print2jz print2inc bxinc bxloop print1loop print1pop dxpop dxpop axpop axretretprintsprints endpendp习题习题8.12有有一一工工业业控控制制系系统统,有有四四个个控控制制点点,分分别别由由四四个个对对应应的的输输入入端端控控制制,现现用用82558255的的端端口口C C实实现现该该系系统统的的控控制制,如如本本题题图图形形。开开关关K0K0K3K3打打开开则则对对应应发发光光二二极极管管L0L0L3L3亮亮,表表示示系系统统该该控控制制点点运运行行正正常常;开开关关闭闭合合则则对对应应发发光光二二极极管管不不亮亮,说说明明该该控控制制点点出出现现故故障障。编编写写82558255的的初初始始化化程程序序和和这这段段控控制程序。制程序。4300+5VPC4PC5PC6PC7PC0PC1PC2PC32K4+5VK0K1K2K3L0L1L2L374LS048255 习题8.12附图 习题习题8.12解答解答;写入方式字写入方式字mov al,100001bmov al,100001b;81H81Hmov dx,mov dx,控制口地址控制口地址;可以假设为可以假设为0FFFEH0FFFEHout dx,alout dx,al;加入下一段更好,使加入下一段更好,使L0L0L3L3全亮全亮mov al,0fhmov al,0fhmov dx,mov dx,端口端口C C地址地址;可以假设为可以假设为0FFFCH0FFFCHout dx,alout dx,al;控制程序段控制程序段mov dx,mov dx,端口端口C C地址地址;可以假设为可以假设为0FFFCH0FFFCHin al,dxin al,dx;读入读入PC0PC0PC3PC3mov cl,4mov cl,4shl al,clshl al,cl;左移左移4 4位位out dx,alout dx,al;控制控制PC4PC4PC7PC7习题习题8.14串串行行异异步步通通信信发发送送8 8位位二二进进制制数数:采采用用起起止止式式通通信信协协议议,使使用用奇奇校校验验和和2 2个个停停止止位位。画画出出发发送送该该字字符符时时的的波波形形图图。若若用用1200 1200 bpsbps,则则每每秒秒最最多多能能发发送送多少个数据?多少个数据?解答解答 每每个个字字符符的的位位数数是是:1 1个个起起始始位位8 8个个数数据据位位1 1个个奇奇校校验验位位2 2个个停停止止位位1212位位,采采用用1200bps1200bps、即即每每秒秒12001200位位的的传传送送速速率率,则则每每秒秒最最多多能能发发送送120012120012100100个数据。个数据。习题习题8.20ADCADC的的转转换换结结束束信信号号起起什什么么作作用用,可可以以如如何何使使用用该该信信号号,以以便读取转换结果?便读取转换结果?当当A/DA/D转转换换结结束束,ADCADC输输出出一一个个转转换换结结束束信信号号,通通知知主主机机读读取取结结果果。有有多多种种使使用用A/DA/D转转换换结结束束信信号号的的方方法法,对对应应的的程程序序设计方法也不同。设计方法也不同。查查询询方方式式:把把结结束束信信号号作作为为状状态态信信号号经经三三态态缓缓冲冲器器送送到到主主机机系系统统数数据据总总线线的的某某一一位位上上。主主机机不不断断查查询询这这个个状状态态位位,发发现结束信号有效,便读取数据。现结束信号有效,便读取数据。中中断断方方式式:把把结结束束信信号号作作为为中中断断请请求求信信号号接接到到主主机机的的中中断断请请求求线线上上。ADCADC转转换换结结束束,主主动动向向微微处处理理器器申申请请中中断断。微微处处理理器响应中断后,在中断服务程序中读取数据。器响应中断后,在中断服务程序中读取数据。DMADMA传传送送方方式式:如如果果ADCADC速速度度足足够够快快,可可把把结结束束信信号号作作为为DMADMA请请求信号,采用求信号,采用DMADMA传送方式。传送方式。延延时时传传送送方方法法:不不使使用用结结束束信信号号,微微机机延延时时到到转转换换结结束束读读取取数据。数据。习题习题8.21某某控控制制接接口口电电路路如如本本题题图图形形。需需要要控控制制时时,8255A8255A的的PC7PC7输输出出一一个个正正脉脉冲冲信信号号STARTSTART启启动动A/DA/D转转换换;ADCADC转转换换结结束束在在提提供供一一个个低低脉脉冲冲结结束束信信号号EOCEOC的的同同时时送送出出数数字字量量。微微处处理理器器采采集集该该数数据据,进进行行处处理理,产产生生控控制制信信号号。现现已已存存在在一一个个处处理理子子程程序序ADPRCSADPRCS,其其入入口口参参数数是是在在ALAL寄寄存存器器存存入入待待处处理理的的数数字字量量,出出口口参参数数为为ALAL寄寄存存器器给给出出处处理理后后的的数数字字量量。假假定定82558255端端口口A A,B B,C C及及控控制制端端口口的的地地址址依依次次为为FFF8HFFF8HFFFBHFFFBH,要要求求82558255的的端端口口A A为为方方式式1 1输输入入、端端口口B B为为方方式式0 0输输出出。编编写写采采用用查查询询方方式式读读取取数数据据,实实现现上述功能的程序段。上述功能的程序段。习题习题8.21解答(解答(1);8255A;8255A初始化初始化mov al,1011000bmov al,1011000bmov dx,0fffbhmov dx,0fffbhout dx,alout dx,al;使使PC7PC70 0(STARTSTART为低)为低)mov al,00001110bmov al,00001110bmov dx,0fffbhmov dx,0fffbhout dx,alout dx,al;启动启动A/DA/D转换转换mov al,00001111bmov al,00001111bmov dx,0fffbhmov dx,0fffbhout dx,alout dx,al;使使PC7PC71 1(STARTSTART为高)为高)nopnopmov al,00001110bmov al,00001110bout dx,alout dx,al;使使PC7PC70 0(STARTSTART为低)为低)习题习题8.21解答(解答(2);查询是否转换结束查询是否转换结束mov dx,0fffahmov dx,0fffahagain:again:in alin al,dxdxtest al,test al,2020h h;PC5;PC50 0(转换未结束,继续检测)(转换未结束,继续检测)jz againjz again;PC5;PC51 1(转换结束)(转换结束)mov dx,0fff8hmov dx,0fff8h;输入数据输入数据in al,dxin al,dxcall adprcscall adprcs;处理数据处理数据mov dx,0fff9hmov dx,0fff9hout dx,alout dx,al;输出数据输出数据补补充充题题1已已知知82538253的的计计数数时时钟钟频频率率为为1MHZ1MHZ若若要要求求82538253的的计计数数通通道道2 2每每隔隔8ms8ms向向CPUCPU申申请请一一次次中中断断,则则如如何何对对82538253进进行行编编程程设设置置?82538253计计数数器器0 0、1 1、2 2和和控控制制端端口口地地址址依依次次为为:304H304H、305H305H、306H306H、307H307H。补补充充题题1解答解答根根据据题题意意要要求求产产生生周周期期为为8ms8ms的的连连续续脉脉冲冲,故故可可采采用用82538253的的方方式式2 2和和3 3。由由于于输输出出脉脉冲冲的的周周期期是是8ms8ms,故故其其频频率率是是1/8101/8103 3,所所以以计计数数初初值值是是10106 6(1/8101/8103 3)=8000=8000。控控制制字字是是101110B=B4H101110B=B4H,B6HB6H,BCHBCH,BEHBEH。补补充充题题2试试编编写写一一个个程程序序段段,要要求求在在计计数数操操作作进进行行过过程程中中读读取取计计数数器器2 2的的内内容容,并并把把读读取取的的数数值值装入装入AXAX寄存器,端口地址为寄存器,端口地址为304H307H304H307H。补补充充题题2解答解答 本本题题应应先先使使用用82538253的的锁锁存存命命令令将将计计数数器器2 2的的内内容容锁锁存起来,然后用读命令从锁存器中读取。存起来,然后用读命令从锁存器中读取。mov dxmov dx,307H307Hmov almov al,10000000B10000000Bout dxout dx,alalmov dxmov dx,306H306Hin alin al,dxdxmov blmov bl,alalin alin al,dxdxmov ahmov ah,alalmov almov al,blbl补补充充题题3分分别别对对8255A8255A的的控控制制端端口口写写入入80H80H和和08H08H,它它们的作用各是什么?们的作用各是什么?解解答答:对对8255A8255A的的控控制制端端口口写写入入80H80H是是方方式式控控制制字字,其其作作用用是是设设置置A A端端口口为为方方式式0 0输输出出,端端口口B B为方式为方式0 0输出,端口输出,端口C C为方式为方式0 0输出。输出。对对8255A8255A的的控控制制端端口口写写入入08H08H是是端端口口C C位位控控制字,其作用是设置制字,其作用是设置PC4PC4为为0 0补补充充题题4当当8255A8255A的的PC4PC4PC7PC7全全部部为为输输出出线线时时,请请问问此此时时能能否否确确定定A A端端口口的的工工作作方方式式是是什什么么?为为什么?什么?解解答答:当当8255A8255A的的PC4PC4PC7PC7全全部部为为输输出出线线时时,可可以以确确定定A A端端口口为为方方式式0 0。因因为为如如果果端端口口A A为为方方式式1 1或或2 2时时,PC4PC4PC7PC7中中将将有有部部分分或或全全部部被被A A端口征用。端口征用。补补充充题题5利利用用并并行行接接口口8255A8255A与与A/DA/D转转换换器器ADC0809ADC0809连连接接的的电电路路如如图图所所示示。当当主主机机需需要要某某个个模模拟拟输输入入通通道道的的数数据据时时,8255A8255A的的PC4PC4输输出出一一个个高高脉脉冲冲信信号号启启动动A/DA/D转转换换;同同时时从从PC5PC5PC7PC7输输出出该该模模拟拟通通道道的的编编码码。ADC0809ADC0809转转换换结结束束提提供供一一个个高高电电平平信信号号EOCEOC连连接接8255A8255A的的PC0PC0。由由于于ADC0809ADC0809的的输输出出允允许许信信号号OEOE一一直直接接高高电电平平有有效效,所所以以数数字字量量在在转转换换结结束束的的同同时时送送给给连连接接于于8255A8255A的的端端口口B B。假假定定8255A8255A端端口口A A、B B、C C及及控控制制端端口口的的地地址址依依次次为为FFF0HFFF0HFFF3HFFF3H。要要求求编编写写8255A8255A的的初初始始化化程程序序段段,编编写写依依次次启启动动8 8个个模模拟拟通通道道进进行行A/DA/D转转换换、采采用用查查询询方方式式读读取取数数据据的的程程序序段段,8 8个个数数字字量量数数据据存存放放在在数数据据段段bufferbuffer变变量量指指示的缓冲区。示的缓冲区。补补充充题题5图图VccD0D7OEEOCADDAADDBADDC8通道模拟输入(05V)500KHzCLOCKSTARTGNDVREF(+)VREF(-)ALE+5VIN0IN1IN2IN3IN4IN5IN6IN78255APB0PB7PC0PC4PC5PC6PC7ADC0809补补充充题题5解答(解答(1);数据段数据段bufferbufferdb 8 dup(0)db 8 dup(0);设立数据缓冲区设立数据缓冲区;8255A;8255A初始化程序段初始化程序段mov al,83Hmov al,83H;1001000011B0011B83H83H,93H93Hmov dx,0fff3hmov dx,0fff3hout dx,alout dx,almov al,08hmov al,08h;使启动信号为低电平;使启动信号为低电平out dx,alout dx,al补补充充题题5解答(解答(2);A/D;A/D转换程序段转换程序段mov bx,offset buffermov bx,offset buffer;BX;BX数数据据缓缓冲冲区区偏偏移移地址地址mov cx,8mov cx,8;CX;CX检测的数据个数检测的数据个数mov al,10hmov al,10h;从从IN0IN0开始转换开始转换mov dx,0fff2h mov dx,0fff2h start1:start1:out dx,alout dx,al;启启动动A/DA/D转转换换,使使启启动动信信号号为高电平为高电平push axpush axand al,0e0hand al,0e0hout out dx,aldx,al;使使启启动动信信号号为为低低电电平平,形形成成正正脉脉冲冲补补充充题题5解答(解答(3);循环查询是否转换结束循环查询是否转换结束start2:start2:in al,dxin al,dx;读入状态信息读入状态信息test al,01htest al,01h;D0;D0?,转换结束否?,转换结束否?jz start2jz start2;D0;D00 0,没没有有结结束束,则则继继续续查查询询dec dxdec dx;D0;D01 1,转换结束,转换结束in al,dxin al,dx;读取数据读取数据mov bx,almov bx,al;存入缓冲区存入缓冲区inc bxinc bxinc dxinc dx补补充充题题5解答(解答(4)pop axpop axpush cxpush cxmov cl,4mov cl,4shr al,clshr al,cladd al,2add al,2shl al,clshl al,clpop cxpop cxloop start1loop start1;转转向向下下一一个个模模拟拟通通道道进进行行检检测测;数据处理数据处理补补充充题题6设设IBM IBM PC/XTPC/XT机机第第一一个个串串行行口口某某次次通通信信采采用用7 7个个数数据据位位、1 1个个停停止止位位和和奇奇校校验验,采采用用12001200波波特特,只只允允许许发发送送保保持持寄寄存存器器空空中中断断,编编写写82508250的初始化程序。的初始化程序。补补充充题题6解答(解答(1)mov al,80h mov al,80hmov dx,3fbhmov dx,3fbhout dx,alout dx,al;写入通信线路控制寄存器,使写入通信线路控制寄存器,使DLABDLAB1 1mov ax,96mov ax,96;分频系数:分频系数:1.8432MHz1.8432MHz(1200(120016)16)969660H60Hmov dx,3f8hmov dx,3f8hout dx,alout dx,al;写入除数寄存器低写入除数寄存器低8 8位位mov al,ahmov al,ah inc dxinc dxout dx,alout dx,al;写入除数寄存器高写入除数寄存器高8 8位位 补补充充题题6解答(解答(2)mov al,00001010b mov al,00001010b;0AH0AHmov dx,3fbhmov dx,3fbh out dx,alout dx,al;写入通信线路控制寄存器写入通信线路控制寄存器 mov al,0bhmov al,0bh;允许允许INTRPTINTRPT产生请求产生请求mov dx,3fchmov dx,3fchoutout dx,aldx,almov al,2mov al,2 ;允许发送保持寄存器空中断允许发送保持寄存器空中断 mov dx,3f9hmov dx,3f9hout dx,al ;out dx,al ;写入中断允许寄存器(应保证此时写入中断允许寄存器(应保证此时DLABDLAB0 0)补补充充题题7PC/XTPC/XT机机的的异异步步通通信信接接口口电电路路中中通通过过82508250的的输输出出引引脚脚OUT2OUT2可可选选择择允允许许中中断断或或禁禁止止中中断断(如如下下图图所所示示)。PC/XTPC/XT机机的的串串行行口口1 1允允许许82508250的的发发送送保保持持寄寄存存器器空空中中断断,为为能能响响应应这这个个中中断断,PC/XTPC/XT机机系系统统从从8088 8088 CPUCPU、8259A8259A到到异异步步通通信信接接口口电电路路以以及及82508250内内部部应应开开放放4 4处处对对该该中中断断的的屏屏蔽蔽,请请分分别别说说明明这这4 4处处如如何何控制并写出对应的控制指令序列。控制并写出对应的控制指令序列。补补充充题题7 补补充充题题7解答(解答(1);CPU;CPUsti sti ;8259;8259允许允许IRQ3IRQ3中断中断in al,21hin al,21hand al,0f7hand al,0f7hout 21h,al out 21h,al 补补充充题题7解答(解答(2);异步通信接口电路,使异步通信接口电路,使OUT2OUT2输出低电平输出低电平mov al,0bh(08h)mov al,0bh(08h)mov dx,3fchmov dx,3fchout dx,al out dx,al ;8250;8250内内部部的的中中断断允允许许寄寄存存器器,使使发发送送保保持持寄寄存器空允许中断存器空允许中断moval,02hmoval,02hmov dx,3f9hmov dx,3f9hout dx,al out dx,al 谢谢
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!