找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 821|回复: 3
打印 上一主题 下一主题
收起左侧

请大家帮我看一下这个程序对不对,单片机初学者

[复制链接]
跳转到指定楼层
楼主
ID:983020 发表于 2021-12-23 10:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  1. #include<reg52.h>   

  2. #define LEDPort P0   
  3. #define DataPort P1  

  4. sbit LATCH1=P2^2;
  5. sbit LATCH2=P2^3;

  6. unsigned char code dofly_ShiWei[8]{ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07 };   
  7. unsigned char code dofly_GeWei[10]{ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};  
  8. unsigned char TempData[8]   
  9. unsigned int num=0,cnt=0;  

  10. void Delay(unsigned char t);   
  11. void Display(unsigned char FirstBit,unsigned char Num);   
  12. void Init_Timer0(void);   

  13. void mian()  
  14. {
  15. TMOD=0X01;   
  16. TH0=(65536-50000)/256;   
  17. TL0=(65536-50000)%256;
  18. EA=1;   
  19. ET0=1;  
  20. TR0=1;   
  21. Init_Timer0();
  22. Timer0_isr();
  23. LEDPort=0x09;   
  24. DataPort = 0x3f;

  25. unsigned char num=70,cnt=0;   

  26. while(1)   
  27.   {
  28.   cnt=++;   
  29.         if(cnt==20)   
  30.     {
  31.                 cnt=0;   
  32.                 num--;   
  33.                 if(LEDPory==0x09&&num<=10)   
  34.                   {
  35.                         LEDPort=0x08;
  36.                         Delay(50000);
  37.                         LEDPort=0x09;
  38.                         Delay(5000));
  39.                         }
  40.                 if(LEDPort==0x09&&num<1)   
  41.                   {
  42.                         num=5;
  43.                         LEDPort=0x10;
  44.                         }
  45.                 if(LEDPort==0x10&&num<1)   
  46.                   {
  47.                         num=50;
  48.                         LEDPort=0x06;
  49.                         }
  50.                 if(LEDPort==0x06&&num<=10)   
  51.                   {
  52.                         LEDPort=0x02;
  53.                         Delay(50000);
  54.                         LEDPort=0x06;
  55.                         Delay(50000);
  56.                         }
  57.                 if(LEDPort==0x06&&num<1)   
  58.                   {
  59.                         num=70;
  60.                         LEDPort==0x09;   
  61.                         }   
  62.                         TempData[0]dofly_ShiWei[num/10];   
  63.                         TempData[1]dofly_GeWei[num%10];
  64.                         Display(2,2)
  65.                 }
  66.         }
  67. }

  68. void Delay(unsigned int t)   
  69. {
  70. unsigned int j,k;
  71. for(j=0;j<t;j++)
  72. for(k=0;j<1821;k++);
  73. }

  74. void Init_Timer0(void)   
  75. {
  76. TMOD|=0x01;
  77. TH0=(65536-50000)/256;
  78. TL0=(65536-50000)%256;
  79. EA=1;
  80. ET0=1;
  81. TR0=1;
  82. }

  83. void Timer0_isr(void) interrupt 1 ()  
  84. {

  85. TH0=(65536-50000)/256;
  86. TL0=(65536-50000)%256;

  87. Display(0,8);  
  88. }

  89. void Display(unsigned char FirstBit,unsigned char Num)   
  90. {
  91. static unsigned char i=0;
  92.              DataPort=0;   
  93.        LATCH1=1;      
  94.        LATCH1=0;
  95.                         
  96.        DataPort=dofly_WeiMa[i+FirstBit];
  97.        LATCH2=1;     
  98.        LATCH2=0;
  99.                         
  100.        DataPort=TempData[i];
  101.        LATCH1=1;   
  102.        LATCH1=0;
  103.                         
  104.              i++;
  105.        if(i==Num)
  106.                          i=0;
  107. }
复制代码
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:863362 发表于 2021-12-23 11:16 | 只看该作者
main,不是mian
回复

使用道具 举报

板凳
ID:450231 发表于 2021-12-23 14:19 | 只看该作者
应该是void main
回复

使用道具 举报

地板
ID:297903 发表于 2021-12-23 19:57 | 只看该作者
编绎跑一遍,所有问题程序就帮你提示出来了!!
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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