stc51单片机c语言编程
void main(void){ while(1){ P0 = 1;delay(1000); P0 = 0;delay(1000);}} 我想让接po的八个led一亮一灭,我把这个程序写到单片机里只有po.0的灯才一亮一灭,其他的都一直亮怎么回事
你这里面程序写错了,P0=1是不对的,一般来说如果想让P0同步亮或灭,应该是设定P0^7-P0^0这八个独立的口同时为零或同时为一来使这八个口同时为低电平或高电平,来控制与其相连接的八个led灯同时亮或者灭,一般来说都位11111111或00000000,写成16进制形式就是0xff或0x00,完整的程序如下 #include #define uint unsigned int void delay(uint); void main() { while(1) { P0=0xff; delay(10); P0=0x00; delay(10); } } void delay(uint z) { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } 还有就是如果要各位显示的亮灭不一样,也是通过修改给P0口的值实现,还有就是如果只是一个口亮,那么要先位定义,如sbit led1=P0^0; 然后后面程序中是led1=1或0来让他亮或者灭。
你的程序错误,系统默认的第一盏,你应该每个都设置下
答:在使用变量作算术运算时,这些变量必须被赋予一定的值 int a,b;这条语句只是定义了a,b,为a,b开辟了内存空间,执行完这条语句后,变量的值只是一个随机值,...详情>>
答:这是很正常的开机上电自检!没必要紧张!详情>>
问:我的惠普打印机安装WINDOWS打印机软件时搜索了HP Deskjet D240...
答:HP官方驱动下载,只要填上你打印机的型号就能找到合适的驱动。详情>>