标题: 关于51单片机动态数码管的实验显示8个8.(新手请指教) [打印本页]

作者: 茄子是酸的    时间: 2018-3-5 09:44
标题: 关于51单片机动态数码管的实验显示8个8.(新手请指教)
我在做动态数码管的实验

一:开始的时候我先运行光盘里面的程序,的确显示的是0 1 2 3 4 5 6 7动态显示
      二:看完视频后我仿照视频上的程序自己照葫芦画瓢也编写了发现显示的却是这样,
      三:我看不对劲仔细检查后也发现不了什么错误就接着运行光盘里面的模板程序,显示的也是8个8
我自己写的程序:

  1. #include"reg51.h"

  2. typedef unsigned char u8        ;
  3. typedef unsigned int u16;  
  4. sbit  LSA=P2^2;
  5. sbit  LSB=P2^3;
  6. sbit  LSC=P2^4;

  7. u8 code   smgduan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d ,
  8.                      0x07 , 0x7f  , 0x6f , 0x77 , 0x7c,0x39 , 0x5e , 0x79 , 0x71 };
  9. void delay(u16 i)
  10. {
  11.    while(i--);
  12. }

  13. void digdisplay()
  14. {
  15.         u8 i;
  16.         for(i=0;i<8;i++)
  17.         {
  18.           switch(i)
  19.           {
  20.                   case(0):
  21.                      LSA=0;  LSB=0;LSC=0;         break;
  22.                 case(1):  
  23.                      LSA=1;  LSB=0;LSC=0;         break;
  24.                 case(2):   
  25.                      LSA=0;  LSB=1;LSC=0;         break;
  26.                 case(3):
  27.                      LSA=1;  LSB=1;LSC=0;         break;
  28.                 case(4):
  29.                      LSA=0;  LSB=0;LSC=1;         break;
  30.                 case(5):
  31.                      LSA=1;  LSB=0;LSC=1;         break;
  32.                 case(6):  
  33.                      LSA=0;  LSB=1;LSC=1;         break;
  34.                 case(7):
  35.                       LSA=1;  LSB=1;LSC=1;         break;
  36.           }
  37.           P0=smgduan[i];
  38.           delay(100);
  39.           P0=0x00;

  40.         }
  41. }
  42. void main()
  43. {

  44.    while(1)
  45.    {
  46.              digdisplay();  
  47.         
  48.    }
  49. }
复制代码

IMG_20180305_092405.jpg (3.4 MB, 下载次数: 41)

我烧录自己写的程序

我烧录自己写的程序

作者: 茄子是酸的    时间: 2018-3-5 09:52
有没有大佬啊
作者: woaixuehan    时间: 2018-3-5 19:50
很好很好,非常的好
作者: wulin    时间: 2018-3-5 21:55
程序没有问题,可能是你的实验板上硬件设置(跳线)弄错导致全显。
作者: HC6800-ES-V2.0    时间: 2018-3-6 07:25
要将复位键上面那个跳线冒接到VCC这边!!!!!
这个板子是HC6800-ES-V2.0,普中的,我也有,所以我知道。




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