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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

此程序總有一個錯誤,求助大神解決,我的單片機芯片是stc89c52rc系列的

[復制鏈接]
跳轉到指定樓層
樓主
ID:87568 發(fā)表于 2016-3-27 21:09 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
/*-------------------------------------------------------
要求:利用數(shù)碼管,定時器等模塊,做出一個秒表,樣式00:00.0

------------------------------------------------*/

  #include<reg52.h>
  #define uchar unsigned char
  #define uint unsigned int
  uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
  uchar a,n,num1,num2,f_shi,f_ge,m_shi,m_ge,msec;
  char  f_num,m_num;
  void init();
  void delay(uint xms)
  {
    uint i,j;
    for(i=xms;i>0;i--)
  for(j=110;j>0;j--);
  }
  void init()
  {
     TMOD=0x11;
  TH0=(65536-45872)/256;
  TL0=(65536-45872)%256;
  TH1=(65536-45872)/256;
  TL1=(65536-45872)%256;
  EA=1;
  ET0=1;
  TR0=1;
  ET1=1;
  TR1=1;
  }
  void display(uchar f_shi,f_ge,m_shi,m_ge)
  {   
  P1=0x00;
  P2=table[f_shi];
  delay(5);
  P1=0x01;
  P2=table[f_ge];
  delay(5);
  P1=0x02;
  P2=0x40;
  delay(5);
     P1=0x03;
  P2=table[m_shi];
  delay(5);
  P1=0x04;
  P2=table[m_ge]|0x80;
  delay(5);
  P1=0x05;
  P2=table[msec];
  delay(5);
  }
  void main()
  {
    init();
f_num=00;
m_num=00;
while(1)
{
   if(num1==20)
   {
      num1=0;
      if(m_num==59)
      {
            m_num=-1;
            if(f_num==59)
            {                  
               f_num=-1;
            }
            f_num++;
         }
         m_num++;                  
       }
  m_shi=m_num/10;     
  m_ge =m_num%10;
  f_shi=f_num/10;     
  f_ge =f_num%10;
   display(uchar f_shi,f_ge,m_shi,m_ge);
}
  }
  void T0_time() interrupt 1
  {
     TH0=(65536-45872)/256;
  TL0=(65536-45872)%256;  
  num1++;      
  }
void T1_time() interrupt 3
  {
     TH1=(65536-45872)/256;
  TL1=(65536-45872)%256;
  num2++;
  if(num2==12)
  {
      num2=0;
   n++;
   if(n==60)
   {
     n=0;
   }
   msec=n%10;
  }
   }

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:72781 發(fā)表于 2016-3-27 23:58 | 只看該作者
本帖最后由 暗光 于 2016-3-28 00:07 編輯

不知道是不是這個地方錯啊,
看了一下感覺是變量重復定義了,首先你在前面定義了f_shi,f_ge,m_shi,m_ge為全局變量,然后你在寫顯示子函數(shù)時是這樣寫的void display(uchar f_shi,f_ge,m_shi,m_ge),這個語句相當于重新定義了一個局部的只能在這個子函數(shù)使用的局部變量,多嘴一下這個變量叫形參是用來接收傳遞進來的參數(shù)供子函數(shù)使用,故沖突了,而且定義錯了,每一個變量前面都要加uchar不能一次加(印象中是的)。

解決辦法:1、那么既然是全局變量,display就可以直接引用,直接定義為void display(){}就可以了。
2、定義這個子函數(shù)時把里面的局部變量改一下,比如加一個字母貨這數(shù)字區(qū)分開即可,void display(uchar f_shi1,uchar f_ge1,uchar m_shi1,uchar m_ge1),里面的也要改。

還有一個錯誤,調(diào)用的時候錯誤,你在mian的while(1)中是這樣調(diào)用的display(uchar f_shi,f_ge,m_shi,m_ge);是直接復制的吧?!!,調(diào)用的時候只需要把要傳遞的參數(shù)傳遞進去就可以了,所以應該是display(f_shi,f_ge,m_shi,m_ge);
這里面的四個變量,因為在調(diào)用的時候傳遞了參數(shù),所以是實參。


