您当前的位置:五五电子网电子知识单元电路综合-其它用AT89C2051单片机实现32×16矩阵交换 正文
用AT89C2051单片机实现32×16矩阵交换

用AT89C2051单片机实现32×16矩阵交换

点击数:7102 次   录入时间:03-04 12:00:35   整理:http://www.55dianzi.com   综合-其它

  用单片机控制交换矩阵,不仅成本低廉,还可通过串口通信实现远程控制和预先切换等功能。本文介绍用AT89C205l单片机和8x16模拟开关阵列MT8816实现32路输入、16路输出的矩阵交换的原理和方法。

  一、8x16横拟开关阵列MT8816MT8816
    是8x16模拟开关矩阵,电路框图如图1所示。接通时,模拟开关的交叉点可提供各列(X)与各行(Y)之间的内连接。控制存储器是128位ROM,其各位均由地址输入(AYO~AY2、AX0~AX3)选定。数据被异步写入存储器后,相应的交叉点开关被接通或断开。通过在控制存储器中建立相应的图样,便能按任意方式连接X和Y输入/输出。

  二、32x16矩阵交换线路连接方法
    32x16交换矩阵原理框图如图2所示,将MT8816的列(X)作为输入;行(Y)作为输出。U1的8路输出连接在U3和U4的前8路(X″0~X″7和X″15~X″23)输入上;U2的8路输出连接在U3和U4的后8路(X″8~X″15和X″24~X″31)输入上。这样U1的输入经过交换可从U3或U4输出,U2的输入经过交换也可从U3或U4输出,实现了32路输入、16路输出的转换。

  三、用AT89C205l控制实现32x16矩阵交换
    1.AT89C2051控制端口分配
  (1)P3.0和P3.1作为串行通信口;
  (2)P3.2、P3.3与P3.4作为74LS245及MT8816片选译码器的输入;
  (3)P3.5作为MT8816的复位输出;
  (4)P3.7作为MT8816的选通(STROBE)信号;
  (5)P1.7口作为MT8816的DATA信号,P1.6~P1.0作为MT8816的地址。

  2.AT89C2051可寻址位的分配
  用内存单元2CH表示U1与U3和U4的连接关系:0表示与U3连接,1表示与U4连接;用内存单元2DH表示U2与U3和U4的连接关系:O表示与U4连接,1表示与U3连接;用内存单元2EH和2FH表示U3与U4输出通道的空闲状态,O表示空闲,l表示占用;用内存单元30H~4FH表示32路输入与一级通道连接状态,O表示空闲,1表示占用;用内存单元10H~1FH表示16路一级输出与二级输入通道连接状态,O表示无连接,l表示有连接;用内存单元5EH和5FH表示Ul和U2有无空闲输出通道,0表示有空闲,l表示无空闲。

  内存单元10H~1FH与2CH及2DH配合使用,就可以建立并记录经过一级交换后的输出通道与二级交换输入之间的交换链路。

  



www.55dianzi.com    3.控制过程
     详解下面以一级输入XO交换到二级输出Y15为例,说明具体的交换控制过程。

  (1)加电,单片机复位后,对中断入口和各工作方式进行设置。

  (2)P3.5作为MT8816的复位输出,先置“l”,复位MT8816.切断其所有开关(系统初始化时完成);延时一定时间后,再清零,将MT8816的RESET信号置低。

  (3)P3.2、P3.3与P3.4输出片选信号,经地址译码器74LS138译码后接U1(MT8816)的CS端。

  (4)P1口输出“10000000”,最高位“1”接MT8816的DATA输入端,其余7位接MT8816的AXO~AX3、AY0~AY2(见图1)。

  (5)P3,7输出MT8816的选通(STROBE)高电平信号,并延时。

  (6)内存记录:30H置“l”,表示输入第l路有连接;10H置“l”,表示16路一级输出中的第一路与二级输入通道有连接;2CH.0置“l”,表示从U1的Y″0输出后,连接在U4的X″16输入端(硬件也必须这样连)。

  (7)对P3.7清零,在其下降沿锁存数据。经过以上7步,初步建立了Ul的交换过程。

  (8)Ul片选清零,重复步骤2,片选U4。

  (9)重复步骤3,P1口输出“10000111”;重复步骤4。

  (10)内存记录:2FH.O置“1”,表示U4的第一路输出通道被占用。

  (11)重复步骤6,锁存数据,建立U4的X″16~Y15(二级输出中的第16路)的交换。

  这样,通过控制和记录,就建立了从U1的X。输入到U4的Y15输出,即一级输入Xo到二级输出Y15的交换。





本文关键字:暂无联系方式综合-其它单元电路 - 综合-其它

上一篇:便携式喊话器