我的代码如下:
void sys_init()
{
WTST = 0x00;
EAXFR = 1; //扩展寄存器(XFR)访问使能
CKCON = 0; //提高访问XRAM速度
P2M0 |= 0x40; // P26推挽输出
P2M1 |= 0x00;
P3M0 |= 0x00;
P3M1 |= 0x00;
P8M0 |= 0xff; // P8推挽输出
P8M1 |= 0x00;
P32 = 0;
_nop_();
_nop_();
P32 = 1;
P3PU |= 0x04;
TMOD &= 0xF0; // 只设置T0,忽略T1
T0x12 = 1; // T0工作在1T模式
TL0 = T1MS;
TH0 = T1MS >> 8;
TR0 = 1;
ET0 = 1;
EA = 1;
}
void main()
{
sys_init();
// 初始化数据
//P_DISPLAYON();
P8OUT = 0xff;
while (1)
{
// 呼吸灯
if(U16TimingLed>500)
{
U16TimingLed = 1; // 重新开始
/**
if(P_RUNLED==OFF) P_RUNLED = ON;
else P_RUNLED = OFF;
/**/
P_RUNLED = ~P_RUNLED;
}
}
}
现象就是,运行呼吸灯闪烁正常,但P8口一直是低电平。 感谢大家了,问题已经解决。
措施是对端口进行全面配置;
具体原因未知
页:
1
[2]