STC12C5A60S2设置高阻态的问题,求高手解答
时间:10-02
整理:3721RD
点击:
#include <stc12c5a60s2.h>
sbit g=P1^1;
sbit led1=P2^1;
void delay(unsigned int t)
{
unsigned int i,j;
t=t*12;
for(i=0;i<t;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就直接亮了起来,这是什么情况
sbit g=P1^1;
sbit led1=P2^1;
void delay(unsigned int t)
{
unsigned int i,j;
t=t*12;
for(i=0;i<t;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就直接亮了起来,这是什么情况
你整成推挽输出了,高阻态设置如下:
P1M0=0x0f;
P1M1=0;
看资料要仔细。
l老哥好像是你错了
1
谢谢各位,我已经搞定了,我发现是因为STC12的速度太快了,在开始的时候要进行一下延时,读引脚的值才会正确
是我记错了,我记成STC12C5628AD的端口设置了。我曾经批评姚永平同志:将同系列单片机的同一功能设计成因型号不同而需要不同的设置,搞得大家不容易学习。现在的宏晶15系列要好许多。
我也是这样的问题 请问能再讲详细一点吗