找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2081|回复: 1
收起左侧

编译错误error C132: not in formal parameter list

[复制链接]
ID:974311 发表于 2021-11-1 11:03 | 显示全部楼层 |阅读模式
18B20.c(27): error C132: 'delay_18B20': not in formal parameter list
18B20.c(28): error C141: syntax error near '}', expected 'hdata'
单片机源程序如下:
  1. #include <reg52.h>
  2. sbit RS=P2^0;   
  3. sbit RW=P2^1;
  4. sbit E=P1^2;
  5. sbit DQ=P1^4;
  6. int readtemp=0;
  7. unsigned char str[]={"0123456789"};
  8. unsigned char s[]={"Temperature:"};

  9. delay_18B20(unsigned int i)

  10. void delay_18B20(unsigned int i)
  11. {
  12.         for(;i>0;i--);
  13. }

  14. void Init_DS18B20(void)         
  15. {
  16.   unsigned char x=0;
  17.   DQ = 1;         
  18.   delay_18B20(8);  
  19.   DQ = 0;         
  20.   delay_18B20(80);
  21.   DQ = 1;         
  22.   delay_18B20(14);
  23.   x=DQ;            
  24.   delay_18B20(20);
  25. }                 

  26. unsigned char ReadOneChar(void)
  27.   {
  28.     unsigned char i=0;
  29.     unsigned char dat = 0;
  30.     for (i=8;i>0;i--)
  31.     {
  32.       DQ = 0;
  33.       dat>>=1;
  34.       DQ = 1;
  35.       if(DQ)
  36.       dat|=0x80;
  37.       delay_18B20(4);
  38.      }
  39.      return(dat);
  40.   }
  41.       
  42. void WriteOneChar(unsigned char dat)
  43.       
  44. {
  45.   unsigned char i=0;
  46.   for (i=8; i>0; i--)
  47.   {
  48.    DQ = 0;           
  49.    DQ = dat&0x01;
  50.    if(DQ){delay_18B20(1);DQ=1;}
  51.          else{delay_18B20(5);DQ = 1;}
  52.    dat>>=1;
  53.    }
  54. }

  55. unsigned char ReadTemperature(void)
  56. {                                                         
  57. unsigned char a=0,b=0;
  58. unsigned int temp=0;
  59. Init_DS18B20();
  60. WriteOneChar(0xCC);  
  61. WriteOneChar(0x44);  
  62. delay_18B20(100);   
  63. Init_DS18B20();
  64. WriteOneChar(0xCC);  
  65. WriteOneChar(0xBE);  
  66. delay_18B20(100);
  67. a=ReadOneChar();     
  68. b=ReadOneChar();     
  69. temp=((b*256+a)>>4);
  70. return(temp);
  71. }



  72. void writedat(unsigned char dat)
  73. {
  74.   RS=1;  
  75.         RW=0;  
  76.         E=0;   
  77.         P1=dat;
  78.         delay(5);
  79.         E=1;
  80.         E=0;
  81. }

  82. void writecom(unsigned char com)
  83. {
  84.   RS=0;  
  85.         RW=0;  
  86.         E=0;   
  87.         P1=com;
  88.         delay(5);
  89.         E=1;
  90.         E=0;
  91. }

  92. void initlcd()
  93. {
  94.   writecom(0x38);  
  95.         writecom(0x0c);  
  96.         writecom(0x06);  
  97.         writecom(0x01);  
  98. }

  99. void display()
  100. {
  101.         unsigned int temp0=0,temp1=0,temp2=0,i=0;
  102.         temp0=readtemp/100;
  103.         temp1=(readtemp%100)/10;
  104.         temp2=readtemp%10;
  105.         writecom(0x80);  
  106.         delay(5);            
  107.         while(s[i]!='\0')
  108.         {
  109.           writedat(s[i]);
  110.                 delay(5);
  111.                 i++;
  112.         }
  113.       
  114.         writecom(0x80+0x40+5);  
  115.         delay(5);
  116.         writedat(str[temp0]);
  117.         delay(5);           
  118.         writedat(str[temp1]);
  119.         delay(5);            
  120.         writedat(str[temp2]);
  121.         delay(5);           
  122.         writedat(0xDF);
  123.         delay(5);           
  124.         writedat('C');
  125.         delay(5);           
  126. }

  127. void main()
  128. {
  129.         initlcd();
  130.         while(1)
  131.         {
  132.          readtemp=ReadTemperature();
  133.          display();
  134.         }
  135. }

复制代码


回复

使用道具 举报

ID:624769 发表于 2021-11-1 17:24 | 显示全部楼层
看一下,你的代码第 10 行,和 第12行的 关系。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表