新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 在IAR編譯器中使用NEC 78K0系列單片機(jī)

在IAR編譯器中使用NEC 78K0系列單片機(jī)

作者: 時(shí)間:2016-11-11 來源:網(wǎng)絡(luò) 收藏
最近在IAR編譯器下針對(duì)NEC78K0系列單片機(jī)作了一些開發(fā)。主要原因是IAR的編譯器確實(shí)編譯效果不錯(cuò)啊。最大體現(xiàn)就是編譯出的代碼空間比較小。畢竟人家是專門做編譯器的。
下面是最近學(xué)會(huì)的一些擴(kuò)展功能,寫出來共享。如果以后會(huì)用其它功能的的話,我會(huì)及時(shí)更新。
1、__disable_interrupt();__enable_interrupt();
這兩個(gè)大家一看應(yīng)該就知道是干什么用的了——禁止中斷和使能中斷的。
2、#pragma constseg = OPTBYTE
__root const CPU_CHAR OptionByte[5]=
{
0x00,
0x00,
0x00,
0x00,
0x02
};
#pragma constseg = default
使用NEC單片機(jī)的工程師知道,NEC的單片機(jī)里面有option byte這個(gè)東東。那么在IAR編譯器里面怎么設(shè)置option byte呢?如上所示。感覺IAR編譯器把OPTBYTE也做成一個(gè)關(guān)鍵字了。
3、__saddr unsigned char tick_10ms;
之前我介紹過,在NEC的單片機(jī)里有短地址直接尋址區(qū)域,如果想把變量放在這個(gè)區(qū)域的話,在IAR編譯器中是按照上述的格式書寫的。如果你還不太清楚短地址直接尋址區(qū)域,可以去看俺前面的文章。
4、__root const unsigned char SecuIDCode[] @ 0x0085 = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
想把常量放在某個(gè)固定的地址,參考上面的格式就可以了。只要把0x0085改成你期望的地址就行了。


關(guān)鍵詞: IAR編譯器NEC78K0系列單片

評(píng)論


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

關(guān)閉