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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

error C141: syntax error near '}' keil4報錯 簡易超市收銀機 單片機程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:204561 發(fā)表于 2017-5-25 01:01 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
LEIL4報錯:IIC.H(107): error C141: syntax error near '}' (說的是這個         bitcounter--})
請問為什么?

  1. #include<intrins.h>
  2. #define uchar unsigned char
  3. #define sda  P3_6                             //定義SDA口
  4. #define scl  P3_7                                //定義SCL口
  5. //-----------------------------------------------------
  6. void delay(uchar a)                                //24C64和其他一些地方需要的延時函
  7. {
  8.           uchar b,c;
  9.           for(b=0;b<a;b++)
  10.     for(c=0;c<225;c++);
  11. }
  12. //-----------------------------------------------------
  13. void start(void)                                 //開始總線的活動
  14. {
  15.          sda=1;
  16.          scl=1;
  17.         _nop_();_nop_(); _nop_(); _nop_();
  18.          sda=0;
  19.          _nop_();_nop_();_nop_(); _nop_();
  20.          }
  21. //-----------------------------------------------------
  22.          void stop(void)                            //停止總線活動,器件進(jìn)入低功耗狀態(tài)
  23. {
  24.          sda=0;
  25.          _nop_();_nop_();_nop_();_nop_();
  26.          scl=1;
  27.          _nop_();_nop_();_nop_();_nop_();
  28.          sda=1;
  29.          _nop_();_nop_();_nop_();_nop_();
  30.    }
  31. //-----------------------------------------------------
  32.   void ack(void)                            //應(yīng)答信號
  33. {
  34.          sda=0;
  35.          _nop_();_nop_();_nop_();_nop_();
  36.          scl=1;
  37.         _nop_();_nop_();_nop_();_nop_();
  38.          scl=0;                          
  39. //允許從器件改變當(dāng)前SDA的狀態(tài),以便于下一次的讀入
  40.   }
  41. //-----------------------------------------------------
  42.   void noack(void)                                //無應(yīng)答信號
  43. {
  44.          sda=1;
  45.          _nop_();_nop_();_nop_();_nop_();
  46.          scl=1;
  47.          _nop_();_nop_();_nop_();_nop_();
  48.          scl=0;
  49. }
  50. //-----------------------------------------------------
  51. void checkack(void)
  52.   {         
  53.       _nop_();_nop_();_nop_();_nop_();
  54.            scl=1;
  55.           if(sda)
  56.            {
  57.             scl=0;
  58.            }
  59.           else
  60.            {
  61.                    _nop_();_nop_();_nop_();_nop_();
  62.             scl=0;
  63.            }
  64. }
  65. //-----------------------------------------------------
  66. void send(uchar kk)                                                  //寫入一個字節(jié)
  67.   {
  68.    uchar bitcounter=8;
  69.    uchar temp;
  70.    do
  71.    {
  72.              temp=kk;
  73.                  scl=0;
  74.                  _nop_();_nop_();_nop_();_nop_();
  75.                  if((temp&0x80)==0x80)                 //數(shù)據(jù)的發(fā)送為高位在前,低位在后
  76.                  sda=1;
  77.                  else
  78.                 sda=0;
  79.                  scl=1;
  80.                  temp=kk<<1;
  81.                  kk=temp;
  82.                  bitcounter--;
  83.     }
  84.          while(bitcounter);
  85.          scl=0;
  86. }
  87. uchar read(void)                                                  //讀出一個字節(jié)
  88. {
  89.                   uchar temp=0;
  90.                   uchar temp1=0;
  91.                   uchar bitcounter=8;
  92.                   sda=1;
  93.                   do
  94. {
  95.              scl=0;
  96.               _nop_();_nop_();_nop_();_nop_();
  97.              scl=1;
  98.               _nop_();_nop_();_nop_();_nop_();
  99.              if(sda)
  100.               temp=temp|0x01;                         //數(shù)據(jù)的讀入為高位在前,低位在后
  101.              else
  102.               temp=temp&0xfe;
  103.              if(bitcounter-1)
  104.               {    temp1=temp<<1;
  105.                            temp=temp1;
  106.                   }
  107.          bitcounter--}
  108.          while(bitcounter);                                         //讀入8位
  109.          return temp;
  110. }
  111. //發(fā)送命令和操作對象給24c64
  112. void writenbyte(uchar *adata,uchar address)
  113. {
  114.            uchar bb;                                                       //定義'寫字節(jié)數(shù)'變量bb
  115.          for(bb=0;bb<16;bb++)                                  //寫入16個字節(jié)
  116.          {   start();                                                          //器件地址
  117.                    send(0xa0);
  118.                 checkack();
  119.                    send(0x00);                                          //從器件內(nèi)部高地址
  120.                   checkack();                                                                                       
  121.                    send(address+bb);                                 //從器件內(nèi)部地址低位
  122.                    checkack();         
  123.                    send(adata[bb]);
  124.                    checkack();                                                
  125.                    stop();                                                   
  126.                    delay(40);            
  127.           }
  128.   }                                                         
  129. void readnbyte(uchar *adata,uchar address)
  130.   {
  131.           uchar  i;                                           //定義'讀字節(jié)數(shù)'變量i
  132.            for(i=0;i<16;i++)
  133.            {
  134.             start();
  135.                 send(0xa0);
  136.                 ack();
  137.                 send(0x00);                                         //從器件內(nèi)部高地址
  138.                 ack();
  139.                 send(address+i);                                 //從器件內(nèi)部地址低位
  140.                 ack();
  141.                 start();
  142.                 send(0xa1);
  143.                 ack();
  144.             adata[i]=read();                                         //讀取操作數(shù)
  145.                 scl=0;
  146.                 noack();
  147.                 stop();
  148.         }
  149. }
  150. /********************************結(jié)束************************************/
