亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

error C129: missing ';' before 'useconds' keil中的一個問題 求大神解答疑惑

[復制鏈接]
跳轉到指定樓層
樓主
ID:253996 發表于 2017-11-27 00:52 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
有一個錯誤:FGCCGCG.C(60): error C129: missing ';' before 'useconds'(紅色部分)
之前有一個錯誤是我未定義“useconds”,于是我在上面加了 “unchar useconds;”
求大神解答疑惑,謝謝!

#include <REG52.H>
#define uchar unsigned char
#define unit unsigned int
sbit DQ = P1^0;
sbit RS = P1^7;
sbit RW = P1^6;
sbit EN = P1^5;
union {
    uchar c[2];
        unit x;
} temp;
uchar flag;
unit cc,cc2;
float cc1;
uchar buff1[13] = {"temperature:"};
uchar buff2[6] = {"+00.0"};
//檢查忙函數
void fbusy()
{
    P2 = 0xff;
        RS = 0;
        RW = 1;
        EN = 1;
        EN = 0;
        while((P2 & 0x80))
        {
           EN = 0;
           EN = 1 ;
        }
}
//寫命令函數
void wc51r(uchar j)
{
   fbusy();
   EN = 0;
   RS = 0;
   RW = 0;
   EN = 1;
   P2 = j;
   EN = 0;
}
//寫數據函數
void wc51ddr(char j)
{
   fbusy();
   EN = 0;
   RS = 1;
   RW = 0;
   EN = 1;
   P2 = j;
   EN = 0;
}
void init()
{
   wc51r(0x01);
   wc51r(0x38);
   wc51r(0x0c);
   wc51r(0x06);
}
unchar useconds;
void delay(uint useconds)
{
   for(; useconds>0; usecond--);
}
uchar ow_reset(void)
{
   uchar presence;
   DQ = 0;
   delay(50);
   DQ = 1;
   delay(3);
   presence = DQ;
   delay(25);
   return(presence);
}
uchar read_byte(void)
{
   uchar i;
   uchar value = 0;
   for (i=8; i>0; i--)
   {
     value >>= 1;
         DQ = 0;
         DQ = 1;
         delay(1);
         if(DQ) value |=0x80;
         delay(6);
        }
        return(value);
}
void write_byte(uchar val)
{
   uchar i;
   for (i=8; i>1; i--)
   {
     DQ = 0 ;
         DQ = val&0x01;
         delay(5);
         DQ=1;
         val = val/2;
   }
   delay(5);
}

void Read_Temperature(void)
{
   ow_reset();
   write_byte(0xCC);
   write_byte(0xBE);
   temp.c[1] = read_byte();
   temp.c[0] = read_byte();
   ow_reset();
   write_byte(0xCC);   
   write_byte(0x44);
   return;
}
void main()
{
   uchar k;
   delay(10);
   EA = 0;
   flag = 0;
   init();
   wc51r(0x80);
   for (k=0; k<13; k++)
   {wc51ddr(buff1[k]);}
   while(1)
   {
     delay(10000);
         Read_Temperature();
         cc = temp.c[0]*256.0 + temp.c[1];
         if  (temp.c [0] > 0xf8)   {flag=1; cc=~cc+1;}
         else flag=0;
         cc1 = cc*0.0625;
         cc2 = cc1*100;
         buff2[1] = cc2/1000 + 0x30;
         if (buff2[1] == 0x30)
             buff2[1] = 0x20;
                 buff2[2] = cc2/100        - (cc2/1000)*10 + 0x30;
                    buff2[4] = cc2/10        - (cc2/1000)*10 + 0x30;
                 if (flag==1)
                 buff2[0] = '-';
     else
             buff2[0] = '+';
     wc51r(0xc5);
         for (k=0; k<6; k++)
         { wc51ddr (buff2[k]);}
   }
}      



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

使用道具 舉報

沙發
ID:1 發表于 2017-11-27 03:37 | 只看該作者
看這個類似的問題:http://www.denmoz.com/bbs/dpj-78666-1.html
回復

使用道具 舉報

板凳
ID:164602 發表于 2017-11-27 08:43 | 只看該作者
其實沒有什么大錯,就是打字時不小心吧!
你看你的程序:
#define uchar unsigned char(第二行)
看清楚沒?你定義的是uchar
再看你的錯誤行:unchar useconds;
我是直接復制粘貼的哦!
看清楚沒有?再看、再看、看看。。。?。,。。。。看,看清楚沒有?
你定義uchar,用時卻寫成了unxhar。多了一個字母。
樓上板主給你例子也是那樣錯的。你看懂沒?
回復

使用道具 舉報

地板
ID:212797 發表于 2017-11-27 08:47 | 只看該作者
把變量定義到文件的開頭去。
回復

使用道具 舉報

5#
ID:192235 發表于 2017-11-27 08:49 | 只看該作者
前面定義  #define uchar unsigned char
應該  uchar useconds;才對吧
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表