发新话题
打印

端口地址安排

端口地址安排


端口地址安排
# ]* I5 V6 [9 u% Z3 B9 V    I/0端口是I/O接口最重要的组成部分,I/O端口地址的安排是设计I/O接口之前要进行的。当为类似PC系列机的微机系统设计I/O接口时,所用的端口地址必须是系统本身所没有占用的。而系统对I/0端口地址的占用情况可查阅有关机器说明书,或借助于有关的程序(例如Windows的控制面板)。如果是自己用微处理器或单片机设计一个小的应用系统,则I/O端口地址就完全由自己安排。当然,也要注意微处理器或单片机对端口地址的一些限制或特殊要求。这里还以8086为例。 # [2 E4 V. F/ S5 Q. G
    8086支持的I/O地址空间为64 KB,其中0F8H~0FFH共8个地址为Intel公司所保留,用户不得使用。对8086来说,; p# v: @0 e: W

/ z9 Y' @2 r7 F( S! A* E9 e* h* A用来作为高8位数据传送的选通信号,A0兼作低8位数据传送的选通信号。所以,对于16位的字型端口,其端口地址应是偶地址。对于8位的字节型端口,若接高8位数据线,则端口地址应是奇地址;若接低8位数据线,则端口地址应是偶地址。如果一个I/0接口中配有多个字节型端口且这些端口都接到数据总线的高8位或者都接到数据总线的低8位,则它们的口地址应都是奇地址或者都是偶地址,各端口地址的最低位A0都为1或都为0。因此,AO不能参与该接口中端口的寻址,而用其他的地址位进行端口选择。例如,一个I/O接口中含有8个字节型I/O端口,它们的数据线都接到数据总线的高8位或都接到数据总线的低8位,则A0固定为1或固定为0,这时可用A3、A2、A1来进行该接口中的端口选择。 $ V6 B& {; y7 r- R$ {4 F/ Q9 `: _
    对于8088,对外的数据总线只有8位,所以没有上面的要求。



点击图标进入精品网摘收藏 欢迎大家加入网络收藏夹

TOP

发新话题