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

QQ登錄

只需一步,快速開始

帖子
查看: 4688|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

急求急求大神幫助!!keil為什么編譯不了

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:79066 發(fā)表于 2015-5-8 10:38 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
求大神們幫忙看一下,這個(gè)程序?yàn)槭裁淳幾g不了(正在做基于單片機(jī)的信號(hào)發(fā)生器的設(shè)計(jì),拜托各位大神�。。�
#include<reg51.h>
#include<absacc.h>
#define ucharunsigned char
#defineDAC_DATA P0
sbit nWR=P3^6;
sbit nCS=P2^7;
unsigned inta;
voidclearmen();
voidkeyscan();
voiddelay1ms(unsigned char ms);
//正弦波產(chǎn)生子程序:
uchar codesin_tab[128]={64,67,70,73,76,79,82,85,88,91,94,96,99,102,104,106,
                    109,111,113,115,117,118,120,121,123,124,125,126,126,
                    127,127,127,127,127,127,127,126,126,125,124,123,121,
                    120,118,117,115,113,111,109,106,104,102,99,96,94,91,
                    88,85,82,79,76,73,70,67,64,60,57,54,51,48,45,42,39,
                     36,33,31,28,25,23,21,18,16,14,12,10,9,7,6,4,3,2,1,
                    1,0,0,0,0,0,0,0,1,1,2,3,4,6,7,9,10,12,14,16,18,21,23,
                    25,28,31,33,36,39,42,45,48,51,54,57,60
                                          };
//三角波產(chǎn)生子程序:
uchar codesan_tab[128]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,
                                          21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,
                                          39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,
                                          57,58,59,60,61,62,63,63,62,61,60,59,58,57,56,55,54,53,
                                          52,51,50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,
                                          34,32,31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,
                                          15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
                                          };


//方波產(chǎn)生子程序:
uchar codePos_tab[128]={0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255
                                          };
//鋸齒波產(chǎn)生子程序:
uchar codeJuC_tab[128]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,
                                          21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,
                                          39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,
                                          57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,
                                          75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,
                                          93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,
                                          108,109,110,111,112,113,114,115,116,117,118,119,120,
                                          121,122,123,124,125,126,127
                                          };
unsigned char code*DacPtr;
sbit K1=P1^4;
sbit K2=P1^5;
sbit K3=P1^6;
sbit K4=P1^7;
sbit K5=P1^3;
sbit K6=P1^2;
//
void main()
{
       clearmen();
       while(1)
{
              keyscan();


}
}
//
voidkeyscan()                          /鍵控部分/
{
    if(K1==0)                         /當(dāng)K1按下時(shí),產(chǎn)生正弦波/
       {     
              while(K1==0);
              DacPtr=sin_tab;
       }
       if(K2==0)                        /當(dāng)K2按下時(shí),產(chǎn)生三角波/
       {     
              while(K2==0);
              DacPtr=san_tab;
       }
       if(K3==0)                        /當(dāng)K3按下時(shí),產(chǎn)生方波/
       {     
              while(K3==0);
              DacPtr=Pos_tab;
       }
       if(K4==0)                        /當(dāng)K4按下時(shí),產(chǎn)生鋸齒波/
       {     
              while(K4==0);
              DacPtr=JuC_tab;
       }
    if(K5==0)                         /當(dāng)K5按下時(shí),波形頻率增大/
       {
              while(K5==0);
              FreqControl+=1;
              if(FreqControl>12)
              {
                     FreqControl=1;
              }
       }
       if(K6==0)                          /當(dāng)K6按下時(shí),波形頻率減小/
       {
              while(K6==0);
              FreqControl-=1;
              if(FreqControl<=0)
              {
                     FreqControl=12;
              }
       }
}
//================================================================
void clearmen()
{
    DacPtr=sin_tab;
       nCS=0;
       DAC_DATA=0xff;
    nWR=0;
       P3=0xff;
       TH1=255;
       TL1=155;
       TMOD=0x21;
       P3=0x00;
       a=0;
       ET1=1;
       TR1=1;
       EA=1;
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:1 發(fā)表于 2015-5-9 23:51 | 只看該作者
編譯的時(shí)候提示的什么錯(cuò)誤?
回復(fù)

使用道具 舉報(bào)

板凳
ID:79558 發(fā)表于 2015-5-10 20:06 | 只看該作者
錯(cuò)誤信息呢?
回復(fù)

使用道具 舉報(bào)

地板
ID:79560 發(fā)表于 2015-5-10 20:32 | 只看該作者
可能是keil的問(wèn)題把

評(píng)分

參與人數(shù) 1黑幣 +35 收起 理由
admin + 35 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

5#
ID:80238 發(fā)表于 2015-5-17 11:39 | 只看該作者
哪里出錯(cuò)了?

評(píng)分

參與人數(shù) 1黑幣 +35 收起 理由
admin + 35 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

6#
ID:7485 發(fā)表于 2015-5-17 17:56 | 只看該作者
你是剛剛?cè)腴T?
程序里面語(yǔ)法錯(cuò)誤太多�?纯聪旅嫖医o你改后的程序:

