我是新手,关于IO口赋值,
单片机给IO口赋值的原则是什么?通常我们定义某IO口为0或1,或者定义P1(或者P2,P3)=0xfe,(0xfd,0xfc,等等),这种情况下我们都是要么给这个IO口一个高电平要么给一个低电平,即0或1;
我们还可以赋别的值给某个IO口吗?
下面的这个程序里主函数赋值的原理是什么?定义i为无符号字符型(0-255),那么我们给的是高电平还是低电平,这里面的道理是什么?小弟对“for(i=0;i<255;i++)”这一部分不是很理解,请教高手多多指点!!!谢谢!!!
#include <reg52.h>
void delay(void)
{
unsigned int i;
for(i=0;i<20000;i++);
}
void main(void)
{
unsigned char i;
for(i=0;i<255;i++)
{
P0=i;
delay();
}
}
而对于单个I/O的0或1来说就是高低电平的分辨而已,一般是0~0.25V为低电平,3~3.5V为高电平,而数字逻辑的0或1就是对内部可编程逻辑芯片就行控制,是内部的三极管或mos管变化来达到相应的高低电平
一周热门 更多>