请教:我下面的这个程序为什么不行啊,谢谢!

[复制链接]
2445|2
 楼主| 星星电灯 发表于 2007-5-26 11:59 | 显示全部楼层 |阅读模式
//-------------------------------------头文件--------------------------------------
#include <reg52.h>
#include <absacc.h>
#include <intrins.h>
//-------------------------------------头文件--------------------------------------

//-------------------------------------引脚定义------------------------------------
sbit   D2      =    P0^2;
sbit   P33      =    P3^3;
sbit   P23      =    P2^3;
//-------------------------------------引脚定义------------------------------------

void  DLY50MS( )   //延时50ms
{
    int i,j;
    for (i=0; i<230; i++)
        {
           for(j=0; j<198 ;j++)
              {
                    ;
              }
        }
}


//-------------------------------------主程序---------------------------------------
void main()
{
 int i;
 P0 = 0xff;
 P33 =! P33; 
  
 while(1)
 {
      DLY50MS();
      P33 =! P33;   //喂狗
     P23 = 0;
     for (i=0; i<50; i++)
      {
       _nop_();
      }
      D2 = 0;   //D2 输出 0 ,希望 57462 输出0 
      for (i=0; i<50; i++)
      {
       _nop_();
      }
   P23 = 1;
 }
}
//-------------------------------------主程序---------------------------------------


可是 57462 不能输出 0 
这是什么原因?
谢谢!
jxb163 发表于 2007-5-26 12:12 | 显示全部楼层

电路有2个问题哦

1:OC接地了吗?
2:P0要接上拉电阻的哦。
如果用仿真器打下就好了
 楼主| 星星电灯 发表于 2007-5-26 12:41 | 显示全部楼层

谢谢,OC 那里我的线路板画错了

您需要登录后才可以回帖 登录 | 注册

本版积分规则

74

主题

121

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部