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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

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

各位大佬能不能指點(diǎn)一下……這個(gè)ad程序錯(cuò)在哪了……萌新上路啥也不會(huì)QAQxpt2046

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:260413 發(fā)表于 2017-12-13 00:09 來自手機(jī) | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
#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;}
是不是有什么口沒開?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:213173 發(fā)表于 2017-12-13 15:30 | 只看該作者
你在哪里抄的程序片段?主程序main()都沒有,怎么運(yùn)行?
回復(fù)

使用道具 舉報(bào)

板凳
ID:260413 發(fā)表于 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;   
}
回復(fù)

使用道具 舉報(bào)

地板
ID:260413 發(fā)表于 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
為什么呢?
回復(fù)

使用道具 舉報(bào)

5#
ID:263980 發(fā)表于 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ù)聲明的問題了
回復(fù)

使用道具 舉報(bào)

6#
ID:259274 發(fā)表于 2017-12-19 22:48 | 只看該作者
函數(shù)要先定義,在主函數(shù)中一定要申明。  還要注意函數(shù)的返回值和變量
回復(fù)

使用道具 舉報(bào)

7#
ID:260413 發(fā)表于 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
回復(fù)

使用道具 舉報(bào)

8#
ID:263980 發(fā)表于 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è)分號(hào)什么的錯(cuò)誤,仔細(xì)一點(diǎn)查查基本沒有什么大問題
回復(fù)

使用道具 舉報(bào)

9#
ID:155507 發(fā)表于 2017-12-20 10:27 | 只看該作者
你的定義改成這樣
#define  uint unsigned int         
#define  uchar unsigned char

回復(fù)

使用道具 舉報(bào)

10#
ID:155507 發(fā)表于 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;
}
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 日本三级做a全过程在线观看 | 久久狠狠| 亚洲一区二区不卡在线观看 | 欧美高清hd| 99久久精品免费看国产四区 | 日韩一区二区三区在线观看视频 | 91亚洲精品在线 | 亚洲国产精品久久 | 午夜精品久久久久久久久久久久 | 国产ts人妖系列高潮 | 一区二区在线 | 中文字幕日韩欧美一区二区三区 | 九九久久99 | 99精品一区| 蜜桃精品视频在线 | 国产网站在线播放 | 免费久久网 | 成人在线免费视频观看 | 成人欧美一区二区三区在线观看 | 亚洲精品视频观看 | 亚洲成人精品一区 | 中文字幕在线一 | 日日夜夜狠狠操 | 国产精品免费在线 | 97在线观视频免费观看 | 蜜桃视频在线观看免费视频网站www | 久久久久久久久久久高潮一区二区 | 久久婷婷av| 亚洲人在线播放 | 亚洲天堂一区二区 | 欧美中文字幕在线观看 | 国产一级片精品 | 国产高清一二三区 | 欧美中文字幕一区二区三区亚洲 | 国产一区二区在线播放 | 伊人网国产 | 99亚洲精品| 亚洲精品一区二区在线观看 | 久久国产精品99久久久久久丝袜 | 久久大陆 | 久久精品久久精品 |