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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

求助各位大神,單片機代碼出什么錯了

[復制鏈接]
跳轉到指定樓層
樓主
ID:954926 發表于 2021-7-27 15:50 來自手機 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
#include<reg52.h>
#define uint unsigned int;
#define uchar unsigned char;
uchar tt,num,ge,shi,bai;
sbit wei=P2^7;
sbit zi=P2^6;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
void init();
void xianshi(uchar bai,shi,ge);
void delay(uint z);
void main()
{
    init();
          while(1)
                {
                    if(tt==20)
                                {
                                    tt=0;
                                          num++;
                                          if(num==100)
                                                {
                                                    num=0;
                                                }
                                    bai=num/100;
                                                shi=num%100/10;
                                                ge=num%10;
                                }
                                xianshi(uchar bai,shi,ge);
                }
}

void delay(uint z)
{
    uint x,y;
          for(x=110;x>0;x--)
              for(y=z;y>0;y--);
}

void init()
{
    num=0;
          TMOD=0x01;
          TH0=(65535-50000)/256;
          TL0=(65535-50000)%256;
          EA=1;
          ET0=1;
          TR0=1;
}

void xianshi(uchar bai,shi,ge)
{
    zi=1;
          P0=table[bai];
          zi=0;
          P0=0xff;
          wei=1;
          P0=0xfe;
          wei=0;
          delay(1);
        
          zi=1;
          P0=table[shi];
          zi=0;
          P0=0xff;
          wei=1;
          P0=0xfd;
          wei=0;
          delay(1);
        
          zi=1;
          P0=table[ge];
          zi=0;
          P0=0xff;
          wei=1;
          P0=0xfb;
          wei=0;
          delay(1);
}

