MICROCHIP-LOGO

MICROCHIP XC8 C Compiler Version 2.45 ndetu mwepụta maka AVR MCU

MICROCHIP-XC8-C-Ndị nchịkọta-ụdị-2-45- ndetu mwepụta-maka-AVR-MCU-PRO

Ozi ngwaahịa

MPLAB XC8 C Compiler bụ ngwa sọftụwia ejiri maka ebumnuche Microchip AVR ngwaọrụ. Emebere ya iji chịkọta koodu C ma mepụta nke enwere ike ime ya files maka ngwaọrụ ndị a. Ụdị nchịkọta nke a na-ezo aka na ntuziaka onye ọrụ a bụ 2.45, yana ụbọchị ọrụ ọrụ nke Ọgọst 18, 2023. Ụdị nke gara aga bụ 2.41, nke e wuru na February 8, 2023. Onye nchịkọta na-abịa na akwụkwọ ntuziaka nchekwa ọrụ, nke na-enye ozi ndị ọzọ. yana ntuziaka mgbe ị na-eji ndị nchịkọta MPLAB XC nwere ngwa nchekwa na-arụ ọrụ. Agụnyere akwụkwọ ntuziaka a na ngwugwu akwụkwọ mgbe ịzụrụ ikikere nchekwa na-arụ ọrụ. MPLAB XC8 C Compiler na-akwado ngwaọrụ 8-bit AVR MCU niile dị n'oge ewepụtara. Ị nwere ike zoo aka na avr_chipinfo.html file n'ime akwụkwọ ndekọ aha doc nke mkpokọta maka ndepụta ngwaọrụ niile akwadoro yana ntọala bit nhazi ha. Enwere mbipụta MPLAB XC8 dị iche iche dị. Mpempe akwụkwọ ikike (PRO) na-enye nkwalite dị elu ma e jiri ya tụnyere mbipụta efu. Iji mee ka onye na-achịkọta ihe rụọ ọrụ dị ka ngwaahịa enyere ikike, ị ga-azụta igodo mmalite. Agbanyeghị, ụdị enweghị ikike enwere ike iji ya na-enweghị ikike. Maka ngwa nchekwa na-arụ ọrụ, ihe nchịkọta nchekwa nchekwa MPLAB XC8 dị. Ọ chọrọ ikikere nchekwa arụrụ arụ nke azụrụ na Microchip maka ịgbalite. Ozugbo etinyere ya, enwere ike iji ọkwa niile kachasị mma yana njirimara mkpokọta. Mpempe nchekwa nchekwa na-arụ ọrụ MPLAB XC na-akwadokwa ikikere nkesa netwọkụ. Enwere ike ịchọta ozi zuru ezu gbasara nrụnye, ịgbalite, ụdị ikike na okwu mbugharị na akwụkwọ ntinye na ikike MPLAB XC C Compilers (DS50002059).

Ntuziaka ojiji ngwaahịa

  1. Tupu ị na-agba ọsọ MPLAB XC8 C Compiler software, gụọ akwụkwọ ntuziaka onye ọrụ maka ozi dị mkpa na ntuziaka akọwapụtara maka ichebe ngwaọrụ Microchip AVR.
  2. Ọ bụrụ na ị na-eji ihe nchịkọta maka ngwaọrụ 8-bit PIC, rụtụ aka na ndetu mwepụta MPLAB XC8 C Compiler maka akwụkwọ PIC.
  3. Gbaa mbọ hụ na sistemụ arụ ọrụ gị na-emezu ihe achọrọ maka ịgbakọ mkpokọta. Ebinyela ọnụọgụ abụọ maka macOS koodu yana notary. Ihe nkesa ikike netwọkụ MPLAB XC dị maka Microsoft Windows 10 na n'elu, Ubuntu 18.04 na n'elu, yana macOS 10.15 na n'elu. Rịba ama na anwaleghị ihe nkesa ikike netwọkụ MPLAB XC na sistemụ arụmọrụ ndị a.
  4. Enwere ike ịgba ihe nkesa ikike netwọkụ MPLAB XC na igwe mebere nke OS akwadoro site na iji ikike igwe mebere maka ikikere netwọkụ (SW006021-VM). Ụdị 32-bit niile nke MPLAB XC Network Server kwụsịrị site na ụdị 3.00.
  5. Iji mee ka MPLAB XC8 C Compiler rụọ ọrụ dị ka ngwaahịa nwere ikike (PRO), zụta igodo ịgbalite. Nke a ga-enye ọkwa kachasị elu ma e jiri ya tụnyere ụdị efu. Agbanyeghị, enwere ike ịrụ ọrụ mkpokọta enweghị ikike na-enweghị ikike.
  6. Ọ bụrụ na ị na-eji MPLAB XC8 Functional Safety Compiler maka ngwa nchekwa arụ ọrụ, a ga-eji ikikere nchekwa arụrụ arụ ọrụ zụtara na Microchip. Onye nchịkọta agaghị arụ ọrụ na-enweghị ikike a. Ozugbo arụnyere ya ọrụ, ị nwere ike họrọ ọkwa nkwalite ọ bụla wee jiri atụmatụ mkpokọta niile. A na-akwado ikike nkesa netwọkụ site na ntọhapụ nke MPLAB XC Functional Safety Compiler.
  7. Maka nkọwa zuru ezu na nrụnye, ịgbalite, na inye ikike nke MPLAB XC8 C Compiler, rụtụ aka na ntinye na ikike MPLAB XC C Compilers (DS50002059).
  8. Ọ bụrụ na ị na-agbakọ mkpokọta n'okpuru ikike nyocha, ị ga-enweta ịdọ aka ná ntị n'oge nchịkọta mgbe ịnọ n'ime ụbọchị 14 nke njedebe nke oge nleba anya gị. A na-enye otu ịdọ aka ná ntị ahụ ma ọ bụrụ na ịnọ n'ime ụbọchị iri na anọ nke njedebe nke ndenye aha HPA gị.

gafereview

Okwu mmalite
Mwepụta a nke ihe nchịkọta Microchip MPLAB® XC8 C nwere ọtụtụ atụmatụ ọhụrụ, ndozi ahụhụ na nkwado maka ngwaọrụ ọhụrụ.

Ụbọchị owuwu
Ụbọchị arụ ọrụ nke ụdị mkpokọta a bụ 18 Ọgọst 2023.

Ụdị gara aga
Ụdị nchịkọta MPLAB XC8 C gara aga bụ 2.41, nke e wuru na 8 February, 2023.

Akwụkwọ ntuziaka nchekwa ọrụ
Akwụkwọ ntuziaka nchekwa na-arụ ọrụ maka ndị nchịkọta MPLAB XC dị na ngwugwu akwụkwọ mgbe ịzụrụ ikike nchekwa na-arụ ọrụ.

Ikikere akụrụngwa na ụdị
A na-ede ma kesaa MPLAB XC8 C Compiler maka ngwa AVR MCU n'okpuru GNU General Public License (GPL) nke pụtara na koodu isi mmalite ya na-ekesa n'efu ma dị maka ọha. Enwere ike ibudata koodu mmalite maka ngwaọrụ n'okpuru GNU GPL iche na Microchip's websaịtị. Ị nwere ike ịgụ GNU GPL na file akpọrọ aha ya bụ subdirectory nke ndekọ nwụnye gị. Enwere ike ịhụ mkparịta ụka izugbe nke ụkpụrụ na-adabere na GPL ebe a. Enyere koodu nkwado maka nkụnye eji isi mee files, scripts njikọ, na ọba akwụkwọ oge a na-agba ọsọ bụ koodu nwe ya na ekpuchighị ya n'okpuru GPL. Onye nchịkọta a bụ mmejuputa ụdị GCC 5.4.0, binutils ụdị 2.26, ma na-eji avr-libc ụdị 2.0.0.

Achọrọ Sistemụ
Mpempe akwụkwọ MPLAB XC8 C na ngwa inye ikike ọ na-eji dị maka sistemụ arụmọrụ dị iche iche, gụnyere ụdị 64-bit nke ndị a: mbipụta ọkachamara nke Microsoft® Windows® 10, Ubuntu® 18.04, macOS® 13.2 (Ventura), na Fedora 34. Binarị maka Windows abịanyela aka na koodu. Ebinyela ọnụọgụ abụọ maka macOS koodu yana notary. Ihe nkesa ikike netwọkụ MPLAB XC dị maka sistemụ arụmọrụ 64-bit dị iche iche, gụnyere Microsoft Windows 10 na karịa; Ubuntu 18.04 na n'elu; ma ọ bụ macOS 10.15 na karịa. Ihe nkesa ahụ nwekwara ike ịgba ọsọ na sistemụ arụmọrụ ndị ọzọ gụnyere Windows Server, Linux nkesa, dị ka Oracle® Enterprise Linux® na Red Hat® Enterprise Linux yana ụdị ochie nke sistemụ arụmọrụ akwadoro. Agbanyeghị, anaghị anwale sava ikike netwọkụ MPLAB XC na sistemụ arụmọrụ ndị a. Enwere ike ịgba ihe nkesa ikike netwọkụ MPLAB XC na igwe mebere nke OS akwadoro site na iji ikike igwe mebere maka ikikere netwọkụ (SW006021-VM). Ụdị 32-bit niile nke MPLAB XC Network Server kwụsịrị site na ụdị 3.00.

Ngwa akwadoro
Ngwakọta a na-akwado ngwaọrụ 8-bit AVR MCU niile dị n'oge ewepụtara. Hụ avr_chipinfo.html (na akwụkwọ ndekọ aha onye nchịkọta) maka ndepụta ngwaọrụ niile akwadoro. Faịlụ ndị a depụtakwara bit ntọala maka ngwaọrụ ọ bụla.

