欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 各位大佬能不能指點(diǎn)一下……這個(gè)ad程序錯(cuò)在哪了……萌新上路啥也不會(huì)QAQxpt2046 [打印本頁]

作者: jarryzikaros    時(shí)間: 2017-12-13 00:09
標(biāo)題: 各位大佬能不能指點(diǎn)一下……這個(gè)ad程序錯(cuò)在哪了……萌新上路啥也不會(huì)QAQxpt2046
#include<reg52.h>#include<intrins.h>                        #define   uint unsigned int;          
#define  uchar unsigned char;
sbit A=P2^2;
sbit B1=P2^3;
sbit C=P2^4;
sbit DIN=P3^4;
sbit DCLK=P3^6;
sbit CS=P3^5;
sbit DOUT=P3^7;
uchar shownum,temp,i,j,bb,dat,aa;
uchar disp[4];uchar code num[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void temperture_write(uchar dat){      
uchar i;  
DCLK=0;  
for(i=0;i<8;i++)   
  {            DIN=dat >> 7;               
dat  <<=1;               
DCLK=0;       
        DCLK=1;         }  }   
uint temperture_read(void)
{   
uint j,dat=0;  
DCLK=0;
  for(j=0;j<12;j++)
  {      dat<<=1;
  DCLK=1;       
  DCLK=0;          
dat|=DOUT;   }  
return dat;
}
uint C51_read(uchar cmd)
{   uchar aa;   uint AD_value;
   DCLK=0;  
CS=0;  
temperture_write(cmd);   
for(aa=6;aa>0;aa--);   
DCLK=1;   
_nop_();
  _nop_();   
DCLK=0;  
_nop_();  
_nop_();  
AD_value=temperture_read();
  CS=1;   
return AD_value;}
是不是有什么口沒開?
作者: wulin    時(shí)間: 2017-12-13 15:30
你在哪里抄的程序片段?主程序main()都沒有,怎么運(yùn)行?
作者: jarryzikaros    時(shí)間: 2017-12-19 20:20
wulin 發(fā)表于 2017-12-13 15:30
你在哪里抄的程序片段?主程序main()都沒有,怎么運(yùn)行?

我我我是抄的....但是不寫main函數(shù)這個(gè)東西啊好像也不能運(yùn)行.....然后我試圖加了main函數(shù),就是一個(gè)顯示....您能看看嗎QAQ耽誤大佬時(shí)間了

#include<reg52.h>
#include<intrins.h>                       
#define  uint unsigned int;          
#define  uchar unsigned char;
uchar dat,i,cmd,temp,num;
uint AD_Value;
uint x,y,z;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
sbit wela=P2^6;
sbit dula=P2^7;
sbit DOUT = P3 ^ 7;  
sbit CLK  = P3 ^ 6;  
sbit DIN  = P3 ^ 4;   
sbit CS   = P3 ^ 5;   
void delay(uint);
void SPI_Write();
uint SP_Read()         ;
uint Read_AD_Data();
void main()
{        while(1)
    {
        SP_Read();
        SPI_Write(dat);
        Read_AD_Data(cmd);
    temp=0xfe;
    P1=temp;
    dula=1;
        P0=table[AD_Value];
        dula=0;
        wela=1;
        P0=0xc0;
        wela=0;
        num=1;
        delay(10);
        temp=_crol_(temp,1);
        P1=temp;
        delay(100);       
          
        }
}


void delay(uint z)
{  uint x,y;
   for(x=z;x>0;x--){
   for(y=110;y>0;y--){};
   };
}         
void SPI_Write(uchar dat)
{
    uchar i;
    CLK = 0;
    for(i=0; i<8; i++)
    {
        DIN = dat >> 7;     
        dat <<= 1;
        CLK = 0;            

        CLK = 1;
    }
}

uint SP_Read(void)
{
    uint i, dat = 0;
    CLK = 0;
    for(i = 0; i < 12; i++)     
    {
        dat <<= 1;

        CLK = 1;
        CLK = 0;

        dat |= DOUT;
    }
    return dat;
}

uint Read_AD_Data(uchar cmd)
{
    CLK = 0;
    CS  = 0;
    SPI_Write(cmd);
    for(i = 6; i > 0; i--);   
    CLK = 1;      
    _nop_();
    _nop_();
    CLK = 0;
    _nop_();
    _nop_();
    AD_Value = SPI_Read();
    CS = 1;
    return AD_Value;   
}
作者: jarryzikaros    時(shí)間: 2017-12-19 20:24
wulin 發(fā)表于 2017-12-13 15:30
你在哪里抄的程序片段?主程序main()都沒有,怎么運(yùn)行?

他說我
Build target 'Target 1'
compiling 溫控2.0.c...
溫控2.0.C(19): error C141: syntax error near ';'
溫控2.0.C(47): error C141: syntax error near ';'
溫控2.0.C(53): error C141: syntax error near ';'
溫控2.0.C(83): error C141: syntax error near ';'
Target not created
為什么呢?
作者: 奮斗de小青年    時(shí)間: 2017-12-19 22:07
第一個(gè)說錯(cuò)誤在19行,我看到你的19行是void delay(uint);你試著把里面的uint刪掉可那看,下面還有uint SP_Read()        ; 把空格刪掉,然后47,53,83這幾行,都是直接定義函數(shù)的就錯(cuò)了,應(yīng)該是上面的空格引起的,如果不是,就把下面的子函數(shù)全部復(fù)制到主函數(shù)之前,基本的原因應(yīng)該就是函數(shù)聲明的問題了
作者: 單片機(jī)設(shè)計(jì)時(shí)鐘    時(shí)間: 2017-12-19 22:48
函數(shù)要先定義,在主函數(shù)中一定要申明。  還要注意函數(shù)的返回值和變量
作者: jarryzikaros    時(shí)間: 2017-12-19 23:10
奮斗de小青年 發(fā)表于 2017-12-19 22:07
第一個(gè)說錯(cuò)誤在19行,我看到你的19行是void delay(uint);你試著把里面的uint刪掉可那看,下面還有uint SP_R ...

那個(gè)....謝謝大佬,但是現(xiàn)在我移了
#include<reg52.h>
#include<intrins.h>                       
#define  uint unsigned int;          
#define  uchar unsigned char;
uchar dat,i,cmd,temp,num;
uint AD_Value;
uint x,y,z;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
sbit wela=P2^6;
sbit dula=P2^7;
sbit DOUT = P3 ^ 7;  
sbit CLK  = P3 ^ 6;  
sbit DIN  = P3 ^ 4;   
sbit CS   = P3 ^ 5;   
void delay(uint z)
{  uint x,y;
   for(x=z;x>0;x--){
   for(y=110;y>0;y--){};
   };
}         
void SPI_Write(uchar dat)
{
    uchar i;
    CLK = 0;
    for(i=0; i<8; i++)
    {
        DIN = dat >> 7;     
        dat <<= 1;
        CLK = 0;            

        CLK = 1;
    }
}

uint SP_Read(void)
{
    uint i, dat = 0;
    CLK = 0;
    for(i = 0; i < 12; i++)     
    {       
        dat <<= 1;

        CLK = 1;
        CLK = 0;

        dat |= DOUT;
    }
    return dat;
}

uint Read_AD_Data(uchar cmd)
{
    CLK = 0;
    CS  = 0;
    SPI_Write(cmd);
    for(i = 6; i > 0; i--);   
    CLK = 1;      
    _nop_();
    _nop_();
    CLK = 0;
    _nop_();
    _nop_();
    AD_Value = SPI_Read();
    CS = 1;
    return AD_Value;   
}
void main()
{        while(1)
    {
        SP_Read();
        Read_AD_Data(0xD4);
    temp=0xfe;
    P1=temp;
    dula=1;
        P0=table[AD_Value];
        dula=0;
        wela=1;
        P0=0xc0;
        wela=0;
        num=1;
        delay(10);
        temp=_crol_(temp,1);
        P1=temp;
        delay(100);       
          
        }
}


然后....Build target 'Target 1'
assembling STARTUP.A51...
compiling 溫控2.0.c...
溫控2.0.C(19): error C141: syntax error near ';'
溫控2.0.C(25): error C141: syntax error near ';'
溫控2.0.C(55): error C141: syntax error near ';'
Target not created
作者: 奮斗de小青年    時(shí)間: 2017-12-20 09:19
jarryzikaros 發(fā)表于 2017-12-19 23:10
那個(gè)....謝謝大佬,但是現(xiàn)在我移了
#include
#include                       

你上面的定義里有空格,都刪掉先
sbit DOUT = P3^7;  
sbit CLK  = P3^6;  
sbit DIN  = P3^4;   
sbit CS   = P3^5;   
你的延時(shí)函數(shù)改成這樣
void delay(uint z)
{  uint x,y;
   for(x=z;x>0;x--)
   for(y=110;y>0;y--);
}
55行沒看出什么問題。你這些問題都是非常基礎(chǔ)的C語言編寫習(xí)慣的問題,沒有什么邏輯上的錯(cuò)誤,就是復(fù)制粘貼的時(shí)候一個(gè)空格一個(gè)分號什么的錯(cuò)誤,仔細(xì)一點(diǎn)查查基本沒有什么大問題
作者: angmall    時(shí)間: 2017-12-20 10:27
你的定義改成這樣
#define  uint unsigned int         
#define  uchar unsigned char


作者: angmall    時(shí)間: 2017-12-20 10:32
你的延時(shí)函數(shù)改成這樣
uint SPI_Read(void)
{
        uint i, dat = 0;
        CLK = 0;
        for(i = 0; i < 12; i++)     
        {        
                dat <<= 1;

                CLK = 1;
                CLK = 0;

                dat |= DOUT;
        }
        return dat;
}





歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1