小弟正在学习AT89S52单片机,遇到#define PA XBYTE[0DCFF]//1101 1100 A0-P2.0,A1-P2.1,CS-P2.5,WR-P3.6,RD-P3.7#define PB XBYTE[0XDDFF]//1101 1101#define contr XBYTE[0X8FFF]对于单片机P0口、P2口扩展外部存储器和8255如何像单片机那样一一对应对各个口进行操作,很是迷茫,请高手指点迷津,或是介绍一些书籍让小弟自学,小弟拜谢中!!!
此帖出自
小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
首先感谢您的解答。
#define PA XBYTE[0DCFF] 就是把外部地址映射到自己定义的PA口,也就是在程序里用PA代表8255的A口。这个地址是怎么算出来的呢?就是这个了。//1101 1100 A0-P2.0,A1-P2.1,CS-P2.5,WR-P3.6,RD-P3.7——————这个我现在能理解。
我现在就是不懂,对8255的PA、PB、PC定义了外部存储地址后,各个口不知道怎么调用。比如:8255数据口接P0,A0-P2.0,A1-P2.1,CS-P2.5,WR-P3.6,RD-P3.7,我想用PA1、PB2、或是PC5,3个口共24个端,任意一个不知道怎么用,书上介绍8255分三种工作模式,还是看不懂
一周热门 更多>