请注意,本文编写于 1253 天前,最后修改于 1253 天前,其中某些信息可能已经过时。
这不是一个复习提纲,仅仅只记录我复习了什么东西。明天考试,今天又不是很想看书了,但感觉闲着也不是个办法,所以来这里随便写写。算在进行一边复习吧!
这应该是比较重点的东西,由于最大模式没怎么讲所以主要看看最小模式。
主要芯片组成:
PS:值得注意的是微机内部使用的是16位的地址传输,对于io,只有八位的宽度,所以后续编程需要分次进行传输。
这个芯片很熟悉,只不过我们平时将它称为38译码器。这个译码器在整个微机原理中都起到了很重要的作用,主要应用为地址的译码。但是对于微机这门课中,我们通常使用38译码器选择一个地址片,如Y0=30H~37H。
如果没猜错这张图应该是斜的,但是问题不大。众所周知8088与8086CPU是一个16位的系统,所以一共有16根地址数据线。在这个例子里,A1A2A3为片内地址,可以划分8个不同的具体接口。对于其余线我们可以根据相应的0与1将其分配到对应的G1(高电平有效)或G2A非G2B非(低电平有效)的接口上,完成地址的编码。注意:38译码器的必备信号,i/o信号WR信号RD信号。对于A3A4A5为3位的38译码器片内信号,用来划分8个大地址块。
复习了这么久,感觉这个芯片应该不会整出什么花活。控制字应该会给,并且我猜应该不会不会根据工作方式进行出题,毕竟那些方式感觉都没有0方式好用(简单)。这里就列出几个我觉得需要注意的几点:
对于七段LED的编码,这里要注意的是共阴极还是共阳极接法,这对于LED编程是有影响的。共阴极时1为熄灭,0为点亮。共阳极正好相反,注意是否有启动位(微机实验当时的led灯A0为整体启动位)
这个是比较难懂的一个芯片(对于我来讲),毕竟要记得东西太多了。首先抛开控制字不谈,我们的8253有两种输方式,分别是BCD码和二进制码。对一两种计数方式的最大初值都为0(比FF和65535还大1)。
其次就是8253的内部结构,这个部分可能会在画图的时候顺带考到,尽量还是稍微的细致一点。除了三个通道以外(分别由GATE,CLK,OUT构成),还有读写信号RD,WR。数据线D0~D7,两跟片内地址A0,A1(用来选通道),译码的来的CS片选信号。
对于端口的选择,与8255很相似,00是0口,01是1口,10是2口,11是控制寄存器。这里要注意的是编程时,每个控制字对应一个端口。
然后就是我们的4种重要的工作方式:
PS:有一个小hit,计数值得读取,控制字D4D5位可以设置锁存。接口选择计数器接口即可(分两次读取十六位数据)。
对于中断,我们要了解中断向量,中断类型号,中断向量表,中断向量地址等概念。
没啥好bb的,位移2位(*4)得到中断向量地址,将后面的东西倒着放进去就好了。
对于芯片的应用,最多可能就到中断芯片的级联。这个芯片最恶心的地方就是有4个控制字(ICW1~ICW4),其中ICW3与ICW4不是必要的参数,只需要在级联的时候会用到。对于ICW4只需要注意一位就是D4位(全嵌套和特殊全嵌套位)。一般情况下,主片使用特殊全嵌套,从片使用全嵌套。
除此之外还有一位命令控制OCW,,主要就是设置屏蔽和复位屏蔽的作用。总的来说,对于8259我们在初始化的时候需要四个控制字与一个标志字。
首先要明确一点就是,这个接口芯片有两种工作方式,同步与异步的方式,这两种的初始化方式是不一样的,一定要注意!
由于IO的问题,8251芯片是所有芯片种在完成依次OUT操作后需要延迟等待的芯片(编程时注意延时),其次每次初始化需要先对控制口写三个0进行清空,一个40H完成初始化。
同步方式:两次在控制口送入16H,在送入命令字完成控制初始化。
异步方式:对Rxrdy与TxRDY进行监控,先检查是否有效,在检查是否出错,然后将数据存入或发出,循环。
波特率与波特系数:接受波特率*波特系数=接收时钟频率
数模转换芯片。总体上不算太难,主要要注意的一点就是这个破芯片是分两种工作方式的,单缓冲与双缓冲。由于0832没有控制字,所以两种方法主要是通过接线的方式进行设置的。
EOC控制输入输出
噶油,顺便水个博客。争取微机及格!!( •̀ ω •́ )y
全部评论 (暂无评论)
info 还没有任何评论,你来说两句呐!