MICROCHIP MPLAB XC8 C Compiler Software
AKWỤKWỌ a nwere ozi dị mkpa gbasara MPLAB XC8 C COMPILER MGBE A NA-ECHICHE MICROCHIP AVR ngwaọrụ.
Biko GỤỌ YA TUPU YA ATỤTA SOFTWARE A. Hụ ndetu Mwepụta MPLAB XC8 C maka akwụkwọ foto ma ọ bụrụ na ị na-eji ihe nchịkọta maka ngwaọrụ 8-Bit PIC.
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 ngwaọrụ ọhụrụ.
Ụbọchị owuwu
Ụbọchị arụ ọrụ nke ụdị mkpokọta a bụ 3 Julaị 2022.
Ụdị gara aga
Ụdị nchịkọta MPLAB XC8 C gara aga bụ 2.39, ihe nchekwa nchekwa na-arụ ọrụ, nke e wuru na 27 Jenụwarị 2022. Ọkọlọtọ ọkọlọtọ gara aga bụ ụdị 2.36, nke e wuru na 27 Jenụwarị 2022.
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 ndị ọkachamara nke Microsoft Windows 10; Ubuntu 18.04; na macOS 10.15.5. Ebinyela aha ọnụọgụ abụọ maka Windows koodu. Binarị maka mac OShave ka edebanyela aha ya na koodu.
Ọ bụrụ na ị na-eji ihe nkesa ikike netwọkụ, naanị kọmputa nwere sistemụ arụmọrụ nke ndị nchịkọta na-akwado ka a ga-eji nọrọ n'ụlọnga nkesa ikike. Dịka ụdị xclm 2.0, enwere ike ịwụnye ihe nkesa ikike netwọkụ na nyiwe Microsoft Windows Server, mana nkesa ikike adịghị mkpa ka ọ na-agba ọsọ na ụdị nkesa sistemụ arụmọrụ.
Ngwa akwadoro
Ngwakọta a na-akwado ngwaọrụ 8-bit AVR MCU niile mara n'oge ewepụtara. Hụ (na akwụkwọ ndekọ aha doc) maka ndepụta ngwaọrụ niile akwadoro. Ndị a files nwekwara depụta nhazi 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 .exe (Windows), .run (Linux) ma ọ bụ ngwa (macOS) ngwa nchịkọta ihe nchịkọta, dịka XC8-1.00.11403-windows.exe wee soro ntuziaka 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ụ onye njikwa ikike akwụkwọ 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-ese n'elu mmiri. Ezubere maka ndị na-eji ekwentị mkpanaaka, njirimara a na-enye ohere ikike ịpụ n'elu 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 file, họrọ Njirimara, Nche taabụ, 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 a file Mkparịta ụka nchọgharị na-egosi ndekọ ahụ ma ga-enye gị ohere ikpebi ụzọ nke folda 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.
Ọ 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
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:
- Ozi nwebiisinka MUSL
- Ịwụnye na inye ikike MPLAB XC C Compilers (nyocha M)
- Ntuziaka onye ọrụ MPLAB XC8 maka ndị injinia agbakwunyere - AVR MCU (nyocha A)
- Ntuziaka onye ọrụ nchịkọta MPLAB XC8 C maka AVR MCU (nyocha F)
- Ntuziaka Ntuziaka Ọkachamara Microchip jikọrọ ọnụ (nyocha B)
Akwụkwọ ntuziaka nrụtụ aka nke Microchip Unified Standard Library na-akọwa omume na nlegharị anya n'ọrụ ndị Microchip Unified Standard Library kọwapụtara, yana ebumnuche ebumnuche nke ụdị ọba akwụkwọ na nnukwu. Ụfọdụ n'ime ozi a dịbu n'ime MPLAB® XC8 C Compiler User!s Guide maka AVR® MCU. Ozi ọba akwụkwọ akọwapụtara ngwaọrụ ka dị n'ime 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 Guide for Embedded Engineers – AVR® MCUs (DS50003108) nwere ozi gbasara ịtọlite ọrụ na MPLAB X IDE na koodu ederede. maka ọrụ mbụ MPLAB XC8 C gị. A na-ekesa ntuziaka a na onye nchịkọta.
E tinyela ntuziaka onye ọrụ Hamate n'ime akwụkwọ ndekọ aha na mwepụta a. Ezubere ntuziaka a maka ndị na-agba Hamate ka ngwa kwụ ọtọ.
Kedu nke pụtara ọhụrụ
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-eso ya.
Ụdị 2.40
Nkwado ngwaọrụ ọhụrụ Nkwado dị ugbu a maka akụkụ AVR ndị a: AT90PWM3, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR64DD28, AVR64DD32 na AVR64EAVR48EAVR
Abstraction usoro emelitere Emeziwanyela ngwa ọrụ nnabata usoro (PA) ka e wee kọwapụta koodu nwere ntuziaka oku ọrụ (akpọ 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ọ monk-pa-outline-calls, ma ọ bụ abstraction usoro nwere ike gbanyụọ kpamkpam maka ihe. file ma ọ bụ rụọ ọrụ site na iji -monk-pa-on-file na -mo.-pa-on-function n'otu n'otu, ma ọ bụ site n'iji njirimara nipa ( nipa specifier) họrọ ya na ọrụ.
Mpempe akwụkwọ mkpuchi koodu Onye nchịkọta ugbu a na-akọwa nnukwu __CODECOV ma ọ bụrụ na akọwapụtara nhọrọ mcodecov bara uru.
Nhọrọ ndoputa ebe nchekwa Onye ọkwọ ụgbọ ala xc8-cc ga-anabata -mreserve=space@start: nhọrọ njedebe mgbe ị na-ewu maka ebumnuche AVR. Nhọrọ a na-edobe oke ebe nchekwa akọwapụtara na ma data ma ọ bụ ohere ebe nchekwa mmemme, na-egbochi onye njikọ ibipụta koodu ma ọ bụ ihe dị na mpaghara a.
Smarter smart IO Emeela ọ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ọta usoro ihe omume vararg na ọchịchọ, na-eji ụdị data dị mkpụmkpụ ebe enwere ike ijikwa arụmụka ọrụ IO. , na ịmepụta koodu nkịtị na obosara ubi 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ụ Nkwado dị maka akụkụ AVR ndị a: ATTINY3224, ATTINY3226, ATTINY3227, AVR64DD14, AVR64DD20, AVR64DD28, na AVR64DD32.
Ngbanwe okirikiri emelitere Nhọrọ ọhụrụ -mcall-isr-prologues 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).
Ngbanwe okirikiri ka emelitere ka mma Nhọrọ ọhụrụ -mgas-isr-prologues na-achịkwa koodu ich gburugburu 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 enwere ike ịhazi Ụ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 a ga-edepụta n'ime ebe nchekwa data. Enwere ike iji nhọrọ ọhụrụ - mconst-data-in-config-mapped-proem mee ka onye njikọ tinye data niile ruru eru na otu ngalaba 32k wee bido aha SFR dị mkpa na-akpaghị aka iji hụ na etinyere data a n'ime ebe nchekwa data. , ebe a ga-enweta ya nke ọma.
Ọbá akwụkwọ Ọkọlọtọ Dị n'otu nke Microchip Ndị nchịkọta MPLAB XC niile ga-ekekọrịta ọbá akwụkwọ ọkọlọtọ Microchip, nke dị ugbu a na ntọhapụ nke MPLAB XC8 a. MPLAB® XC8 C Guide User's Guide/ma ọ bụ AVR® MCU anaghịzi agụnye akwụkwọ maka ọrụ ọkọlọtọ ndị a. Enwere ike ịhụ ozi a ugbu a na ntuziaka nrụtụ aka ọbá akwụkwọ dị n'otu nke Microchip. Rịba ama na ụfọdụ ọrụ avr-libc kọwaburu na mbụ adịkwaghị. (Lee ọba akwụkwọ):'. arụmọrụ…)
Smart IO Dị ka akụkụ nke ọba akwụkwọ ọhụrụ ejikọtara ọnụ, ọrụ IO dị na mbipụta na nyocha ezinụlọ bụzi ahaziri nke ọma na ụ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 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ụ na-atụgharị na arụmụka ndị nkọwa ntụgharị nke oku chọrọ. Na mbụ, onye nchịkọta agaghị eme mgbe niile na-eche echiche ma hụ na ejikọtara ọrụ IO na-arụ ọrụ nke ọma na foto mmemme ikpeazụ. Ọhụrụ – msmart-io-format=fmt nhọrọ ka agbakwunyere ka onye ọrụ nwee ike ịgwa onye na-achịkọta ihe nkọwa ntụgharị nke ọrụ smart IO na-eji nke ojiji ya enweghị mgbagwoju anya, na-egbochi ogologo usoro IO ogologo karịa njikọ. (Lee nhọrọ usoro smart-io maka nkọwa ndị ọzọ.)
Ịtụkwasị ngalaba omenala Na mbụ, nhọrọ -Wl, -ngalaba-mmalite na-etinye naanị 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 na-ahọrọ ma leghara nhọrọ ahụ anya. Ugbu a, a ga-asọpụrụ nhọrọ ahụ maka ngalaba omenala niile, ọbụlagodi ma ọ bụrụ na edemede njikọ akọwaghị ngalaba ahụ. Rịba ama, Otú ọ dị, na maka ngalaba ọkọlọtọ, dị otú ahụ. ederede,. bss ma ọ bụ . data, ihe kacha mma dabara adaba ka ga-enwe njikwa zuru oke na ntinye ha, na nhọrọ agaghị enwe mmetụta ọ bụla. Jiri -Wl, -Tsection=gbakwunye nhọrọ, dị ka akọwara na ntuziaka onye ọrụ.
Ụdị 2.32
Ntuziaka nchịkọta Dị ya na ikike nchịkọta PRO, njirimara nduzi nchịkọta nchịkọta nwere ike iji chọpụta oke omimi 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 maapụ file, nke enwere ike ịrịọ n'ụzọ ọ bụla.
Nkwado ngwaọrụ ọhụrụ dị maka akụkụ AVR ndị a: ATTINY 427, ATTINY 424, ATTINY 426, ATTINY827, ATTINY824, ATTINY826, AVR32DB32, AVR64DB48, AVR64DB64, AVR64DB28DB32 na 28.
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-ini na-egbochi mmalite nke data na ikpochapụ akụkụ bss. Ọ na-arụ ọrụ site n'ịkwụsị mmepụta nke data do_ copy_ na akara d o_ clear_ bss na mgbakọ. files, nke ga-egbochi ntinye nke usoro ndị ahụ site na njikọ 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 -f arịlịka ngalaba, nke na-enye ohere ịnweta ihe ndị kwụ ọtọ n'ihe metụtara otu akara; -mpai derations=n, nke na-enye ohere ịgbanwe ọnụọgụ abstraction nke usoro site na ndabara nke 2; na, -mpa- call cost- mkpirisi oku, nke na-eme ihe ike karịa usoro abstraction, na olileanya na 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ụ Nkwado dị maka akụkụ AVR ndị a: AVR16DA28, AVR16DA32,
AVR16DA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR128DB28, AVR128DB32, AVR128 na AVR48.
Nkwado ngwaọrụ eweghachitere Nkwado adịkwaghị maka akụkụ AVR ndị a: ATA5272, ATA5790, ATA5790N,ATA5791,ATA5795,ATA6285,ATA6286,ATA6612C,ATA6613C,ATA6614Q,ATA6616C,ATA6617C,664251ATA.
Ụdị 2.29 (Mwepụta Nchekwa na-arụ ọrụ)
nkụnye eji isi mee file maka ihe arụrụ n'ụkọkọta iji hụ na onye nchịkọta nwere ike kwekọrịtara na nkọwa asụsụ dị ka MISRA, nkụnye eji isi mee file, nke na-akpaghị aka gụnyere , emelitere. nkụnye eji isi mee nwere ihe atụ maka ọrụ arụrụ arụ niile, dị ka _buil tin _avrnop () na _buil tin_ avr delay_ cycles () . Ụfọdụ arụnyere nwere ike ọ gaghị akwado MISRA; Enwere ike ịhapụ ndị a site na ịgbakwunye nkọwa _Xe_ STRICT_ MISRA na ahịrị iwu nchịkọta. Emelitela ihe ndị arụnyere na nkwupụta ha iji jiri ụdị obosara a kapịrị ọnụ.
Ụdị 2.20
Nkwado ngwaọrụ ọhụrụ Nkwado dị maka akụkụ AVR ndị a: ATTINY1624, ATTINY1626, na ATTINY1627.
Oke kacha mma dabara adaba A na-emeziwanye onye na-ekenye ihe kacha mma (BFA) na mkpokọta ka ekenye ngalaba n'usoro na-enye ohere kachasị 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ọ.
Enweghị AVR Mgbakọ Ejikwaghị AVR Mgbakọ 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 na-eme ka nyocha nke oke nke emechara 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 mcodecov wepụ ọrụ ndị na-esote na nyocha mkpuchi. Kwesịrị itinye pragma na mmalite nke file ewepu nke ahụ dum file site na nyocha mkpuchi. N'aka nke ọzọ, enwere ike iji njirimara (mcodecov) wepụ otu ọrụ na nyocha mkpuchi.
Nkọwa ngwaọrụ files Ngwaọrụ ọhụrụ file akpọ avr chipinfo. html dị na akwụkwọ ndekọ aha nke nkesa mkpokọta. Nke a file depụtara ngwaọrụ niile nke ndị nchịkọta na-akwado. Pịa aha ngwaọrụ, ma ọ ga-emepe ibe na-egosi ụzọ abụọ nhazi bit nhazi / uru maka ngwaọrụ ahụ, yana ex.amples.
Abstraction nke usoro agbakwunyela usoro njikarịcha abstraction, nke na-eji oku na-edochi ihe mgbochi koodu mgbakọ na-emekarị na nchikọta ahụ. A na-eme ihe ndị a site na ngwa dị iche, nke ndị nchịkọta na-akpọ ya na-akpaghị aka mgbe ị na-ahọrọ nkwalite ọkwa 2, 3 ma ọ bụ karịa. 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 ihe file iji -mno-pa-on-file=fileaha, ma ọ bụ nwee nkwarụ maka ọrụ site na iji -mno-pa na ọrụ = ọrụ.
N'ime koodu isi mmalite gị, enwere ike gbanyụọ abstraction usoro maka otu ọrụ site na iji _attribute_ (nopa) na nkọwa nke ọrụ ahụ, ma ọ bụ site na iji _nopa, nke na-agbasawanye na njirimara (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 nhazi nhazi ndị ọzọ. Lelee ozi mgbawa avr. html file (akpọtụrụ n'elu) maka ụzọ abụọ ntọala/ọnụ ahịa iji jiri pragma a.
Nkwado ngwaọrụ ọhụrụ Nkwado dị maka akụkụ ndị a: AVR28DA128, AVR64DA128, AVR32DA128, na AVR48DA128.
Ụdị 2.05
Ọnụ ego ndị ọzọ maka ego gị Ụdị macOS nke nchịkọta na onye njikwa ikike ugbu a bụ ngwa 64-bit. 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.
Const ihe na ebe nchekwa mmemme Onye nchịkọta nwere ike tinye ihe ndị tozuru oke na mmemme Flash ebe nchekwa, kama ịnwe ihe ndị a na RAM. Emezigharịrị ihe nchịkọta ihe ahụ ka echekwara data zuru ụwa ọnụ nke const tozuru oke na ebe nchekwa mmemme yana enwere ike nweta data a ozugbo na n'ụzọ na-edoghị anya site na iji ntuziaka mmemme-ebe nchekwa kwesịrị ekwesị. 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.
Ọkọlọtọ maka n'efu Ụdị enweghị ikike (N'efu) nke nchịkọta ihe ugbu a na-enye ohere nkwalite 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.
Nnọọ AVRASM2 A na-etinye onye na-achịkọta AVRASM2 maka ngwaọrụ 8-bit na ihe nrụnye XC8. Ndị nchịkọta XC8 anaghị eji mgbakọ a, mana ọ dị maka ọrụ dabere na isi mmalite mgbakọ ejiri aka dee.
Nkwado ngwaọrụ ọhụrụ Nkwado 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 n'elu 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ị Onye nchịkọta ihe a nwere ike dabara na MPLAB Common C Interface, na-enye ohere ka ọ dị mfe ibufe koodu isi mmalite n'ofe ndị nchịkọta 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ọ ala ọ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ịrị maka ma ọ bụ bufee onye na-agụ akwụkwọ a na-egbu. Onye ọkwọ ụgbọ ala ọhụrụ ahụ na-enye ohere ka e jiri ụdị nhọrọ ndị yiri ya na semantics mepụta ma ọ bụ jikwaa ọba akwụkwọ PIC ma ọ bụ AVR ọ bụla. file ma otu a bụ ụzọ akwadoro ịkpọ 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 ibubata 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.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 ntọala (XCS-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 ma ọ ga-edobe errno na EINVAL. Ọkọlọtọ C anaghị akọwapụta omume nke ọrụ ahụ mgbe uru ntọala a gafere.
Nkwalite ọsọ ọsọ na-ekwesịghị ekwesị A na-eme ka njikarịcha abstraction usoro mgbe ị na-ahọrọ njikarịcha ọkwa 3 (-03). 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ụ ụlọ akwụkwọ Koodu maka ọtụtụ ọrụ ọba akwụkwọ ọkọlọtọ C si ugbu a sitere na Microchip's Unified 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ịzi mkpa ijikọ n'ọbá akwụkwọ lprintf_flt (-print _flt nhọrọ) ka ịgbanwuo nkwado IO ahazi maka ndị na-akọwa float-format. Atụmatụ IO smart nke Microchip Unified Standard Library na-eme ka nhọrọ a ghara ịdị irè. Na mgbakwunye, iji usoro suffixed _p maka eriri na ọrụ ebe nchekwa (dịka strcpy_P () wdg ..) nke na-arụ ọrụ na eriri const 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.20
Gbanwee okirikiri nhọrọ ukwuu DFP Ndị nchịkọta ugbu a na-ewere 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
Const ihe na ebe nchekwa mmemme Rịba ama na site na ndabara, a ga-edobe ihe ndị ruru eru ma nweta 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ọ -mnoconst-da ta-in-progmem.
Ụdị 2.00
Nhazi fuses Enwere ike ịhazi fuses nhazi ngwaọrụ ugbu a site na iji config pragma na-esochi ụzọ abụọ ntọala-uru iji kọwaa steeti fuse, dịka ọmụmaatụ.
#pragma config WDT0N = SET
#pragma config B0DLEVEL = B0DLEVEL_4V3
Ihe zuru oke na ọrụ Enwere ike idowe ihe na ọrụ ugbu a na adreesị akọwapụtara na ebe nchekwa site na iji nkọwapụta CCI _at (adreesị), maka ex.ample: #gụnyere int foobar na (Ox800100); char at(Ox250) nweta ID(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 mbụ. A na-egosi adreesị RAM site na iji nkwụsị nke 0x800000. Kwado CCI ka o jiri njirimara a.
syntax ọrụ nkwụsị ọhụrụ Onye nchịkọta ugbu a na-anabata nkọwa nkwụsịtụ CCI (ọnụọgụ) iji gosi na ọrụ C bụ ndị njikwa nkwụsị. Nkọwapụta na-ewe nọmba nkwụsịtụ, maka example: #gụnyere nkwụsịtụ efu (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 nke e bu n'obi ma ọ bụ akọwapụtara ya site na ntuziaka onye ọrụ. Nọmba mbipute dị na isi okwu nta ndị a na-egosi ụdị mkpokọta mbụ nwere ndozi maka okwu ndị na-esote. Akara akara (s) nwere bracketed na aha bụ njirimara nke okwu 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.40
Ọ zuru oke (XCS-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.
Agbanyụrụ atụmatụ eserese dịka ekwuru na ịdọ aka na ntị (XCS-2875) Njirimara ọnụ ahịa-data-in-config mappedprogmem dabere na njirimara ọnụ ahịa-data-in-proem na-enyere aka. Ọ bụrụ na agbanyere atụmatụ ọnụahịa-data-ipconfig-mapped-proem n'ụzọ doro anya site na iji nhọrọ yana njirimara ọnụahịa data-inprogmem nwere nkwarụ, usoro njikọ ahụ dara, n'agbanyeghị ozi ịdọ aka na ntị na-ekwupụta na data cons- in-config-mapped- agbanyụrụ atụmatụ proem ozugbo, nke na-ezighi ezi. Njirimara const-data-in-config-mapped-proem nwere nkwarụ ugbu a n'ọnọdụ a.
DFP gbanwere iji nweta NVMCTRL (XCS-2848) nke ọma Koodu mmalite mmalite oge nke ngwaọrụ AVR64EA ji echekwaghị na ndekọ NVMCTRL dị n'okpuru Configuration Change Protection (CCP) ma enweghị ike ịtọ IO SFR na ibe nke const-data-in configmapped proem compiler na-eji. atụmatụ. 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 zere maapụ ọkụ (XCS-2847) Arụ ọrụ maka nsogbu na njirimara ngwaọrụ nkewa flash a kọrọ na AVR128DA28/32/48/64 Silicon Errata (DS80000882) emejuputala ya. Agaghị etinye njirimara compiler const-data-in-config-mapped-proem na ndabara maka ngwaọrụ emetụtara, mgbanwe a ga-apụta na ụdị AVR-Ex_DFP 2.2.160.
Jiri sinhf ma ọ bụ coshf wuo njehie (XCS-2834) Mgbalị iji sinhf () ma ọ bụ coshf () ọrụ ọba akwụkwọ butere mperi njikọ, na-akọwa ntụnyere enweghị nkọwa. Ọrụ na-efu efu etinyerela na nkesa mkpokọta.
Jiri nopa wuo mperi (XCS-2833) Iji njirimara nopa nwere ọrụ nwere aha onye na-achịkọta ya akọwapụtara na-eji dị ka () kpalitere ozi njehie sitere na onye na-agbakọta. Ngwakọta a agaghị ekwe omume.
Ọdịda ọrụ dị iche iche nwere arụmụka nrụtụ aka (XCS-2755, XCS-2731) Ọrụ ndị nwere ọnụ ọgụgụ arụmụka na-agbanwe agbanwe na-atụ anya ka 24-bit (_memo type) na-egosi na a ga-agafe na ndepụta arụmụka na-agbanwe agbanwe mgbe ejiri njirimara ọnụahịa-data-in-proem. A na-ebufe 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 data-in-proem cons, arụmụka 16-bit niile na-atụgharị ugbu a ka ọ bụrụ ntụnye 24-bit. Ọrụ ọba akwụkwọ strtoxxx na-ada ada (XCS-2620) Mgbe agbanyere njirimara const-data-in-proem, emeliteghị paramita ntinye na ọrụ ọba akwụkwọ strtoxxx nke ọma maka arụmụka eriri isi mmalite adịghị na ebe nchekwa mmemme.
Nti mkpu maka ihe nkedo na-ezighi ezi (XCS-2612) Onye nchịkọta ga-ewepụta njehie ma ọ bụrụ na agbanyere atụmatụ ọnụ ahịa na-akwụ ụgwọ yana a na-atụba adreesị nke eriri nkịtị na oghere adreesị data (na-atụba const qualifier), 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-amaghị ama (XCS-2408) A naghị etinye const na const v olatile ihe na-enweghị aha 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 (XCS-2774) Mgbanwe dị nta na ndabara njikarịcha ọnọdụ efu gbochiri mpịachi nke okwu operand mgbe niile na ọrụ arụrụ n'egbu oge, na-eme ka a na-emeso ha dị ka ndị na-abụghị kọntaktị na ịkpalite njehie: _buil tin avr delay_ cycles na-atụ anya ac ompile ọnụ ọgụgụ oge na-adịgide adịgide.
Ụdị 2.35
Oke na-aga n'ihu site na iji _at (XCS-2653) Nkesa na-aga n'ihu nke ọtụtụ ihe na mpaghara nwere otu aha yana iji na () arụghị ọrụ nke ọma. Maka example: constchararrl [] na tri butte ((sect on (".misses"))) na (Ox50 0 ) = {Oxo, Ox CD}; na-eri char arr2[ ] na tri butte ((ngalaba (“.my s eke”))) = {Oxen, Ox FE}; kwesịrị itinye arr2 ozugbo aril gasịrị.
Na-akọwapụta adreesị mmalite ngalaba (XCS-2650) Nhọrọ -Wal, -ngalaba-mmalite na-enweghi ike idobe ngalaba na adreesị mmalite ahọpụtara. Edozila okwu a maka ngalaba aha ahaziri iche; Otú ọ dị, ọ gaghị arụ ọrụ maka ngalaba ọkọlọtọ ọ bụla, dị ka . ederede ma ọ bụ . bss, nke a ga-etinyerịrị site na iji nhọrọ -Wl, -T.
Linker dara mgbe izu ike (XCS-2647) Mgbe agbanyere njikarịcha -relax na 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.
Nweta EEPROM ọjọọ (XCS-2629) Usoro mgbochi leproma _read_ anaghị arụ ọrụ nke ọma na ngwaọrụ Mega mgbe agbanyere nhọrọ -monist-data-in-proem (nke bụ ọnọdụ ndabara), na-ebute ebe nchekwa EEPROM anaghị agụ nke ọma.
Oke ebe nchekwa ezighi ezi (XCS-2593, XCS-2651) Mgbe nhọrọ njikọ -Text ma ọ bụ -Tata (maka example 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.
Koodu nkwụsịtụ ATtiny ezighi ezi (XCS-2465) Mgbe ị na-arụ ọrụ maka ngwaọrụ Tatin na njikarịcha ahụ kwụsịrị (-00), ọrụ nkwụsịtụ nwere ike kpalitela opera na enweghị ozi ndị na-achịkọta.
Nhọrọ anaghị agafe (XCS-2452) Mgbe ị na-eji nhọrọ -Wl nwere ọtụtụ nhọrọ njikọ njikọ dị iche iche, ọ bụghị nhọrọ niile ka a na-enyefe na onye na-ejikọta ya.
Njehie na-agụ ebe nchekwa mmemme na-apụtaghị ìhè (XCS-2450) N'ụfọdụ oge, onye nchịkọta ewepụtala njehie dị n'ime (insn na-enweghị ike ịmata) mgbe ị na-agụ uru byte abụọ site na ntụnye gaa na ebe nchekwa mmemme.
Ụdị 2.32
Ịnweta ọbá akwụkwọ nke abụọ adaala (XCS-2381) Na-akpọ ụdị Windows nke xc8-ar. exe ebe nchekwa ọba akwụkwọ nke ugboro abụọ iji nweta ebe nchekwa ọba akwụkwọ dị nwere ike dara na enweghị ike ịnyegharị ozi njehie aha.
Ụdị 2.31
Ọdịda mkpokọ enweghị nkọwa (XCS-2367) Mgbe ị na-agba ọsọ na nyiwe Windows nwere usoro ndekọ nwa oge ka edobere na ụzọ nke gụnyere ntụpọ'.' agwa, onye nchịkọta ihe nwere ike ghara ime ya.
Ụdị 2.30
Edokwaghị akara n'ụwa niile ka emechara ya (XCS-2299) Koodu mgbakọ ejiri aka dee nke na-edobe akara mba ụwa n'ime usoro nzụkọ nke ewepụtara site na abstraction usoro nwere ike ọ gaghị edogharị ya nke ọma.
Okuku izu ike (XCS-2287) Iji nhọrọ -merlad nwere ike ime ka onye njikọ ahụ daa mgbe njikarịcha ntụrụndụ ọdụ na-awụlikwa elu nwara iwepu nkuzi ret nke na-anọghị na njedebe nke ngalaba.
Ọkụkụ mgbe ị na-ebuli akara dị ka ụkpụrụ (XCS-2282) Koodu iji “Labels as values” ndọtị asụsụ GNU C nwere ike ime ka njikarịcha abstraction usoro daa, yana nso nso VMA akọwapụtara na-agafe njehie ndozi.
Ọ bụghị otú ahụ const (XCS-2271) Ụdị maka mmalite () na ọrụ ndị ọzọ sitere na akọwakwaghị ihe ntozu ọnụ ahịa na-abụghị ọkọlọtọ na nrịbama eriri eweghachiri mgbe njirimara -monist-data inprogmem nwere nkwarụ. Rịba ama na site na avrxmega3 na avertin ngwaọrụ, a na-akwado njirimara a kpamkpam.
Ihe mmalite furu efu (XCS-2269) Mgbe etinyere ihe karịrị otu mgbanwe na nkeji ntụgharị na ngalaba (iji ngalaba ma ọ bụ njirimara ((ngalaba))), na nke mbụ mgbanwe dị otú ahụ bụ efu ebido ma ọ bụ enweghị mmalite, mmalite maka mgbanwe ndị ọzọ na otu nsụgharị ntụgharị. ndị e debere n'otu akụkụ ahụ furu efu.
Ụdị 2.29 (Mwepụta Nchekwa na-arụ ọrụ)
Ọ dịghị.
Ụdị 2.20
Njehie nwere iwu ogologo (XCS-1983) Mgbe ị na-eji ebumnuche AVR, onye nchịkọta nwere ike jiri a file Ahụghị mperi, ma ọ bụrụ na ahịrị iwu ahụ buru oke ibu ma nwee mkpụrụedemede pụrụ iche dị ka nhụta, azụ azụ, wdg.
Ngalaba rodata ekenyeghị (XCS-1920) Onye na-ahụ maka AVR anaghị 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ị (XCS-1891) Ihe kacha mma dabara adaba na-ahapụ 'oghere' ebe nchekwa n'etiti ngalaba mgbe izu ike njikọ. 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ụ.
Agbanweghị ntuziaka site na izu ike (XCS-1889) Ntụrụndụ Linker emeghị maka ịwụli elu ma ọ bụ ntuziaka ịkpọ oku nke ebumnuche ha ga-enweta ma ọ bụrụ izu ike.
Na-efu efu arụmọrụ (XCSE-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 efu Ndị nchịkọta anaghị akọwapụta macro_ xcs _MODE_ preprocessor, _xcs VERSION, _xc na xcs ozugbo. Ndị a dị ugbu a.
Ụdị 2.05
Njehie mkpokọta mkpokọta (XCS-1822) Mgbe ị na-ewu n'okpuru Windows, enwere ike ịmepụta njehie n'ime mkpokọta mgbe ị na-ebuli koodu.
Ahụghị oke oke RAM (XCS-1800, XCS-1796) Mmemme ndị karịrị RAM ahụ dịnụ achọpụtaghị ndị nchịkọta ihe n'ọnọdụ ụfọdụ, na-ebute ọdịda koodu ojiri gaa.
Ebe nchekwa flash ewepụrụ (XCS-1792) Maka ngwaọrụ avrxmega3 na avrtiny, akụkụ nke ebe nchekwa flash nwere ike bụrụla nke MPLAB X IDE ahazibeghị ya.
Ọdịda ime isi (XCS-1788) N'ọnọdụ ụfọdụ ebe mmemme enweghị nkọwa zuru ụwa ọnụ, koodu mmalite mmalite anaghị apụ apụ na isi () arụ ọrụ erubeghị.
Ozi ebe nchekwa ezighi ezi (XCS-1787) Maka ngwaọrụ avrxmega3 na avrtiny, mmemme avr-size na-akọ na naanị data ọgụgụ na-eri RAM kama ebe nchekwa mmemme.
Ebe nchekwa mmemme ezighi ezi (XCS-1783) Ọrụ achịkọtara maka ngwaọrụ nwere ebe nchekwa mmemme etinyere n'ime oghere adreesị data yana nke na-akọwapụta ihe site na iji nnukwu/àgwà PROGMEM nwere ike gụọ ihe ndị a site na adreesị na-ezighi ezi.
Njehie dị n'ime nwere njirimara (XCS-1773) Njehie dị n'ime mere ma ọ bụrụ na ị kọwapụtara ihe nrịbama na ihe
_at () ma ọ bụ àgwà() akara dị n'etiti aha pointer na ụdị ewepụrụ, maka ex.ample, chara*
_na ( 0x80015 0) cp; A na-enye ịdọ aka ná ntị ugbu a ma ọ bụrụ na ahụrụ ụdị koodu ahụ.
Ọdịda ime isi (XCS-1780, XCS-1767, XCS-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ụ (XCS-1778, XCS-1742) Ngwa attiny4/5/9/10/20/40 nwere ogologo fiusi na-ezighi ezi akọwapụtara na nkụnye eji isi mee ha. files nke na-eduga na njehie njikọ mgbe ị na-agbalị ịmepụta koodu nke akọwapụtara fuses.
Mmejọ nkewa (XCS-1777) Edozila mmejọ nkewa na-adịte aka.
Mkpọkpọ okuku (XCS-1761) Onye na-agbakọta avr-as nwere ike ịdaba mgbe a na-agbakọ mkpokọta n'okpuru Ubuntu 18.
Ihe anaghị ekpochapụ (XCS-1752) Ihe na-adịru oge nchekwa na-enweghị aha nwere ike ọ gaghị ekpochapụ ya site na koodu mmalite mmalite.
Elegharala nkọwapụta ngwaọrụ na-emegiderịta onwe ya anya (XCS-1749) Onye nchịkọta anaghị ewepụta njehie mgbe ejiri ọtụtụ nhọrọ nkọwa ngwaọrụ wee gosi ngwaọrụ dị iche iche.
Nrụbi ebe nchekwa site na ikpo (XCS-1748) A na-edobe akara mmalite heap_ mmalite nke ezighi ezi, na-ebute enwere ike mebie mgbanwe nkịtị site na ikpo ahụ.
Njehie mbugharị Linker (XCS-1739) Enwere ike ịwepụta njehie mbugharị njikọ mgbe koodu nwere rjmp ma ọ bụ kpọọ oku nwere ebumnuche 4k dịpụrụ adị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, ma ọ bụ
ndahie site na ozi dị n'ime akwụkwọ ntuziaka onye ọrụ. Akara akara (s) nwere bracketed na aha bụ njirimara nke okwu 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 operandi mode 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.
Usoro Ọgbọ
Ọdịda oke ebe nchekwa PA (XCS-2881) Mgbe ị na-eji ihe nrụnye abstraction nke usoro, onye njikọ ahụ nwere ike kọọ njehie oke ebe nchekwa mgbe nha koodu dị nso na ọnụọgụ ebe nchekwa mmemme dị na ngwaọrụ ahụ, n'agbanyeghị na mmemme ahụ kwesịrị inwe ike dabara na oghere dị.
Ọ bụghị smart Smart-IO (XCS-2872) Njirimara smart-io nke onye na-achịkọta ga-ewepụta koodu ziri ezi mana nke kachasị mma maka ọrụ sprint ma ọ bụrụ na arụ ọrụ ụsọ oké osimiri-data-in-proem nwere nkwarụ ma ọ bụ ọ bụrụ na ngwaọrụ ahụ nwere maapụ ọkụ ya niile na ebe nchekwa data.
Ọbụlagodi obere smart-IO (XCS-2869) Njirimara smart-io nke onye nchịkọta ga-ewepụta koodu ziri ezi mana nke kachasị mma mgbe ejiri nhọrọ -floe na -fno-buil tin.
Ndobe data naanị ọgụgụ kacha mma (XCS-2849) Onye njikọ ahụ amaghị ugbu a maka ngalaba ebe nchekwa APPCODE na APPDATA, ma ọ bụ nkewa [Mba-] Na-agụ-Mgbe-Dee na map 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 ezighi ezi na-abawanye ma ọ bụrụ na agbanyere njirimara data-in-pragma, ọkachasị ma ọ bụrụ na agbakwunyere njirimara ụsọ oké osimiri-data-in-config-mapped-proem. Enwere ike gbanyụọ atụmatụ ndị a ma achọrọ ya.
Ihe file usoro nhazi (XCS-2863) Usoro nke ihe files ga-ahazi site na onye njikọ nwere ike ịdị iche dabere na iji njikarịcha abstraction usoro (-mpa nhọrọ). Nke a ga-emetụta naanị koodu nke na-akọwa ọrụ adịghị ike n'ofe ọtụtụ modul.
Njehie njikọ nwere zuru oke (XCS-2777) Mgbe emechara ihe zuru oke na adreesị mmalite nke RAM na kọwakwara ihe ndị na-amaghị aha, enwere ike ịkpalite njehie njikọ.
NJ mkpirisi ịkpọte (XCS-2775) Maka ngwaọrụ ATA5700/2, a na-akọwa naanị ndekọ PHID0/1 dị ka obosara 16 bit, kama obosara 32bit.
Njikọ njikọ mgbe akara oku (XCS-2758) Onye njikọ ahụ nwere ike daa ma ọ bụrụ na-eji nhọrọ ọkwọ ụgbọ ala -merlad mgbe koodu isi mmalite na-akpọ akara nke akọwara site na iji nhọrọ -Wl, -defsym linker.
Mmalite ezighi ezi (XCS-2679) Enwere ọdịiche dị n'etiti ebe a na-etinye ụkpụrụ mbụ maka ụfọdụ ihe dị nha nke ụwa / static byte na ebe nchekwa data yana ebe a ga-enweta mgbanwe ndị ahụ na oge ojiri gaa.
malitere ịtọghe ihe efu (XCS-2652) N'oge ebe eriri isiokwu maka ntụgharị site na nkwupụta () nwere ihe yiri ka ọ bụ nọmba na-ese n'elu mmiri n'ụdị nkọwa yana enwere agwa a na-atụghị anya ya ma e mechara e agwa, mgbe ahụ adreesị efu, ọ bụrụ na enyere ya, ga-arụtụ aka na agwa ma emechaa. e na ọ bụghị e n'onwe ya. Maka example: kwuru ("hooey", efu); ga-ebute ụzọ efu na-atụ aka na agwa x.
Oku ọrụ na-apụtaghị ìhè (XCS-2628) N'ụfọdụ oge, oku ọrụ emere site na ntụnye ọrụ echekwara dị ka akụkụ nke nhazi nwere ike ịda.
strtof weghachiri efu maka hexadecimal floats (XCS-2626) Ọbá akwụkwọ ahụ na-arụ ọrụ strtof () et al na scanf () et al, ga-agbanwe mgbe ọ bụla ọnụọgụ hexadecimal na-ese n'elu mmiri nke na-akọwapụtaghị nkọwapụta
efu. Maka example: stator ("Owl", & efu); ga-eweghachi uru 0, ọ bụghị 1.
Ozi onye ndụmọdụ nchịkọta ezighi ezi (XCS-2542, XCS-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()) adịghị ewepụta.
Ọdịda na koodu nkwụsịtụ oyiri (XCS-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.
Ihe anaghị eme na ebe nchekwa mmemme (XCS-2408) N'ihi na avrxmega3 na avertins oru ngo unidealized const ihe na-etinye n'ime data ebe nchekwa, n'agbanyeghị ịdọ aka ná ntị na-egosi na e debere ha na mmemme ebe nchekwa. Nke a agaghị emetụta ngwaọrụ ndị na-enweghị ebe nchekwa mmemme etinyere n'ime oghere ebe nchekwa data, ọ gaghị emetụta ihe ọ bụla ewepụtara.
Mmepụta ọjọọ nwere ụzọ DFP na-ezighi ezi (XCS-2376) Ọ bụrụ na ejiri ụzọ DFP na-ezighi ezi na 'spec' kpọọ onye nchịkọta ihe. file dị maka ngwaọrụ ahọpụtara, onye nchịkọta anaghị akọ mkpọ ezinụlọ na-efu efu kama họrọ 'spec' file, nke nwere ike bute nsonaazụ na-ezighi ezi. Ihe 'spec' files nwere ike ọ gaghị adị ọhụrụ na DFP nke kesara ma e bu n'obi jiri naanị nyocha mkpokọta ime.
Achọpụtaghị ihe ndakọrịta ebe nchekwa (XCS-1966) Onye na-achịkọta anaghị achọpụta mgbakwụnye ebe nchekwa nke ihe emere zuru oke na adreesị (site na ()) yana ihe ndị ọzọ site na iji nkọwa ngalaba () yana nke ejikọtara na otu adreesị ahụ.
Ọdịda na ọrụ ọba akwụkwọ yana _meme (XCS-1763) Akpọrọ ọrụ limbic float nwere arụmụka dị na oghere adreesị _memo 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 limbic nwere oke (AVRTC-731) Maka ngwaahịa ATTiny4/5/9/10/20/40, mmejuputa ọbá akwụkwọ C / Math na limbic nwere oke ma ọ bụ na ọ nọghị.
Oke ebe nchekwa mmemme (AVRTC-732) Ihe oyiyi ebe nchekwa ihe mmemme karịrị 128 kb bụ nke ngwá ọrụ na-akwado; 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ụ ọrụ achọrọ mgbe a na-eji nhọrọ -relax.
Oke oghere aha (AVRTC-733) Ngwa ngwa na-akwado oghere adreesị akpọrọ, dabere na mmachi akpọtụrụ na ngalaba ntuziaka onye ọrụ, ụdị iru eru pụrụ iche.
Mpaghara oge Nke Ọrụ ọba akwụkwọ na-ewere GMT na anaghị akwado mpaghara oge mpaghara, yabụ oge mpaghara () ga-alaghachi n'otu oge dị ka gummite (), maka ex.ample.
Nkwado ndị ahịa
file:///Applications/microehip/xc8/v 2 .40/docs/Gụọ m_X C 8_ maka VR. htm
Akwụkwọ / akụrụngwa
![]() |
MICROCHIP MPLAB XC8 C Compiler Software [pdf] Akwụkwọ ntuziaka onye nwe MPLAB XC8 C, MPLAB XC8 C Compiler Software, Compiler Software, Software |