找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1377|回复: 1
收起左侧

请教下各位大神,为什么这个程序不执行

[复制链接]
ID:87791 发表于 2016-4-18 11:34 | 显示全部楼层 |阅读模式
/*水泵定时系统*/
#include "reg52.h"
#include "intrins.h"
#define uchar unsigned char
#define uint  unsigned int
uchar a;
uchar temp;
//-----------------------------------------------
#define FOSC 12000000L
void delay_fen(void)
//延时一分钟
{
  unsigned char j;
  unsigned int i;
  for(i=0;i<60000;i++)
   {
     for(j=0;j<200;j++);
     for(j=0;j<102;j++);
   }
}

main()
{
while(1)
  {
    P1=temp=0xfe;
    delay_fen();
    for(a=0;a<6,a++;)
//P10至P15端口依次输出低电平,时间一分钟
    {
      temp<<=1;
      temp|=0x01;
      P1=temp;
      delay_fen();
    }
  }
}
万用表检测,一直是P10端口为0,别的端口都是高电平不变,是程序没有朝下执行吗?
回复

使用道具 举报

ID:87791 发表于 2016-4-18 13:02 | 显示全部楼层
代码更改,已解决
#include<reg52.h>
/*------------------------------------------------
延时函数
------------------------------------------------*/
delay_fen(unsigned int ms)
{
  unsigned int a;
  unsigned char j;
  for(a=0;a<ms;a++)
   {
     for(j=0;j<200;j++);
     for(j=0;j<102;j++);
   }
}
/*------------------------------------------------
                    主函数
------------------------------------------------*/
main()
{
unsigned char i;
while(1)
      {
      P1=0xFE;
                        delay_fen(60000);
      for(i=0;i<5;i++)
             {
             P1 <<=1;
                   P1 |=0x01;
                   delay_fen(60000);
                   }
      }

}

回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表