void timer0() interrupt 1
{
          TH0=(65535-50000)/256;
          TL0=(65535-50000)%256;
          tt++;
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:328014 發表于 2021-7-27 17:24 | 只看該作者
應該要把編譯錯誤的信息也上圖,什么錯誤 定位在哪一行,大家如果這樣肉眼直接看,效率太低了
回復

使用道具 舉報

板凳
ID:954926 發表于 2021-7-27 19:20 來自手機 | 只看該作者
錯誤如下

16273847855647564644268576528796.jpg (1.47 MB, 下載次數: 54)

16273847855647564644268576528796.jpg
回復

使用道具 舉報

地板
ID:476415 發表于 2021-7-27 20:05 來自手機 | 只看該作者
TH0之類能手工計算的,先算好。
回復

使用道具 舉報

5#
ID:401564 發表于 2021-7-27 21:24 | 只看該作者
我幫你改好了,自己找一下有什么地方不一樣的
這都是C語言的基礎知識,我也是才開始幾天的C語言,一般這種問題都是可以自己找到答案的
自己想盡腦子的去解決一個問題,那么你對這個問題的印象肯定是深刻的,對于自己的學習也有好處
網上"拿來主義"倒是快,估計下回還是會犯同樣的錯誤
我就不告訴你哪里了,你自己找找
還有,編程要養成一個有注釋的習慣,每個人寫程序的寫法都不一樣,你倒是看明白,別人不一定能看明白的

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar tt,num,ge,shi,bai;
sbit wei=P2^7;
sbit zi=P2^6;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
void init();
void xianshi(uchar bai,shi,ge);
void delay(uint z);
void main()
{                                                       
    init();
          while(1)
                {
                    if(tt==20)
                                {
                                    tt=0;
                                          num++;
                                          if(num==100)
                                                {
                                                    num=0;
                                                }
                                    bai=num/100;
                                                shi=num%100/10;
                                                ge=num%10;
                                }
                                xianshi(bai,shi,ge);
                }
}

void delay(uint z)
{
    uint x,y;
          for(x=110;x>0;x--)
              for(y=z;y>0;y--);
}

void init()
{
    num=0;
          TMOD=0x01;
          TH0=(65535-50000)/256;
          TL0=(65535-50000)%256;
          EA=1;
          ET0=1;
          TR0=1;
}

void xianshi(uchar bai,shi,ge)
{
    zi=1;
          P0=table[bai];
          zi=0;
          P0=0xff;
          wei=1;
          P0=0xfe;
          wei=0;
          delay(1);
        
          zi=1;
          P0=table[shi];
          zi=0;
          P0=0xff;
          wei=1;
          P0=0xfd;
          wei=0;
          delay(1);
        
          zi=1;
          P0=table[ge];
          zi=0;
          P0=0xff;
          wei=1;
          P0=0xfb;
          wei=0;
          delay(1);
}

void timer0() interrupt 1
{
          TH0=(65535-50000)/256;
          TL0=(65535-50000)%256;
          tt++;
}
回復

使用道具 舉報

6#
ID:956921 發表于 2021-7-27 21:33 | 只看該作者
xianshi(uchar bai,shi,ge);
這個函數你還帶 uchar  干嘛  ,又不是聲明
回復

使用道具 舉報

7#
ID:155507 發表于 2021-7-27 21:48 | 只看該作者
#define 是宏定義 不用加分號
typedef  是類型重定義 得加分號

你可以用
#define uint unsigned int     //不要添加分號
#define uchar unsigned char   //不要添加分號
改用 typedef
typedef unsigned int uint;    //要添加分號
typedef unsigned char uchar;  //要添加分號


回復

使用道具 舉報

8#
ID:954926 發表于 2021-7-27 22:05 來自手機 | 只看該作者
51heiqwer 發表于 2021-7-27 21:33
xianshi(uchar bai,shi,ge);
這個函數你還帶 uchar  干嘛  ,又不是聲明

請問是上中下哪一個呢
回復

使用道具 舉報

9#
ID:161164 發表于 2021-7-27 22:47 | 只看該作者
不是回答了你了嗎?
又開新貼子問同一個問題?
不要用#define
#define uint unsigned int;
#define uchar unsigned char;
改用 typedef
typedef unsigned int uint;
typedef unsigned char uchar;
回復

使用道具 舉報

10#
ID:954926 發表于 2021-7-28 10:04 來自手機 | 只看該作者
Y_G_G 發表于 2021-7-27 21:24
我幫你改好了,自己找一下有什么地方不一樣的
這都是C語言的基礎知識,我也是才開始幾天的C語言,一般這種問 ...

受教了
回復

使用道具 舉報

11#
ID:934353 發表于 2021-7-28 11:22 | 只看該作者

你這個代碼燒進去試了嗎,正確嗎?我怎么看著有點奇怪
回復

使用道具 舉報

12#
ID:745085 發表于 2021-7-28 11:39 | 只看該作者
開心就好hhhh 發表于 2021-7-28 11:22
你這個代碼燒進去試了嗎,正確嗎?我怎么看著有點奇怪

我覺得還是會報錯
回復

使用道具 舉報

13#
ID:745085 發表于 2021-7-28 11:45 | 只看該作者
  1. #include<reg52.h>

  2. #define uint unsigned int;
  3. #define uchar unsigned char;

  4. uchar tt,num,ge,shi,bai;
  5. sbit wei=P2^7;
  6. sbit zi=P2^6;

  7. uchar code table[]={
  8. 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,
  9. 0x39,0x5e,0x79,0x71};

  10. void init();
  11. void xianshi(uchar bai,uchar shi,uchar ge);
  12. void delay(uint z);

  13. void main()
  14. {
  15.           init();
  16.           while(1)
  17.           {
  18.                     if(tt==20)
  19.                      {
  20.                               tt=0;
  21.                               num++;
  22.                               if(num==100)
  23.                              {
  24.                                   num=0;
  25.                              }
  26.                              bai=num/100;
  27.                              shi=num%100/10;
  28.                              ge=num%10;
  29.                      }
  30.                     xianshi(bai,shi,ge);
  31.            }
  32. }

  33. void delay(uint z)
  34. {
  35.     uint x,y;
  36.     for(x=110;x>0;x--)
  37.         for(y=z;y>0;y--);
  38. }

  39. void init()
  40. {
  41.           num=0;
  42.           TMOD=0x01;
  43.           TH0=(65535-50000)/256;
  44.           TL0=(65535-50000)%256;
  45.           EA=1;
  46.           ET0=1;
  47.           TR0=1;
  48. }

  49. void xianshi(uchar bai,uchar shi,uchar ge)
  50. {
  51.           zi=1;
  52.           P0=table[bai];
  53.           zi=0;
  54.           P0=0xff;
  55.           wei=1;
  56.           P0=0xfe;
  57.           wei=0;
  58.           delay(1);
  59.         
  60.           zi=1;
  61.           P0=table[shi];
  62.           zi=0;
  63.           P0=0xff;
  64.           wei=1;
  65.           P0=0xfd;
  66.           wei=0;
  67.           delay(1);
  68.         
  69.           zi=1;
  70.           P0=table[ge];
  71.           zi=0;
  72.           P0=0xff;
  73.           wei=1;
  74.           P0=0xfb;
  75.           wei=0;
  76.           delay(1);
  77. }

  78. void timer0() interrupt 1
  79. {
  80.           TH0=(65535-50000)/256;
  81.           TL0=(65535-50000)%256;
  82.           tt++;
  83. }
復制代碼
回復

使用道具 舉報

14#
ID:386001 發表于 2021-7-28 11:56 | 只看該作者
這個程序,目前可能語法上沒錯誤了,功能還是錯誤的,后面跑出來的結果應該還是錯誤的,形參定義有問題
回復

使用道具 舉報

15#
ID:954926 發表于 2021-7-28 12:44 來自手機 | 只看該作者
開心就好hhhh 發表于 2021-7-28 11:22
你這個代碼燒進去試了嗎,正確嗎?我怎么看著有點奇怪

還是錯誤的
回復

使用道具 舉報

16#
ID:954926 發表于 2021-7-28 12:45 來自手機 | 只看該作者
Y_G_G 發表于 2021-7-27 21:24
我幫你改好了,自己找一下有什么地方不一樣的
這都是C語言的基礎知識,我也是才開始幾天的C語言,一般這種問 ...

還是錯誤的哦
回復

使用道具 舉報

17#
ID:954926 發表于 2021-7-28 12:51 來自手機 | 只看該作者
感謝各位,我自己已經解決了
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久久久久久久久久久久久久久久久久久 | 精品一区二区三区在线观看国产 | 一级黄色夫妻生活 | 国产亚洲一区二区三区在线观看 | 国产主播第一页 | 国产伦精品一区二区三区四区视频 | 国产一区免费 | 久久免费观看一级毛片 | 91毛片在线看 | 久久久久久久久久久久久9999 | 九九热免费看 | 国产在线网站 | 日韩高清国产一区在线 | 天天综合日日夜夜 | 国产成人精品a视频一区www | 精品一区电影 | 成人精品一区二区 | 成人a网 | 国产精品视频久久 | 久亚州在线播放 | 欧美精品在线免费观看 | 无码日韩精品一区二区免费 | 欧美一极视频 | 成人欧美一区二区三区在线播放 | 国产91丝袜在线播放 | 涩涩操| 亚洲国产精品网站 | 国外成人在线视频网站 | 天天综合国产 | 免费久 | 精品麻豆剧传媒av国产九九九 | 色综合视频 | 免费久草 | 欧美亚洲国语精品一区二区 | 拍真实国产伦偷精品 | 国产精品欧美日韩 | av香港经典三级级 在线 | 成人免费小视频 | 久久亚洲精品国产精品紫薇 | 欧美精品第一页 | 日韩一区二区在线视频 |