新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > ICC AVR 過渡到 AVR STUDIO

ICC AVR 過渡到 AVR STUDIO

作者: 時間:2016-11-10 來源:網(wǎng)絡(luò) 收藏
列出ICCAVR過渡到AVRSTUDIO時要注意的幾個問題

1.頭文件更改

本文引用地址:http://butianyuan.cn/article/201611/317461.htm

ICCAVR使用的是“#include

AVRSTUDIO更改為“#include<avr/io.h>”

在ICC中使用不同MCU的頭文件是不同的,在AVRstudio中所有MCU的頭文件都用“#include

2.AVRstudio中延時函數(shù)可直接使用“#include”頭文件中的延時函數(shù):

void_delay_us(double__us);

void_delay_ms(double__ms);

兩個函數(shù)的參數(shù)均為double型的,通常使用整數(shù)延時即可。

(函數(shù)最大延時時間是有限制的,參考“util/delay.h”)

3.中斷函數(shù)寫法不同

在ICC中斷函數(shù)名可以自定義

列出ATmega16的向量表:


#defineIT_RESET1
#defineIT_INT02
#defineIT_INT13
#defineIT_TIMER2_COMP4
#defineIT_TIMER2_OVF5
#defineIT_TIMER1_CAPT6
#defineIT_TIMER1_COMPA7
#defineIT_TIMER1_COMPB8
#defineIT_TIMER1_OVF9
#defineIT_TIMER0_OVF10
#defineIT_SPI_STC11
#defineIT_USART_RXC12
#defineIT_USART_UDRE13
#defineIT_USART_TXC14
#defineIT_ADC15
#defineIT_EE_RDY16
#defineIT_ANA_COMP17
#defineIT_TWI18
#defineIT_INT219
#defineIT_TIMER0_COMP20
#defineIT_SPM_RDY21

#pragmainterrupt_handleruser_fuc:Interruptvectornumber

如:

#pragmainterrupt_handlerTime2:iv_TIMER2_COMP

voidTime2()

{

}

AVRstudio中需添加“#include”頭文件且中斷函數(shù)名不能自定義

如:

#include

ISR(SIG_OVERFLOW0)//定時器/計數(shù)器0溢出中斷(ICCAVR過渡到AVRSTUDIO


4.一些庫函數(shù)的不同

ICCAVRstudio

nop()asm("nop")

WDR()asm("wdr")

CLI()cli()

SEI()sei()



關(guān)鍵詞: ICCAVRSTUDI

評論


技術(shù)專區(qū)

關(guān)閉