做为输入或输出口使用时,单片机的数字I/O口可以直接接地或电源吗?
1个回答
展开全部
电压的大小(包括它能感知的最小电压作为高电平),电流的驱动能力例如51的p0口若作为io口使用就要加上拉电阻,不然的话高电平是高阻态的形式。还有就是io口默认是不是作为io口,有的io口有第二功能的。
如今的比较好的单片机的IO口是可以定芹闭义的,这和最原来的51有区别。当作为输入口时候是单片机接收IC的数据信息,或者是灌电流,这时候要考虑电流的搏首正大小是否在单片机的承受范围内;当作为输出口时候就是单片机向外发出数据,或者再产生拉电流,单片机的拉电流一般要比灌电流小,基本上就能点亮2,3个LED,功率很有限,所以一般时候必须用驱动芯片来驱动单片机的外围。
不可以同时使用,但可以在一个口上同时实现两种不同功能。举例:1S的工作周期,其中990ms做输出用来点亮指示灯,10ms做输入检测外围信号,灯灭10ms人眼是分辨不了的,这样就实现了一个口同时支持两种不同的功能。
任何可以接收开关信号的设备都可以驱动。大多数需要外加 驱动电路 ,如果外设驱动电流很小,也可基悔以直接驱动。通常单个的I/O口不宜超过10毫安,整个单片机电流不宜超过50毫安。当然还要看具体的型号。
单片机的IO口缺省时一般都是双向,既可以是输入又可以是输出,C语言中判断这个口是输入还是输出要看表达式的形式,比如: sbit key=P1^0; if(key==1).....这里是作为输入的,因为是读入,再判断值 key=1;这里是作为输出,因为直接给其赋值。
如今的比较好的单片机的IO口是可以定芹闭义的,这和最原来的51有区别。当作为输入口时候是单片机接收IC的数据信息,或者是灌电流,这时候要考虑电流的搏首正大小是否在单片机的承受范围内;当作为输出口时候就是单片机向外发出数据,或者再产生拉电流,单片机的拉电流一般要比灌电流小,基本上就能点亮2,3个LED,功率很有限,所以一般时候必须用驱动芯片来驱动单片机的外围。
不可以同时使用,但可以在一个口上同时实现两种不同功能。举例:1S的工作周期,其中990ms做输出用来点亮指示灯,10ms做输入检测外围信号,灯灭10ms人眼是分辨不了的,这样就实现了一个口同时支持两种不同的功能。
任何可以接收开关信号的设备都可以驱动。大多数需要外加 驱动电路 ,如果外设驱动电流很小,也可基悔以直接驱动。通常单个的I/O口不宜超过10毫安,整个单片机电流不宜超过50毫安。当然还要看具体的型号。
单片机的IO口缺省时一般都是双向,既可以是输入又可以是输出,C语言中判断这个口是输入还是输出要看表达式的形式,比如: sbit key=P1^0; if(key==1).....这里是作为输入的,因为是读入,再判断值 key=1;这里是作为输出,因为直接给其赋值。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询