《第5章-并行接口技术-8255A课件》由会员分享,可在线阅读,更多相关《第5章-并行接口技术-8255A课件(82页珍藏版)》请在金锄头文库上搜索。
1、 上章作业:P772题、13题、14题 补充作业:在8086系统中接有一片8259A,8259A的8位端口地址分别为60H、62H,画出接口电路图。1第5章 并行接口技术 5.1 概述并行通信是把一个数据的各个数位用并行通信是把一个数据的各个数位用几条线同时进行传输,具有传输速几条线同时进行传输,具有传输速度快,信息率高的特点。但它比串度快,信息率高的特点。但它比串行通信所用的电缆多,因此,并行行通信所用的电缆多,因此,并行通信常用在传输距离较短通信常用在传输距离较短(几米至几几米至几十米十米)和数据传输率较高的场合。和数据传输率较高的场合。2实现并行通信的接口就是并行接口。实现并行通信的接口
2、就是并行接口。一个并行接口可设计为只作为输出接口;一个并行接口可设计为只作为输出接口;还可设计为只作为输入接口。还可设计为只作为输入接口。另外,还可以设计成既作为输入又作为输另外,还可以设计成既作为输入又作为输出的接口。它可以用两种方法实现,一出的接口。它可以用两种方法实现,一种是利用同一个接口中的两个通路,一种是利用同一个接口中的两个通路,一个作输入通路,一个作输出通路;另一个作输入通路,一个作输出通路;另一种是用一个双向通路,既作为输入又作种是用一个双向通路,既作为输入又作为输出。为输出。3典型的并行接口和外部设备连接如图所示。图中的典型的并行接口和外部设备连接如图所示。图中的并行接口用一
3、个通道和输入设备相连,用另一个通道并行接口用一个通道和输入设备相连,用另一个通道和输出设备相连,每个通道中除数据线外均配有一定和输出设备相连,每个通道中除数据线外均配有一定的控制线和状态线。的控制线和状态线。7/20/20244n从图从图1中看到,并行接口中应该有一个控中看到,并行接口中应该有一个控制寄存器用来接收制寄存器用来接收CPU对它的控制命令,对它的控制命令,有一个状态寄存器提供各种状态位供有一个状态寄存器提供各种状态位供CPU查询。为了实现输入和输出,并行查询。为了实现输入和输出,并行接口中还必定有相应的输入缓冲寄存器接口中还必定有相应的输入缓冲寄存器和输出缓冲寄存器。和输出缓冲寄存
4、器。5硬件:硬件:对外设的要求:应提供设备状态信息 对接口的要求:需要提供状态口RD输入输入设备设备锁存器三态缓冲器(8位)选通选通三态缓冲器(1位)D+5VCPQ&8086及其及其配置配置地址译码&M/IO数据口数据口状态口状态口DB查询输入接口电路原理图查询输入接口电路原理图Di状态状态信息信息R触发器数据数据ABC查询传送方式查询传送方式61. 并行接口在输入过程中的作用n外部设备首先将数据送给接口,并使状态线“数据输入准备好”成为高电平。接口把数据接收到数据输入缓冲寄存器的同时,使“数据输入回答”线变为高电平,作为对外部设备的响应。外部设备接到此信号,便撤除数据和“数据输入准备好”信号
5、。数据到达接口中后,接口会在状态寄存器中设置“输入准备好”状态位,以便CPU对其进行查询,接口也可以在此时向CPU发一个中断请求。7n所以,CPU既可以用软件查询方式,也可以用中断方式来设法读取接口中的数据。CPU从并行接口中读取数据后,接口会自动清除状态寄存器中的“输入准备好”状态位,并且使数据总线处于高阻状态。此后,又可以开始下一个输入过程。8n2. 并行接口在输出过程中的作用每当外部设备从接口取走一个数据之后,接口就会将状态寄存器中的“输出准备好”状态位置“1”,以表示CPU当前可以往接口中输出数据,这个状态位可供CPU进行查询。此时,接口也可以向CPU发一个中断请求。所以,CPU既可以
6、用软件查询方式,也可以用中断方式设法往接口中输出一个数据。9n当CPU输出的数据到达接口的输出缓冲寄存器中后,接口会自动清除“输出准备好”状态位,并且将数据送往外部设备,同时,接口往外部设备发送一个“驱动信号”来启动外部设备接收数据。外部设备被启动后,开始接收数据,并往接口发一个“数据输出回答”信号。接口收到此信号,便将状态寄存器中的“输出准备好”状态位重新置“1”,以便CPU输出下一个数据。105.2 可编程并行接口芯片8255A8255A是Intel86系列微处理机的配套并行接口芯片,它可为86系列CPU与外部设备之间提供并行输入/输出的通道。由于它是可编程的,可以通过软件来设置芯片的工作
7、方式,所以,用8255A连接外部设备时,通常不用再附加外部电路,使用时很方便。115.2.1、8255A芯片内部结构12131. 并行输入/输出端口A,B,C8255A芯片内部包含3个8位端口,这三个端口均可作为独立的8位端口使用,实现数据的输入/输出。必要时端口C可分成两个4位端口,分别与端口A和端口B配合工作,通常将端口A和端口B定义为输入/输出的数据端口,而端口C可作为状态或控制信息的传送端口。142. A组和B组控制部件端口A与端口C的高4位(PC7PC4)构成A组,由A组控制部件实现控制功能,端口B与端口C的低4位(PC3PC0)构成B组,由B组控制部件实现控制功能。它们各有一个控制
8、单元,可接收来自读/写控制部件的命令和CPU通过数据总线(D7D0)送来的控制字,并根据它们来定义各个端口的操作方式。153. 数据总线缓冲存储器n这是一个三态双向8位数据缓冲存储器,它是8255A与8086/8088CPU之间的数据接口。CPU执行输出指令时,可将控制字或数据通过数据总线缓冲存储器传送给8255A。CPU执行输入指令时,8255A可将状态信息或数据通过总线缓冲存储器向CPU输入。因此它是CPU与8255A之间交换信息的必经之路。164. 读/写控制部件这是8255A内部完成读/写控制功能的部件,它能接收CPU的控制命令,并根据它们向片内各功能部件发出操作命令。有关引脚如下:(
9、1) CS片选信号。由CPU输入,通常由端口的高位地址码译码得到。(2) RD,WR读、写控制信号。由CPU发出,表示CPU本次操作的类型。17(3) RESET复位信号。由CPU输入。RESET有效时,清除8255A中所有控制字寄存器内容,并将各端口置成输入方式。(4) A1和A0端口选择信号。当A1A0 00,选择端口A;当A1A0 01,选择端口B;当A1A0 10,选择端口C;当A1A0 11,选择控制字寄存器。18195.2.3 8255A芯片的控制字1.定义工作方式控制字定义工作方式控制字2. 通过方式定义控制字可以设置通过方式定义控制字可以设置8255各端口的工作方式。各端口的工
10、作方式。如图所示:如图所示:202 置位/复位控制字只对端口C有效,格式如图所示。格式如图所示,当将端口格式如图所示,当将端口A定义为方式定义为方式1或方式或方式2或将端口或将端口B定义为方式定义为方式1时,要求使用端口时,要求使用端口C的的某些位作控制用,这时需要使用一个专门的置某些位作控制用,这时需要使用一个专门的置位位/复位控制字来对控制端口复位控制字来对控制端口C的各位分别进行的各位分别进行置位置位/复位操作。复位操作。21225.2.4 工作方式8255A各端口共有3种工作方式: 方式0基本输入/输出方式; 方式1选通输入/输出方式; 方式2双向传送方式。端口A有3种工作方式(方式0
11、,方式1和方式2),端口B只可处于两种方式(方式0和方式1),端口C常被分成高4位和低4位两部分,可分别用来传送数据或控制信息。23(1)工作方式0基本输入/输出方式这是8255A中各端口的基本输入/输出方式。它只完成简单的并行输入/输出操作,CPU可从指定端口输入信息,也可向指定端口输出信息。如果3个端口均处于工作方式0,则可由工作方式控制字定义16种工作方式的组合,这种情况下,工作方式控制字的具体格式应如下图所示。2425(2)工作方式1 选通输入/输出方式选通输入方式数据输入操作要在选通信号控制下完成。需要使用的控制信号如下:n STB选通信号。由外部输入,低电平有效。STB有效时,将外
12、部输入的数据锁存到所选端口的输入锁存器中。对A组来说,指定端口C的第4位(PC4)用来接收向端口A输入的STB信号;对B组来说,指定端口C的第2位(PC2)用来接收向端口B输入的STB信号。26 IBF输入缓冲存储器满信号。向外部输出,高电平有效。IBF有效时,表示由输入设备输入的数据已占用该端口的输入锁存器,它实际上是对STB信号的回答信号,待CPU执行IN指令时,RD有效,将输入数据读入CPU,其后沿把IBF置“0”,表示输入缓冲存储器已空,外部设备可继续输入后续数据。对A组来说,指定端口C的第5位(PC5)作为从端口A输出的IBF信号;对B组来说,指定端口的第一位(PC1)作为从端口B输
13、出的IBF信号。27 INTR中断请求信号。向CPU输出,高电平有效。对A组来说,指定端口C的第3位(PC3)作为从端口A输出的INTR信号;对B组来说,指定端口的第0位(PC0)作为从端口B输出的INTR信号。在A组和B组控制电路中分别设置一个内部中断触发器INTEA和INTEB,前者由STBA(PC4)控制置位,后者由STBB(PC2)控制置位。28n当任一组中的STB有效,则把IBF置“1”,表示当前输入缓冲存储器已满,并由STB后沿置“1”各组的INTE,于是输出INTR有效,向CPU发出中断请求信号。待CPU响应这一中断请求,可在中断服务程序中安排IN指令读取数据后,将IBF置“0”
14、,外部设备才可继续输入后续数据。n8255A中的端口A和端口B均可工作于方式1完成输入操作功能,这种情况下工作方式控制字的具体格式如图所示。297/20/2024307/20/202431从图中可看出,当端口A和端口B同时被定义为工作方式1完成输入操作时,端口C的PC5PC0被用作控制信号,只有PC7和PC6位可完成数据输入或输出操作,因此这实际上可构成两种组合状态:它们是端口A,B输入,PC7,PC6输入和端口A,B输入,PC7,PC6输出。32工作方式1选通输出方式方式1也可完成输出操作,使用的控制信号有: OBF输出缓冲存储器满信号。向外部输出,低电平有效。OBF有效时,表示CPU已将数
15、据写入该端口正等待输出。当CPU执行OUT指令,WR有效时,表示将数据锁存到数据输出缓冲存储器,由WR的上升沿将OBF置为有效。对于A组,系统规定端口C的第7位(PC7)用作从端口A输出的OBF信号,对于B组,规定端口C的第1位(PC1)用作从端口B输出的OBF信号。33 ACK 外部应答信号。由外部输入,低电平有效。ACK有效,表示外部设备已收到由8255A输出的八位数据,它实际上是对OBF信号的回答信号。对于A组,指定端口C的第6位(PC6)用来接收向端口A输入的ACK信号;对于B组,指定端口C的第2位(PC2)用来接收向端口B输入的ACK信号。34 INTR中断请求信号。向CPU输出,高
16、电平有效。对于端口A,内部中断触发器INTEA由PC6(ACKA)置位,对于端口B,INTEB由PC2(ACKB)置位。当ACK有效时,OBF被复位为高电平,并将相应端口的INTE置“1”,于是INTR输出高电平,向CPU发出输出中断请求,待CPU响应该中断请求,可在中断服务程序中安排OUT指令继续输出后续字节。对于A组,指定端口C的第3位(PC3)作为由端口A发出的INTR信号;对于B组,指定端口C的第0位(PC0)作为由端口B发出的INTR信号。35如果将8255A中的端口A和端口B均定义为工作方式1的输出方式,则工作方式控制字的具体格式如下图所示。36经这样定义的端口状态如下图所示。图图
17、 107/20/202437n从图中可看出,当端口A和端口B同时被定义为工作方式1完成输出操作时,端口C的PC6,7和PC3PC0被用作控制信号,只有PC4,5两位可完成数据输入或输出操作。因此可构成两种组合状态: 端口A,B输出,PC4,5输入; 端口A,B输出,PC4,5输出。38图图 11采用工作方式采用工作方式1,也可将端口,也可将端口A和端口和端口B分别定义为分别定义为输入和输出端口。将端口输入和输出端口。将端口A定义为方式定义为方式1输入,将端输入,将端口口B定义为方式定义为方式1输出,其方式控制字格式如图所示。输出,其方式控制字格式如图所示。7/20/202439经定义的端口状态
18、如图所示。图图 127/20/202440(3) 工作方式2带选通的双向传送方式。n8255A中只允许端口A处于工作方式2,可用来在CPU与外设之间实现双向并行通信。其有关的控制信号由端口C提供,并可向CPU发出中断请求信号。n当端口A工作于方式2时,允许端口B工作方式0或方式1完成输入/输出功能,其方式控制字格式如下图所示。41图图 127/20/202442端口C的使用:在方式0,其为基本的I/O端口;若有端口工作于其他方式,则读取端口C为状态数据。431、计算机系统有一并行接口芯片、计算机系统有一并行接口芯片8255A,初始化时将,初始化时将8255A的的A口设置成方式口设置成方式1的输
19、出,这时的输出,这时8255A与外设与外设的联络信号为:的联络信号为: A) IBF、STB B) RDY、STB C) OBF、ACKD) INTR、ACK2、有一并行接口芯片、有一并行接口芯片8255A,初始化时将其设置成方式,初始化时将其设置成方式1的输出,其中断输出引脚连接至的输出,其中断输出引脚连接至8259的的IR2,这时,这时系统对该中断源的屏蔽分系统对该中断源的屏蔽分 级。级。 A) 1 B) 2 C) 3D) 444MOVAL,90H ;初始化初始化OUT63H,ALLP:IN AL,60HXORAL,0FFHOUT 61H,ALJMPLP【例例1】从从A口输入开关状态,利用
20、口输入开关状态,利用LED显示:显示: 开关断开,相应开关断开,相应LED点亮;开关闭合,相应点亮;开关闭合,相应LED点亮。点亮。 8255端口地址:端口地址:60H63HLED0LED1LED745【例例2 2】在在PC/XTPC/XT系统中接有一个打印机,系统中接有一个打印机,8255A8255A作为输出接作为输出接口,工作在选通方式,试编程将内存某缓冲区口,工作在选通方式,试编程将内存某缓冲区BUFBUF内的内的200H200H个字节的个字节的ASCIIASCII码送打印机打印,其接口电路如图。码送打印机打印,其接口电路如图。设设8255A8255A的的端口地址:端口地址:A A口、口
21、、 B B口、口、 C C口、控制字寄存器:口、控制字寄存器: 210H210H,211H211H,212H212H,213H213H PA7PA0 PC6(ACKA) PC0 PC7 PC3D7D0ACKSTB8255A打印机打印机8259AIRQ2OBF46 主程序主程序CLIMOV AL,0A0H ;8255A方式控制字方式控制字MOV DX,213HOUT DX,AL MOV AL,0DH ;置位;置位PC6 ,使,使A口中断允许口中断允许OUT DX,AL PUSH DS ;保存;保存DS MOV AX,SEG PRINT_INT;中断服务程序中断服务程序PRINT段址送段址送DS
22、MOV DS,AX LEA DX, PRINT_INT ;PRINT偏址送偏址送DX MOV AL,0AH ;中断类型码送;中断类型码送AL MOV AH,25H ;功能号送;功能号送AH INT 21H ;调用;调用DOS设中断向量功能设中断向量功能 IN AL,21H ;读中断屏蔽寄存器;读中断屏蔽寄存器IMR内容内容 AND AL,0FBHOUT 21H,AL ;开放;开放IR2中断中断 POP DS ;恢复恢复DS 47MOV DX,213HMOV AL,01HOUTDX,ALMOV SI,OFFSET BUFMOV AL,SIINCSIMOV BUFPT,SIMOV CX,NUM-1
23、MOV DX,210HOUTDX,ALSTIMOV DX,213HMOV AL,00OUTDX,ALINCALNOPOUTDX,ALNEXT:HLT ;等待中断;等待中断 LOOPNEXTINAL,21HORAL04HOUT21H,AL48中断处理子程序中断处理子程序PRINT_INTPROC MOVSI,BUFPTMOVAL,SIINCBUFPTMOVDX,210HOUTDX,ALMOVDX,213HMOVAL,00HOUTDX,ALNOPINCALOUTDX,ALP_END: MOVAL,20HOUT20H,AL IRETPRINT ENDP49【例例3】将开关的通断状态用七段将开关的通断
24、状态用七段LED数码管显示。数码管显示。 例如,例如,K8闭合,其余合,其余3个断开,个断开,则七段七段LED显示器显示器 显示数字显示数字7。505152工作原理分析工作原理分析同相驱动器 A口工作于输入方式,PA3PA0与4个开关相连,B口工作于输出方式,PB7PB0经同相驱动器与七段LED显示器相连(B口输出的是TTL电平信号,要使LED显示器发光,必须加上驱动电路,才能提供足够大的电流)。 开关合上后,PA接地,输入“0”电平;开关断开时,PA经一电阻接5V,输入“1”电平。CPU从8255读入A口的状态,根据转换码表查表转换为相应的七段码,输出相应信号到B口。PB端经同相驱动器接七段
25、LED显示器,其电平为“0”时相应的LED灭;电平为“1”时相应的LED亮。53; 0 1 2 3 4 5 6 7 8TABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH 9 A b C d E F DB 6FH,77H,7CH,39H,5EH,79H,71H PORTA EQU 0F0H ;A口地址口地址 PORTB EQU 0F2H ;B口地址口地址 PORTCTL EQU 0F6H ;控制寄存器地址;控制寄存器地址 MOV AL,10010000BOUT PORTCTL,AL ;写方式控制字;写方式控制字 IN AL,PORTA ;读;读A口开关状态口
26、开关状态AND AL,0FH ; 高高4位清位清0LEA BX,TABLE XLAT ;利用换码表转换为七段码值;利用换码表转换为七段码值OUT PORTB,AL ;从;从B口输出,驱动口输出,驱动LED发光发光JMP LPLP:54【例例4】 键盘及显示55OUTBIT equ 08002h ; 位控制口OUTSEG equ 08004h ; 段控制口IN_KEY equ 08001h ; 键盘读入口data segmentLEDBuf db 6 dup(?) ; 显示缓冲Num db 1 dup(?) ; 显示的数据DelayT db 1 dup(?)LEDMAP: ; 八段管显示码 db
27、 3fh, 06h, 5bh, 4fh, 66h, 6dh, 7dh, 07h db 7fh, 6fh, 77h, 7ch, 39h, 5eh, 79h, 71hKeyTable: ; 键码定义 db 16h, 15h, 14h, 0ffh,13h, 12h, 11h, 10h db 0dh, 0ch, 0bh, 0ah,0eh, 03h, 06h, 09h db 0fh, 02h, 05h, 08h,00h, 01h, 04h, 07hdata ends56code segment assume cs:code, ds:dataDelay proc near push ax ; 延时子程序
28、push cx mov al, 0 mov cx,ax loop $ pop cx pop ax retDelay endp57DisplayLED proc near mov bx, offset LEDBuf mov cl, 6 ; 共6个八段管 mov ah, 00100000b ; 从左边开始显示DLoop: mov dx, OUTBIT mov al, 0 out dx,al ; 关所有八段管 mov al, bx mov dx, OUTSEG out dx,al mov dx, OUTBIT mov al, ah out dx, al ; 显示一位八段管 push ax mov a
29、h, 1 call Delay pop ax shr ah, 1 inc bx dec cl jnz DLoop mov dx, OUTSEG mov al, 0 out dx,al ; 关所有八段管 retDisplayLED endp58TestKey proc near mov dx, OUTBIT mov al, 0 out dx, al ; 输出线置为0 mov dx, IN_KEY in al, dx ; 读入键状态 not al and al, 0fh ; 高四位不用 retTestKey endp59GetKey proc near mov ch, 00100000b mov
30、cl, 6KLoop: mov dx, OUTBIT mov al, ch ; 找出键所在列 not al out dx, al shr ch, 1 mov dx, IN_KEY in al, dx not al and al, 0fh jne Goon_ ; 该列有键入 dec cl jnz KLoop mov cl, 0ffh ; 没有键按下, 返回 0ffh jmp Exit1Goon_: dec cl shl cl, 2 ; 键值 = 列 X 4 + 行 mov ch, 4LoopC: test al, 1 jnz Exit1 shr al, 1 inc cl dec ch jnz L
31、oopC60Exit1: mov dx, OUTBIT mov al, 0 out dx, al mov ch, 0 mov bx, offset KeyTable add bx, cx mov al, bx ; 取出键码 mov bl, alWaitRelease: mov dx, OUTBIT mov al, 0 out dx, al ; 等键释放 mov ah, 10 call Delay call TestKey jne WaitRelease mov al, bl retGetKey endp61Start proc near mov ax, data mov ds, ax mov
32、LEDBuf, 0ffh ; 显示 8.8.8.8. mov LEDBuf+1, 0ffh mov LEDBuf+2, 0ffh mov LEDBuf+3, 0ffh mov LEDBuf+4, 0 mov LEDBuf+5, 0MLoop: call DisplayLED ; 显示 call TestKey ; 有键入? jz MLoop ; 无键入, 继续显示 call GetKey ; 读入键码 and al, 0fh ; 显示键码 mov ah, 0 mov bx, offset LEDMAP add bx, ax mov al, bx mov LEDBuf+5, al jmp MLo
33、opStart endpcode ends end start62【例例5】 8255A与A/D芯片配合构成数据采集系统。A/D转换器的原理框图以及主要工作时序如下图所示。编写程序完成8255A的初始化以及启动A/D变换的程序。设8255A的端口地址范围为300303H。BUSYBUSY63PA7PA0 PC7 PC0 PC4 PC3D7D08255AA/D转换器转换器64MOV AL,0B0H ;8255A方式控制字方式控制字MOV DX,303HOUT DX,AL MOV DX,303HMOV AL,0FHOUTDX,ALDECALOUTDX,ALMOV DX,302HAGAIN:INAL
34、,DX;读取;读取C口状态口状态ANDAL,10H JZAGAIN;否,继续查询;否,继续查询MOV DX,300HINAL,DX ;读取;读取A口数据口数据658253内部结构框图内部结构框图668253外部引脚外部引脚67计数器内部结构计数器内部结构68计数器工作过程计数器工作过程69计数器工作过程计数器工作过程70计数器工作过程计数器工作过程71计数器工作过程计数器工作过程72计数器工作过程计数器工作过程73计数器工作过程计数器工作过程748253控制字格式控制字格式75方式方式0时序波形时序波形CLKWRGATEOUTn=44 3 210INTRn=5543 2n=33 2 1 0IN
35、TRGATE=1 正常计数正常计数计数过程计数过程GATE=0 暂停计数暂停计数计数过程重写新的初值计数过程重写新的初值76方式方式1时序波形时序波形CLKWRGATEOUTn=33 2103 2 3 2n=4GATE上升沿触发上升沿触发 正常计数正常计数重触发,单脉冲宽度增加重触发,单脉冲宽度增加计数过程重写新的初值计数过程重写新的初值 单脉冲单脉冲宽度宽度 3tC1 0 单脉冲单脉冲 宽度宽度 5tC4 3 2 单脉冲单脉冲 77方式方式2时序波形时序波形CLKWRGATEOUTn=44 3 2 1 04GATE=1 正常计数正常计数 周期性的负脉冲信号周期性的负脉冲信号计数过程计数过程G
36、ATE=0 暂停计数暂停计数计数过程计数过程重写新的初值重写新的初值4 3 2 1 034重复周期重复周期 ntc10n=54 3 2 1 05 478方式方式3时序波形时序波形CLKWRGATEOUTn=44 2 004n为偶数为偶数 GATE=1 正常计数正常计数4204n=524022 04 2 0方波信号方波信号42 04 2 04 2 0n为奇数为奇数 GATE=1 正常计数正常计数近似方波信号近似方波信号2n2n+12n2n-179方式方式3时序波形时序波形CLKWRGATEOUTn=44 2 004420424022 2024计数过程计数过程GATE=0 暂停计数暂停计数2280方式方式4时序波形时序波形CLKWRGATEOUTn=44 3 2 1 0n=44 34 3n=33 2 1 0GATE=1 正常计数正常计数计数过程计数过程GATE=0 暂停计数暂停计数计数过程重写新的初值计数过程重写新的初值软件触发(第软件触发(第1次)次)软件触发(第软件触发(第2次)次)2选通脉冲选通脉冲81方式方式5时序波形时序波形CLKWRGATEOUTn=33 210n=53 2 1 0GATE上升沿触发上升沿触发 正常计数正常计数重触发重触发计数过程计数过程重写新的初值重写新的初值5 4 3硬件触发(第硬件触发(第1次)次)硬件触发(第硬件触发(第2次)次)82