蓝樱爱吧 关注:219贴子:27,000

勿插楼,会造成不便

只看楼主收藏回复

查询输入
SCAN: IN AL,状态端口地址
TEST AL,80H
jz scan
in AL,数据端口地址
查询输出
SCAN: IN AL,状态端口地址
TEST AL,01H
JNZ SCAN
MOV AL,某数
OUT 数据端口地址,AL


IP属地:江苏1楼2012-09-04 12:13回复
    8254控制字
    D7D6 D5D4 D3D2D1 D0
    计数器选择 读/写方式选择 工作方式选择 数制选择
    01,10,11 00,01,10,11 0-5 0二进制1BCD
    初始化
    MOV AL,控制字
    OUT 43H,AL
    MOV AL,40H
    OUT 42H,AL


    IP属地:江苏2楼2012-09-04 12:28
    收起回复
      初始化子程序:直接对端口操作的方式对串口
      I8250
      PROC
      MOV DX,3FBH
      MOV AL,80H
      OUT DX,AL
      MOV DX,3F9H
      MOV AL,0
      OUT DX,AL
      MOV DX,3F8H
      MOV AL,60H(波特率)
      OUT DX,AL
      MOV DX,3FBH
      MOV AL,03H(帧格式)
      OUT DX,AL
      MOV DX,3F9H
      MOV AL,0(查询方式)
      OUT DX,AL
      MOV DX,3FCH
      MOV AL,10H(工作方式)
      OUT DX,AL
      RET
      I8250 ENDP


      IP属地:江苏3楼2012-09-04 12:37
      回复
        查询方式发送
        TSCAN:MOV DX,3FDH
        IN AL,DX
        TEST AL,20H
        JZ TSCAN
        MOV AL,BX
        SEND:MOV DX,3F8H
        OUT DX,AL
        MOV SI,0


        IP属地:江苏4楼2012-09-04 12:43
        回复
          查询方式接收
          RSCAN
          MOV DX,3FDH
          IN AL,DX
          TEST AL,01H
          JNZ RECEIVE
          DEC SI
          JNZ RSCAN
          JMO DISPERR
          RECEIVE:
          MOV DX,3F8H
          IN AL,DX
          AND AL,7FH


          IP属地:江苏5楼2012-09-04 12:46
          回复
            8255A
            SERVICE PROC
            PUSH AX
            PUSH DS
            MOV AX,DATA
            MOV DS,AX
            MOV DX,218H
            IN AL,DX
            AND AL,07H
            MOV BX,OFFSET TAB
            XLAT TAB
            MOV DX,219H
            OUT DX,AL
            MOV AL,20H
            OUT 20H,AL
            POP DS
            POP AX
            IRET


            IP属地:江苏6楼2012-09-04 12:57
            回复
              I8255A PROC
              MOV DX,21BH
              MOV AL,0B0H
              OUT DX,AL
              MOV AL,09H
              OUT DX,AL


              IP属地:江苏7楼2012-09-04 12:58
              回复
                无条件传输:外设已准备好,输入数据已准备好,输出设备空闲,CPU直接用IN或OUT智力完成与接口之间的数据传送;
                查询方式:查询输入数据是否准备好,查询输出设备是否空闲。确认外设具备了输人/出条件,用IN或OUT智力完成与接口之间的数据传送;
                中断控制:外设未做好数据传送的准备,CPU可执行与传送数据无关的其他指令;当外设做好准备后,向CPU发出中断请求;CPU响应中断请求,暂停正在运行的程序,转入中断服务程序,完全数据传送;中断服务结束后,自动返回原来运行的程序继续执行;
                直接存储器存取:用硬件实现在外设与内存直接直接进行数据交换。


                IP属地:江苏8楼2012-09-04 13:51
                回复
                  8254事故CPU外围支持电路之一,提供动态存储器刷新定时,系统时钟中断及发声系统音调控制等功能。


                  IP属地:江苏9楼2012-09-04 13:57
                  回复
                    CPU暂停执行现行程序,转而处理随机事件,处理完毕后再返回被中断程序,这一全过程被称为中断。
                    中断系统应具备的基本功能
                    1对硬件设备的中断请求,具有屏蔽和开发功能
                    2实现“中断判优”,能够优先响应高级别的中断
                    3实现中断嵌套,较高级别的中断源能够中断较低级别的中断服务程序
                    4系统响应中断后,能自动转入中断处理,处理结束能自动返回
                    中断向量:
                    实地址模式下,中断服务程序的入口地址就是中断向量
                    服务程序所在代码段的段基址+服务程序入口的偏移地址


                    IP属地:江苏10楼2012-09-04 14:08
                    回复
                      8259中断过程:
                      1由中断请求寄存器寄存加到引脚IR0-IR7上的中断请求
                      2在中断屏蔽寄存器的管理下,没有被屏蔽的中断请求被送到优先权电路判优
                      3选中当前级别最高的中断源,然后从引脚INT向CPU发出中断请求信号
                      4CPU满足一定条件后,向8259A发出2个中断响应信号
                      58259A从引脚INTA收到第一个信号后,立即使中断服务寄存器中与被选中的中断源对应的那一位置1,同时把中断请求寄存器中的相应位清零
                      6从引脚收到第二个信号,9258A把选中中断源类型码n,通过数据线送往CPU7在实地址模式下,CPU从4*n-*n+3单元取出该中断源的中断向量,从而引导CPU执行该中断源的服务程序


                      IP属地:江苏11楼2012-09-04 14:16
                      回复
                        可屏蔽中断的条件:
                        INTR引脚有中断请求,NMI引脚没有中断请求,系统没有DMA请求
                        CPU当前指令执行完毕
                        CPU处于开中断状态,标志寄存器的中断允许标志置1
                        非屏蔽中断的条件:
                        NMI引脚有中断请求,系统没有DMA请求
                        CPU当前指令执行完毕
                        硬件中断和软件中断的区别
                        1中断的引发方式不同
                        2CPU获取中断类型码的方式不同
                        3CPU响应的条件不同
                        4中断处理程序的结束方式不同


                        IP属地:江苏12楼2012-09-04 14:21
                        回复
                          串行通信类型:异步,同步
                          串行数据传输方式:单工,半双工,全双工
                          单工:只允许数据按照一个固定的方向传送。
                          半双工:收发双方均具备接收和发送数据的能力,
                          全双工:收发双方可以同时进行数据传送。
                          串行异步通信协议:
                          1帧格式:起始位,数据位,奇偶校验位,停止位
                          2通信速率(收发双方的通信速率必须一致)
                          3接口标准
                          TXD输出 发送数据
                          RXD输入 接收数据
                          RTS输出 请求发送
                          CTS输入 允许发送
                          DSR输入 数据设备准备好
                          DTR输出 数据终端准备好


                          IP属地:江苏13楼2012-09-04 14:30
                          回复
                            8255A的工作方式
                            0:无条件输入/出方式
                            1:选通型输入/出方式
                            2:数据传送方式
                            A端口可以在0,1,2
                            B端口可以在0.1
                            C端口可以在0
                            8255A控制字
                            D7 D6D5 D4 D3 D2 D1 D0
                            1 方式 A1入2出 方式 B1入2出 C1入2出


                            IP属地:江苏14楼2012-09-04 14:39
                            回复
                              →_→我下午拿到了七十分的答案。。。你早说啊


                              IP属地:广东来自Android客户端15楼2012-09-04 18:31
                              收起回复