当前位置:首页 > 我的书籍 > 正文内容

IO口的碎碎念。(说实在的不是太多)

Peirre2年前 (2023-02-27)我的书籍263

1447226909213824.jpg

8259的中断控制寄存器口地址:

20h,中断命令寄存器

外部中断结束后,该口可发送中断结束信号,指令为:

        mov al,20h

        out   20h,al

21h,中断屏敝寄存器

这寄存器口8位对应外中断8个源,为0中断。

8255可编程外围接口

多配置方法,常用IO口为 60h,61h,62h, PA,PB,PC 键盘扬声器配置开关,这个接口要看电路芯片图纸。常用这个中断芯片是通用的接法。

63h,是命令寄存器,通过63h输入。系统在启动时间向63h口发送99h,设置PA,PC,为输入(一般电脑,有时会不同)

  7   6   5   4   3   2   1   0
+---+---+---+---+---+---+---+---+
|   |   |   |   |   |   |   |   |
+---+---+---+---+---+---+---+---+
  |   |   |   |   |   |   |   |___\   定时器中断
  |   |   |   |   |   |   |_______\   键盘中断
  |   |   |   |   |   |___________\   保留
  |   |   |   |   |_______________\   异步通信口2
  |   |   |   |___________________\   异步通信口1
  |   |   |_______________________\   硬盘中断
  |   |___________________________\   软盘中断
  |_______________________________\   并行打印机
 
中断屏蔽寄存器位定义
  7   6   5   4   3   2   1   0
+---+---+---+---+---+---+---+---+
|   |   |   |   |   |   |   |   |
+---+---+---+---+---+---+---+---+
 ---+--- ---+--- -----+-----  |___\   0*二进制: 1*二-十进制
    |       |         |___________\   工作方式:000*方式0 011*方式3
    |       |                                  001*方式1 100*方式4
    |       |                                  010*方式2 101*方式5
    |       |_____________________\   读写方式: 00*锁定当前计数值
    |_____\   编程通信号: 00*编程通道0          01*计数器低八位(LSB)有效
                          01*编程通道1          10*计数器高八痊(MSB)有效
                          10*编程通道2          11*先读写LSB,后读写MSB
8253命令寄存器定义
  7   6   5   4   3   2   1   0                          
+---+---+---+---+---+---+---+---+
|   |   |   |   |   |   |   |   |
+---+---+---+---+---+---+---+---+ 
  |  ---+---  |   |   |   |   |______\      PC口低端: 1=输入,  0=输出
  |     |     |   |   |   |__________\      PB口:     1*输入,  0*输出
  |     |     |   |   |______________\      方式:     0*方式0(基本方式), 1*方式1
  |     |     |   |__________________\      PC高端:   1*输入,  0*输出
  |     |     |______________________\      PA口:     1*输入,  0*输出
  |     |____________________________\      方式选择: 00*方式0(基本方式)
  |                                                  01*方式1
  |                                                  10*方式2
  |__________________________________\      置方式:   1*有效,  0*无效
8255命令寄存器(63H 口)位定义

          7   6   5   4   3   2   1   0
        +---+---+---+---+---+---+---+---+
     +- |   |   |   |   |   |   |   |   |     若PB口位7=0,则PA口的值为键盘扫描码
     |  +---+---+---+---+---+---+---+---+     
PA口-|    7   6   5   4   3   2   1   0
(60h)|  +---+---+---+---+---+---+---+---+
     +- |   |   |   |   |   |   |   |   |     若PB口位7=1,则第0-7位分别表示开关1
        +---+---+---+---+---+---+---+---+     的各位:SW1-1,SW1-2,...,SW1-8.
         ---+--- ---+--- ---+---  |   |_________\      为0表示无磁盘驱动器
            |       |       |     |_____________\      保留
            |       |       |___________________\      系统板上的RAM容量
            |       |___________________________\      显示器类型
            |___________________________________\      磁盘驱动器个数
 8255PA口位定义
 
          7   6   5   4   3   2   1   0
        +---+---+---+---+---+---+---+---+
        |   |   |   |   |   |   |   |   |  
PB口    +---+---+---+---+---+---+---+---+
(61h)     |   |   |   |   |   |   |   |
          |   |   |   |   |   |   |   |_________\   1*定时器门2
          |   |   |   |   |   |   |_____________\   1*扬声器数据
          |   |   |   |   |   |_________________\   1*读SW2-1~SW2-4, 
          |   |   |   |   |_____________________\   SW2-4       SW2-8
          |   |   |   |_________________________\   盒带数据输入
          |   |   |_____________________________\   定时器2输出
          |   |_________________________________\   1*扩充槽检查错
          |_____________________________________\   1*奇偶错            
8255PB口位定义   
            
 
          7   6   5   4   3   2   1   0
        +---+---+---+---+---+---+---+---+
        |   |   |   |   |   |   |   |   |  
PC口    +---+---+---+---+---+---+---+---+     若PB口位2*1 若PB口位2*0
(62h)     |   |   |   |   |   |   |   |
          |   |   |   |   |   |   |   |_________\   SW2-1       SW2-5
          |   |   |   |   |   |   |_____________\   SW2-2       SW2-6
          |   |   |   |   |   |_________________\   SW2-3       SW2-7   备用
          |   |   |   |   |_____________________\   SW2-4       SW2-8
          |   |   |   |_________________________\   盒带数据输入
          |   |   |_____________________________\   定时器2输出
          |   |_________________________________\   1*扩充槽检查错
          |_____________________________________\   1*奇偶错            
