目前我用的是IAR 3.10A版本,說實話我學430并應用不到一年,一直使用的IAR的環境,像什么AQ430此類環境沒用過(關鍵AQ430界面我覺得不符合我的工作習慣,可能由于以前用keil多了吧,呵呵)。可能沒資格說太多關于IAR的不好,但是就這短短時間內,我是發現了IAR這環境確實出現很多讓人覺得不爽的問題。可能很多人都有同感,細想就知道了,為什么一個軟件發布間隔期那么短,2.20――>3.10――>3.20――>3.30――>??呵呵,看來IAR公司的程序員也知道他們邏輯思維不夠嚴密,正在象微軟一樣補這補那的!正版還賣那么老貴,讓人有一種怒其不爭與受騙的感覺。所以我不會買正版也買不起,手頭也有3.10與3.20版本,比較后發現沒什么長進。廢話少說吧!!
1. 編譯器用FET調試時隨著下載次數增多,軟件運行會越來越慢,直至把電腦拖得慢如蝸牛。實在讓人惱火,重啟機器還不好使。網上提出我認為還算有效的方法就是把項目刪掉重建新項目,這樣雖說麻煩點兒,但總比在那死等好。這跟操作系統還無關,98、xp下我都遇到過(在公司我用98,在家用xp),3.10和3.20都有這毛病,不知新出的3.3x是否也有此現象?有的人說這是盜版原因造成的,可我在網上也看到用正版的網友也出現過類似情況,真是無可救藥!!
2. FET調試時,有時在watch窗口看不到變量值,更氣人的是有時竟然連全局變量都看不見,局部變量就更別說了。所以調程序時很多都是把局部變量全改成全局變量,要不然想把程序調好就像在黑夜里找黑人一樣難(自己還不是高手,所以還是得一步步來,呵呵)。重啟電腦――再調――不好使――再重啟電腦……累死啦!這個問題至今我沒有好的解決方法,哪位朋友有什么好的招數希望能跟大家共享一下。
3. 還有一點就是在調試時(好像Sim、FET下都存在,有點兒忘了),step or stepover時,那個綠色條(姑且先認為是代碼運行指示條吧)有時候就看不見,搞得以為程序沒運行呢,停止之后還不知道程序停在什么地方,把自己弄得滿頭霧水!個人總結可能由于運行Debug時,把匯編窗口關了之后(有時覺得匯編窗口礙眼,直接在C里看多爽!還能有更大視覺空間),出現此種情況幾率比較大,所以當我遇到此類情況時,只把匯編窗口壓成一小豎條窗口,雖說還是有點兒礙眼,但總比看不見綠條感覺好些!大家有什么更好的解決方法?
4. 聲明過的某些變量(局部的變量、指針等,全局的好像沒見過出現此種情況)編譯時出現警告,說定義了但沒使用??但程序里明明都賦值了!也作為參數傳了!搞不清楚這軟件是怎樣的邏輯!!雖說是警告,但無論怎樣都讓人覺得無法理解,心里總是有些許不爽。這種問題我實在找不出根源,沒有好的應對方法。諸位有遇到過此種情況嗎?怎么解決的?不妨共享一下!
5. 軟件仿真時,各種中斷是不會像keil那么方便有效地執行,假如你不作某些設置的話,永遠也進不了中斷服務程序,這在定時器作為精確定時時運用非常不便。這是我在調ucosII時發現的,由于當時懶得連到目標板,所以走了不少彎路,郁悶啊!而且設置產生中斷服務的參數是以時鐘周期數來衡量的,還得算1/f才知道定時時間,忒麻煩!這倒不是軟件的Bug,應該說是IAR的programmer的想法獨特!
6. 最后一點就是關于編譯器整體的毛病(我是這么認為的),我用的是3.10,就以它來說吧。這個版本在98下安裝,按照默認設置它識別不了中文(/*注釋內容*/),必須在字體里選好字體才可以。而且最氣人的一點就是不支持中文路經與中文項目名(公司不給我裝xp,所以項目名都是英文的,不過還能習慣)。而這種情況在xp下就完全沒有,裝完后就可以直接識別中文,包括注釋、項目名、路經等。看來還是IAR軟件的兼容問題啊!
以上就是我這段時間以來用IAR的東西總結出來的,可能有些表述不當,但確確實實是我親身經歷過的。可能它還有別的問題,只是我沒發現,大家若發現有其他問題不妨也提出來,共同探討嗎,少走彎路!我就納悶了,為什么就不能做得像keilc那么穩定呢?感覺像帶了點兒肉的雞肋!