久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1612|回復: 4
打印 上一主題 下一主題
收起左側

編譯出錯 求大神幫忙看一下如何修改錯誤

[復制鏈接]
跳轉到指定樓層
樓主
ID:935561 發表于 2021-6-11 12:31 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
按照教科書上的程序寫的,但是測試發現好多錯誤。不會改,求大神幫忙改一下讓程序能用。
  1. #include”reg51.h"
  2. typedef unsigned int u16;
  3. typedef unsigned char u8;

  4. sbit naodeng=P2^0;
  5. sbit S1=P3^0;
  6. sbit S2=P3^2;
  7. sbit S3=P3^3;
  8. sbit beep=P2^7;

  9. void shijian( );
  10. void Timer0Init ( );
  11. void DigDisplay( );
  12. void alarm( );
  13. void tiao_nao ( );
  14. void moshi ( );
  15. void delay ( u16 i ) ;

  16. bit nao ;
  17. u8 a =0;
  18. u8 dispiay [] = {0,0,0,0,0,0};
  19. u8 ssec, sec, min, hour, nao_hour=0, nao_min=0;

  20. void delay ( u16 i )
  21. {
  22.         while (i--);
  23. }

  24. void Timer0Init  (  )
  25. {
  26.         TMOD =0x01;
  27.         EX0 =1;
  28.         IT0  =1;
  29.         PX0 =1;
  30.         EX1 =1;
  31.         IT1  = 0;
  32.         TH0= 0xd8;
  33.         TL0 = 0xf0;
  34.         ET0 = 1;
  35.         EA=1;
  36.         TR0=1;
  37. }

  38. void DigDisplay (  )
  39. {
  40.         u8 i, j, m, temp;
  41.         u8  led [] = { 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f };
  42.         temp=0x01;
  43.         for ( i=0 ; i<6 ; i++)
  44.         {
  45.          P1=0x00;
  46.          j=display [ i ];
  47.          P1=led [j];
  48.          P0=~temp;
  49.          temp<<=1;
  50.          for ( m=0 ; m<100; m++);
  51.         }
  52. }

  53. void alarm ( )
  54. {
  55.         if ( nao_ hour==hour && nao_ min==min && sec>=0 && sec<15 && nao ==1 )
  56.         {
  57.         beep=1;
  58.         delay (5);
  59.         beep=0;
  60.         delay(5);
  61.         }        
  62. }

  63. void tiao_ nao ( )
  64. {
  65.         IT0=0;
  66.         EX1=0;
  67.         EX0=0;
  68.         delay ( 10 ) ;
  69.         while ( S1 )
  70.           {
  71.         if (S2 = =0)
  72.            {delay (10);
  73.          if ( S2==0 )   nao_ hour++;
  74.          while ( ! S2 ) ;  }
  75.         if ( nao_ hour>=24 )        nao_ hour=0;
  76.         if(S3==0)
  77.           {delay ( 10 );
  78.         if (S3==0) nao_ min++; while ( ! S3 )  ; }
  79.         if(nao_ min>=60)  nao_ min=0;
  80.         display [5] =0;
  81.         display [4] =0;
  82.         display [3] =nao_ min%10;
  83.         display [2] =nao_ min/10;
  84.         display [1] =nao_ hour%10;
  85.         display [0] =nao_ hour/10;
  86.         DigDisplay (  ) ;
  87.         }
  88. IT0=1;
  89. EX1=1;
  90. EX0=1;
  91. nao=1;        
  92. }

  93. void moshi (  )
  94. {
  95.         if ( S1==0 )
  96.         {
  97.                 delay(100);
  98.                 if(S1==0)
  99.                   {
  100.                             a++;
  101.                         if ( a>=2 ) a=0;
  102.                         while( ! S1);
  103.                         switch (a)
  104.                          {
  105.                            case (0) ; nao=~nao; break;
  106.                            case (1) ; tiao_ nao ( ) ; break;
  107.                          }

  108.                  }
  109.         }while ( ! S1 );
  110. }

  111. void shijian ( )
  112. {
  113.         display [5] =sec%10;
  114.         display [4] =sec/10;
  115.         display [3] =min%10;
  116.         display [2] =min/10;
  117.         display [1] =hour%10;
  118.         display [0] =hour/10;
  119.         DigDisplay ( ) ;
  120. }

  121. void timer0 (  ) interrupt 1
  122. {
  123.         TH0=0xd8;
  124.         TL0=0xf0;
  125.         ssec++;
  126.         if ( ssec>=100 )
  127.         {
  128.                 ssec=0;
  129.                 sec++;
  130.                 if ( sec>=60 )
  131.                 {
  132.                         sec=0;
  133.                         min++;
  134.                         if ( min>=60)
  135.                         {
  136.                                 min=0;
  137.                                 hour++;
  138.                                 if ( hour>=24 )
  139.                                 {
  140.                                      hour=0;
  141.                                 }
  142.                         }
  143.                 }
  144.         }
  145. }

  146. void int0 (  ) interrupt 0
  147. {
  148.         delay (10);
  149.         hour++;
  150.         if (hour>=24)         hour=0;
  151. }

  152. void int1 (  ) interrupt 2
  153. {
  154.         min++;
  155.         if ( min==60 )          min=0;
  156.         while ( ! S3 );
  157. }

  158. void main (  )
  159. {
  160.         Timer0Init (  ) ;
  161.         while ( 1 )
  162.           {
  163.                 if ( nao==1 )  naodeng=0;
  164.                 else naodeng =1;
  165.                 shijian (  );
  166.                 moshi (  );
  167.                 alarm (  );
  168.           }
  169. }
