#include
***it g=P1^1;
***it led1=P2^1;
void delay(unsigned int t)
{
unsigned int i,j;
t=t*12;
for(i=0;i
for(j=0;j<120;j++);
}
void main()
{
P1M1=0x0f;
P1M0=0x00;
while(g==1)
{
delay(10);
while(g);
led1=0;
}
while(1);
}
以上程序上电启动以后led1就直接亮了起来,这是什么情况
2015-6-14 23:56:44
你整成推挽输出了,高阻态设置如下:
P1M0=0x0f;
P1M1=0;
看资料要仔细。
你整成推挽输出了,高阻态设置如下:
P1M0=0x0f;
P1M1=0;
看资料要仔细。
举报
2015-6-15 10:24:31
谢谢各位,我已经搞定了,我发现是因为STC12的速度太快了,在开始的时候要进行一下延时,读引脚的值才会正确
谢谢各位,我已经搞定了,我发现是因为STC12的速度太快了,在开始的时候要进行一下延时,读引脚的值才会正确
举报
2015-6-15 20:43:22
是我记错了,我记成STC12C5628AD的端口设置了。我曾经批评姚永平同志:将同系列单片机的同一功能设计成因型号不同而需要不同的设置,搞得大家不容易学习。现在的宏晶15系列要好许多。
是我记错了,我记成STC12C5628AD的端口设置了。我曾经批评姚永平同志:将同系列单片机的同一功能设计成因型号不同而需要不同的设置,搞得大家不容易学习。现在的宏晶15系列要好许多。
举报