Mbipụta na nkwalite ikike
Enwere ike ịgbanye ihe nchịkọta MPLAB XC8 dị ka ngwaahịa nwere ikike (PRO) ma ọ bụ nke enweghị ikike (N'efu). Ịkwesịrị ịzụta igodo ịgbalite iji nye ndị nchịkọta gị ikike. Akwụkwọ ikike na-enye ohere maka nkwalite dị elu ma e jiri ya tụnyere ngwaahịa efu. Enwere ike ịrụ ọrụ nchịkọta na-enweghị ikike na-enweghị ikike. Ekwesịrị iji ikike nchekwa arụ ọrụ zụtara na Microchip rụọ ọrụ MPLAB XC8 nchekwa nchekwa ọrụ. Onye nchịkọta agaghị arụ ọrụ na-enweghị ikike a. Ozugbo arụnyere ya ọrụ, ị nwere ike họrọ ọkwa nkwalite ọ bụla wee jiri atụmatụ mkpokọta niile. Mwepụta a nke MPLAB XC Ọrụ Safety Compiler na-akwado ikike nkesa netwọkụ. Hụ akwụkwọ ntinye na inye ikike MPLAB XC C Compilers (DS50002059) maka ozi gbasara ụdị ikike na ntinye akwụkwọ ikike.

Nwụnye na ịgbalite
Hụkwa ngalaba Okwu Mbugharị na oke oke maka ozi dị mkpa gbasara onye njikwa ikike kachasị ọhụrụ gụnyere ya na mkpokọta a. Ọ bụrụ na ị na-eji MPLAB IDE, jide n'aka na ịwụnye ụdị MPLAB X IDE 5.0 kachasị ọhụrụ ma ọ bụ karịa tupu ịwụnye ngwa a. Kwụsị IDE tupu ịwụnye ihe nchịkọta. Gbaa ngwa .run (Linux) ma ọ bụ .app (macOS) nchịkọta ihe nrụnye, dịka XC8-1.00.11403-windows.exe wee soro ntuziaka dị na ihuenyo. A na-akwado ndekọ ndekọ nwụnye nke ndabara. Ọ bụrụ na ị na-eji Linux, ị ga-etinyerịrị ihe nchịkọta site na iji ọnụ yana site na akaụntụ mgbọrọgwụ. Wụnye site na iji akaụntụ macOS nwere ikike nchịkwa. A na-arụ ọrụ ugbu a iche iche maka nrụnye. Hụ akwụkwọ njikwa ikike maka MPLAB® XC C Compilers (DS52059) maka ozi ndị ọzọ. Ọ bụrụ n’ịhọrọ ịme ihe mkpokọ n’okpuru ikike nyocha, ị ga-enweta ịdọ aka ná ntị n’oge mkpokọta mgbe ịnọ n’ime ụbọchị iri na anọ nke ngwụcha oge nleba anya gị. A na-enye otu ịdọ aka ná ntị ahụ ma ọ bụrụ na ịnọ n'ime ụbọchị iri na anọ nke njedebe nke ndenye aha HPA gị. Ihe nkesa ikike netwọkụ XC bụ ihe nrụnye dị iche ma etinyeghị ya na nwụnye otu onye ọrụ. Onye njikwa ikike XC na-akwado ịkwọgharị ikikere netwọkụ na-efegharị efegharị. Ezubere maka ndị na-eji ekwentị mkpanaaka, njirimara a na-enye ohere ka ịpụ na netwọkụ maka obere oge. N'iji njirimara a, ị nwere ike ịkwụsị na netwọk ma ka na-eji ihe nchịkọta MPLAB XC gị. Hụ nchekwa doc nke XCLM install maka ihe ndị ọzọ gbasara njirimara a. MPLAB X IDE gụnyere windo ikike (Ngwaọrụ> Akwụkwọ ikike) iji jikwaa mkpagharị anya.

Na-edozi nsogbu nwụnye
Ọ bụrụ na ị na-enweta ihe isi ike ịwụnye compiler n'okpuru sistemụ arụmọrụ Windows ọ bụla, nwaa aro ndị a.

  • Gbaa wụnye dị ka onye nchịkwa.
  • Tọọ ikike nke ngwa installer ka ọ bụrụ 'njikwa zuru oke'. (Pịa aka nri faịlụ, họrọ Properties, Security tab, họrọ onye ọrụ, dezie.)
  • Tọọ ikike nke nchekwa temp ka ọ bụrụ 'njikwa zuru oke'.

Iji chọpụta ebe nchekwa temp, pịnye % temp% n'ime iwu Run (igodo logo Windows + R). Nke a ga-emepe mkparịta ụka onye nyocha faịlụ na-egosi ndekọ ahụ ma nye gị ohere ikpebi ụzọ nchekwa ahụ.

Akwụkwọ nchịkọta
Enwere ike imepe ntuziaka onye ọrụ nchịkọta site na ibe HTML nke na-emepe na ihe nchọgharị gị mgbe ịpị bọtịnụ enyemaka na-acha anụnụ anụnụ dị na MPLAB X IDE dashboard, dị ka egosiri na nseta ihuenyo.MICROCHIP-XC8-C-Ndị nchịkọta-ụdị-2-45- ndetu mwepụta-maka-AVR-MCU-1

Ọ bụrụ na ị na-ewu maka ebumnuche 8-bit AVR, MPLAB® XC8 C Compiler User's Guide for AVR® MCU nwere ozi gbasara nhọrọ na njirimara ndị ahụ na-achịkọta ndị metụtara ụkpụrụ ụlọ a.

Nkwado ndị ahịa
Ị nwere ike ịjụ ajụjụ nke ndị ọrụ ndị ọzọ nke ngwaahịa a na XC8 Forum. Microchip na-anabata mkpesa ahụhụ, ntụnye ma ọ bụ nkwupụta gbasara ụdị mkpokọta a. Biko duzie mkpesa ahụhụ ọ bụla ma ọ bụ arịrịọ atụmatụ site na Sistemụ Nkwado.

Mmelite akwụkwọ

Maka ụdị akwụkwọ MPLAB XC8 n'ịntanetị na nke ọhụrụ, biko gaa na akwụkwọ nka nka na ntanetị Microchip. websaịtị.
Akwụkwọ AVR ọhụrụ ma ọ bụ emelitere na mwepụta a:

Ọ dịghị

  • AVR® GNU Toolchain to MPLAB® XC8 Migration Guide na-akọwa mgbanwe na koodu isi mmalite na iwu nhọrọ nke enwere ike ịchọrọ ma ị kpebie ịkwaga ọrụ dabere na C site na AVR 8-bit GNU Toolchain gaa na Microchip MPLAB XC8 C Compiler.
  • Akwụkwọ ntuziaka nrụtụ aka n'ọbanyere Microchip na-akọwa omume na nlegharị anya n'ọrụ ndị Microchip Unifid Standard Library kọwapụtara, yana ebumnuche ebumnuche nke ụdị ọba akwụkwọ na nnukwu. Ụfọdụ ozi a dịbu na MPLAB® XC8 C Compiler User's Guide maka AVR® MCU. Ozi ọba akwụkwọ akọwapụtara ngwaọrụ ka dị na ntuziaka nchịkọta akụkọ a.
  • Ọ bụrụ na ị na-amalite na ngwaọrụ 8-bit yana MPLAB XC8 C Compiler, MPLAB® XC8 User's.
  • Ntuziaka maka ndị injinia agbakwunyere - AVR® MCU (DS50003108) nwere ozi gbasara ịtọlite ​​​​ọrụ na MPLAB X IDE yana koodu ederede maka ọrụ MPLAB XC8 C mbụ gị. A na-ekesa ntuziaka a na onye nchịkọta.
  • Ezubere ntuziaka onye ọrụ Hexmate maka ndị na-agba Hexmate ka ngwa kwụụrụ onwe ya.

Kedu nke pụtara ọhụrụ

Ihe ndị a bụ atụmatụ atụmatụ AVR ọhụrụ nke ndị nchịkọta na-akwado ugbu a. Nọmba mbipute dị na isi okwu nta a na-egosi ụdị nchịkọta mbụ iji kwado atụmatụ ndị na-esote.

Ụdị 2.45
Onye njikwa ikike nke Universal (XC8-3175, XCLM-224) Ụdị macOS nke onye njikwa ikike ejiri na mkpokọta bụ ugbu a zuru ụwa ọnụ, na-enye nkwado ala ala maka ma igwe dabere na Intel- na M1. Ụdị Linux nke njikwa ikike ugbu a chọrọ opekata mpe ụdị 2.25 nke glibc. ọnụọgụ abụọ nke Mac Universal (XC8-3168, XC8-2951) Faịlụ ọnụọgụ abụọ maka macOS bụ ugbu a zuru ụwa ọnụ, na-enye nkwado ala ala maka igwe dabere na Intel na M1. Ebelatala nha ọbá akwụkwọ na-efegharị efegharị (XC8-3112, XC8-3071) emeziwanyela n'ọrụ ọba akwụkwọ na-efegharị efegharị, gụnyere sinf() pow(), sqrt(), expf(), log1fp(), na nextafterf() , nke na-ahụ mbelata nha koodu maka usoro ndị a. Nkwado ngwaọrụ ọhụrụ dị ugbu a maka akụkụ AVR ndị a: AVR16EA28, AVR16EA32, AVR16EA48, AVR32EA28, AVR32EA32, AVR32EA48, AVR16EB14, AVR16EB20, AVR16VREB28EB, na AVR16EB32EB

Ụdị 2.41

  • Nkwado Bootrow (XC8-3053) Onye nchịkọta ga-etinye ọdịnaya nke ngalaba ọ bụla na prefix .bootrow na adreesị 0x860000 na faịlụ HEX. A na-eji akụkụ ndị a maka ebe nchekwa BOOTROW, nke emebere maka nchekwa igodo na ozi ndị ọzọ echekwara nke kwesịrị ịnweta naanị bootloader.
  • Mwepụ nloghachi na-adịghị agwụ agwụ (XC8-3048) Onye nchịkọta ga-ewepụ ugbu a ntụziaka ret na-adịghị arụ ọrụ na ọdụ ọdụ mgbe ejiri scripts njikọ omenala. Nke a bụ nkwalite yiri nke a rụrụ na mbụ, mana a na-eme ya ugbu a na ngalaba niile nke ụmụ mgbei, ọ bụrụgodị na ejiri edemede njikọ omenala eme ihe yana atụmatụ oke nke dabara adaba adịghị n'egwuregwu.
  • Ụdị oge mgbanwe mgbanwe (XC8-2982, 2932) Ụdị ọba akwụkwọ ọkọlọtọ C99, time_t agbanweela site na ogologo ogologo gaa na ụdị ogologo na-edeghị aha, nke na-enye nkwalite koodu-nha na ụfọdụ ọrụ metụtara oge, dị ka mktime().
  • New nop (XC8-2946, 2945) agbakwunyere nnukwu NOP() na . Macro a na-etinye ntụziaka enweghị ọrụ n'ime mmepụta.
  • Nwelite na XCLM (XC8-2944) Onye njikwa ikike eji ya na mkpokọta emelitere ma na-anabata nke ọma ugbu a mgbe ị na-elele nkọwa ikike nke mkpokọta.
  • Trampoku olined (XC8-2760) Onye nchịkọta ihe nwere ike ugbu a dochie ntuziaka oku ogologo ogologo yana oku ikwu dị mkpụmkpụ mgbe ụdị ntuziaka ahụ na-adịkarị na-agaghị aga ebe ha na-aga. N'ọnọdụ a, onye nchịkọta ga-anwa iji ntuziaka rall dochie ntuziaka oku jmp ga-tr.ampoline' ogbugbu gaa na adreesị achọrọ, maka exampLe:

Ụdị 2.40

  • Nkwado ngwaọrụ ọhụrụ dị ugbu a maka akụkụ AVR ndị a: AT90PWM3, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR64DD28E AVR64EA32.
  • Abstraction usoro emelitere ngwa ọrụ njikarịcha usoro (PA) ka enwere ike ịkọwapụta koodu nwere ntuziaka oku ọrụ (oku/oku). Nke a ga-eme naanị ma ọ bụrụ na ejighị ngwugwu ahụ nyefee arụmụka ma ọ bụ nweta uru nloghachi site na ọrụ ahụ. A na-eji nchịkọta ahụ mgbe a na-akpọ ọrụ nwere ndepụta arụmụka agbanwe agbanwe ma ọ bụ mgbe a na-akpọ ọrụ na-ewe arụmụka karịa ka enwere ndekọ ahaziri maka nke a. Enwere ike gbanyụọ njirimara a site na iji nhọrọ - mno-pa-outline-calls, ma ọ bụ abstraction usoro nwere ike gbanyụọ kpamkpam maka faịlụ ihe na ọrụ site na iji -mno-pa-on-file -mno-pa-on-function, n'otu n'otu, ma ọ bụ site n'iji njirimara nopa (__nopa spicifier) ​​họrọ ya na ọrụ.
  • Mpempe akwụkwọ mkpuchi koodu Onye nchịkọta ugbu a na-akọwapụta nnukwu __CODECOV ma ọ bụrụ na akọwapụtara nhọrọ -mcodecov bara uru.
  • Nhọrọ ndokwa ebe nchekwa Onye ọkwọ ụgbọ ala xc8-cc ga-anabata nhọrọ -mreserve=space@start:ngwụgwụ mgbe a na-ewu maka ebumnuche AVR. Nhọrọ a na-edobere oke ebe nchekwa akọwapụtara na data ma ọ bụ ohere ebe nchekwa mmemme, na-egbochi onye njikọ ibipụta koodu ma ọ bụ ihe dị na mpaghara a.
  • Smarter smart IO emela ọtụtụ nkwalite na ọrụ Smart IO, gụnyere tweaks izugbe na koodu printf, na-emeso nkọwa ntụgharị%n dị ka ihe dị iche iche nọọrọ onwe ya, na-ejikọ usoro ihe omume vararg na-achọ, na-eji ụdị data dị mkpụmkpụ ebe enwere ike ijikwa ya. Arụmụka arụ ọrụ IO, yana imepụta koodu nkịtị na obosara mpaghara na njikwa ziri ezi. Nke a nwere ike ibute koodu dị mkpa na nchekwa data, yana ịbawanye ọsọ igbu nke IO.

Ụdị 2.39 (Mwepụta Nchekwa na-arụ ọrụ)
Ikikere nkesa netwọkụ Mwepụta a nke MPLAB XC8 Ọrụ Safety Compiler na-akwado ikike nkesa netwọkụ.

Ụdị 2.36
Ọ dịghị.

Ụdị 2.35

  • Nkwado ngwaọrụ ọhụrụ dị maka akụkụ AVR ndị a: ATTINY3224, ATTINY3226, ATTINY3227, AVR64DD14, AVR64DD20, AVR64DD28, na AVR64DD32.
  • Ngbanwe ọnọdụ ọnọdụ emelitere Nhọrọ -mcall-isr-prologues ọhụrụ na-agbanwe ka ọrụ nkwụsịtụ si echekwa ndekọ na ntinye yana otu esi eweghachi ndekọ ndị ahụ mgbe usoro nkwụsịtụ kwụsịrị. Ọ na-arụ ọrụ n'otu aka ahụ na nhọrọ -mcall-prologues, mana ọ na-emetụta naanị ọrụ nkwụsịtụ (ISRs).
  • Ọbụna ngbanwe ọnọdụ gburugburu ka emelitere Nhọrọ -mgas-isr-prologues ọhụrụ na-ejikwa koodu mgbanwe ọnọdụ emepụtara maka obere usoro nkwụsịtụ ọrụ. Mgbe enyere ya aka, njirimara a ga-enwe onye na-ezukọta nyochaa ISR maka ojiji ndekọ ma chekwaa naanị ndekọ ndị a ejiri ma ọ bụrụ na achọrọ ya.
  • Maapụ flash nwere ike ịgbanwere Ụfọdụ ngwaọrụ dị na ezinụlọ AVR DA na AVR DB nwere SFR (dịka FLMAP) nke na-akọwapụta akụkụ 32k nke ebe nchekwa mmemme ga-edobe n'ime ebe nchekwa data. Enwere ike iji nhọrọ ọhụrụ - mconst-data-in-config-mapped-progmem mee ka onye njikọ tinye data niile ruru eru n'otu mpaghara 32k wee bido aha SFR dị mkpa na-akpaghị aka iji hụ na e debere data a n'ime ebe nchekwa data. , ebe a ga-enweta ya nke ọma.
  • Ọbá akwụkwọ ọkọlọtọ Microchip jikọtara ọnụ niile MPLAB XC ga-ekekọrịta ọbá akwụkwọ Microchip Unified Standard, nke dị ugbu a na ntọhapụ nke MPLAB XC8 a. Ntuziaka onye ọrụ MPLAB® XC8 C Compiler maka AVR® MCU anaghịzi agụnye akwụkwọ maka ọrụ ọkọlọtọ ndị a. Enwere ike ịchọta ozi a ugbu a na ntuziaka nrụtụ aka n'ọba akwụkwọ Microchip. Mara na ụfọdụ ọrụ avr-libc kọwaburu na mbụ adịkwaghị. (Lee ọrụ ụlọ akwụkwọ.)
  • Smart IO Dị ka akụkụ nke ọba akwụkwọ ọhụrụ ejikọtara ọnụ, ọrụ IO na ụlọ obibi akwụkwọ na nyocha bụ ahaziri ahaziri n'ụlọ ọ bụla, dabere na otu esi eji ọrụ ndị a na mmemme. Nke a nwere ike belata nke ukwuu akụrụngwa nke mmemme na-eji.
  • Nhọrọ enyemaka Smart IO Mgbe ị na-enyocha oku gaa na ọrụ IO smart (dị ka printf() ma ọ bụ scanf() onye nchịkọta enweghị ike ikpebi mgbe niile site na eriri usoro ma ọ bụ wepụta na arụmụka ndị nkọwa ntụgharị ahụ chọrọ site na oku a. Enweghị echiche ma hụ na ejikọtara ọrụ IO na-arụ ọrụ nke ọma na onyonyo mmemme ikpeazụ agbakwunyere ka onye ọrụ nwee ike ịgwa onye na-achịkọta ihe nkọwa ntụgharị nke ọrụ IO nwere ọgụgụ isi na-eji nke ojiji ha enweghị mgbagwoju anya, na-egbochi ogologo oge IO usoro iji jikọta ya (Lee nhọrọ usoro smart-io maka nkọwa ndị ọzọ.)
  • Ịtụkwasị ngalaba omenala Na mbụ, nhọrọ -Wl,-nhọrọ-mmalite naanị na-edobere ngalaba akọwapụtara na adreesị achọrọ mgbe edemede njikọ kọwara ngalaba mmepụta nwere otu aha ahụ. Mgbe nke ahụ na-abụghị nke ahụ, etinyere ngalaba ahụ na adreesị nke onye na-ejikọta ya họọrọ ma leghaara nhọrọ ahụ anya. Ugbu a, a ga-asọpụrụ nhọrọ ahụ maka ngalaba omenala niile, ọbụlagodi na edemede njikọ akọwaghị ngalaba ahụ. Otú ọ dị, rịba ama na maka ngalaba ọkọlọtọ, dị otú ahụ .text, .bss ma ọ bụ .data , onye na-ekenye ihe kachasị mma ga-enwe ike ịchịkwa ntinye ha kpamkpam, na nhọrọ agaghị enwe mmetụta ọ bụla. Jiri nhọrọ -Wl,-Tsection=adr, dị ka akọwara na ntuziaka onye ọrụ.

Ụdị 2.32

  • Ntuziaka nchịkọta dị na ikike nchịkọta PRO, njirimara nduzi nchịkọta nchịkọta nwere ike iji chọpụta omimi kachasị nke nchịkọta ọ bụla nke mmemme na-eji. Ọ na-ewu ma na-enyocha eserese oku nke mmemme, na-ekpebi oke ojiji nke ọrụ ọ bụla, wee wepụta akụkọ, nke enwere ike ịmata omimi nke ngwugwu mmemme a na-eji. Agbanyere atụmatụ a site na nhọrọ ahịrị iwu -mchp-stack-usage. A na-ebipụta nchịkọta nke ojiji ngwugwu ka emechara ya. Akụkọ nchịkọta zuru ezu dị na faịlụ maapụ, nke enwere ike ịrịọ ka ọ dị na mbụ.
  • Nkwado ngwaọrụ ọhụrụ dị maka akụkụ AVR ndị a: ATTINY427, ATTINY424, ATTINY426, ATTINY827, ATTINY824, ATTINY826, AVR32DB32, AVR64DB48, AVR64DB64, AVR64DB28, AVR32DB28, na AVR64DB32 na AVR32DB48.
  • Nkwado ngwaọrụ eweghachitere adịkwaghị maka akụkụ AVR ndị a: AVR16DA28, AVR16DA32 na, AVR16DA48.

Ụdị 2.31
Ọ dịghị.

Ụdị 2.30

  • Nhọrọ ọhụrụ iji gbochie mmalite data Nhọrọ ọkwọ ụgbọala ọhụrụ -mno-data-init na-egbochi mmalite nke data na ikpochapụ akụkụ bss. Ọ na-arụ ọrụ site n'ịkwụsị mmepụta nke akara do_clear_bss na faịlụ mgbakọ, nke ga-egbochi ntinye nke usoro ndị ahụ site na njikọ.
  • Nkwalite nkwalite enwere ọtụtụ nkwalite nkwalite, gụnyere mwepụ nke ntuziaka nloghachi na-adịghị arụ ọrụ, mwepụ nke ụfọdụ jumps na-eso nkuzi skip-if-bit-bụ, yana mma abstraction usoro na ikike ịmegharị usoro a.
    Nhọrọ ndị ọzọ dị ugbu a iji jikwaa ụfọdụ n'ime njikarịcha ndị a, kpọmkwem -fsection- arịlịka, nke na-enye ohere ịnweta ihe ndị kwụ ọtọ n'ihe metụtara otu akara; -mpa-iterations=n , nke na-enye ohere ịgbanwe ọnụọgụ abstraction nke usoro site na ndabara nke 2; na, -mpa-callcost-shortcall, nke na-eme ihe ike karịa abstraction usoro, na-atụ anya na onye njikọ nwere ike izuike ogologo oku. Nhọrọ ikpeazụ a nwere ike ịbawanye nha koodu ma ọ bụrụ na emezughị echiche ndị dị n'okpuru.
  • Nkwado ngwaọrụ ọhụrụ dị maka akụkụ AVR ndị a: AVR16DA28, AVR16DA32, AVR16DA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR128DA28 AVR128DB32, AVR128DB48 na AVR128DB64.
  • Nkwado nkwado na-akwado ngwa ngwa maka AVR na-esote: Ata5272, Ata5790, Ata5790, Ata5791, Ata5795, Ata6285c, Ata6286c, na ATA6612.

Ụdị 2.29 (Mwepụta Nchekwa na-arụ ọrụ)

  • Faịlụ nkụnye eji isi mee maka ihe nrụpụta arụnyere n'ime ka ị hụ na onye nchịkọta nwere ike dabara na nkọwa asụsụ dị ka MISRA, , emelitere. nkụnye eji isi mee nwere ụdị maka ọrụ arụrụ arụ niile, dị ka __builtin_avr_nop() na __builtin_avr_delay_cycles() . Ụfọdụ arụnyere nwere ike ọ gaghị akwado MISRA; enwere ike ịhapụ ihe ndị a site na ịgbakwunye nkọwa __XC_STRICT_MISRA na ahịrị iwu nchịkọta. Emelitela ihe arụnyere n'ime ya na nkwupụta ha ka iji ụdị obosara etinyere.

Ụdị 2.20

  • Nkwado ngwaọrụ ọhụrụ dị maka akụkụ AVR ndị a: ATTINY1624, ATTINY1626, na ATTINY1627.
  • Oke kacha mma dabara adaba kacha mma nke kacha mma (BFA) na mkpokọta ka ekenye ngalaba n'usoro na-enye ohere kacha mma. BFA na-akwado oghere adreesị aha ya na ijikwa mmalite data nke ọma.
  • Abstraction usoro emelitere A na-eme njikarịcha abstraction nke usoro n'usoro koodu karịa. Ọnọdụ ndị gara aga ebe njikarịcha a nwere ike ịbawanye nha koodu ka agbadoro anya site na ime ka koodu njikarịcha mara maka usoro nchịkọta mkpofu njikọ.
  • Enweghi onye na-agbakọ AVR AVR Assembler esokwaghị na nkesa a.

Ụdị 2.19 (Mwepụta Nchekwa na-arụ ọrụ)
Ọ dịghị.

Ụdị 2.10

  • Mkpuchi Usoro Ntọhapụ a gụnyere njirimara mkpuchi koodu nke na-eme ka nyocha nke ókè etinyere koodu isi mmalite ọrụ. Jiri nhọrọ -mcodecov=ram mee ya. Mgbe emechara mmemme na ngwaike gị, a ga-achịkọta ozi mkpuchi koodu na ngwaọrụ ahụ, yana MPLAB X IDE nwere ike ibufe ya ma gosipụta ya site na ngwa mgbakwunye koodu. Hụ akwụkwọ IDE maka ozi gbasara ngwa mgbakwunye a nwere ike nweta.
    Enwere ike iji #pragma nocodecov wepụ ọrụ ndị na-esote na nyocha mkpuchi. Ọ dị mma, a ga-agbakwunye pragma na mmalite nke faịlụ ka ewepu faịlụ ahụ dum na nyocha mkpuchi. N'aka nke ọzọ, enwere ike iji __attribute__((nocodecov)) wepụ otu ọrụ akọwapụtara na nyocha mkpuchi.
  • Faịlụ nkọwa ngwaọrụ Faịlụ ngwaọrụ ọhụrụ a na-akpọ avr_chipinfo.html dị na akwụkwọ ndekọ aha nke nkesa mkpokọta. Faịlụ a depụtara ngwaọrụ niile nke ndị nchịkọta na-akwado. Pịa aha ngwaọrụ, ma ọ ga-emepe ibe na-egosi ntọala ntọala bit/uru bara uru maka ngwaọrụ ahụ, yana ex.amples.
  • Nhazi nke abstraction usoro, nke na-eji oku na-edochi n'ụdị ngọngọ ahụ dochie ngọngọ nkịtị nke ngọngọ ahụ, agbakwunyere na onye nchịkọta. A na-eme ihe ndị a site na ngwa iche iche, nke ndị nchịkọta na-akpọ ya na-akpaghị aka mgbe ị na-ahọrọ nkwalite ọkwa 2, 3 ma ọ bụ s. Nkwalite ndị a na-ebelata nha koodu, mana ha nwere ike ibelata ọsọ ogbugbu yana mwepu koodu. Enwere ike gbanyụọ abstraction nke usoro na ọkwa kachasị elu site na iji nhọrọ -mno-pa, ma ọ bụ nwee ike ịme ya na ọkwa njikarịcha dị ala (n'okpuru ikike gị) site na iji -mpa. Enwere ike gbanyụọ ya maka faịlụ ihe site na iji -mno-pa-on-file=fileaha , ma ọ bụ nwee nkwarụ maka ọrụ site na iji -mno-pa-on-function=ọrụ. N'ime koodu isi mmalite gị, enwere ike gbanyụọ abstraction usoro maka otu ọrụ site na iji __attribute__((nopa)) na nkọwa ọrụ ahụ, ma ọ bụ site na iji __nopa, nke na-agbasa ruo __attribute__ ((nopa, noinline)) wee si otú a gbochie ọrụ inlining ime. na enwere abstraction nke koodu inlined.
  • Mkpọchi nkwado bit na pragma Enwere ike iji nhazi #pragma ugbu a iji kọwaa bits mkpọchi AVR yana ihe nhazi ndị ọzọ. Lelee faịlụ avr_chipinfo.html (akpọtụrụ n'elu) maka ụzọ abụọ ntọala/uru iji jiri pragma a.
  • Nkwado ngwaọrụ ọhụrụ dị maka akụkụ ndị a: AVR28DA128, AVR64DA128, AVR32DA128, na AVR48DA128.

Ụdị 2.05

  • More bits maka ego gị Ụdị macOS nke mkpokọta na njikwa ikike bụ ngwa 64-bit ugbu a. Nke a ga-ahụ na onye nchịkọta ga-arụnye ma na-agba ọsọ na-enweghị ịdọ aka ná ntị na ụdị macOS na nso nso a.
  • Ihe eji eme ihe na ebe nchekwa mmemme Onye na-achịkọta nwere ike tinye ugbu a ihe ndị tozuru oke na ebe nchekwa Flash, kama ịnwe ihe ndị a na RAM. Emezigharịrị ihe nchịkọta ihe ka e wee chekwaa data zuru ụwa ọnụ tozuru oke na ebe nchekwa mmemme ma enwere ike nweta data a ozugbo na na-apụtaghị ìhè site na iji ntuziaka ebe nchekwa dabara adaba. Enyere atụmatụ ọhụrụ a site na ndabara mana enwere ike gbanyụọ ya site na iji nhọrọ -mno-const-data-in-progmem. Maka avrxmega3 na avrtiny architectures, a naghị achọ njirimara a ma nwee nkwarụ mgbe niile, ebe ọ bụ na a na-edepụta ebe nchekwa mmemme n'ime oghere adreesị data maka ngwaọrụ ndị a.
  • Ụdị nke enweghị ikike (Free) n'efu nke nchịkọta a na-enye ohere ịkwalite ruo yana gụnyere ọkwa 2. Nke a ga-enye ohere nke yiri ya, ọ bụ ezie na ọ bụghị otu, mmepụta na ihe enwere ike na mbụ site na iji ikikere Standard.
  • Nabata AVRASM2 AVRASM2 maka ngwaọrụ 8-bit abanyela ugbu a na nrụnye ihe nchịkọta XC8. Onye na-achịkọta XC8 anaghị eji mgbakọ a, mana ọ dị maka ọrụ dabere na isi mmalite ọgbakọ ejiri aka dee.
  • Nkwado ngwaọrụ ọhụrụ dị maka akụkụ ndị a: ATMEGA1608, ATMEGA1609, ATMEGA808, na ATMEGA809.

Ụdị 2.00

  • Ọkwọ ụgbọala dị elu Ọkwọ ụgbọala ọhụrụ, nke a na-akpọ xc8-cc, na-anọdụ ugbu a karịa onye ọkwọ ụgbọ ala avr-gcc gara aga na onye ọkwọ ụgbọ ala xc8, ọ nwere ike ịkpọ onye nchịkọta kwesịrị ekwesị dabere na nhọrọ nke ngwaọrụ ezubere iche. Ọkwọ ụgbọala a na-anabata nhọrọ ụdị GCC, nke a na-atụgharị maka ma ọ bụ bufee ya na onye nchịkọta a na-egbu. Onye ọkwọ ụgbọ ala a na-enye ohere ka ejiri ụdị nhọrọ ndị yiri ya nwere semantics na ebumnuche AVR ma ọ bụ PIC ọ bụla ma bụrụkwa ụzọ akwadoro ịkpọku onye nchịkọta. Ọ bụrụ na achọrọ ya, enwere ike ịkpọ onye ọkwọ ụgbọ ala ochie avr-gcc ozugbo site na iji nhọrọ ụdị ochie ọ nabatara na ụdị mkpokọta mbụ.
  • Interface C nkịtị Nke a na-achịkọta nwere ike dabara na MPLAB Common C Interface, na-enye ohere ka ọ dị mfe ibufe koodu isi mmalite n'ofe MPLAB XC niile. Nhọrọ -mext=cci na-arịọ atụmatụ a, na-eme ka syntax ọzọ dị maka ọtụtụ ndọtị asụsụ.
  • Onye ọkwọ ụgbọ ala ọhụrụ edobere onye ọkwọ ụgbọ akwụkwọ ọhụrụ n'elu onye na-agụ akwụkwọ PIC gara aga yana onye na-agụ akwụkwọ AVR avr-ar. Ọkwọ ụgbọala a na-anabata nhọrọ ụdị GCC-archiver, nke a na-atụgharị maka ma ọ bụ bufee onye na-agụ akwụkwọ a na-egbu. Ọkwọ ụgbọala ọhụrụ ahụ na-enye ohere ka e jiri ụdị nhọrọ ndị yiri ya nwere semantics mepụta ma ọ bụ megharịa faịlụ ọbá akwụkwọ PIC ma ọ bụ AVR ọ bụla ma bụrụkwa ụzọ akwadoro ịkpọku onye na-agụ akwụkwọ. Ọ bụrụ na achọrọ ya maka ọrụ nketa, enwere ike ịkpọ onye na-agụ akwụkwọ gara aga ozugbo site na iji nhọrọ ụdị ochie ọ nabatara na nsụgharị ndị nnakọta mbụ.

Okwu Mbugharị

Ihe ndị a bụ njirimara nke ndị nchịkọta na-ahazi ugbu a dị iche iche. Mgbanwe ndị a nwere ike ịchọ mgbanwe na koodu isi mmalite gị ma ọ bụrụ na ibuga koodu na ụdị mkpokọta a. Nọmba mbipute dị na isi okwu nta a na-egosi ụdị mkpokọta mbụ iji kwado mgbanwe ndị na-esochi.

Ụdị 2.45
Ọ dịghị.

Ụdị 2.41
Ewepụrụ ọrụ fma na-ezighi ezi (XC8-2913) Ọbá akwụkwọ ọkọlọtọ C99 ( ) agbakọghị nke ukwuu-gbakwunye na enweghị ngwụcha na otu okirikiri, kama chịkọbara njehie okirikiri na ọrụ ọ bụla. Ewepụla ọrụ ndị a n'ọbá akwụkwọ ewepụtara.

Ụdị 2.40
Ọ dịghị.

Ụdị 2.39 (Mwepụta Nchekwa na-arụ ọrụ)
Ọ dịghị.

Ụdị 2.36
Ọ dịghị.

Ụdị 2.35

  • Ijikwa eriri-na bases (XC8-2420) Iji hụ na nkwekọ na ndị nchịkọta XC ndị ọzọ, eriri XC8-na-arụ ọrụ, dị ka strtol () wdg, agaghịzi anwa ịtụgharị eriri ntinye ma ọ bụrụ na ntọala akọwapụtara karịrị 36. na ga kama ịtọ . Ọkọlọtọ C anaghị akọwapụta omume nke ọrụ ahụ mgbe uru ntọala a gafere.
  • Nkwalite ọsọ na-ekwesịghị ekwesị A na-eme ka njikarịcha abstraction usoro mgbe a na-ahọpụta njikarịcha ọkwa 3 (-O3). Ngosipụta ndị a na-ebelata nha koodu na-efu nke ọsọ koodu, yabụ na ekwesighi ime ya. Ọrụ ndị na-eji ọkwa nkwalite a nwere ike ịhụ ọdịiche dị na nha koodu yana ọsọ igbu mgbe ejiri ntọhapụ a rụọ ya.
  • Ọrụ ọba akwụkwọ Koodu maka ọtụtụ ọrụ ọba akwụkwọ ọkọlọtọ C na-abịa ugbu a site na Microchip's Unifid Standard Library, nke nwere ike igosipụta omume dị iche iche n'ọnọdụ ụfọdụ ma e jiri ya tụnyere nke ọbá akwụkwọ avr-libc mbụ nyere. Maka examplee, ọ dịghịkwa mkpa ijikọ n'ọbá akwụkwọ lprintf (-lprintf_flt nhọrọ) ka ịgbanwuo nkwado IO ahazipụtara maka nkọwapụta usoro-float. Atụmatụ IO smart nke Microchip Unifid Standard Library na-eme ka nhọrọ a ghara ịdị irè. Na mgbakwunye, iji _P suffixed routines maka eriri na ọrụ ebe nchekwa (eg strcpy_P() wdg..) na-arụ ọrụ na const strings na flash adịghịzi mkpa. Ọkọlọtọ C na-eme usoro (dịka strcpy() ga-arụ ọrụ nke ọma na ụdị data ahụ mgbe agbanyere njirimara nchekwa const-data-in-program-memory.

Ụdị 2.32
Ọ dịghị.

Ụdị 2.31
Ọ dịghị.

Ụdị 2.30
Ọ dịghị.

Ụdị 2.29 (Mwepụta Nchekwa na-arụ ọrụ)
Ọ dịghị.

Ụdị 2.2
Gbanwee okirikiri nhọrọ ukwuu DFP Onye nchịkọta ihe na-ewerezi nhazi dị iche nke DFPs (Ngwungwu Ezinụlọ Ngwaọrụ na-eji). Nke a ga-apụta na DFP merela agadi nwere ike ọ gaghị arụ ọrụ na ntọhapụ a, ndị na-achịkọta ndị okenye agaghị enwe ike iji DFP ọhụrụ.

Ụdị 2.19 (Mwepụta Nchekwa na-arụ ọrụ)
Ọ dịghị.

Ụdị 2.10
Ọ dịghị

Ụdị 2.05
Ihe eji eme ihe na ebe nchekwa mmemme Rịba ama na a ga-edobe ihe ndị tozuru oke na ndabara ma nweta ya na ebe nchekwa mmemme (dị ka akọwara ebe a). Nke a ga-emetụta nha na ọsọ mmezu nke ọrụ gị, mana kwesịrị ibelata ojiji RAM. Enwere ike gbanyụọ njirimara a, ọ bụrụ na achọrọ ya, na-eji nhọrọ -mno-const-data-in-progmem.

Ụdị 2.00

  • Nhazi fuses Ngwa nhazi ngwaọrụ nwere ike hazie ya site na iji config pragma na-esote ya na ụzọ abụọ ntọala bara uru iji kọwapụta steeti fuse, dịka #pragma config WDTON = SET #pragma config BODLEVEL = BODLEVEL_4V3
  • Ihe na ọrụ zuru oke Enwere ike idowe ihe na ọrụ ugbu a na adreesị akọwapụtara na ebe nchekwa site na iji CCI __at(adreesị) nkọwa, maka ex.ampLe:
    • #gụnye
      int foobar __at (0x800100);
      char __at (0x250) getID (int offset) {… }
      Arụmụka dị na nkọwapụta a ga-abụrịrị mgbe niile na-anọchi anya adreesị ebe a ga-etinye byte ma ọ bụ ntụziaka nke mbụ. A na-egosi adreesị RAM site na iji nkwụsị nke 0x800000. Kwado CCI ka o jiri njirimara a.
  • syntax ọrụ nkwụsịtụ ọhụrụ Onye nchịkọta na-anakwere nkọwapụta CCI__interrupt(num) iji gosi na ọrụ C bụ ndị na-akwụsịtụ. Ihe nkọwapụta na-ewere nọmba nkwụsịtụ, maka example: #gụnyere efu __interrupt(SPI_STC_vect_num) spi_Isr(ihe efu) { … }

Okwu edoziri

Ndị na-esonụ bụ mmezi emere ndị nchịkọta. Ndị a nwere ike idozi ahụhụ dị na koodu emepụtara ma ọ bụ gbanwee ọrụ nke mkpokọta ka ọ bụrụ nke e bu n'obi ma ọ bụ akọwapụtara ya site na ntuziaka onye ọrụ. Nọmba mbipute dị na isi okwu nta a na-egosi ụdị nchịkọta mbụ nwere ndozi maka okwu ndị na-esote. Akara akara (s) nwere bracketed na aha bụ njirimara nke ahụ na nchekwa data nsochi. Ndị a nwere ike ịba uru ma ọ bụrụ na ịchọrọ ịkpọtụrụ nkwado.
Rịba ama na a na-edozi ụfọdụ ihe gbasara ngwaọrụ na ngwugwu Family Pack (DFP) jikọtara na ngwaọrụ ahụ. Hụ Onye njikwa ngwugwu MPLAB maka ozi gbasara mgbanwe emere na DFP yana budata ngwugwu ọhụrụ.

Ụdị 2.45

  • Ọdịda ikike ịnyagharị (XCLM-235) Ikikere agagharịghị arụ ọrụ nke ọma na nyiwe Linux site na iji ụdị glibc mechara karịa 2.28.
  • Njehie dị n'ime nwere ọtụtụ ihe arụrụ arụ (XC8-3069) Mgbe a na-ahazi ndị otu nhazi ọtụtụ akụkụ, agbasaghị oghere oghere adreesị nke ọma n'usoro. Nke a butere ndakọrịtaghị na ozi ntozu oghere adreesị yana mperi nchịkọta mkpokọta. Edoziwo ọnọdụ a.
  • Bad na-ede na iyi ndị a na-amaghị aha (ML-353, XC8-3100) Ọ bụrụ na edoghị ọkọlọtọ ọkọlọtọ/mmejọ iyi n'ụzọ doro anya site na iji FDEV_SETUP_STREAM ma ọ bụ _init_stdout/_init_stderr , ịnwa idegara ha akwụkwọ butere omume enweghị nkọwa. Nke a metụtakwara na-ede site na ọrụ stdlib, dị ka perror(). Ihe ọ bụla edere na iyi ndị a tupu ebido ya, a ga-eleghara ya anya ugbu a.
  • Mgbanwe na-akwadoghị (XC8-2505) Ọbá akwụkwọ avr-libc akwadoghị * ihe ngbanwe na nkọwa ntụgharị ụdị mbipụta, maka ex.ample "%*f". A na-akwado nke a ugbu a site na iwebata Microchip Unifid Standard Library.
  • Otutu ịdọ aka ná ntị na-enweghị mmalite (XC8-2409) Onye nchịkọta akụkọ na-enye ọtụtụ ozi ịdọ aka ná ntị yiri ya mgbe ọ na-ezute n'usoro const na-ebughị ụzọ malite. Ekwesịrị izipu ozi ahụ otu ugboro, nke na-eme ugbu a mgbe ọnọdụ a mere.

Ụdị 2.41

  • Okwu Dongle na Ventura (XC8-3088) Dongles ejiri nye ikike nke mkpokọta nwere ike ọ gaghị agụ nke ọma na ndị ọbịa macOS Ventura, butere ọdịda inye ikike. Mgbanwe e mere onye njikwa ikike XCLM dozie nsogbu a.
  • Ngosipụta na-ezighi ezi nke oke ebe nchekwa (XC8-2925) Na-agbalị ikenye SIZE_MAX bytes (ma ọ bụ uru dị nso na nke a) nke ebe nchekwa site na iji ọrụ njikwa ebe nchekwa ọba akwụkwọ (malloc () et al) rịọrọ mgbe ị na-eji mmejuputa oke ebe nchekwa dị ike dị mfe. A ga-eweghachite ihe nrịbama NULL ugbu a wee tọọ errno na ENOMEM n'ọnọdụ ndị dị otú ahụ.
  • Ewepụrụ ọrụ fma na-ezighi ezi (XC8-2913) Ọbá akwụkwọ ọkọlọtọ C99 fma () -ọrụ ezinụlọ ( ) agbakọghị nke ukwuu-gbakwunye na enweghị ngwụcha na otu okirikiri, kama chịkọbara njehie okirikiri na ọrụ ọ bụla. Ewepụla ọrụ ndị a n'ọbá akwụkwọ ewepụtara.
  • Ijikwa ngbanwe nke eriri na-adịghị mma (XC8-2921, XC8-2652) Mgbe 'usoro isiokwu' maka ntụgharị site na strtod() nwere ihe dị ka nọmba na-efegharị efegharị n'ụdị nkọwa na enwere agwa a na-atụghị anya ya mgbe e/E gachara. agwa, mgbe ahụ, ebe e nyere endptr, e kenyere ya adreesị nke nwere ya na-atụ aka na agwa mgbe e mesịrị, ebe ọ kwesịrị ịbụ na-atụ aka na ya. agwa e// E n'onwe ya, ebe ọ bụ na agbanwebeghị nke ahụ. Maka example, strtod ("100exx", & ep) kwesịrị ịlaghachi 100.00 wee tọọ ep ka ọ rụtụ aka na akụkụ "exx" nke eriri ahụ, ebe ọrụ ahụ na-eweghachite uru ziri ezi mana ịtọ akụkụ "xx" nke eriri ahụ.

Ụdị 2.40

  • Ọ dị jụụ (XC8-2876) Mgbe ị na-eji nhọrọ -mrelax, onye nchịkọta anaghị ekenye akụkụ ụfọdụ ọnụ, na-ebute oke koodu kacha mma. Nke a nwere ike ịbụ na koodu ejirila ọbaakwụkwọ MUSL ọhụrụ ma ọ bụ akara na-adịghị ike mee.
  • Akwụsịghị atụmatụ eserese dị ka ekwuru na ịdọ aka ná ntị (XC8-2875) Njirimara mmemme const-data-in-config-mapped na-adabere na njirimara const-data-in-progmem na-enyere ya aka. Ọ bụrụ na agbanyere njirimara const-data-in-config-mapped-progmem nke ọma site na iji nhọrọ yana njirimara const-data-in-progmem nwere nkwarụ, usoro njikọ ahụ dara, n'agbanyeghị ozi ịdọ aka na ntị na-ekwupụta na const-data-in Agbanyụrụ atụmatụ -config-mapped-progmem na-akpaghị aka, nke na-ezighi ezi. Ihe mmemme const-data-in-config-mapped-progmem nwere nkwarụ ugbu a n'ọnọdụ a.
  • DFP na-agbanwe iji nweta NVMCTRL (XC8-2848) nke ọma koodu mmalite mmalite nke ngwaọrụ AVR64EA na-eburu n'uche na ndebanye aha NVMCTRL dị n'okpuru Configuration Change Protection (CCP) na enweghị ike ịtọ IO SFR na ibe eji. site na njirimara mkpokọta mmemme const-data-in-config-mapped-progmem. Mgbanwe emere na ụdị AVR-Ex_DFP 2.2.55 ga-ekwe ka koodu mmalite oge ojiri dee nke ọma na ndebanye aha a.
  • DFP na-agbanwe iji gbanarị eserese flash (XC8-2847) arụ ọrụ gburugburu maka nsogbu nwere njirimara ngwaọrụ maapụ akọrọ na AVR128DA28/32/48/64 Silicon Errata (DS80000882). Agaghị etinye atụmatụ mkpokọta const-data-in-config-mapped-progmem na ndabara maka ngwaọrụ emetụtara, mgbanwe a ga-apụta na ụdị AVR-Dx_DFP 2.2.160.
  • Jiri sinhf ma ọ bụ coshf wuo mperi (XC8-2834) Mgbalị iji sinhf() ma ọ bụ coshf() ọrụ ọba akwụkwọ butere mperi njikọ, na-akọwa ntụaka akọwapụtaghị. Ọrụ na-efu efu etinyerela na nkesa mkpokọta.
  • Jiri nopa wuo mperi (XC8-2833) Iji njirimara nopa nwere ọrụ ejirila __asm__() kpalitere ozi njehie sitere na onye na-ezukọta. Ngwakọta a agaghị ekwe omume.
  • Ọdịda ọrụ dị iche iche na arụmụka pointer (XC8-2755, XC8-2731) Ọrụ nwere ọnụọgụ arụmụka na-atụ anya ka 24-bit (__memx ụdị) ga-agafe na ndepụta arụmụka agbanwe mgbe njirimara const-data-in-progmem bụ enyere. A na-agafe arụmụka ndị na-atụ aka na ebe nchekwa data dị ka ihe 16-bit, na-akpata ọdịda koodu mgbe agụchara ha. Mgbe agbanyere njirimara const-data-in-progmem, a na-atụgharị arụmụka 16-bit niile ka ọ bụrụ ntụnye 24-bit.
  • Ọrụ ọba akwụkwọ strtoxxx na-ada ada (XC8-2620) Mgbe agbanyere njirimara const-data-in-progmem, emeliteghị paramita endptr na ọrụ ọba akwụkwọ strtoxxx nke ọma maka arụmụka eriri isi mmalite adịghị na ebe nchekwa mmemme.
  • Ntinye maka nkedo na-ezighi ezi (XC8-2612) Onye nchịkọta ihe ga-ewepụta njehie ma ọ bụrụ na agbanyere njirimara const-in-progmem na adreesị nke eriri nkịtị ka a na-atụba ya n'ụzọ doro anya na oghere adreesị data (na-atụba const qualfiier), maka ex.ample, (uint8_t *) "Ndewo Ụwa!" . Ịdọ aka ná ntị bụ okwu ma ọ bụrụ na adreesị ahụ nwere ike ghara ịdị irè mgbe atụpụrụ ihe nrịbama data const na oghere adreesị data.
  • Ndokwa nke ihe ndị na-enweghị mmalite (XC8-2408) Ihe ndị na-enweghị aha na const na-agbanwe agbanwe const
    A naghị etinye ya na ebe nchekwa mmemme na ngwaọrụ ndị na-esepụta ihe niile ma ọ bụ akụkụ nke ebe nchekwa mmemme ha n'ime oghere adreesị data. Maka ngwaọrụ ndị a, a na-etinye ihe ndị dị otú ahụ na ebe nchekwa mmemme, na-eme ka ọrụ ha kwekọọ na ngwaọrụ ndị ọzọ.

Ụdị 2.39 (Mwepụta Nchekwa na-arụ ọrụ)
Ọ dịghị.

Ụdị 2.36
Njehie mgbe ọ na-egbu oge (XC8-2774) Mgbanwe dị nta na ndabara ọnọdụ n'efu gbochiri mpịachi nke okwu operand mgbe niile na arụ ọrụ arụrụ n'egbughị oge, na-eme ka a na-emeso ha dị ka ndị na-adịghị agbanwe agbanwe na ịkpalite njehie: __builtin_avr_delay_cycles na-atụ anya ka chịkọta ọnụ ọgụgụ oge. na-adịgide adịgide.

Ụdị 2.35

  • Nkesa na-aga n'ihu site na iji __at (XC8-2653) Na-aga n'ihu na-ekenye ọtụtụ ihe na mpaghara nwere otu aha na iji __at () arụghị ọrụ nke ọma. Maka exampLe:
    const char arr1[] __attribute__ ((ngalaba (“.mysec”))) __at (0x500) = {0xAB, 0xCD}; const char arr2[] __attribute__ ((ngalaba (“.mysec”))) = {0xEF, 0xFE}; kwesiri idowe arr2 ozugbo arr1 gachara
  • Na-akọwapụta adreesị mmalite ngalaba (XC8-2650) Nhọrọ -Wl,–ngalaba-mbido na-enweghi ike idobe ngalaba na adreesị mmalite ahọpụtara. Edozila okwu a maka ngalaba ọ bụla akpọrọ aha; Otú ọ dị, ọ gaghị arụ ọrụ maka ngalaba ọkọlọtọ ọ bụla, dị ka .text ma ọ bụ .bss, nke a ga-etinyerịrị site na iji nhọrọ -Wl, -T. Njikọ na-akụda mgbe ị na-atụrụ ndụ (XC8-2647) Mgbe agbanyere njikarịcha -mrelax yana enwere koodu ma ọ bụ ngalaba data na-adabaghị na ebe nchekwa dị, njikọ ahụ dara. Ugbu a, n'ọnọdụ dị otu a, a na-ewepụta ozi njehie kama.
  • Enweghị ọdịda-adaghachi azụ (XC8-2646) Emejuputaghị nhọrọ -nofallback nke ọma, ma ọ bụ dekọọ ya. Enwere ike họrọ nke a ugbu a iji hụ na onye nchịkọta agaghị ada azụ na ntọala njikarịcha dị ala ma ọ bụrụ na enweghị ikike nke mkpokọta, kama ọ ga-ewepụta njehie.
  • A na-eme ka njikarịcha ọsọ ọsọ na-ekwesịghị ekwesị (XC8-2637) na-enyere aka mgbe a na-ahọpụta njikarịcha ọkwa 3 (-O3). Ngosipụta ndị a na-ebelata nha koodu na-efu nke ọsọ koodu, yabụ na ekwesighi ime ya.
  • Ịnweta EEPROM ọjọọ (XC8-2629) Usoro eeprom_read_block arụghị ọrụ nke ọma na ngwaọrụ Xmega mgbe agbanyere nhọrọ - mconst-data-in-progmem (nke bụ ọnọdụ ndabara), na-eme ka ebe nchekwa EEPROM ghara ịgụ ya nke ọma.
  • Oke ebe nchekwa na-ezighi ezi (XC8-2593, XC8-2651) Mgbe nhọrọ njikọ -Ttext ma ọ bụ -Tdata (maka mbu.ample gafere site na iji nhọrọ ọkwọ ụgbọ ala -Wl) akọwapụtara, emelitere ederede/data mpaghara kwekọrọ; Otú ọ dị, emezighị adreesị njedebe nke ọma, nke nwere ike ime ka mpaghara ahụ gafere ebe nchekwa ngwaọrụ ezubere iche.
  • Ọkụkụ nwere ọrụ agbakwunyere karịa (XC8-2580) Onye nchịkọta ahụ dara ma ọ bụrụ na ekwuputara ọrụ site na iji ihe karịrị otu nkwụsịtụ, akara ma ọ bụ nmi njirimara, dịka __attribute__((__signal__, __interrupt__)).
  • Koodu nkwụsịtụ ATtiny na-ezighi ezi (XC8-2465) Mgbe ị na-arụ ọrụ maka ngwaọrụ ATtiny yana njikarịcha ahụ nwere nkwarụ (-O0), ọrụ nkwụsị nwere ike kpalitela operand na-enweghị oke.
  • Nhọrọ na-adịghị agafe (XC8-2452) Mgbe ị na-eji nhọrọ -Wl nwere ọtụtụ nhọrọ njikọ njikọ dị iche iche, ọ bụghị nhọrọ niile nke njikọ ahụ ka a na-agafe na onye na-ejikọta ya.
  • Njehie na-agụ ebe nchekwa mmemme na-apụtaghị ìhè (XC8-2450) N'ụfọdụ oge, onye na-achịkọta ihe mepụtara njehie dị n'ime (insn na-adịghị amata) mgbe ị na-agụ uru byte abụọ site na pointer gaa na ebe nchekwa mmemme.

Ụdị 2.32
Ịnweta ọbá akwụkwọ nke abụọ agaghị ada (XC8-2381) Ịkpọ ụdị Windows nke ebe nchekwa ọba akwụkwọ xc8-ar.exe nke ugboro abụọ iji nweta ebe nchekwa ọbá akwụkwọ dị nwere ike dara na enweghị ike ịnyegharị ozi njehie aha.

Ụdị 2.31
Ọdịda mkpokọ enweghị nkọwa (XC8-2367) Mgbe ị na-agba ọsọ na nyiwe Windows nwere usoro ndekọ nwa oge ka edobere ụzọ nke gụnyere ntụpọ '.' agwa, onye nchịkọta ihe nwere ike ghara ime ya.

Ụdị 2.30

  • Edobere akara n'ụwa niile ka emechara (XC8-2299) Koodu ọgbakọ ejiri aka dee nke na-edobe akara ụwa n'ime usoro nzụkọ nke ewepụtara site na abstraction usoro nwere ike ọ gaghị edogharị ya nke ọma.
  • Mkpọka na-atụrụ ndụ (XC8-2287) Iji nhọrọ -mrelax nwere ike ime ka onye njikọ ahụ daa mgbe njikarịcha ntụrụndụ ọdụ na-agbali iji wepụ ntụziaka nkwụghachi azụ nke na-anọghị na njedebe nke ngalaba.
  • Ọkụkụ mgbe ị na-ebuli akara dị ka ụkpụrụ (XC8-2282) Koodu na-eji “Labels as values” ndọtị asụsụ GNU C nwere ike ime ka njikarịcha abstraction usoro ahụ daa, yana nrụrụ dị nso na-agafe njehie ndozi.
  • Ọ bụghị otú ahụ const (XC8-2271) The prototypes maka strstr () na ọrụ ndị ọzọ si ezikwaghị ihe ntozu na-abụghị ọkọlọtọ na ihe nrịbama eriri eweghachiri mgbe arụrụ ọrụ const-mconst-data-in-progmem. Rịba ama na site na avrxmega3 na avrtiny ngwaọrụ, a na-akwado njirimara a kpamkpam.
  • Ndị mbido furu efu (XC8-2269) Mgbe etinyere ihe karịrị otu mgbanwe na ngalaba ntụgharị na ngalaba (iji __ngalaba ma ọ bụ __attribute__((ngalaba))) , na nke mbụ mgbanwe dị otú ahụ bụ efu ebido ma ọ bụ enweghị ihe mmalite, mmalite maka mgbanwe ndị ọzọ n'otu akụkụ ntụgharị asụsụ nke etinyere n'otu ngalaba ahụ furu efu.

Ụdị 2.29 (Mwepụta Nchekwa na-arụ ọrụ)
Ọ dịghị.

Ụdị 2.20

  • Njehie nwere iwu ogologo (XC8-1983) Mgbe ị na-eji ebumnuche AVR, onye nchịkọta akụkọ nwere ike kwụsị ya na faịlụ ahụghị mperi, ma ọ bụrụ na ahịrị iwu ahụ buru oke ibu ma nwee mkpụrụedemede pụrụ iche dịka nhota, azụ azụ, wdg.
  • Ngalaba rodata na-ekenyeghị (XC8-1920) Onye na-ahụ maka AVR agaghị ekenye ebe nchekwa maka ngalaba rodata omenala mgbe a na-ewu ụlọ maka avrxmega3 na avrtiny architectures, nwere ike iwepụta njehie ndakọrịta ebe nchekwa.

Ụdị 2.19 (Mwepụta Nchekwa na-arụ ọrụ)
Ọ dịghị.

Ụdị 2.10

  • Ọdịda mbugharị (XC8-1891) Onye na-ekenye ihe dabara adaba na-ahapụ 'oghere' ebe nchekwa n'etiti ngalaba mgbe izu ike njikọ gasịrị. Wezụga ebe nchekwa na-ekewa, nke a mụbara ohere nke enwere ọdịda mbugharị njikọ metụtara pc- ikwu jumps ma ọ bụ oku na-apụ apụ.
  • Ntuziaka na-agbanweghị site na ntụrụndụ (XC8-1889) Ntụrụndụ Linker emeghị maka ịwụ elu ma ọ bụ ntụziaka ịkpọ oku nke ebumnuche ya ga-enwe ike iru ma ọ bụrụ na izu ike.
  • Na-efu efu arụmọrụ (XC8E-388) Ọtụtụ nkọwa sitere na , dị ka clock_div_t na clock_prescale_set() , akọwapụtaghị maka ngwaọrụ, gụnyere ATmega324PB, ATmega328PB, ATtiny441, na ATtiny841.
  • Macros na-efunahụ Macros preprocessor _XC8_MODE_, __XC8_VERSION, __XC, na __XC8 nke ndị nchịkọta kọwapụtara na-akpaghị aka. Ndị a dị ugbu a.

Ụdị 2.05

  • Njehie nchịkọta ihe dị n'ime (XC8-1822) Mgbe ị na-ewu n'okpuru Windows, enwere ike ịmepụta njehie n'ime ụlọ mgbe ị na-ebuli koodu.
  • Achọtaghị oke oke RAM (XC8-1800, XC8-1796) Mmemme karịrị nke RAM dị na ndị nchịkọta achọpụtaghị n'ọnọdụ ụfọdụ, butere ọdịda koodu oge.
  • Ebe nchekwa flash ewepụrụ (XC8-1792) Maka avrxmega3 na ngwaọrụ avrtiny, ọ ga-abụ na MPLAB X IDE ahapụbeghị akụkụ nke ebe nchekwa Flash na-enweghị mmemme.
  • Ọdịda ime isi (XC8-1788) N'ọnọdụ ụfọdụ ebe mmemme enweghị mgbanwe zuru ụwa ọnụ akọwara, koodu mmalite mmalite apụghị na isi() arụrụghị ọrụ.
  • Ozi ebe nchekwa ezighi ezi (XC8-1787) Maka avrxmega3 na ngwaọrụ avrtiny, mmemme avr-size na-akọ na naanị data ọgụgụ na-eri RAM kama ebe nchekwa mmemme.
  • Agụ ebe nchekwa mmemme ezighi ezi (XC8-1783) Arụmọrụ achịkọtara maka ngwaọrụ nwere ebe nchekwa mmemme etinyere n'ime oghere adreesị data yana nke na-akọwa ihe site na iji nnukwu/àgwà PROGMEM nwere ike gụọ ihe ndị a site na adreesị na-ezighi ezi.
  • Njehie dị n'ime nwere njiri mara (XC8-1773) Njehie dị n'ime mere ma ọ bụrụ na ị kọwapụtara ihe nrịbama nwere akara __at () ma ọ bụ njirimara() dị n'etiti aha nrịbama na ụdị edeturu, maka ex.ample, char * __at (0x800150) cp; A na-enye ịdọ aka ná ntị ugbu a ma ọ bụrụ na ahụrụ ụdị koodu ahụ.
  • Ọdịda ime isi (XC8-1780, XC8-1767, XC8-1754) Iji mgbanwe EEPROM ma ọ bụ ịkọwapụta fuses site na iji config pragma nwere ike butere mmalite data ezighi ezi na/ma ọ bụ kpochie mmemme mmemme na koodu mmalite mmalite, tupu erute isi ( ).
  • Njehie fuse na obere ngwaọrụ (XC8-1778, XC8-1742) Ngwa attiny4/5/9/10/20/40 nwere ogologo fiusi na-ezighi ezi akọwapụtara na faịlụ nkụnye eji isi mee ha nke na-eduga na njehie njikọ mgbe ị na-agbalị ịmepụta koodu nke kọwapụtara fuses. .
  • Mmejọ nkewa (XC8-1777) edozila mmejọ nkewa na-adịte aka.
  • Mgbakọ Mgbakọ (XC8-1761) Onye na-agbakọta avr nwere ike daa mgbe agbakọtara mkpokọta n'okpuru Ubuntu 18.
  • Ihe anaghị ekpochapụ (XC8-1752) Ihe na-adịru oge nchekwa anaghị ekpochapụ nwere ike ọ gaghị ekpochapụ ya site na koodu mmalite mmalite.
  • Elegharala nkọwa ngwaọrụ na-agbanwe agbanwe (XC8-1749) Onye nchịkọta anaghị ewepụta mperi mgbe ejiri ọtụtụ nhọrọ nkọwa ngwaọrụ wee gosi ngwaọrụ dị iche iche.
  • Nrụrụ ebe nchekwa site n'obo (XC8-1748) A na-edobe akara __heap_start na-ezighi ezi, na-eme ka obo ahụ mebie mgbanwe nkịtị.
  • Njehie mbugharị Linker (XC8-1739) Enwere ike ịwepụta njehie mbugharị njikọ mgbe koodu nwere rjmp ma ọ bụ kpọgharịa nwere ebumnuche kpọmkwem 4k bytes pụọ.

Ụdị 2.00
Ọ dịghị.

Okwu ndị amaara

Ndị a bụ oke n'ime ọrụ onye nchịkọta. Ndị a nwere ike ịbụ mmachi nzuzo n'ozuzu, ma ọ bụ ndịiche sitere na ozi dị n'ime akwụkwọ ntuziaka onye ọrụ. Akara akara (s) nwere bracketed na aha bụ njirimara nke ahụ na nchekwa data nsochi. Nke a nwere ike ịba uru ma ọ bụrụ na ịchọrọ ịkpọtụrụ nkwado. Ihe ndị ahụ na-enweghị akara bụ oke na-akọwa modi operandi na nke nwere ike ịdị na-arụ ọrụ ruo mgbe ebighị ebi.

Mgbakwunye MPLAB X IDE

  • Mgbakwunye MPLAB IDE Ọ bụrụ na a ga-eji Compiler site na MPLAB IDE, ị ga-etinyerịrị MPLAB IDE tupu ịwụnye Compiler.
  • Ozi debug Array (XC8-3157) Ozi debug nke onye nchịkọta ihe mepụtara anaghị ebute nke ọma ụdị ihe maka nhazi na oghere adreesị __memx. Nke a ga-egbochi ikiri ihe dị na IDE.

Usoro Ọgbọ

  • Segfault na nhọrọ ngalaba-arịlịka (XC8-3045) Mmemme kọwapụtara ọrụ yana ndepụta arụmụka agbanwe agbanwe yana nke na-eji nhọrọ -fsection-anchors nwere ike kpalitela njehie nchịkọta ihe dị n'ime: mmejọ nkebi.
  • Ozi nzipu esighị na mmekọrịta (XC8-2948) Mgbe njikarịcha izu ike njikọ na-ebelata ntuziaka (maka ex.ampna oku ịkpọ oku ntuziaka), ahịrị isi okwu maka eserese eserese nwere ike ọ gaghị adị na mmekọrịta mgbe enwere ihe karịrị otu ọrụ mbelata na-eme na ngalaba. N'okpuru examplee, enwere oku abụọ na foo nke na-ejedebe n'oku maka oku ikwu.
  • Ọdịda ebe nchekwa nchekwa PA (XC8-2881) Mgbe ị na-eji ndị na-eme ihe njiri mara usoro, onye njikọ nwere ike ịkọ njehie oke ebe nchekwa mgbe nha koodu dị nso na ebe nchekwa mmemme dị na ngwaọrụ ahụ, n'agbanyeghị na mmemme ahụ kwesịrị inwe ike dabara nke dịnụ. oghere.
  • Ọ bụghị otú ahụ smart Smart-IO (XC8-2872) Njirimara smart-io nke onye nchịkọta ga-emepụta koodu dị mma mana nke kachasị mma maka ọrụ snprintf ma ọ bụrụ na njirimara const-data-in-progmem nwere nkwarụ ma ọ bụ ọ bụrụ na ngwaọrụ ahụ nwere ihe niile. Flash mapụtara n'ime ebe nchekwa data.
  • Ọbụlagodi obere smart Smart-IO (XC8-2869) Njirimara smart-io nke onye na-achịkọta ga-ewepụta koodu ziri ezi mana nke kacha mma mgbe ejiri nhọrọ -flto na -fno-builtin.
  • Ndobe data naanị ọgụgụ kacha mma (XC8-2849) Onye njikọ ahụ amataghị ngalaba ebe nchekwa APPCODE na APPDATA, ma ọ bụ nkewa [Mba-] na-agụ-Mgbe-dee na maapụ ebe nchekwa. N'ihi ya, enwere obere ohere na onye na-ejikọta ya nwere ike ịkenye data naanị ọgụgụ na ebe nchekwa na-adịghị mma. Ohere nke data edobere na-abawanye ma ọ bụrụ na agbanyere njirimara const-data-in-progmem, ọkachasị ma ọ bụrụ na akwadokwara atụmatụ const-data-in-config-mapped-progmem. Enwere ike gbanyụọ atụmatụ ndị a ma achọrọ ya.
  • Usoro nhazi faịlụ ihe (XC8-2863) Usoro nke onye njikọ ga-esi hazie faịlụ ihe nwere ike ịdị iche dabere na iji njikarịcha abstraction usoro (-mpa nhọrọ). Nke a ga-emetụta naanị koodu nke na-akọwapụta ọrụ adịghị ike n'ofe ọtụtụ modul.
  • Njehie njikọ na nke zuru oke (XC8-2777) Mgbe emerela ihe zuru oke na adreesị mmalite nke RAM na kọwapụtakwara ihe ndị na-amaghị aha, enwere ike ịkpalite njehie njikọ.
  • NJ mgbake dị mkpụmkpụ (XC8-2775) Maka ngwaọrụ ATA5700/2, ndekọ PHID0/1 ka akọwara naanị dị ka ibe 16 n'obosara, karịa 32bit n'obosara.
  • Njikọ njikọ mgbe ị na-akpọ akara (XC8-2758) Onye njikọ ahụ nwere ike ịdaba ma ọ bụrụ na-eji nhọrọ ọkwọ ụgbọ ala -mrelax mgbe koodu isi iyi na-akpọ akara nke akọwara site na iji - Wl,-defsym linker nhọrọ.
  • Mmalite na-ezighi ezi (XC8-2679) Enwere ọdịiche dị n'etiti ebe a na-etinye ụkpụrụ mbụ maka ụfọdụ ihe nha ụwa / static byte na ebe nchekwa data yana ebe a ga-enweta mgbanwe na oge ojiri gaa.
  • Oku ọrụ na-apụtaghị ìhè (XC8-2628) N'ụfọdụ oge, oku ọrụ emere site na ntụnye ọrụ echekwara dị ka akụkụ nke nhazi nwere ike ịda.
  • strtof na-eweghachi efu maka hexadecimal floats (XC8-2626) Ọbá akwụkwọ ọrụ strtof() et al na scanf() et al, ga-agbanwe mgbe ọ bụla ọnụọgụ hexadecimal floating-point nke na-akọwapụtaghị ihe mgbaba na efu. Maka example: strtof ("0x1", & endptr); ga-eweghachi uru 0, ọ bụghị 1.
  • Ozi onye ndụmọdụ nchịkọta na-ezighi ezi (XC8-2542, XC8-2541) N'ọnọdụ ụfọdụ, ịdọ aka ná ntị nchịkọta nchịkọta gbasara nlọghachi azụ ma ọ bụ nchịkọta enweghị njedebe ejiri (ikekwe site na iji alloca()) anaghị ebupụta.
  • Ọdịda na koodu nkwụsịtụ oyiri (XC8-2421) Ebe ihe karịrị otu ọrụ nkwụsịtụ nwere otu ahụ, onye nchịkọta nwere ike nweta nsonaazụ maka otu ọrụ nkwụsịtụ kpọọ nke ọzọ. Nke a ga-eme ka echekwara ndekọ niile akpọchiri akpọchi na-enweghị isi, a ga-eme ka nkwụsịtụ ahụ kwụsị ọbụna tupu epilogue nke onye na-egbochi nkwụsịtụ ugbu a agbaala, nke nwere ike ibute ọdịda koodu.
  • Mmepụta ọjọọ nwere ụzọ DFP na-ezighi ezi (XC8-2376) Ọ bụrụ na ejiri ụzọ DFP na-ezighi ezi kpọọ onye nchịkọta ahụ yana faịlụ 'spec' dị maka ngwaọrụ ahọpụtara, onye nchịkọta anaghị ekwupụta mkpọ ezinụlọ na-efu efu kama họrọ 'spec'. faịlụ, nke nwere ike bute nsonaazụ na-ezighi ezi. Faịlụ 'spec' nwere ike ọ gaghị adị ọhụrụ na DFP nke kesara ma e bu n'obi jiri naanị nnwale mkpokọta ime.
  • Achọpụtaghị ihe nkpuchi ebe nchekwa (XC8-1966) Onye na-achịkọta anaghị achọpụta mgbakwụnye ebe nchekwa nke ihe emere zuru oke na adreesị (site na __at ()) yana ihe ndị ọzọ na-eji nkọwa __section () yana nke ejikọtara na otu adreesị ahụ.
  • Ọdịda na ọrụ ọba akwụkwọ yana __memx (XC8-1763) A na-akpọ ọrụ libgcc float yana arụmụka dị na oghere adreesị __memx nwere ike ịda. Rịba ama na a na-akpọ usoro ọbá akwụkwọ site n'aka ụfọdụ ndị na-arụ ọrụ C, ya mere, maka example, koodu a na-emetụta: laghachi regFloatVar> memxFloatVar;
  • Mmejuputa libgcc nwere oke (AVRTC-731) Maka ngwaahịa ATTiny4/5/9/10/20/40, mmejuputa ọba akwụkwọ ọkọlọtọ C / Math na libgcc nwere oke ma ọ bụ adịghị.
  • Oke ebe nchekwa mmemme (AVRTC-732) Ihe onyonyo ebe nchekwa ihe mmemme gafere 128 kb bụ nke a na-akwado ya; Otú ọ dị, e nwere ihe ndị ama ama nke linker aborts na-enweghị ntụrụndụ na-enweghị ozi njehie na-enyere aka kama ịmepụta ihe arụ ọrụ achọrọ mgbe a na-eji nhọrọ -mrelax.
  • Oke oghere aha (AVRTC-733) A na-akwado oghere adreesị akpọrọ site na ngwa ngwa, dabere na oke a kpọtụrụ aha na ngalaba ntuziaka onye ọrụ.
  • Mpaghara oge The Ọrụ ọba akwụkwọ na-ewere GMT na anaghị akwado mpaghara oge mpaghara, yabụ oge () ga-alaghachi n'otu oge gmtime() , maka ex.ample.

Akwụkwọ / akụrụngwa

MICROCHIP XC8 C Compiler Version 2.45 ndetu mwepụta maka AVR MCU [pdf] Ntuziaka
AVR MCU, XC8 C, XC8 C Compiler Version 2.45 ndetu mwepụta maka AVR MCU, Mpempe akwụkwọ mpịakọta 2.45 maka AVR MCU, Ụdị 2.45 maka AVR MCU, ndetu mwepụta maka AVR MCU, ndetu maka AVR MCU, AVR MCU, AVR MCU.

Ntụaka

Hapụ ikwu

Agaghị ebipụta adreesị ozi-e gị. Akara mpaghara achọrọ akara *