復制代碼
這是一個數字鐘的程序,自動計時,由6位LED顯示器顯示時、分、秒。 具備校準功能,可以設置當前時間。 具備定時啟鬧功能,可以設置啟鬧時間并同時開啟鬧鐘功能,啟鬧15s后自動關閉鬧鈴。 在鬧鐘開啟狀態或鬧鈴過程中,可以按鍵關閉鬧鐘功能
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:824490 發表于 2021-6-11 14:29 | 只看該作者
“測試發現好多錯誤”,你是不是該把錯誤列出來?不然誰能有這個時間幫你調試?

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

板凳
ID:936528 發表于 2021-6-11 14:39 | 只看該作者
include""都錯了
回復

使用道具 舉報

地板
ID:799382 發表于 2021-6-11 15:25 | 只看該作者
void DigDisplay (  )
{
        u8 i, j, m, temp;
        u8  led [] = { 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f };
       請問這一段是什么,如果是LED驅動這是段選還是位選呢??????如果是段選請問位選去哪里了呢????????只有段沒有位他該怎么顯示出來呢??????
        temp=0x01;
        for ( i=0 ; i<6 ; i++)
        {
         P1=0x00;
         j=display [ i ];
         P1=led [j];
         P0=~temp;
         temp<<=1;
         for ( m=0 ; m<100; m++);
        }
}
回復

使用道具 舉報

5#
ID:123289 發表于 2021-6-11 17:36 | 只看該作者
教科書錯在哪里呢?
回復

使用道具 舉報

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

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久www免费人成看片高清 | 国产98色在线 | 日韩 | 欧美综合国产精品久久丁香 | 欧美色成人 | 91精品在线播放 | 一久久久| 中文字幕国产 | 日韩欧美亚洲一区 | 久久国产精品视频 | xxx.在线观看 | 亚洲一区二区电影在线观看 | 国产精品视频综合 | 亚洲一区二区中文字幕在线观看 | 99色视频| 91精品中文字幕一区二区三区 | 国产资源在线播放 | 午夜在线免费观看视频 | 久久久女女女女999久久 | 精品国产一区二区三区日日嗨 | 久久aⅴ乱码一区二区三区 亚洲欧美综合精品另类天天更新 | 成人午夜影院 | 国内av在线 | 中文日韩在线视频 | 中文字幕在线看人 | 日韩欧美成人一区二区三区 | 日韩欧美国产精品综合嫩v 一区中文字幕 | 午夜精品视频 | 亚洲成人av在线播放 | 国产小u女发育末成年 | 亚卅毛片 | 精品久久久久久久久久久院品网 | 成人中文网 | 亚洲欧美一区二区三区国产精品 | 亚洲欧美综合精品久久成人 | 国产色99精品9i | 欧洲精品视频一区 | 中文字幕av亚洲精品一部二部 | 一区二区三区小视频 | 亚洲在线免费观看 | 中文字幕在线第一页 | 欧美日一区二区 |