为什么我用8155扩展89C51端口时不能控制8155的PA,PB,PC口。且8155接上后发烫。

D8155HC-2的端口定义:#definea8155_conXBYTE[0x7F00]#definea8155_aXBYTE[0x7F01]#definea8155_b... D8155HC-2的端口定义:
#define a8155_con XBYTE[0x7F00]
#define a8155_a XBYTE[0x7F01]
#define a8155_b XBYTE[0x7F02]
#define a8155_c XBYTE[0x7F03]
设定8155的端口输出:
a8155_con=0x03; //A,B口输出,C口输入
void test_io()
{
uint temp1=0x00;
uint temp2=0x00;
a8155_a=0xff;
delay_10us(1);
a8155_b=0xff;
delay_10us(1);
temp1=P1;
temp2=P2;

}

现在的问题是单跑89C51没问题(我做了测试,指示灯工作正常),但接上8155就是不能得到A,B口的高电平输出。
看了8155的资料,好像其读写像也对相关的控制引脚的时序有要求吧,是不是对其读写也要想I2C那样操作?但我看到网上相关的资料也多是直接对其进行读写的。还请高手指导。
另为什么接上8155后发烫呢,是不是型号不对(我用的为D8155HC-2),实测其所有的IO口都是低电平。
展开
 我来答
一灯
2011-06-02 · TA获得超过1167个赞
知道小有建树答主
回答量:2614
采纳率:0%
帮助的人:1284万
展开全部
①LD1 : RET 是返回到哪里去?
本程序,是个子程序,它是由一个主程序来调用的,RET就是返回到“调用指令”的下一条指令去。
③怎么把想要显示的数字放到BUFF0开始的缓冲区?
本程序的开始处,是把缓冲区的首地址,放到了R0。
本程序运行时,是从该地址取出待显示的数字,变换成段码,再送到显示器。
追问
8155的电源电源是5V,6脚(TIMEOUT)有4.2V,其他都是低电平(0V),另3楼的回答好像不是针对此问题的吧,我看不懂。
百度网友6584697
2011-06-01 · TA获得超过143个赞
知道小有建树答主
回答量:264
采纳率:0%
帮助的人:112万
展开全部
发热正常,发烫就不正常,可能坏了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
333niu
2011-06-01 · 超过11用户采纳过TA的回答
知道答主
回答量:106
采纳率:50%
帮助的人:23.1万
展开全部
测量8155芯片电压!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式