8255PC口位定义


6845 CRT 寄存器口地址说明表                                             数据寄存器(3D5h)说明表

+------+-----------------+                +----------+--------+------------------+
| 地址 | 寄存器名称      |                |寄存器地址|寄存器号| 功            能 |
+------+-----------------+                +----------+--------+------------------+
| 3D4h | 索引寄存器      |                |   0-3    | R0-R3  |水平特性参数寄存器|
+------+-----------------+                +----------+--------+------------------+
| 3D5h | 数据寄存器      |                |   4-9    | R4-R9  |垂直特性参数寄存器|
+------+-----------------+                +----------+--------+------------------+
| 3D8h | 方式控制寄存器  |                |    A     |   R10  |光标起始行寄存器  |
+------+-----------------+                +----------+--------+------------------+
| 3D9h | 颜色选择寄存器  |                |    B     |   R11  |光标终止行寄存器  |
+------+-----------------+                +----------+--------+------------------+
| 3DAh | 状态寄存器      |                |    C     |   R12  |起始地址(高)寄存器|
+------+-----------------+                +----------+--------+------------------+
                                          |    D     |   R13  |起始地址(低)寄存器|
                                          +----------+--------+------------------+
    7   6   5   4   3   2   1   0
  +---+---+---+---+---+---+---+---+
  | X | X |   |   |   |   |   |   |  
  +---+---+---+---+---+---+---+---+     若PB口位2*1 若PB口位2*0
   ______   |   |   |   |   |   |
      |     |   |   |   |   |   |_________\   1*80X25字符方式,   0=40X25字符方式
      v     |   |   |   |   |_____________\   1*320X200图象方式, 0=选择字符方式
    未使用  |   |   |   |_________________\   1*选择黑白方式,    0=选择彩色方式
            |   |   |_____________________\   1*开放视频信号,    0=改变方式时应关闭
            |   |                               视频信号.
            |   |_________________________\   1*选择640X200黑白图像方式
            |_____________________________\   1*字符背景闪烁
方式选择寄存器3D8h

    7   6   5   4   3   2   1   0      7   6   5   4   3   2   1   0
  +---+---+---+---+---+---+---+---+  +---+---+---+---+---+---+---+---+
  | X | X | X | BL| I | R | G | B |  | X | X | X | X |   |   |   |   |  
  +---+---+---+---+---+---+---+---+  +---+---+---+---+---+---+---+---+ 
   -----+-----  |   ------+-------      -----+-------  |   |   |   |_____\   允许显示
        |       |         |                  |         |   |   |_________\   光笔触发器置位 
        v       |         v                  v         |   |_____________\   光笔开关接通
       未用     V    屏幕边缘颜色           未用         |_________________\   垂直同步
         字符属性的背景颜色强度位    
选色寄存器3D9h                                     状态寄存器3DAh

屏幕截图 2023-02-26 113306.png

分享给朋友:

相关文章

Intel 64位 和 IA-32位 增补软件开发手册相关图表。(大部分)

Intel 64位 和 IA-32位 增补软件开发手册相关图表。(大部分)

看了相关Intel软件开发手册,感觉到有些图非常有用,现在留图备查,有什么问题可以留言。有很多,并不是十分清楚。这些图和CPU的寄存器,内存,和系统的数据结构相关,还有一些硬件,也就是CPU为中心的计...

CPU 汇编指令中和标志位有影响的指令图片。

CPU 汇编指令中和标志位有影响的指令图片。

CPU的汇编指令和CPU的标志位影响关系图,自用备查。SSE3部分FPU部分SSE4部分SSE2部分SSE部分浮点异常表常规指令指令符后缀与标志位影响关系...

我的私人字库网络版

我的私人字库网络版

用FontCreator 9.0和PhotoShop CS6软件制作了一个私人用的字库。可以显示绝大部分简体。是我的手写体,有些没有优化。娱乐和设计使用。链接: https://pan.baidu.c...

看《游戏设计的236个技巧》后感。

看《游戏设计的236个技巧》后感。

今年5月左右买了一本《游戏设计的236个技巧》然后在家通读,一点点的啃。兴趣的不兴趣的都啃光。游戏设计技巧,这本书写得还不错,不过有很多例子,不是举一反三,而是从一到三。它涵盖了一些耐玩的游戏。比如游...

重翻旧书,温故MFC模块VC windows 编程。

重翻旧书,温故MFC模块VC windows 编程。

MFC模组是微软提供的源码级别模块,开发应用程序得心上手,开发速度很快。很多人初学程序语言,不知道如何上手编第一个应用。也许应用太容易,看不上。太难自己又完不成。实际上,程序只是解决问题的一个工具,也...

活动-书籍【linux 应用集合与基本知识】的出版,评论超过500人出纸质书。

因为linux目前发展很快。我认为很多小学生也应该跟进Linux的步伐。再说了,很多书籍知识点比较过时,而且技术文章不十分严格。写给小学生看很有难度,因为要把涩味的技术文章写得生动,易读要下很多功夫。...