音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁(yè) | 行業(yè)黑名單 | 幫助
維庫(kù)電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

GCC高人再來(lái)看一下。

作者:bn777 欄目:單片機(jī)
GCC高人再來(lái)看一下。
代碼:
void set(void)
{
    CHAR f_num=1;
    PORTB|=_BV(PB2);
    while(bit_is_clear(PINC,PC0));    
    while(f_num<>5)
    {
        while(bit_is_set(PIND,PD3))
        {
            disp_buf[3]=14;
            disp_buf[2]=10;
            disp_buf[1]=f_num;
            disp_buf[0]=14;    
            disp();
            if(bit_is_clear(PINC,PC1))
            {
                f_num++;
                while(bit_is_clear(PINC,PC1));
            }
            if(bit_is_clear(PIND,PD2))
            {
                f_num--;
                while(bit_is_clear(PIND,PD2));
            }
            if(f_num<1) f_num=1;
            if(f_num>5) f_num=5;
        }
        while(bit_is_clear(PIND,PD3));
        SWITCH(f_num)
        {
            case 1:
                key_dt(pub_data[1],23,0,12);
                key_dt(pub_data[0],59,0,13);
                break;
            case 2:
                key_dt(pub_data[3],12,1,12);
                key_dt(pub_data[2],31,1,13);
                break;
            case 3:
                key_dt(pub_data[4],199,0,12);
                key_dt(pub_data[5],99,0,13);
                break;
            case 4:
            
                break;
            case 5:
                save();
                break;
        }
    }
    PORTB&=0XFB;    
}
錯(cuò)誤提示:
> "make.exe" all

-------- begin --------
avr-gcc (GCC) 3.4.3
COPYRIGHT (C) 2004 Free SOFTWARE Foundation, Inc.
This is free SOFTWARE; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Size before:
main.elf  :
section           size      addr
.text             1166         0
.data               20   8388704
.bss                31   8388724
.noinit              0   8388755
.EEPROM              0   8454144
.debug_aranges      20         0
.debug_pubnames    303         0
.debug_info        977         0
.debug_abbrev      384         0
.debug_line       1198         0
.debug_str         317         0
Total             4416


AVR MEMORY Usage:
-----------------
DEVICE: ATMEGA8

Program:    1186 bytes (14.5% Full)
(.text + .data + .bootloader)

Data:         51 bytes (5.0% Full)
(.data + .bss + .noinit)



