求一单片机程序。AT89C51的,要求一直检测A口如果输入高电平,B口输出高电平,

A口输入低电平B口也输出低电平,C口只有在B口输出由高电平变为输出低电平之后输出一段时间的高电平,也就是延时一段时间后变为低电平。... A口输入低电平B口也输出低电平,C口只有在B口输出由高电平变为输出低电平之后输出一段时间的高电平,也就是延时一段时间后变为低电平。 展开
 我来答
百度网友9edd711
2014-05-30 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:128
采纳率:100%
帮助的人:84万
展开全部
sbit A=P1^0;
sbit B=P0^0;
sbit C=P0^1;

if(A == 0)/培基/如果A输入低神渣

B = 0; //则B输出低

else

B = 1;

if(B == 0)

{
C = 1;

delay; //延时游中悄,

C = 0;
}
追问
能写全么
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
11kxmx
2014-05-30 · TA获得超过1.4万个赞
知道大有可为答主
回答量:1.2万
采纳率:70%
帮助的人:2431万
展开全部
应该是很简单的,但89C51哪有A口和B口?用什么语言?延时多长时间?
更多追问追答
追问
AB口自己随便设,比如P1.0为A口,P0.0为B口,P0.1为C口。延时也可以随便比如30分钟这我自己会改。用汇编或者C语言都可以
追答
#include
#define uchar unsigned char
#define uint unsigned int
void Delay1ms(uint i) //1ms延时程序
{
uint j;
for(;i>0;i--)
{
for(j=0;j<125;j++)
{;}
}
}

void main(void)
{
P0=0XFF;
while(1)
{
if(P0^0==0) P0^1=0;
else P0^1=1;
if(P0^1==0)
{
P0^2=1;
Delay1ms(100) ;
P0^2=0;
}
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式