本帖最后由 3010203109 于 2013-3-31 18:38 編輯 WIN7下IAR破解安裝 對于學(xué)習(xí)AVR單片機的人來說,IAR是必不可少的開發(fā)軟件。IAR以編譯效率高著稱,相比AVR STUDIO 6.0,它有小巧的體型,這點對于電腦配置不是很高的童鞋來說是很有利的,用過之后就有感受了。廢話少說,下面介紹破解過程。 找到CD-EWAVR-5511文件夾下的autorun.exe,運行,選擇第二項,遇到要輸License的地方,先停下,看下面的操作: 進入cmd窗口(開始>運行>輸入“cmd”>ENTER) 1、輸入破解文件(CD-EWAVR_keygen)所在的盤符,如D盤,就在cmd窗口輸入“d:”(不含引號),按下 ENTER 2、獲取ID,找到IARID.EXE所在路徑,如F:\IAR for AVR 5.51\CD-EWAVR_keygen\IARID.EXE,就輸入“cd IAR for AVR 5.51\CD-EWAVR_keygen”,按下ENTER,再輸入“IARID”,按下 ENTER,此時應(yīng)生成ID號,如 0x274F5 3、生成license,輸入“IARKG 0x274F5>License.txt”,0x274F5為之前生成的ID,按下ENTER,此時破解 文件夾下出現(xiàn)License.txt 4、打開License.txt,找到“EWAVR”所對應(yīng)的Installserial和Key,在安裝過程中提示輸入時輸入,破解完 成 我用的是WIN7 32位旗艦版系統(tǒng),親測成功,祝各位好運! 文件太大,需要安裝包及破解文件的請留郵箱。 IAR使用總結(jié) 1、IAR與Dragon連不上 先看驅(qū)動,插上DRAGON,打開設(shè)備管理器,如果其中有AVR DRAGON,說明已經(jīng)有驅(qū)動了,如果沒有,右鍵“更新驅(qū)動程序軟件”,選擇“瀏覽計算機以查找驅(qū)動程序軟件”,選擇IAR安裝目錄下的drivers\dragon,如C:\Program Files\IAR Systems\Embedded Workbench 5.4\avr\drivers\dragon,確定,安裝。 裝好驅(qū)動后,還要設(shè)置一下IAR。鼠標右擊一個工程,選擇OPTIONS,在General Options中選擇單片機類型,OK。接下來是重點。 進入Debugger,在Drivers中有許多仿真器可選,注意不要選Dragon,選擇JTAGICE mkII,OK。進入JTAGICE mkII>Extra Options,把鉤選上,在下面的框中輸入“--drv_dragon”(不含引號),OK。 接下來在菜單欄Dragon中選中Fuse Handler,如果能讀出熔絲位,恭喜,你的Dragon已經(jīng)和IAR連上了。 2、如何延時 傳統(tǒng)的延時函數(shù) void delay(long t) {while(t--);} 在IAR中會被優(yōu)化掉而無法實現(xiàn)延時,但是IAR為我們提供了另一種延時方法 延時頭文件<delay.h>定義如下: #ifndef __IAR_DELAY_H #define __IAR_DELAY_H #include <intrinsics.h> #define F_CPU 11.059200//晶振頻率,單位:MHZ。此語句最好定義在c文件開頭 #define delay_us(x) __delay_cycles ((unsigned long)(x * F_CPU)) #define delay_ms(x) __delay_cycles ((unsigned long)(x * F_CPU*1000UL)) #define delay_s(x) __delay_cycles ((unsigned long)(x * F_CPU*1000000UL)) #endif 把delay.h文件放入工程文件夾下,c文件開頭聲明#include"delay.h" 接下來就可以在C文件中直接使用us,ms,s級的延時了。如,延時100ms,就寫“delay_ms(100);”,OK。 用這種方式延時應(yīng)該是相當精確的,我曾用這個延時函數(shù)模擬UART通信,成功地實現(xiàn)了通信。 3、如何按位操作 從51轉(zhuǎn)到AVR的人很快會遇到一個煩惱,AVR似乎不能進行位操作了!不用急,來看IAR怎么進行位操作。 對PA0的位操作可以這樣寫: PORTA_Bit0=1; PORTA_Bit0=~PORTA_Bit0 ; 也可以先#define PA0 PORTA_Bit0,就可以寫成: PA0=1; PA0=~PA0; 4、如何生成Hex文件 打開工程,進入Options,選擇linker,在水平菜單中找到Extra Options ,勾選Use command line options,然后再下面輸入“-Ointel-extended,(CODE)=.hex”(不包括引號)。以后編譯(準確說是make)后就會在工程文件夾下>Debug>Exe中生成Hex文件了 5、包含宏的位定義 看下面程序: uint8_t usart1_getchar(void) { // Wait for incomming data while (!(UCSR1A & (1 << RXC1))); // Return the read data return UDR1; } 編譯報錯是因為RXC1未定義,進入Options>General Options>System,勾選Enable bit definitions in I/O-Include files就行了 6、IAR仿真運行不穩(wěn)定 根據(jù)我使用IAR的經(jīng)驗,發(fā)現(xiàn)IAR仿真運行時容易出問題,有時甚至燒片子。大家有知道原因的請指教。我的解決辦法是不用仿真,直接ISP下載程序。由于IAR不支持ISP,我是用AVR Studio來下載的。 7、優(yōu)化問題 編譯器會將它認為沒有意義的變量忽略掉,如果有些變量不想被優(yōu)化,可在變量前加volatile 如:volatile char temp=0; |
|
來自: 風(fēng)之library > 《IAR》