标题: 程序有错误.哪位大神能帮忙看看 [打印本页]

作者: 1003    时间: 2016-6-2 20:50
标题: 程序有错误.哪位大神能帮忙看看
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar code DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar Temperature[]={0,0,0};
sbit ST= P2^5;
sbit OE= P2^7;
sbit EOC =P2^6;
sbit CLK =P2^4;
sbit H_LED=P3^0;
sbit L_LED=P3^1;
sbit BEEP = P3^7;
uchar t=0;
void DelayMS(unit x)
{
uchar i;
while(x--)for(i = 0;i< 120; i++);
}
void Show_Temperature()
{
uchar i,DSY_IDX[]= {0xF7,0xFB,0xFD};
for  (i = 0;i < 3; i++)}
{
   P0 = DSY_CODE[ Temperature ];
   P2 &= DSY_IDX;
   DelayMS(5);
   P2 |= 0x0F;
  }
}
void main()
{
  uchar d;
  IE = 0x8a;
  TMOD = 18;
  TH0 = 245;
  TL0 = 0;
  TH1 = (65536 -1000) /256;
  TL1 = (65536 -1000) &256;
  TR0 = 1;
  H_LED = L_LED = 1;
  while(1)
{
   ST = 0; ST = 1; ST = 0;
   while(1)
  {
    if(EOC == 1)
    {
      OE = 1;
      d  = P1;
      OE = 0;
      Temperature[2] = d/100;
      Temperature[1] = d%100/10;
      Temperature[0] = d%10;
Show_Temperature();
  if(d < 60)
{
   TR1 = 1;  L_LED = !H_LED;
  }
  else
  if(d > 160)
{
  TR1 = 1;  H_LED = !L_LED;
}
  else
{
  TR1 = 0;  H_LED = L_LED = 1;
}
break;
          }
         }
       }
    }
void T0_INT() interrupt 1
{
   CLK = ~CLK;
}
void T1_INT() interrupt 3
{
  TL1 = (65536 -1000) % 256;
  BEEP = ~BEEP;
      { if (++t !=150 ) return; }
   else
      { if (++t !=60 ) return; }
   t = 0;
  DelayMS(20);
}

作者: luoluoluo136    时间: 2016-6-2 20:50
错误还真不少。。。
void DelayMS(unit x) unit????打错字了吧

uchar i,DSY_IDX[]= {0xF7,0xFB,0xFD};
for  (i = 0;i < 3; i++)} //////////这里这个右大括号什么意思????

  P0 = DSY_CODE[ Temperature ]; //[ ]这里面应该是一个数值,然而Temperature 是一个数组

   P2 &= DSY_IDX;//////这里,DSY_IDX又是一个 数组。。。应该是DSY_IDX[i]吧

      { if (++t !=150 ) return; }
   else//////////这个意义何在?
      { if (++t !=60 ) return; }

总结一下,c语言基础不过关。。。
作者: 1003    时间: 2016-6-2 20:54
学的汇编.c的有点看不懂.急需帮忙啊
作者: wjfw    时间: 2016-6-2 22:49
这是C,不是汇编。我也是学的汇编
作者: 1003    时间: 2016-6-3 23:12
luoluoluo136 发表于 2016-6-2 20:50
错误还真不少。。。
void DelayMS(unit x) unit????打错字了吧

已成功修改.可是仿真效果不好.大概是程序上的问题.大神,能不能帮忙看看,这个我会另外悬赏.有空的话帮忙指导一下我这个小菜鸟.




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1