最后在說一句,如果編程遇到報錯,把報錯的內(nèi)容復制下來,百度一下,就可以找到錯誤原因(PS:英語好的省略這一步。。。。。。。。。。)
回復

使用道具 舉報

板凳
ID:85702 發(fā)表于 2016-3-28 10:49 | 只看該作者
uchar a,n,num1,num2,f_shi,f_ge,m_shi,m_ge,msec;
char  f_num,m_num;

感覺是變量定義類型不對吧。CHAR是字符型的。f_num++字符自加。這不對吧。  應該定義成INT吧
int a,n,num1,num2,f_shi,f_ge,m_shi,m_ge,msec;
int   f_num,m_num;然后試試
回復

使用道具 舉報

地板
ID:97438 發(fā)表于 2016-3-28 10:54 來自手機 | 只看該作者
樓上的都錯了。。。我這沒網(wǎng),有網(wǎng)電腦再說
回復

使用道具 舉報

5#
ID:87568 發(fā)表于 2016-3-28 19:26 | 只看該作者
暗光 發(fā)表于 2016-3-27 23:58
不知道是不是這個地方錯啊,
看了一下感覺是變量重復定義了,首先你在前面定義了f_shi,f_ge,m_shi,m_ge為 ...

十分感謝你的回復,你的方法給我提供了很大的幫助。。
回復

使用道具 舉報

6#
ID:111182 發(fā)表于 2016-3-28 19:37 | 只看該作者
來晚了
回復

使用道具 舉報

7#
ID:97438 發(fā)表于 2016-3-28 21:53 | 只看該作者
我錯了,應該是變量的問題
回復

使用道具 舉報

8#
ID:72781 發(fā)表于 2016-3-28 23:36 | 只看該作者
七彩繽紛 發(fā)表于 2016-3-28 10:49
uchar a,n,num1,num2,f_shi,f_ge,m_shi,m_ge,msec;
char  f_num,m_num;

不是,char型雖然是字符型,但是并不是代表儲存的必須是字符,而意思是,一個字符是由8bit組成,char型就8bit,在任意編譯器都一樣,都是8bit,而int型在不同的編譯器,不同位數(shù)的單片機是不一樣的
回復

使用道具 舉報

9#
ID:7485 發(fā)表于 2016-3-29 14:41 | 只看該作者
兩個中斷幾乎是同時發(fā)生,容易出錯。
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 免费一级黄色电影 | 亚洲福利| 成年免费大片黄在线观看一级 | 亚洲免费在线观看 | 色综合一区二区 | 综合色婷婷 | 国产污视频在线 | 久久精品视频免费看 | 久久久久久国产精品 | 久久新视频 | 91精品久久久久久久 | 亚州毛片| 亚洲男人的天堂网站 | 日韩一区二区在线视频 | 欧美日本一区 | 在线一区二区三区 | 国产精品久久久久久久久久久免费看 | 国产精品久久久久久亚洲调教 | 欧美日韩三级视频 | 国产视频第一页 | 亚洲乱码一区二区三区在线观看 | 成人午夜在线 | 国产精品久久久久久久7电影 | 免费看av大片 | 黄色免费三级 | 国产三级日本三级 | 日韩欧美视频在线 | 精品亚洲一区二区 | 久久免费精品视频 | 成人一区在线观看 | 黄色av网站在线免费观看 | 亚洲一区二区在线播放 | 国产美女一区二区三区 | 99精品欧美一区二区三区综合在线 | 日韩在线视频一区 | 婷婷成人在线 | 日本视频一区二区三区 | 免费观看一级特黄欧美大片 | 亚洲视频在线观看 | 国产毛片久久久 | 91网在线观看 |