关于单片机控制LED灯的疑问

chunch168   2007-11-5 14:21 楼主
程序如下:

#include

sbit L1=P1^0;
sbit K1=P3^1;
sbit K2=P3^2;

void main()
{
        while(1)
        {
                if(!K1)
                {
                        L1=0;
                }
                if(!K2)
                {
                        L1=1;
                }
        }
}

问题是:K1的初值是什么呢?

回复评论 (11)

if(!K1)
{
L1=0;
}


这段程序该如何理解?

k1 的初值是多少?
点赞  2007-11-5 14:29
sbit   L1=P1^0;  
sbit   K1=P3^1; 
sbit   K2=P3^2;  

从main函数来看:
L1输出引脚
K1输入引脚
K2输入引脚

检测K1低电平时L1输出低电平,检测K2低电平时L1输出高电平,在main函数中轮流检测
点赞  2007-11-6 15:47
K1的初始值是1
因为单片机上电后P0~P3端口默认是置高的
所以K1=1;
点赞  2007-11-6 21:11
51单片机IO口作为输入口时要先置1,并且51的IO口是上拉输入,不拉低的话就是高电平。
点赞  2007-11-6 23:22
对,是1
点赞  2007-11-6 23:31
本公司专业承接PCB印制线路板厂家。主要生产单,双以及多层线路板,盲孔,高频板等。最小孔径0.15mm,是小线距0.1mm. 表面处理:防氧化,镀金,镀锡.无铅工艺等等.质量保证,交货及时.最快24小时交货,月产量1.2万个平方米.本企业已经过ISO9000:2000/ISO14001质量休系/环保体系国际认证和UL认证.以及欧洲环保认证(ROHS认证).双赢互利是我们的一贯经营理念。我们期盼与业内朋友放眼世界、展望未来、携手并进、齐享高科技的结晶,共创辉煌! (24小时提供PCB相关技术支持!欢迎您与我们联系)
联系人:萧先生
深圳市奔强电路有限公司 www.szbq168.com
TEL:0755-29606209    13798334626
MSN:xhg26270001pcb@hotmail.com
SKYPE:LTDLFPCB      QQ:426617608
邮箱:BQPCB@VIP.163.COM
点赞  2007-11-12 11:29
谢谢大大们的回贴!该问题我已经清楚!
点赞  2007-12-10 14:40
恭喜
点赞  2007-12-10 16:49
恭喜恭喜
点赞  2008-9-11 12:34
51默认是置高电平的
点赞  2008-9-24 00:00
如果没有外部的电路把端口拉低的话,IO是高的,否则就应该以外部为参考
点赞  2008-9-24 18:28
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复