各位大哥,帮我看看错在那 点击:182 | 回复:2



caoxionglai

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:1帖 | 4回
  • 年度积分:0
  • 历史总积分:9
  • 注册:2012年3月30日
发表于:2013-08-22 20:23:05
楼主

#include<reg52.h>
 #define uint unsigned int
 #define uchar unsigned char
 sbit S1=P1^4;
void delay1ms(uint ms)
   {
    uchar t;
  while(ms--) 
  {
   for(t=0;t<115;t++);
  
  }
 }
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf};
void display(uchar x)
   P0=table[x];
   P2=0xfb;
   P0=table[x/100];
   delay(10);
   P2=0xfd;
   P0=table[x%100/10];
   delay(10);
   P2=0xfe;
   P0=table[x/10];
 delay(10);
 void main(void)
 {
display(11);
 while(1)
  { 
 
  if(S1==0)
 {
  delay(10);
  if(S1==0)
   {
    x++;
   if(x==100)
   { 
     x=11;
    
    } 
  while(!S1);
  }
  
 }
  display(x);
  }
 }




阿水--王者之师

  • 精华:24帖
  • 求助:348帖
  • 帖子:1616帖 | 22281回
  • 年度积分:37
  • 历史总积分:98482
  • 注册:2007年3月22日
发表于:2013-08-22 20:43:42
1楼

  单片机的东东,不会玩,还刚开始买回一个都没有学会呀

金属风暴!

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 41回
  • 年度积分:0
  • 历史总积分:307
  • 注册:2003年1月21日
发表于:2013-09-14 10:18:09
2楼

这个应该是LED显示的程序哇?

1.main() 函数的x没有定义,也没有赋初值。main()中的x和display()函数中的形参x是不一样的东西。

2.还有就是要根据硬件电路,P2的赋值是不是能正常操作接口,每个口的高低电平是否设置正确。


热门招聘
相关主题

官方公众号

智造工程师