Compiling: main.c
avr-gcc -c -mmcu=ATMEGA8 -I. -gdwarf-2 -DF_CPU=8000000UL  -Os -funsigned-CHAR -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=main.lst  -std=gnu99 -MD -MP -MF .dep/main.o.d main.c -o main.o
main.c: In function `save':
main.c:40: warning: array subscript has type `CHAR'
main.c:40: warning: array subscript has type `CHAR'
main.c:47: warning: array subscript has type `CHAR'
main.c: In function `load':
main.c:59: warning: array subscript has type `CHAR'
main.c:59: warning: array subscript has type `CHAR'
main.c:59: warning: cast to pointer from integer of different size
main.c:66: warning: array subscript has type `CHAR'
main.c:66: warning: cast to pointer from integer of different size
main.c: In function `disp':
main.c:83: warning: array subscript has type `CHAR'
main.c:83: warning: array subscript has type `CHAR'
main.c: In function `set':
main.c:183: error: parse error before '>' token
main.c: At top level:
main.c:205: error: parse error before "while"
main.c:210: error: parse error before '[' token
main.c:210: warning: type defaults to `int' in declaration of `key_dt'
main.c:210: warning: function declaration isn't a prototype
main.c:210: warning: data definition has no type or storage class
main.c:214: error: parse
2樓: >>參與討論
bbear
上面的最后一句改為
void set(void)
{
    CHAR f_num=1;
    PORTB|=_BV(PB2);
    while(bit_is_clear(PINC,PC0));    
    while(f_num<>5)
    {

從你的程序的其他語(yǔ)句看來(lái),上面的最后一句改為:
    while(f_num != 5)
    {
應(yīng)該可以通過(guò)編譯。 當(dāng)然也有可能是
    while(f_num << 5)
    {

    while(f_num >> 5)
    {
//呵呵

3樓: >>參與討論
bn777
試試!
 
4樓: >>參與討論
bn777
中了!謝謝!
牛人!

5樓: >>參與討論
qjy_dali
真是好笑
我是第一次在C中見(jiàn)到f_num<>5這種寫(xiě)法的。樓主是不是想判斷不等于,在C中,這應(yīng)該是 f_num!=5

這和GCC還沒(méi)關(guān)系呢,只是C本身

6樓: >>參與討論
bn777
見(jiàn)笑了,用C編程頭一次,以前都用匯編。
我也不知道怎么會(huì)寫(xiě)了個(gè)<>,不過(guò)我還是比較佩服bbear老兄,他一眼就看出了我想表達(dá)的是不等。

7樓: >>參與討論
biansf2001
<>是vb的語(yǔ)法
 
8樓: >>參與討論
qjy_dali
這就是學(xué)習(xí)多種語(yǔ)言帶來(lái)的副作用,呵呵
 
9樓: >>參與討論
chenfeng08
我也是第一次用ICCAVR編程,出現(xiàn)了這樣的問(wèn)題.
程序是:
#include<io8535v.h>
#define uCHAR unsigned CHAR
#define uint unsigned int

void DelayMs (uint i)
{uint j;                            
for(;i!=0;i--)
{for(j=8000;j!=0;j--);}
}
void Horse(uCHAR i)
{SWITCH(i)
{case 1:PORTA=0x01;break;
  case 2:PORTA=0x03;break;
  case 3:PORTA=0x07;break;
  case 4:PORTA=0x0f;break;
  case 5:PORTA=0x1f;break;
  case 6:PORTA=0x3f;break;
  case 7:PORTA=0x7f;break;
  case 8:PORTA=0xff;break;                          
  default:break;}
}
void main(void)
{uCHAR i;
  DDRA=0xff;
  PORTA=0xff;
  PORTA=0x00;
  DelayMs(1000);
  while(1)
  {for(i=0;i<9;i++)
     {Horse(i);
       DelayMs(1000);}
      for(i=7;i!=0;i--)
       {Horse(i);
     
         DelayMs(1000);
       }
      }
   }
   
  
  信息是:
c:\icc\bin\imakew -f yang1.mak
   c:\icc\bin\imakew.exe:Don't know how to make /io8535v.h
   Done: there are error(s).Exit code:1
請(qǐng)問(wèn)一下這是什么一回事?
謝謝!

10樓: >>參與討論
chenfeng08
請(qǐng)指點(diǎn)一下,謝謝
是用ICCAVR,

11樓: >>參與討論
xzliu
在ICC中試了一下
把Horse函數(shù) case 8: 那一行后面多于字符去掉即可
程序排的亂七八糟

12樓: >>參與討論
javie
呵呵,少學(xué)一點(diǎn)語(yǔ)言
學(xué)精一點(diǎn)

13樓: >>參與討論
chenfeng08
謝謝!
把Horse函數(shù) case 8: 那一行后面多于字符去掉即可



javie:
  你好,看到你的回復(fù),很高興,也非常感謝你.

可我也看不出CASE 8:這一行有多于的字符,請(qǐng)說(shuō)清楚一點(diǎn),
可以嗎?
  謝謝!







14樓: >>參與討論
xzliu
真郁悶
明明是俺說(shuō)了真話(huà),javie只對(duì)他說(shuō)了“呵呵”,可javie排名51,他就謝謝人家,這年頭,和明星在一起總是吃虧。javie你回答他吧

15樓: >>參與討論
chenfeng08
哈哈!
xzliu
  哈哈!真不好意思,一時(shí)大意,把名字給弄錯(cuò)了,
我是要感謝你的,你能自己親手調(diào)試.
  我是剛開(kāi)始學(xué)AVR的,也是剛走進(jìn)這一行,
很想交一些朋友, 交個(gè)朋友吧!
  謝謝!

16樓: >>參與討論
xzliu
在這里幫過(guò)忙的都是朋友
網(wǎng)絡(luò)真是好,有問(wèn)題就發(fā)上來(lái),很快就有回復(fù)。俺就是一有問(wèn)題就發(fā)上來(lái),一兩天就有了答案

參與討論
昵稱(chēng):
討論內(nèi)容:
 
 
相關(guān)帖子
各位老大,來(lái)看看這段位操作的代碼怎么仿真不對(duì)呢
有個(gè)ISP下載的問(wèn)題請(qǐng)教一下雙龍,在線(xiàn)等
0-10V的信號(hào)輸入ATMEGA64的A/D端口需要怎樣轉(zhuǎn)換?
初學(xué)AVR,請(qǐng)教一下幾個(gè)基礎(chǔ)知識(shí),謝謝。。。
AVR單片機(jī)請(qǐng)教,單片機(jī)資源及穩(wěn)定性(AT90CAN128,類(lèi)似mega128)
免費(fèi)注冊(cè)為維庫(kù)電子開(kāi)發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)