8255A的开发利用
2012-03-17王根义
王根义
(陕西职业技术学院 陕西 西安 710100)
目前各行各业对计算机通信和控制应用的需求量越来越大,但计算机通信和控制的技术却远远跟不上,因而不能提高微机通信和控制的性能,使微机通信和控制中的方式出现了死板性和局限性。本论文就是面对这种情况,采用逻辑代数知识,数字电子技术知识研究如何连接微机和8255A芯片,以灵活地应用8255A芯片进行各种通信和控制,提高微机通信和控制的档次,并结合具体通信实例进行了编程,经过实验完全可行。本论文获得了用8255A芯片进行通信和控制的新技术,总结了PC机基于用8255A芯片的多种具体可行的通信和控制的方式。
图1 工作方式控制字Fig.1 Workingmode controlword
1 8255A芯片的端口
1.1 8255A的控制端口
8255A的控制端口保存8255A的工作方式控制字的格式。
8255A的工作方式控制字的格式及各位的含义如图1所示[1]:
1.2 8255A的PC口
8255A的PC口保存按位置位/复位控制字。
8255A的按位置位/复位控制字的格式及各位的含义如图 2所示[2]。
8255A的工作方式控制字和PC口按位置位/复位控制字的端口地址相同,状态字端口地址就是PC口的地址[3-4]。
图2 PC口按位置位/复位控制字Fig.2 PC export by position/reset controlword
1.3 8255A的数据口
8255A的数据口有3个:PA、PB和PC。PA和PB都工作在方式0时,它们作为3个数据口可以无条件输入/输出;如果PA工作在方式1或方式2,或PB工作在方式1时,PC就有几个引脚作为控制信号[5-6]。
2 8255A在通信和控制中的应用
8255A的A组可以工作在方式0、方式1或方式2,B组只能工作在方式0或方式。
2.1 方式0
当8255A的A口和B口工作在方式0时,C口也就工作在方式0。A口、B口、C口高4位和C口低4位可以由16种组合方式由 D4、D3、D1和 D0来确定[9]。
2.2 方式1
以A口为例,当A口作为数据口工作在方式1,输入时,PC3、PC4和PC5引脚信号固定作为A组的联络信号,分别作为INTRA、IBF和STE,PC口的PC4位作为INTEA信号,PC4位的数据与PC4引脚数据不同,对PC位置位/复位的地址和对PC4口引脚访问的地址不同;当A口作为数据口工作在方式1,输出时,PC3、PC6和PC7引脚信号固定作为A组的联络信号,分别作为INTRA、ACK和OBF,PC口的PC6位作为INTEA信号,PC4位的数据与PC4引脚数据不同;INTRA为中断请求信号,高电平有效[10-11]。
当外设接收了由CPU送给8255A的数据后 (或外设要向CPU传送数据或请求中断服务时),8255A就用INTR引脚的信号向CPU发出中断请求,请求CPU再输出后面的数据(或请求CPU取走数据)。INTR是当INTEA、ACK和OBF(或IBF和STE)都为1时才为 1。
2.3 方式2
这是一种通过8位数据线与外设进行双向通信的方式,它既能接收,也能发送数据。工作时可以用中断方式,也可以用查询方式与CPU联系。方式2只限于A组实用,它用A口的8位线作为数据数据线,用C口的5位线、PC3、PC4、PC5、PC6和PC7作为联络线,工作时输入或输出数据都锁存。当A组在方式2工作时,B组只能在方式0或方式1工作。
A组在方式 2工作时,PC3作为 INTRA、PC7OBF、PC 6作为ACK、PC4作为 STE、PC5作为IBF4、PC6位作为 INTE1、PC4位作为INTE2
2.4 8255A的灵活应用
8255A的3个端口PA、PB和PC的工作时可以作为数据口、控制口或地址口[3]。
8255A的3个端口被分为两个组,其工作方式由两组控制器对应控制。8255A的端口PA工作在方式1或方式2时,可以用端口PC的一些引脚自动配合;端口PB工作在方式1时,也可以用端口PC的一些引脚自动配合。当端口PA或端口PB工作在非方式0时,对端口PC的访问实质上只是个别位,另外端口PC的位与对应的引脚信号不一定相同[4-10]。
3 8255A的应用实验
PC机基于8255A的编码控制实例用PC内8255A的PB口(端口地址为61H),直接控制扬声器发出声音。
下列程序通过I/O指令时使8255A的PB口的第1位的数据交替为1和0,而PB口的第1位和扬声器的脉冲门相连,当第1位由0变为1,延迟一会儿又由1变为0时,脉冲门就先打开后关闭,产生了一个脉冲电流。这个脉冲电流被放大后送到扬声器,使之发出了声音。8255A的PB口的第0位作为定时器/计数器8253的计数器2的门控端 (当它是0时,关闭该振荡器,OUT2=1;当它是1时,打开该振荡器),现在不用该振荡器产生声音,所以把第0位置0。;声音程序
此实例经过上机实验,获得了预期的效果[6-8]。
4 结束语
文中创新点:对8255A的控制方式用新理论进行了解释,对8255A在通信与控制中的应用提出了新的灵活的方式。文中总结出的8255A在通信与控制中的应用方式是有关学者和工程技术人员进一步开发应用8255A的有力工具。
[1]周明德.微型计算机系统原理与应用[M].4版.北京:清华大学出版社,2004.
[2]刘红丽.微机接口实用技术教程[M].北京:电子工业出版社,2000.
[3]顾元刚.汇编语言与微机原理教程[M].北京:电子工业出版社,2003.
[4]吕勇.微机原理与接口技术教程与实训[M].南京:东南大学出版社,2008.
[5]刘敏,滕华.微机原理及应用课程教改浅谈[J].四川师范学院学报:自然科学版,2003(3):41-43.LIU Min,TENG Hua.Discussion of course reforming of microcomputer principle and application[J].Sichuan Teachers College Journal:Natural Science Edition,2003(3):41-43.
[6]王丰,王兴宝.微机原理与接口技术[M].北京:北京航空航天大学出版社,2005.
[7]刘乐善.微型计算机接口技术及应用[M].武汉:华中科技大学出版社,2000.
[8]王晓军.微机原理与接口技术[M].北京:北京邮电大学出版社,2001.
[9]汤晓安.“精讲多练”打造微机原理与接口技术精品课程[J].高等教育研究学报,2007,30(2):58-59.TANG Xiao-an.Constructing excellent courses of microcomputer principle and interface technology by “briefly explain and practise more” [J].Journal of Higher Education Research, 2007,30(2):58-59.
[10]王丰,王兴宝.微机原理与接口技术[M].北京:北京航空航天大学出版社,2005.