復(fù)制代碼




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

相關(guān)帖子

回復(fù)

使用道具 舉報

沙發(fā)
ID:149988 發(fā)表于 2017-5-26 17:20 | 只看該作者

RE: error C141: syntax error near '}' keil4報錯 簡易超市收銀機 單片機程序

意思是,第110行“}”號附近有錯誤,具體是語句bitcounter--缺少“;”號。加上‘:’號,該錯誤即消除。
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 最新超碰| 久久午夜精品福利一区二区 | 国产亚洲精品精品国产亚洲综合 | 国产精品一区二区在线 | 日韩中文久久 | 精品国产乱码久久久久久丨区2区 | 天天天天操 | 色婷婷av一区二区三区软件 | 欧美一级毛片久久99精品蜜桃 | 欧美一级片在线 | 成人一区二区视频 | 精久久久| 日中文字幕在线 | 欧美看片 | 夜夜骚视频 | 黄页网址在线观看 | 精品视频一区二区三区 | 成人a免费 | 午夜影院官网 | 最近中文字幕在线视频1 | 欧美一级视频在线观看 | 天天躁日日躁性色aⅴ电影 免费在线观看成年人视频 国产欧美精品 | 成人一区二区视频 | 国产欧美日韩一区二区三区在线 | 欧美日韩亚洲一区 | 日本欧美国产 | www.蜜桃av.com| 最近中文字幕在线视频1 | 欧美一区二区三区视频在线 | 欧美一区二区三区在线观看 | 国产成人精品一区二区三区四区 | 免费在线观看毛片 | 亚洲成人av一区二区 | 国产91精品久久久久久久网曝门 | 国产精品一区久久久 | 国产精品久久久久久亚洲调教 | 国产精品久久久久久久久久免费看 | 91日b| 国产一区二区影院 | 精品国产鲁一鲁一区二区张丽 | 91性高湖久久久久久久久_久久99 |