#include<reg51.h>
#include<absacc.h>
#define DAC_DATA P0
sbit nWR=P3^6;
sbit nCS=P2^7;
unsigned int a;
unsigned char FreqControl;
void clearmen();
void keyscan();
void delay1ms(unsigned char ms);
//正弦波產(chǎn)生子程序:
unsigned char code sin_tab[]={64,67,70,73,76,79,82,85,88,91,94,96,99,102,104,106,
                    109,111,113,115,117,118,120,121,123,124,125,126,126,
                    127,127,127,127,127,127,127,126,126,125,124,123,121,
                    120,118,117,115,113,111,109,106,104,102,99,96,94,91,
                    88,85,82,79,76,73,70,67,64,60,57,54,51,48,45,42,39,
                     36,33,31,28,25,23,21,18,16,14,12,10,9,7,6,4,3,2,1,
                    1,0,0,0,0,0,0,0,1,1,2,3,4,6,7,9,10,12,14,16,18,21,23,
                    25,28,31,33,36,39,42,45,48,51,54,57,60,};  
//三角波產(chǎn)生子程序:
unsigned char code san_tab[128]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,
                    21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,
                    39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,
                    57,58,59,60,61,62,63,63,62,61,60,59,58,57,56,55,54,53,
                    52,51,50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,
                    34,32,31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,
                    15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0};


//方波產(chǎn)生子程序:
unsigned char code Pos_tab[128]={0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,
                                          0,255
                                          };
//鋸齒波產(chǎn)生子程序:
unsigned char code JuC_tab[128]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,
                                          21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,
                                          39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,
                                          57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,
                                          75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,
                                          93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,
                                          108,109,110,111,112,113,114,115,116,117,118,119,120,
                                          121,122,123,124,125,126,127
                                          };
unsigned char code*DacPtr;
sbit K1=P1^4;
sbit K2=P1^5;
sbit K3=P1^6;
sbit K4=P1^7;
sbit K5=P1^3;
sbit K6=P1^2;
//
void main()
{
       clearmen(); //
       while(1)
{
              keyscan();


}
}
//
void keyscan()                          //鍵控部分/
{
    if(K1==0)                         //當(dāng)K1按下時(shí),產(chǎn)生正弦波/
       {     
              while(K1==0);
              DacPtr=sin_tab;
       }
       if(K2==0)                        //當(dāng)K2按下時(shí),產(chǎn)生三角波/
       {     
              while(K2==0);
              DacPtr=san_tab;
       }
       if(K3==0)                        //當(dāng)K3按下時(shí),產(chǎn)生方波/
       {     
              while(K3==0);
              DacPtr=Pos_tab;
       }
       if(K4==0)                        //當(dāng)K4按下時(shí),產(chǎn)生鋸齒波/
       {     
              while(K4==0);
              DacPtr=JuC_tab;
       }
    if(K5==0)                         //當(dāng)K5按下時(shí),波形頻率增大/
       {
              while(K5==0);
              FreqControl+=1;
              if(FreqControl>12)
              {
                     FreqControl=1;
              }
       }
       if(K6==0)                          //當(dāng)K6按下時(shí),波形頻率減小/
       {
              while(K6==0);
              FreqControl-=1;
              if(FreqControl<=0)
              {
                     FreqControl=12;
              }
       }
}
//================================================================
void clearmen()
{
    DacPtr=sin_tab;
       nCS=0;
       DAC_DATA=0xff;
    nWR=0;
       P3=0xff;
       TH1=255;
       TL1=155;
       TMOD=0x21;
       P3=0x00;
       a=0;
       ET1=1;
       TR1=1;
       EA=1;
}

評(píng)分

參與人數(shù) 1黑幣 +35 收起 理由
admin + 35 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表