
5个回答
展开全部
可以,但是不能同时。
作输出的原理很简单,你给它赋值0它就是0,你给它赋值1它就是1,端口上的电平随之改变
作输入的原理差不多,你给它1,这个时候按照输出来说它就是1,但是此时你可以通过电路把这个输出1的端口和地线(0电位)连接起来,此时它就变成了0,程序里去读它的值,能读出0。
作输出的原理很简单,你给它赋值0它就是0,你给它赋值1它就是1,端口上的电平随之改变
作输入的原理差不多,你给它1,这个时候按照输出来说它就是1,但是此时你可以通过电路把这个输出1的端口和地线(0电位)连接起来,此时它就变成了0,程序里去读它的值,能读出0。
展开全部
对于51单片机,输入输出口直接操作就可以
对于像PIC单片机或者AVR单片机等高级一点的单片机就需要设置输入输出的方向;
像avr单片机 DDRA(端口A)=0xF0;//高四位端口为输出,低四位端口为输入
对于像PIC单片机或者AVR单片机等高级一点的单片机就需要设置输入输出的方向;
像avr单片机 DDRA(端口A)=0xF0;//高四位端口为输出,低四位端口为输入
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
答案是肯定的,51单片机就是,你看说明书标I/O的 都是输入输出口,
实现很简单,还是比如51 P1^0=0; 输出0 P1^0=1; 输出1,int a; a=P1^0; 是0 是1就读出来了
实现很简单,还是比如51 P1^0=0; 输出0 P1^0=1; 输出1,int a; a=P1^0; 是0 是1就读出来了
追问
假如我把A口部分设为输出口 部分设为输入口 但我需要给其传递信号时 该如何传递 如果读取键值应该是十六位 但此时A口的输入口不足16位 我该如何赋予信号
追答
输出 A=A| 0x0f; 表示将A的低4位置一,A=A&0xf0;表示将 A的低四位置零,不足16位的话看你怎么接,将多余的与掉就可以了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
书上有例子啊
输出和检测
都可以实现.
输出和检测
都可以实现.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
51 P1^0=0; 输出0 P1^0=1; 输出1,int a; a=P1^0; 是0 是1就读出来了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询