找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2020|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

想實現(xiàn)0-59循環(huán)的單片機秒表,以下主程序該怎么改呢?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:744168 發(fā)表于 2020-5-5 21:10 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
  1. #include<reg52.h>
  2. #include <intrins.h>
  3. typedef unsigned int a1;
  4. typedef unsigned char b2;
  5. unsigned char code DuanMa[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
  6. unsigned char Dis_dat[];
  7. unsigned char sec=00;

  8. void delay(a1 i)
  9. {
  10.   while(i--);
  11. }

  12. void DisplaySMGwei(b2 pos)
  13. {
  14.   P2=(P2&0x1f)|0xc0;
  15.   P0=0x01<<pos;
  16. }
  17. void DisplaySMGdat(b2 dat)
  18. {
  19.   P2=(P2&0x1f)|0xe0;
  20.   P0=dat;
  21. }

  22. void datapros()
  23. {
  24.   if(sec<60)
  25.   {
  26.     sec++;
  27.   }
  28.   else
  29.   {
  30.     sec=00;
  31.   }
  32. Dis_dat[0]=DuanMa[sec/10];
  33. Dis_dat[1]=DuanMa[sec%10];
  34. }

  35. void SMG_Dynamic()
  36.   {         
  37.      b2 i;
  38.      for(i=0;i<2;i++)
  39.          {
  40.             switch(i)
  41.                 {
  42.                   case 0:DisplaySMGwei(0);break;
  43.                   case 1:DisplaySMGwei(1);break;
  44.                 }
  45.            DisplaySMGdat(Dis_dat[i]);
  46.            delay(500);
  47.          }
  48.   }

  49. void Delay100ms()                //@12.000MHz
  50. {
  51.         unsigned char i, j, k;

  52.         _nop_();
  53.         _nop_();
  54.         i = 5;
  55.         j = 144;
  56.         k = 71;
  57.         do
  58.         {
  59.                 do
  60.                 {
  61.                         while (--k);
  62.                 } while (--j);
  63.         } while (--i);
  64. }

  65. void main()
  66. {
  67.   a1 x=50;
  68.   while(1)
  69.   {
  70.             datapros();
  71.         Delay100ms();
  72.          while(x--)
  73.          {
  74.           SMG_Dynamic();
  75.          }
  76.   }
  77. }
復(fù)制代碼

212335lral9g19br7779dy.png (132.59 KB, 下載次數(shù): 67)

212335lral9g19br7779dy.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表