找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2833|回复: 3
打印 上一主题 下一主题
收起左侧

温控系统的程序有错误一个,实在是找不出在哪了,跪求大神!!!

[复制链接]
跳转到指定楼层
楼主
ID:70508 发表于 2014-12-16 09:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h>
#include<stdio.h>
#define uchar unsigned char
#define uint unsigned int
sbit ds=P2^6;    //ζè′«¸DÆ÷DÅoÅÏß
sbit smg=P0;     //êyÂë1üÏÔê¾
sbit smg1=P2;
sbit jdq=P1^7;    //¼ìμçÆ÷′®¿ú
uint temp;       //¶¨òåÕûDÎμÄζèêy¾Y
float f_temp;     //¶¨ò帡μãDíμÄζèêy¾Y

unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x6d,0x7d,0x07,0x7f,0x6f,  //′øD¡êyμãμÄ12òõ0~9±àÂë
                            0xbf,0x86,0xdb,0xcf,0xe6,0xfd,0x87,0xff,0xef,};//2»′øD¡êyμãμÄ
void delay(uint z)   
{
        uint x,y;
        for (x=z;x>0;x--)
             for(y=110;y>0;y--);
}
void dsreset()   //DS18B20μĸ′룬3õê¼»ˉoˉêy
{
        uint i;
        ds=0;
        i=103;
        while(i>0)
                i--;
        ds=1;
   i=4;
while(i>0)
    i--;       
}
bit tempreadbit()   //¶á1λêy¾Yoˉêy
{
        uint i;
        bit dat;
        ds=0;i++;        //Ñóê±×÷óÃ
        dat=ds;
        i=8;
        while(i>0)
                i--;
                return(dat);
       
}
uchar tempreda()   //¶áò»¸ö×Ö½úêy¾Yoˉêy
{
        uchar i,j,dat;
        dat=0;
        for(i=1;i<=8;i++)
        {
                j=tempreadbit();
                dat=(j<<7)|(dat>>1);   //¶á3öμÄêy¾Y×îμíλÔú×îÇ°Ã棬ÕaÑù¸ÕoÃò»¸ö×Ö½úÔúdatàïÃæ
}
        return(dat);
        }
void tempwritebyte(uchar dat)    //ÏòDS18B20D′ò»¸ö×Ö½úêy¾Yoˉêy
{
        uint i;
        uchar j;
        bit testb;
        for(j=1;j<=8;j++)
        {
                testb=dat&0x01;
                dat=dat>>1;
                if(testb)
                {
                        ds=0;
                        i++;
                        i++;
                        ds=1;
                        i=8;
                        while(i>0)i--;
                }
                        else
                        {
                                ds=0;
                                i=8;
                                while(i>0)i--;
                                ds=1;
                                i++;i++;
                }
        }
}
void tempchange(void)      //DS18B20¿aê¼»ñè¡Î¶è2¢×a»»
{
        dsreset();
        delay(1);
         void tempwritebyte(0xcc);
         tempwritebyte(0x44);
}
uint get_temp()
{
        uchar a,b;
        dsreset();
        delay(1);
        tempwritebyte(0xcc);
        tempwritebyte(0xbe);
        a=tempread();
        b=tempread();
        temp=b;
        temp<<=8;
        temp=temp|a;
        f_temp=temp*0.0625;
        temp=_f_temp*10+0.5;
        f_temp=f_temp+0.05;
        return temp;
}
void display(uchar num,uchar dat)
{
        uchar i;
        P0=0;
        P0=table[dat];
        P2=0;
        i=0xff;
        i=i&(~((0x01)<<(num)));
        P0=i;
        P2=0;
        delay(1);
       
}
void dis_temp(uint i)
{
        uchar i;
        i=1/100;
        display(0,1);
        i=t%100/10;
        display(1,i+10);
        i=t%100%10;
        display(2,i);
       
}
void deal(uint t)
{
        if(t<=11)
                P1^7=1;
               
}

void main()
{
        uchar buff[4],i;
        while(1)
        {
                tempchange();
                for(i=10;i>0i--);
                {
                        dis_temp(get_temp());
                       
        }
                deal(temp);
                sprintf(buff,"%f",f_temp);
                for(i=10;i>0;i--)
                {
                        distemp(get_temp());
        }
}
}

错误是
compiling wgkzxt.c...
WGKZXT.C(87): error C141: syntax error near 'void'
wgkzxt.c - 1 Error(s), 0 Warning(s).

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:66032 发表于 2014-12-16 14:19 | 只看该作者
void tempchange(void)      //DS18B20¿aê¼»ñè¡Î¶è2¢×a»»
{
        dsreset();
        delay(1);
         tempwritebyte(0xcc);
         tempwritebyte(0x44);
}

评分

参与人数 1黑币 +7 收起 理由
xiaoyao + 7 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

板凳
ID:66032 发表于 2014-12-16 14:21 | 只看该作者
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x6d,0x7d,0x07,0x7f,0x6f,
                                          0xbf,0x86,0xdb,0xcf,0xe6,0xfd,0x87,0xff,0xef};
回复

使用道具 举报

地板
ID:70508 发表于 2014-12-16 15:40 | 只看该作者
mqwu 发表于 2014-12-16 14:21
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x6d,0x7d,0x07,0x7f,0x6f,
                         ...

谢谢你,问题已解决。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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