MPLAB® XC8 C සම්පාදක අනුවාදය 2.41 AVR® MCU සඳහා නිකුත් කිරීමේ සටහන්
හිමිකරුගේ අත්පොත
MPLAB XC8 C සම්පාදක සංවර්ධන මෘදුකාංගය
MICROCHIP AVR උපාංග ඉලක්ක කරන විට MPLAB XC8 C සම්පාදකයට අදාළ වැදගත් තොරතුරු මෙම ලේඛනයේ අඩංගු වේ.
මෙම මෘදුකාංගය ක්රියාත්මක කිරීමට පෙර කරුණාකර එය කියවන්න. ඔබ 8-BIT PIC උපාංග සඳහා compiler භාවිතා කරන්නේ නම් PIC ලේඛනය සඳහා MPLAB XC8 C සම්පාදනය නිකුත් කිරීමේ සටහන් බලන්න.
ඉවරයිview
1.1. හැඳින්වීම
Microchip MPLAB® XC8 C සම්පාදකයේ මෙම නිකුතුවේ නව විශේෂාංග සහ දෝෂ නිවැරදි කිරීම් කිහිපයක් අඩංගු වේ.
1.2 ගොඩනැගීමේ දිනය
මෙම සම්පාදක අනුවාදයේ නිල ගොඩනැගීමේ දිනය 8 පෙබරවාරි 2023 වේ.
1.3 පෙර අනුවාදය
පෙර MPLAB XC8 C සම්පාදක අනුවාදය 2.40 3 ජූලි 2022 වන දින ඉදිකරන ලදි.
1.4 ක්රියාකාරී ආරක්ෂණ අත්පොත
MPLAB XC සම්පාදක සඳහා ක්රියාකාරී ආරක්ෂණ අත්පොතක් ඔබ ක්රියාකාරී ආරක්ෂණ බලපත්රයක් මිලදී ගන්නා විට ලේඛන පැකේජයේ ඇත.
1.5 සංරචක බලපත්ර සහ අනුවාද
AVR MCUs මෙවලම් සඳහා MPLAB XC8 C සම්පාදකය GNU සාමාන්ය මහජන බලපත්රය (GPL) යටතේ ලියා බෙදා හරිනු ලැබේ, එයින් අදහස් කරන්නේ එහි මූල කේතය නොමිලේ බෙදා හරින අතර මහජනයාට ලබා ගත හැකි බවයි.
GNU GPL යටතේ ඇති මෙවලම් සඳහා වන මූල කේතය Microchip වෙතින් වෙන වෙනම බාගත කළ හැක webඅඩවිය. ඔබගේ ස්ථාපන බලපත්ර.txt avr/doc නාමාවලියෙහි උප බහලුම පිහිටා ඇති ගොනුවේ GNU GPL ඔබට කියවිය හැක. GPL සඳහා පාදක වන මූලධර්ම පිළිබඳ සාමාන්ය සාකච්ඡාවක් මෙහි සොයා ගත හැක.
ශීර්ෂ ගොනු, ලින්කර් ස්ක්රිප්ට් සහ ධාවන කාල පුස්තකාල සඳහා සපයා ඇති ආධාරක කේතය හිමිකාර කේතය වන අතර GPL යටතේ ආවරණය නොවේ.
මෙම සම්පාදකය GCC අනුවාදය 5.4.0, binutils අනුවාදය 2.26 ක්රියාත්මක කිරීමකි, සහ avr-libc අනුවාදය 2.0.0 භාවිතා කරයි.
1.6. පද්ධති අවශ්යතා
MPLAB XC8 C සම්පාදකය සහ එය භාවිතා කරන බලපත්ර මෘදුකාංගය පහත දැක්වෙන 64-bit අනුවාද ඇතුළුව විවිධ මෙහෙයුම් පද්ධති සඳහා ලබා ගත හැකිය: Microsoft® Windows® 10 හි වෘත්තීය සංස්කරණ; Ubuntu® 18.04; සහ macOS® 10.15.5. වින්ඩෝස් සඳහා ද්විමය කේත අත්සන් කර ඇත. macOS සඳහා ද්විමය කේත-අත්සන් කර නොතාරිස් කර ඇත. MPLAB XC ජාල බලපත්ර සේවාදායකය Microsoft Windows 64 සහ ඊට ඉහළ ඇතුළුව, විවිධ 10-bit මෙහෙයුම් පද්ධති සඳහා ලබා ගත හැකිය; උබුන්ටු 18.04 සහ ඉහළ; හෝ macOS 10.15 සහ ඉහළ. සේවාදායකය Windows Server, Oracle® Enterprise Linux® සහ Red Hate Enterprise Linux වැනි ලිනක්ස් බෙදාහැරීම් මෙන්ම සහය දක්වන මෙහෙයුම් පද්ධතිවල පැරණි අනුවාද ඇතුළුව වෙනත් විවිධ මෙහෙයුම් පද්ධති මතද ධාවනය විය හැක. කෙසේ වෙතත්, MPLAB XC ජාල බලපත්ර සේවාදායකය මෙම මෙහෙයුම් පද්ධති මත පරීක්ෂා නොකෙරේ. MPLAB XC ජාල බලපත්ර සේවාදායකය ජාල බලපත්ර (SW006021-VM) සඳහා අතථ්ය යන්ත්ර බලපත්රයක් භාවිතයෙන් සහය දක්වන මෙහෙයුම් පද්ධතියේ අතථ්ය යන්ත්ර මත ධාවනය කළ හැක. MPLAB XC ජාල සේවාදායකයේ සියලුම 32-බිට් අනුවාද 3.00 අනුවාදයෙන් ආරම්භ වේ.
උපාංග සඳහා සහය දක්වයි
මෙම සම්පාදකය නිකුත් කරන අවස්ථාවේ පවතින සියලුම බිට් 8 AVR MCU උපාංග සඳහා සහය දක්වයි. සහාය දක්වන සියලුම උපාංග ලැයිස්තුවක් සඳහා (සම්පාදක නාමාවලියෙහි) බලන්න. මෙම ගොනු ද ලැයිස්තුගත කර ඇත
එක් එක් උපාංගය සඳහා avr_chipinfo.html doc වින්යාස බිටු සැකසුම්.
1.7 සංස්කරණ සහ බලපත්ර උත්ශ්රේණි කිරීම්
MPLAB XC8 සම්පාදකය බලපත්රලාභී (PRO) හෝ බලපත්ර රහිත (නොමිලේ) නිෂ්පාදනයක් ලෙස සක්රිය කළ හැක. ඔබේ සම්පාදකයට බලපත්ර ලබා දීම සඳහා ඔබ සක්රිය කිරීමේ යතුරක් මිලදී ගත යුතුය. බලපත්රයක් නොමිලේ නිෂ්පාදනයට සාපේක්ෂව ඉහළ මට්ටමේ ප්රශස්තකරණයකට ඉඩ සලසයි. බලපත්ර රහිත සම්පාදකයක් බලපත්රයක් නොමැතිව දින නියමයක් නොමැතිව ක්රියාත්මක කළ හැක. MPLAB XC8 ක්රියාකාරී ආරක්ෂණ සම්පාදකයක් මයික්රොචිප් වෙතින් මිලදී ගත් ක්රියාකාරී ආරක්ෂණ බලපත්රයක් සමඟ සක්රිය කළ යුතුය. මෙම බලපත්රය නොමැතිව සම්පාදකය ක්රියාත්මක නොවේ. සක්රිය වූ පසු, ඔබට ඕනෑම ප්රශස්තිකරණ මට්ටමක් තෝරාගෙන සියලුම සම්පාදක විශේෂාංග භාවිතා කළ හැක. MPLAB XC Functional Safety Compiler හි මෙම නිකුතුව ජාල සේවාදායක බලපත්රය සඳහා සහය දක්වයි.
බලපත්ර වර්ග සහ බලපත්රයක් සහිත සම්පාදක ස්ථාපනය පිළිබඳ තොරතුරු සඳහා MPLAB XC C Compilers (DS50002059) ස්ථාපනය සහ බලපත්ර ලබා දීම බලන්න.
1.8. ස්ථාපනය සහ සක්රිය කිරීම
මෙම සම්පාදකය සමඟ ඇතුළත් කර ඇති නවතම බලපත්ර කළමනාකරු පිළිබඳ වැදගත් තොරතුරු සඳහා සංක්රමණ ගැටළු සහ සීමා කොටස් ද බලන්න.
MPLAB IDE භාවිතා කරන්නේ නම්, මෙම මෙවලම ස්ථාපනය කිරීමට පෙර නවතම MPLAB X IDE අනුවාදය 5.0 හෝ පසුව ස්ථාපනය කිරීමට වග බලා ගන්න. සම්පාදකය ස්ථාපනය කිරීමට පෙර IDE වෙතින් ඉවත් වන්න. (Windows), (Linux) හෝ (macOS) .exe .run .app compiler ස්ථාපක යෙදුම ධාවනය කරන්න, උදා සහ තිරයේ ඇති උපදෙස් අනුගමනය කරන්න. XC8-1.00.11403-windows.exe පෙරනිමි ස්ථාපන නාමාවලිය නිර්දේශ කෙරේ. ඔබ Linux භාවිතා කරන්නේ නම්, ඔබ සම්පාදකය ටර්මිනලයක් භාවිතයෙන් සහ root ගිණුමකින් ස්ථාපනය කළ යුතුය. පරිපාලක වරප්රසාද සහිත macOS ගිණුමක් භාවිතයෙන් ස්ථාපනය කරන්න.
සක්රිය කිරීම දැන් ස්ථාපනය සඳහා වෙන වෙනම සිදු කෙරේ. වැඩි විස්තර සඳහා MPLAB® XC C Compilers (DS52059) සඳහා ලේඛන බලපත්ර කළමනාකරු බලන්න.
ඔබ ඇගයීම් බලපත්රය යටතේ සම්පාදකය ක්රියාත්මක කිරීමට තෝරා ගන්නේ නම්, ඔබ ඔබේ ඇගයුම් කාල සීමාව අවසන් වී දින 14ක් ඇතුළත සිටින විට සම්පාදනය කිරීමේදී ඔබට දැන් අනතුරු ඇඟවීමක් ලැබෙනු ඇත. ඔබ ඔබේ HPA දායකත්වය අවසන් වී දින 14ක් ඇතුළත සිටින්නේ නම් එම අනතුරු ඇඟවීමම නිකුත් කෙරේ.
XC ජාල බලපත්ර සේවාදායකය වෙනම ස්ථාපකයක් වන අතර එය තනි පරිශීලක සම්පාදක ස්ථාපකයට ඇතුළත් නොවේ.
XC බලපත්ර කළමනාකරු දැන් පාවෙන ජාල බලපත්රවල රෝමිං සඳහා සහය දක්වයි. ජංගම දුරකථන භාවිතා කරන්නන් ඉලක්ක කර ගත් මෙම විශේෂාංගය මඟින් පාවෙන බලපත්රයක් කෙටි කාලයක් සඳහා ජාලයෙන් ඉවත් වීමට ඉඩ සලසයි. මෙම විශේෂාංගය භාවිතයෙන්, ඔබට ජාලයෙන් විසන්ධි විය හැකි අතර තවමත් ඔබේ MPLAB XC සම්පාදකය භාවිතා කළ හැක. මෙම විශේෂාංගය පිළිබඳ වැඩි විස්තර සඳහා XCLM ස්ථාපනයේ ලේඛන ෆෝල්ඩරය බලන්න.
MPLAB X IDE රෝමිං දෘශ්ය ලෙස කළමනාකරණය කිරීමට බලපත්ර කවුළුවක් (මෙවලම් > බලපත්ර) ඇතුළත් වේ.
1.8.1. ස්ථාපන ගැටළු විසඳීම
ඕනෑම Windows මෙහෙයුම් පද්ධතියක් යටතේ සම්පාදකය ස්ථාපනය කිරීමේදී ඔබට දුෂ්කරතා ඇති වන්නේ නම්, පහත යෝජනා උත්සාහ කරන්න.
ස්ථාපනය පරිපාලක ලෙස ධාවනය කරන්න.
ස්ථාපක යෙදුමේ අවසර 'සම්පූර්ණ පාලනය' ලෙස සකසන්න. (ගොනුව මත දකුණු-ක්ලික් කරන්න, ගුණාංග තෝරන්න, ආරක්ෂක පටිත්ත, පරිශීලක තෝරන්න, සංස්කරණය කරන්න.)
තාවකාලික ෆෝල්ඩරයේ අවසරයන් 'සම්පූර්ණ පාලනය' ලෙස සකසන්න.
තාවකාලික ෆෝල්ඩරයේ පිහිටීම තීරණය කිරීම සඳහා, Run විධානය තුළ %temp% ටයිප් කරන්න (Windows logo key + R).
මෙය එම නාමාවලිය පෙන්වන ගොනු ගවේෂක සංවාදයක් විවෘත කරන අතර එම ෆෝල්ඩරයේ මාර්ගය තීරණය කිරීමට ඔබට ඉඩ සලසයි.
1.9 සම්පාදක ලේඛනගත කිරීම
Screenshot හි දක්වා ඇති පරිදි MPLAB X IDE උපකරණ පුවරුවේ නිල් උදවු බොත්තම ක්ලික් කරන විට ඔබේ බ්රවුසරයේ විවෘත වන HTML පිටුවෙන් සම්පාදකයාගේ පරිශීලක මාර්ගෝපදේශ විවෘත කළ හැක.
ඔබ 8-bit AVR ඉලක්ක සඳහා ගොඩනඟන්නේ නම්, AVR® MCU සඳහා MPLAB® XC8 C Compiler පරිශීලක මාර්ගෝපදේශය මෙම ගෘහ නිර්මාණ ශිල්පයට අදාළ වන සම්පාදක විකල්ප සහ විශේෂාංග පිළිබඳ තොරතුරු අඩංගු වේ.

1.10. පාරිභෝගික සහාය
Microchip මෙම සම්පාදක අනුවාදය සම්බන්ධයෙන් දෝෂ වාර්තා, යෝජනා හෝ අදහස් සාදරයෙන් පිළිගනී. කරුණාකර කිසියම් දෝෂ වාර්තා හෝ විශේෂාංග ඉල්ලීම් ආධාරක පද්ධතිය හරහා යොමු කරන්න.
ලේඛන යාවත්කාලීන
MPLAB XC8 ප්රලේඛනයේ මාර්ගගත සහ යාවත්කාලීන අනුවාද සඳහා, කරුණාකර Microchip හි මාර්ගගත තාක්ෂණික ප්රලේඛනය වෙත පිවිසෙන්න webඅඩවිය. මෙම නිකුතුවේ නව හෝ යාවත්කාලීන AVR ලේඛන:
- AVR® MCU සඳහා MPLAB® XC8 C සම්පාදක පරිශීලක මාර්ගෝපදේශය (සංශෝධන G)
- AVR® GNU Toolchain to MPLAB® XC8 සංක්රමණ මාර්ගෝපදේශය (සංශෝධන A)
- Hexmate පරිශීලක මාර්ගෝපදේශය (සංශෝධනය B)
AVR® GNU Toolchain to MPLAB® XC8 සංක්රමණ මාර්ගෝපදේශය, AVR 8-bit GNU Toolchain වෙතින් Microchip MPLAB XC8 C Compiler වෙත C-පාදක ව්යාපෘතියක් සංක්රමණය කිරීමට ඔබ තීරණය කළහොත් අවශ්ය විය හැකි මූලාශ්ර කේතය සහ ගොඩනැගීමේ විකල්ප විස්තර කරයි. Microchip Unified Standard Library Reference Guide මගින් Microchip Unified Standard Library මගින් නිර්වචනය කර ඇති කාර්යයන් වල හැසිරීම සහ අතුරු මුහුණත මෙන්ම පුස්තකාල වර්ග සහ මැක්රෝ වල අපේක්ෂිත භාවිතය විස්තර කරයි. මෙම තොරතුරු වලින් සමහරක් කලින් AVR® MCU සඳහා MPLAB® XC8 C සම්පාදක පරිශීලක මාර්ගෝපදේශයේ අඩංගු විය. උපාංගය-විශේෂිත පුස්තකාල තොරතුරු තවමත් මෙම සම්පාදක මාර්ගෝපදේශයෙහි අඩංගු වේ.
ඔබ 8-bit උපාංග සහ MPLAB XC8 C Compiler සමඟ ආරම්භ කරන්නේ නම්, Embedded Engineers සඳහා MPLAB® XC8 පරිශීලක මාර්ගෝපදේශය - AVR® MCUs (DS50003108) MPLAB X IDE හි ව්යාපෘති සැකසීම සහ ඔබේ කේතය ලිවීම පිළිබඳ තොරතුරු ඇත. පළමු MPLAB XC8 C ව්යාපෘතිය. මෙම මාර්ගෝපදේශය දැන් සම්පාදකය සමඟ බෙදා හැර ඇත.
Hexmate පරිශීලක මාර්ගෝපදේශය Hexmate තනියම යෙදුමක් ලෙස ධාවනය කරන අය සඳහා අදහස් කෙරේ.
මොනවද අළුත්
පහත දැක්වෙන්නේ සම්පාදකය දැන් සහය දක්වන නව AVR-ඉලක්ක විශේෂාංග වේ. උපමාතෘකාවල අනුවාද අංකයෙන් දැක්වෙන්නේ පහත දැක්වෙන විශේෂාංග සඳහා සහය දක්වන පළමු සම්පාදක අනුවාදයයි.
3.1 අනුවාදය 2.41
බූට්රෝ සහාය (XC8-3053) සම්පාදකය විසින් HEX ගොනුවේ at.bootrow ලිපිනය 0x860000 උපසර්ගයක් සහිත ඕනෑම කොටසක අන්තර්ගතය තබයි. මෙම කොටස් BOOTROW මතකය සඳහා භාවිතා කරනු ලබන අතර, එය ඇරඹුම් කාරකයකට පමණක් ප්රවේශ විය යුතු යතුරු සහ අනෙකුත් ආරක්ෂිත තොරතුරු ගබඩා කිරීම සඳහා නිර්මාණය කර ඇත.
අතිරික්ත ප්රතිලාභ තුරන් කිරීම (XC8-3048) අභිරුචි සම්බන්ධක ස්ක්රිප්ට් භාවිතා කරන විට ටේල් ජම්ප් එකක් සමඟින් රෙට් ශ්රිතවල අනවශ්ය උපදෙස් සම්පාදකය දැන් ඉවත් කරයි. මෙය පෙර සිදු කරන ලද ප්රශස්තකරණයට සමාන ප්රශස්තකරණයකි, නමුත් අභිරුචි සම්බන්ධක ස්ක්රිප්ට් එකක් භාවිතා කළත් සහ හොඳම ෆිට් වෙන් කිරීමේ ක්රමය ක්රියාත්මක නොවූවත්, දැන් එය සියලුම අනාථ කොටස් මත සිදු කෙරේ. කාල වර්ගය වෙනස් කිරීම (XC8-2982, 2932) C99 සම්මත පුස්තකාල වර්ගය, time_t සිට වර්ගයක් දක්වා වෙනස් කර ඇත, එය වැනි කාලයට අදාළ දිගු ක්රියාකාරකම්වල කේත ප්රමාණයේ වැඩිදියුණු කිරීම් ලබා දෙයි. අත්සන් නොකළ දිගු mktime()
New nop (XC8-2946, 2945) මැක්රෝ එක එකතු කර ඇත. මෙම මැක්රෝව no- NOP() ඇතුලත් කරයි nop මෙහෙයුම් උපදෙස් ප්රතිදානයට.
XCLM වෙත යාවත්කාලීන කරන්න (XC8-2944) සම්පාදකය සමඟ භාවිතා කරන බලපත්ර කළමනාකරු යාවත්කාලීන කර ඇති අතර දැන් සම්පාදකයාගේ බලපත්ර විස්තර පරීක්ෂා කිරීමේදී වඩාත් ප්රතිචාර දක්වයි.
Trampolined ඇමතුම් (XC8-2760) සම්පාදනය කරන්නාට දැන් දිගු ආකාර ඇමතුම් උපදෙස් කෙටි සාපේක්ෂ ඇමතුම් සමඟ ප්රතිස්ථාපනය කළ හැක, උපදෙස් වල සාපේක්ෂ ආකෘති සාමාන්යයෙන් ඔවුන්ගේ ගමනාන්තයෙන් බැහැරව පවතින විට. මෙම තත්වය තුළ, සම්පාදකයා විසින් rcall වෙත උපදෙස් ඇමතීමට උපදෙස් සමඟ ප්රතිස්ථාපනය කිරීමට උත්සාහ කරනු ඇත.ampඅවශ්ය ලිපිනයට ඔලයින් ක්රියාත්මක කිරීම, උදාample: jmp
rcall tramp_foo ; foo ලෙස ඇමතීය
…
rcall tramp_ෆූ
…
tramp_foo:
jmp foo
මෙම ප්රශස්තකරණය, සමාන ක්රමලේඛ ප්රවාහ ප්රශස්තිකරණයන් සමඟ, -mrelax විකල්පය මඟින් පාලනය වේ.
3.2 අනුවාදය 2.40
පහත AVR කොටස් සඳහා නව උපාංග ආධාරක සහාය දැන් පවතී: AT90PWM3, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR32DD14, AVR32DD20, AVR32DD28, AVR32D32, AVR64D28 64, සහ AVR32EA64.
වැඩිදියුණු කරන ලද ක්රියා පටිපාටි සාරාංශය ක්රියා පටිපාටි සාරාංශ (PA) ප්රශස්තිකරණ මෙවලම වැඩිදියුණු කර ඇති අතර එමඟින් ශ්රිත ඇමතුම් උපදෙස් (/ ) අඩංගු කේතයක් භාවිතා කළ හැකිය. මෙය සිදු වන්නේ rcall ඇමතුමක් ලබා ගැනීමේදී පමණි. විචල්ය තර්ක ලැයිස්තුවක් සහිත ශ්රිතයක් ඇමතීමේ දී හෝ මේ සඳහා නම් කර ඇති ලේඛනවලට වඩා වැඩි තර්ක ලබා ගන්නා ශ්රිතයක් ඇමතීමේ දී තොගය භාවිතා වේ. මෙම විශේෂාංගය විකල්පය භාවිතයෙන් අක්රිය කළ හැක, නැතහොත් වස්තු ගොනුවක් හෝ ශ්රිතයක් සඳහා ක්රියාපටිපාටික සාරාංශය සම්පූර්ණයෙන් අක්රිය කළ හැක- සහ, පිළිවෙළින්, හෝ විශේෂාංග (විශේෂකය) වරණාත්මකව ශ්රිත සමඟ භාවිතා කිරීමෙන්.
mno-pa-outline-calls -mno-pa-on-file -mno-pa-on-function nopa කේත ආවරණ මැක්රෝ වලංගු විකල්පය __nopa __CODECOV -mcodecov නියම කර ඇත්නම් සම්පාදකය දැන් සාර්ව නිර්වචනය කරයි.
මතක වෙන්කිරීමේ විකල්පය AVR ඉලක්ක සඳහා තැනීමේදී ධාවකය දැන් xc8-cc -mreserve=space@start:end විකල්පය පිළිගනී. මෙම විකල්පය දත්ත හෝ වැඩසටහන් මතක අවකාශය තුළ නිශ්චිත මතක පරාසය වෙන් කරයි, මෙම ප්රදේශයේ කේත හෝ වස්තු ජනනය කිරීමෙන් සම්බන්ධකය වළක්වයි. Smarter smart IO Smart IO ශ්රිතයන් සඳහා වැඩි දියුණු කිරීම් කිහිපයක් සිදු කර ඇත, printf හර කේතයට සාමාන්ය වෙනස් කිරීම්, %n පරිවර්තන විශේෂණය ස්වාධීන ප්රභේදයක් ලෙස සැලකීම, ඉල්ලුම මත vararg pop චර්යාවන් සම්බන්ධ කිරීම, හැසිරවීමට හැකි නම් කෙටි දත්ත වර්ග භාවිතා කිරීම. IO ක්රියාකාරී තර්ක, සහ ක්ෂේත්ර පළල සහ නිරවද්ය ලෙස හැසිරවීමේදී පොදු කේතය සාධක කිරීම. මෙය සැලකිය යුතු කේතයක් සහ දත්ත ඉතිරිකිරීම් මෙන්ම IO ක්රියාත්මක කිරීමේ වේගය වැඩි කිරීමට හේතු විය හැක.
3.3 අනුවාදය 2.39 (ක්රියාකාරී ආරක්ෂණ නිකුතුව)
ජාල සේවාදායක බලපත්රය MPLAB XC8 ක්රියාකාරී ආරක්ෂණ සම්පාදකයේ මෙම නිකුතුව ජාල සේවාදායක බලපත්රය සඳහා සහය දක්වයි.
3.4 අනුවාදය 2.36
කිසිවක් නැත.
3.5 අනුවාදය 2.35
පහත AVR කොටස් සඳහා නව උපාංග ආධාරක සහාය ඇත: ATTINY3224, ATTINY3226, ATTINY3227, AVR64DD14, AVR64DD20, AVR64DD28, සහ AVR64DD32.
වැඩිදියුණු කරන ලද සන්දර්භය මාරු කිරීම නව -mcall-isr-prologues විකල්පය මඟින් බාධා කිරීමේ ක්රියාකාරකම් ඇතුළත් කිරීමේදී රෙජිස්ටර් සුරකින ආකාරය සහ බාධා කිරීම් චර්යාව අවසන් වූ විට එම රෙජිස්ටර් ප්රතිසාධනය කරන ආකාරය වෙනස් කරයි. එය -mcall-prologues විකල්පයට සමාන ආකාරයකින් ක්රියා කරයි, නමුත් බාධා කිරීමේ කාර්යයන් (ISRs) වලට පමණක් බලපායි.
ඊටත් වඩා වැඩි දියුණු කළ සන්දර්භය මාරු කිරීම නව -mgas-isr-prologues විකල්පය කුඩා බාධා කිරීම් සේවා චර්යාවන් සඳහා ජනනය කරන ලද සන්දර්භය මාරු කේතය පාලනය කරයි. සබල කළ විට, මෙම විශේෂාංගය එකලස් කරන්නා විසින් ලියාපදිංචි භාවිතය සඳහා ISR පරිලෝකනය කර අවශ්ය නම් පමණක් භාවිත කළ මෙම රෙජිස්ටර් සුරකින්න ඇත.
වින්යාසගත කළ හැකි ෆ්ලෑෂ් සිතියම්කරණය AVR DA සහ AVR DB පවුලේ සමහර උපාංගවලට SFR (උදා: FLMAP) ඇත, එය දත්ත මතකයට සිතියම්ගත කරන්නේ කුමන වැඩසටහන් මතකයේ 32k කොටසද යන්න සඳහන් කරයි. නව - mconst-data-in-config-mapped-progmem විකල්පය සම්බන්ධකයට සියලු const-සුදුසුකම් ලත් දත්ත එක් 32k කොටසක ස්ථානගත කිරීමට සහ මෙම දත්ත දත්ත මතකයට සිතියම්ගත කර ඇති බව සහතික කිරීම සඳහා අදාළ SFR ලේඛනය ස්වයංක්රීයව ආරම්භ කිරීමට භාවිතා කළ හැක. අවකාශය, එය වඩාත් ඵලදායී ලෙස ප්රවේශ වනු ඇත.
Microchip Unified Standard Libraries සියලුම MPLAB XC සම්පාදකයන් Microchip Unified Standard Library එකක් බෙදා ගනු ඇත, එය MPLAB XC8 හි මෙම නිකුතුව සමඟින් දැන් ලබාගත හැක. AVO MCU සඳහා MPLA# XC8 C සම්පාදක පරිශීලක මාර්ගෝපදේශයෙහි මෙම සම්මත කාර්යයන් සඳහා ලේඛන තවදුරටත් ඇතුළත් නොවේ. මෙම තොරතුරු දැන් Microchip Unified Standard Library Reference Guide හි සොයා ගත හැක. avr-libc විසින් කලින් නිර්වචනය කරන ලද සමහර ක්රියාකාරීත්වය තවදුරටත් ලබා ගත නොහැකි බව සලකන්න. (ලීලා ක්රියාකාරීත්වය බලන්න.)
Smart I0 නව ඒකාබද්ධ පුස්තකාලවල කොටසක් ලෙස, Printf සහ scanf පවුල්වල I0 ශ්රිත දැන් එක් එක් ගොඩනැගීම මත අභිරුචි-උත්පාදනය කර ඇත, මෙම කාර්යයන් වැඩසටහනේ භාවිතා කරන ආකාරය මත පදනම්ව. මෙය වැඩසටහනක් භාවිතා කරන සම්පත් සැලකිය යුතු ලෙස අඩු කළ හැකිය.
Smart ICI සහය විකල්පය ස්මාර්ට් I0 ශ්රිත වෙත ඇමතුම් විශ්ලේෂණය කරන විට (මුද්රණ f () හෝ scanf () වැනි), සම්පාදකයාට සෑම විටම ආකෘති තන්තුවෙන් නිශ්චය කිරීමට හෝ ඇමතුමට අවශ්ය පරිවර්තන පිරිවිතරයන් තර්කවලින් අනුමාන කිරීමට නොහැකිය. මින් පෙර, සම්පාදකය සෑම විටම උපකල්පන සිදු නොකරන අතර සම්පූර්ණ ක්රියාකාරී ශ්රිත 10ක් අවසාන වැඩසටහන් රූපයට සම්බන්ධ කර ඇති බව සහතික කරයි. නව – msmart-io-format=fmt විකල්පයක් එක් කර ඇති අතර, ඒ වෙනුවට compiler හට ස්මාර්ට් I0 ශ්රිතයන් භාවිතා කරන පරිවර්තන පිරිවිතරයන් භාවිතා කරන්නාට දැනුම් දිය හැකි අතර, ඒවායේ භාවිතය අපැහැදිලි වන අතර, අධික ලෙස දිගු චර්යාවන් 10 ක් සම්බන්ධ වීම වළක්වයි. (වැඩිදුර විස්තර සඳහා smart-io-format විකල්පය බලන්න.)
අභිරුචි කොටස් තැබීම මින් පෙර, -W1, –section-start විකල්පය මඟින් ලින්කර් ස්ක්රිප්ට් එකම නම සහිත ප්රතිදාන අංශයක් නිර්වචනය කළ විට පමණක් ඉල්ලුම් කළ ලිපිනයෙහි නිශ්චිත කොටස තැබීය. එය එසේ නොවූ විට, සම්බන්ධකය විසින් තෝරාගත් ලිපිනයක කොටස තබා ඇති අතර විකල්පය අත්යවශ්යයෙන්ම නොසලකා හරින ලදී. දැන් සම්බන්ධක ස්ක්රිප්ට් කොටස නිර්වචනය නොකළද, සියලු අභිරුචි කොටස් සඳහා විකල්පය ගෞරවයට පාත්ර වේ. කෙසේ වෙතත්, සම්මත කොටස් සඳහා, එවැනි . පෙළ, . bss හෝ . දත්ත, හොඳම යෝග්ය විබෙදුම්කරුට තවමත් ඔවුන්ගේ ස්ථානගත කිරීම පිළිබඳ සම්පූර්ණ පාලනයක් ඇති අතර, විකල්පය කිසිදු බලපෑමක් ඇති නොකරයි. පරිශීලක මාර්ගෝපදේශයෙහි විස්තර කර ඇති පරිදි -ton, -Tsection=addr විකල්පය භාවිතා කරන්න.
3.6 අනුවාදය 2.32
PRO සම්පාදක බලපත්රයක් සමඟින් ලබා ගත හැකි Stack Guidance, compiler's Stack Guidance විශේෂාංගය මඟින් වැඩසටහනක් භාවිතා කරන ඕනෑම තොගයක උපරිම ගැඹුර තක්සේරු කිරීමට භාවිතා කළ හැක. එය වැඩසටහනක ඇමතුම් ප්රස්ථාරය ගොඩනඟා විශ්ලේෂණය කරයි, එක් එක් ශ්රිතයේ අට්ටි භාවිතය තීරණය කරයි, සහ වැඩසටහන මඟින් භාවිතා කරන අට්ටිවල ගැඹුර අනුමාන කළ හැකි වාර්තාවක් නිෂ්පාදනය කරයි. මෙම විශේෂාංගය -mchp-stack-usage command-line විකල්පය හරහා සක්රීය කර ඇත. ක්රියාත්මක කිරීමෙන් පසු තොග භාවිතයේ සාරාංශයක් මුද්රණය කෙරේ. සවිස්තරාත්මක තොග වාර්තාවක් සිතියමෙහි ඇත file, සුපුරුදු ආකාරයෙන් ඉල්ලා සිටිය හැක.
පහත AVR කොටස් සඳහා නව උපාංග ආධාරක සහාය ලබා ගත හැකිය: ATTINY427, ATTINY424, ATTINY426, ATTINY827, ATTINY824, ATTINY826, AVR32DB32, AVR64DB48, AVR64DB64DB, AVR64DB28DB, AV32DB28, 64, සහ AVR32DB32. පහත සඳහන් AVR කොටස් සඳහා ආපසු ලබා ගත් උපාංග සහය තවදුරටත් නොමැත: AVR48DA16, AVR28DA16 සහ, AVR32DA16.
3.7 අනුවාදය 2.31
කිසිවක් නැත.
3.8 අනුවාදය 2.30
දත්ත ආරම්භ කිරීම වැලැක්වීමට නව විකල්පය නව -mno-data-init ධාවකයක් මඟින් දත්ත ආරම්භ කිරීම සහ bss කොටස් ඉවත් කිරීම වළක්වයි. එය ක්රියා කරන්නේ do copy data හි ප්රතිදානය යටපත් කර එකලස් කිරීමේදී පැහැදිලි bss සංකේත කිරීමෙනි files, එය අනෙක් අතට සම්බන්ධ කරන්නා විසින් එම චර්යාවන් ඇතුළත් කිරීම වලක්වනු ඇත.
වැඩි දියුණු කරන ලද ප්රශස්තකරණයන් අතිරික්ත ප්රතිලාභ උපදෙස් ඉවත් කිරීම, skip-if-bit-is උපදෙස් අනුගමනය කරමින් සමහර පැනීම් ඉවත් කිරීම, සහ වැඩිදියුණු කරන ලද ක්රියාපටිපාටික සාරාංශය සහ මෙම ක්රියාවලිය පුනරාවර්තනය කිරීමේ හැකියාව ඇතුළුව ප්රශස්තිකරණ වැඩිදියුණු කිරීම් ගණනාවක් සිදු කර ඇත. එක් සංකේතයකට සාපේක්ෂව ස්ථිතික වස්තූන් වෙත ප්රවේශය සිදු කිරීමට ඉඩ සලසන මෙම ප්රශස්තකරණයන්ගෙන් සමහරක් පාලනය කිරීමට අමතර විකල්ප දැන් තිබේ, විශේෂයෙන් -f කොටස්-නැංගුරම්; -mpa-iterations=n, 2 හි පෙරනිමියෙන් පරිපාටික වියුක්ත පුනරාවර්තන ගණන වෙනස් කිරීමට ඉඩ සලසයි; සහ, -mpa-callcost-shortcall, එය වඩාත් ආක්රමණශීලී ක්රියාපටිපාටික වියුක්ත කිරීමක් සිදු කරයි, සම්බන්ධකයාට දිගු ඇමතුම් ලිහිල් කළ හැකිය යන බලාපොරොත්තුවෙන්. යටින් පවතින උපකල්පන සාක්ෂාත් කර නොගන්නේ නම් මෙම අවසාන විකල්පය කේත ප්රමාණය වැඩි කළ හැක.
පහත AVR කොටස් සඳහා නව උපාංග ආධාරක සහාය පවතී: AVR16DA28, AVR16DA32, AVR16DA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR128DA28, 128DB32, AVR128DB48, සහ AVR128DB64. Retracted device Support Support is no longer available for the following AVR parts: ATA5272, ATA5790, ATA5790N, ATA5791, ATA5795, ATA6285, ATA6286, ATA6612C, ATA6613C, ATA6614Q, ATA6616C, ATA6617C, and ATA664251.
3.9 අනුවාදය 2.29 (ක්රියාකාරී ආරක්ෂණ නිකුතුව)
ශීර්ෂකය file සම්පාදක බිල්ට්-ඉන් සඳහා සම්පාදකයාට MISRA වැනි භාෂා පිරිවිතරයන්ට අනුකූල විය හැකි බව සහතික කිරීම සඳහා, ශීර්ෂකය file, විසින් ස්වයංක්රීයව ඇතුළත් කර ඇත , යාවත්කාලීන කර ඇත. මෙම ශීර්ෂය තුළ buildin_avr_nop ( ) සහ buildin avr delay_cycles () වැනි සියලුම අභ්යන්තර ශ්රිත සඳහා මූලාකෘති අඩංගු වේ. සමහර ඉදි කිරීම් MISRA අනුකූල නොවිය හැක; සම්පාදක විධාන රේඛාවට defineXCSTRICT_MISRA එකතු කිරීමෙන් මේවා මඟ හැරිය හැක. සවි කිරීම් සහ ඒවායේ ප්රකාශයන් ස්ථාවර පළල වර්ග භාවිතා කිරීමට යාවත්කාලීන කර ඇත.
3.10 අනුවාදය 2.20
පහත AVR කොටස් සඳහා නව උපාංග ආධාරක සහාය ඇත: ATTINY1624, ATTINY1626, සහ ATTINY1627.
වඩා හොඳ හොඳම ෆිට් වෙන් කිරීම සම්පාදකයේ ඇති හොඳම ෆිට් විබෙදුම (BFA) වැඩිදියුණු කර ඇති අතර එමඟින් වඩා හොඳ ප්රශස්තකරණයකට ඉඩ දෙන අනුපිළිවෙලකට කොටස් වෙන් කරනු ලැබේ. BFA දැන් නම් කරන ලද ලිපින අවකාශයන් සඳහා සහය දක්වන අතර දත්ත ආරම්භ කිරීම වඩා හොඳින් හසුරුවයි.
වැඩිදියුණු කරන ලද ක්රියා පටිපාටි වියුක්ත කිරීම ක්රියා පටිපාටි සාරාංශ ප්රශස්තකරණයන් දැන් තවත් කේත අනුපිළිවෙලවල් මත සිදු කෙරේ. මෙම ප්රශස්තකරණය කේත ප්රමාණය වැඩි කළ හැකි පෙර අවස්ථා සම්බන්ධකයාගේ කසළ එකතු කිරීමේ ක්රියාවලිය පිළිබඳව ප්රශස්තිකරණ කේතය දැනුවත් කිරීම මගින් විසඳා ඇත.
AVR එකලස් කරන්නා නොමැති වීම AVR එකලස් කරන්නා තවදුරටත් මෙම බෙදා හැරීම සමඟ ඇතුළත් නොවේ.
3.11 අනුවාදය 2.19 (ක්රියාකාරී ආරක්ෂණ නිකුතුව)
කිසිවක් නැත.
3.12 අනුවාදය 2.10
කේත ආවරණය මෙම නිකුතුවේ කේත ආවරණ විශේෂාංගයක් ඇතුළත් වන අතර එය ව්යාපෘතියක මූල කේතය ක්රියාත්මක කර ඇති ප්රමාණය විශ්ලේෂණය කිරීමට පහසුකම් සපයයි. එය සබල කිරීමට -mcodecov=ram විකල්පය භාවිතා කරන්න. ඔබගේ දෘඪාංගයේ වැඩසටහන ක්රියාත්මක කිරීමෙන් පසු, කේත ආවරණ තොරතුරු උපාංගය තුළ ගොනු කරනු ලබන අතර, මෙය කේත ආවරණ ප්ලගිනයක් හරහා MPLAB X IDE වෙත මාරු කර ප්රදර්ශනය කළ හැක. මෙම ප්ලගිනය පිළිබඳ තොරතුරු සඳහා IDE ප්රලේඛනය බලන්න ලබා ගත හැක. #pragma nocodecov ආවරණ විශ්ලේෂණයෙන් පසුකාලීන කාර්යයන් බැහැර කිරීමට භාවිතා කළ හැක. ඉතා මැනවින් ප්රයෝගය ආරම්භයේදී එකතු කළ යුතුය file එම සම්පූර්ණයෙන් බැහැර කිරීමට file ආවරණ විශ්ලේෂණයෙන්. විකල්පයක් ලෙස, _attribute_ ( (nocodecov) ) විශේෂිත කාර්යයක් ආවරණ විශ්ලේෂණයෙන් බැහැර කිරීමට භාවිතා කළ හැක.
උපාංග විස්තරය fileනව උපාංගයකි file avr_chipinfo ලෙස හැඳින්වේ. html සම්පාදක බෙදාහැරීමේ ලේඛන නාමාවලියෙහි පිහිටා ඇත. මෙය file සම්පාදකය විසින් සහාය දක්වන සියලුම උපාංග ලැයිස්තුගත කරයි. උපාංගයේ නමක් මත ක්ලික් කරන්න, සහ එය එම උපාංගය සඳහා අවසර ලත් වින්යාස බිටු සැකසීම/අගය වේදනාව පෙන්වන පිටුවක් විවෘත කරනු ඇත.amples. කාර්ය පටිපාටි වියුක්ත කිරීම
එකලස් කිරීමේ කේතයේ පොදු බ්ලොක් වෙනුවට එම බ්ලොක් එකේ උපුටා ගත් පිටපතකට ඇමතුම් ප්රතිස්ථාපනය කරන ක්රියා පටිපාටි වියුක්ත ප්රශස්තකරණයන්, සම්පාදකයට එකතු කර ඇත. 2, 3 හෝ s ප්රශස්තකරණයන් තෝරාගැනීමේදී සම්පාදකයා විසින් ස්වයංක්රීයව ක්රියා කරන වෙනම යෙදුමක් මඟින් මේවා සිදු කෙරේ. මෙම ප්රශස්තකරණයන් කේත ප්රමාණය අඩු කරයි, නමුත් ඒවා ක්රියාත්මක කිරීමේ වේගය සහ කේත නිදොස් කිරීමේ හැකියාව අඩු කරයි. -mno-pa විකල්පය භාවිතයෙන් ක්රියාපටිපාටික සාරාංශය ඉහළ ප්රශස්තකරණ මට්ටම්වලදී අක්රිය කළ හැකිය, නැතහොත් -mpa භාවිතයෙන් අඩු ප්රශස්තිකරණ මට්ටම් (ඔබේ බලපත්රයට යටත්ව) සක්රීය කළ හැක. වස්තුවක් සඳහා එය අක්රිය කළ හැක file -mno-pa-on- භාවිතා කරමින්file=fileනම, හෝ -mno-pa-on-function=function භාවිතා කිරීමෙන් ශ්රිතයක් සඳහා අක්රීය කර ඇත. ඔබගේ මූලාශ්ර කේතය තුළ, ක්රියා පටිපාටිමය සාරාංශය ශ්රිතයේ නිර්වචනය සමඟ attribute ( (nopa) ) භාවිතා කිරීමෙන් හෝ (nopa, noinline) ) ආරෝපණයට ප්රසාරණය වන nopa භාවිතා කිරීමෙන් ශ්රිතයක් සඳහා ක්රියා පටිපාටි සාරාංශය අක්රීය කළ හැක සහ පේළිගත කේතයේ සාරාංශයක් තිබීම.
ප්රාග්මා හි ලොක් බිට් සහාය AVR අගුළු බිටු මෙන්ම අනෙකුත් වින්යාස බිටු නියම කිරීමට #pragma වින්යාසය දැන් භාවිතා කළ හැක. avr_chipinfo පරීක්ෂා කරන්න. html file (ඉහත සඳහන් කර ඇත) මෙම ප්රයෝගය සමඟ භාවිතා කිරීමට සැකසීම්/අගය යුගල සඳහා. පහත කොටස් සඳහා නව උපාංග ආධාරක සහාය පවතී: AVR28DAl28, AVR64DAl28, AVR32DA 128, සහ AVR48DA 128.
3.13 අනුවාදය 2.05
ඔබගේ මුදලට තවත් බිටු මෙම සම්පාදකයේ සහ බලපත්ර කළමනාකරුගේ macOS අනුවාදය දැන් 64-bit යෙදුමකි. මැකෝස් හි මෑත කාලීන අනුවාදවල අනතුරු ඇඟවීම් නොමැතිව සම්පාදකය ස්ථාපනය කර ධාවනය වන බව මෙය සහතික කරයි.
ක්රමලේඛ මතකයේ ඇති Const objects compiler හට දැන් මේවා RAM හි පිහිටා තිබීමට වඩා Flash මතකයේ const-qualified objects ස්ථානගත කළ හැක. cons t-සුදුසුකම් ලත් ගෝලීය දත්ත ක්රමලේඛ ෆ්ලෑෂ් මතකයේ ගබඩා වන පරිදි සම්පාදකය වෙනස් කර ඇති අතර මෙම දත්ත වලට අදාල වැඩසටහන්-මතක උපදෙස් භාවිතයෙන් සෘජුව සහ වක්රව ප්රවේශ විය හැක. මෙම නව විශේෂාංගය පෙරනිමියෙන් සක්රීය කර ඇති නමුත් -mno-const-data-in-progmem විකල්පය භාවිතයෙන් අක්රිය කළ හැක. avrxmega3 සහ avrtiny architectures සඳහා, මෙම විශේෂාංගය අවශ්ය නොවන අතර, මෙම උපාංග සඳහා දත්ත ලිපින අවකාශයට වැඩසටහන් මතකය සිතියම්ගත කර ඇති බැවින්, සෑම විටම අක්රිය වේ.
නොමිලේ සඳහා සම්මත මෙම සම්පාදකයේ බලපත්ර රහිත (නොමිලේ) අනුවාද දැන් 2 මට්ටම දක්වා සහ ඇතුළුව ප්රශස්තකරණයට ඉඩ සලසයි. මෙය සම්මත බලපත්රයක් භාවිතයෙන් පෙර කළ හැකි ප්රතිදානයට සමාන, සමාන නොවූවත්, ප්රතිදානයකට ඉඩ සලසයි.
AVRASM2 සාදරයෙන් පිළිගනිමු 2-bit උපාංග සඳහා AVRASM8 එකලස් කිරීම දැන් XC8 සම්පාදක ස්ථාපකය තුළ ඇතුළත් කර ඇත. මෙම එකලස් කරන්නා XC8 සම්පාදකය විසින් භාවිතා නොකෙරේ, නමුත් අතින් ලිඛිත එකලස් කිරීමේ මූලාශ්රය මත පදනම් වූ ව්යාපෘති සඳහා පවතී.
පහත කොටස් සඳහා නව උපාංග ආධාරක සහාය ඇත: ATMEGA1608, ATMEGA1609, ATMEGA808, සහ ATMEGA809.
3.14 අනුවාදය 2.00
Top-level Driver xc8-cc නමින් හැඳින්වෙන නව ධාවකයක්, දැන් පෙර avr-gcc ධාවකයට සහ xc8 ධාවකයට ඉහලින් අසුන්ගෙන ඇති අතර, එය ඉලක්ක උපාංගයේ තේරීම මත පදනම්ව සුදුසු සම්පාදකය ඇමතීමට හැකිය. මෙම ධාවකය GCC මාදිලියේ විකල්ප පිළිගනී, ඒවා ක්රියාත්මක වන සම්පාදකය සඳහා පරිවර්තනය කර හෝ එය හරහා යවනු ලැබේ. මෙම ධාවකය ඕනෑම AVR හෝ PIC ඉලක්කයක් සමඟ සමාන අර්ථකථන සහිත සමාන විකල්ප කට්ටලයක් භාවිතා කිරීමට ඉඩ සලසයි, එබැවින් සම්පාදකය කැඳවීමට නිර්දේශිත ක්රමය වේ. අවශ්ය නම්, පැරණි avr-gcc ධාවකය කලින් සම්පාදක අනුවාද වල පිළිගත් පැරණි මාදිලියේ විකල්ප භාවිතා කර කෙලින්ම ඇමතිය හැක.
පොදු C අතුරුමුහුණත මෙම සම්පාදකයාට දැන් MPLAB Common C අතුරුමුහුණතට අනුකූල විය හැක, සියලු MPLAB XC සම්පාදක හරහා මූලාශ්ර කේතය වඩාත් පහසුවෙන් ගෙනයාමට ඉඩ සලසයි. -mext=cci විකල්පය මෙම විශේෂාංගය ඉල්ලා සිටින අතර, බොහෝ භාෂා දිගු සඳහා විකල්ප වාක්ය ඛණ්ඩ සක්රීය කරයි.
නව පුස්තකාලයාධිපති රියදුරු නව පුස්තකාලයාධිපති රියදුරෙකු පෙර PIC පුස්තකාලයාධිපති සහ AVR avr-ar පුස්තකාලයාධිපතිවරයාට ඉහළින් ස්ථානගත කර ඇත. මෙම ධාවකය GCC-archiver-style විකල්පයන් පිළිගනී, ඒවා එක්කෝ පරිවර්තනය කර හෝ ක්රියාත්මක වන පුස්තකාලයාධිපති වෙත යවනු ලැබේ. නව ධාවකය ඕනෑම PIC හෝ AVR පුස්තකාලයක් සෑදීමට හෝ හැසිරවීමට සමාන අර්ථකථන සහිත සමාන විකල්ප කට්ටලයක් භාවිතා කිරීමට ඉඩ දෙයි. file එබැවින් පුස්තකාලයාධිපතිවරයා කැඳවීමට නිර්දේශිත මාර්ගය වේ. ලෙගසි ව්යාපෘති සඳහා අවශ්ය නම්, පෙර පුස්තකාලයාධිපතිවරයා කලින් සම්පාදක අනුවාදවල පිළිගත් පැරණි මාදිලියේ විකල්ප භාවිතා කරමින් සෘජුවම ඇමතිය හැක.
සංක්රමණ ගැටළු
පහත දැක්වෙන්නේ දැන් සම්පාදකය විසින් වෙනස් ලෙස හසුරුවන විශේෂාංග වේ. මෙම සම්පාදක අනුවාදයට කේතය මාරු කරන්නේ නම්, මෙම වෙනස්කම් සඳහා ඔබේ මූල කේතයට වෙනස් කිරීම අවශ්ය විය හැකිය. උපමාතෘකා වල අනුවාද අංකයෙන් දැක්වෙන්නේ පහත වෙනස්කම් වලට සහය දක්වන පළමු සම්පාදක අනුවාදයයි.
4.1 අනුවාදය 2.41
සාවද්ය fma ශ්රිත ඉවත් කර ඇත (XC8-2913) C99 සම්මත පුස්තකාලය fma 0 -family functions ( ) තනි වට කිරීමකට අසීමිත නිරවද්යතාවයකින් ගුණ-එකතු කිරීමක් ගණනය නොකළ නමුත් ඒ වෙනුවට එක් එක් මෙහෙයුම සමඟ වටකුරු දෝෂ එකතු විය. මෙම කාර්යයන් සැපයූ පුස්තකාලයෙන් ඉවත් කර ඇත.
4.2 අනුවාදය 2.40
කිසිවක් නැත.
4.3 අනුවාදය 2.39 (ක්රියාකාරී ආරක්ෂණ නිකුතුව)
කිසිවක් නැත.
4.4 අනුවාදය 2.36 නැත.
4.5 අනුවාදය 2.35
string-to Bases හැසිරවීම (XC8-2420) අනෙකුත් XC සම්පාදක සමඟ අනුකූලතාව සහතික කිරීම සඳහා, XC8 string-to functions, strtol () යනාදී, නිශ්චිතව දක්වා ඇති පාදය 36 ට වඩා විශාල නම් ආදාන තන්තුවක් පරිවර්තනය කිරීමට තවදුරටත් උත්සාහ නොකරනු ඇත. ඒ වෙනුවට EINVAL ලෙස errno සකසනු ඇත. මෙම පාදක අගය ඉක්මවා ගිය විට C ප්රමිතියෙන් ශ්රිතවල හැසිරීම සඳහන් නොවේ.
නුසුදුසු වේග ප්රශස්තිකරණය 3 මට්ටමේ ප්රශස්තකරණය (-03) තෝරාගැනීමේදී ක්රියාපටිපාටික වියුක්ත ප්රශස්තකරණයන් සක්රීය කර ඇත. මෙම ප්රශස්තකරණය කේත වේගයේ වියදමින් කේත ප්රමාණය අඩු කරයි, එබැවින් සිදු නොකළ යුතුය. මෙම ප්රශස්තිකරණ මට්ටම භාවිතා කරන ව්යාපෘති මෙම නිකුතුව සමඟ ගොඩනඟන විට කේත ප්රමාණයේ සහ ක්රියාත්මක කිරීමේ වේගයෙහි වෙනස්කම් දැකිය හැකිය.
පුස්තකාල ක්රියාකාරිත්වය බොහෝ සම්මත C පුස්තකාල ශ්රිතයන් සඳහා කේතය දැන් පැමිණෙන්නේ Microchip හි Unified Standard Library වෙතින් වන අතර, එය කලින් avr-libc පුස්තකාලය විසින් සපයන ලද ඒවාට සාපේක්ෂව සමහර තත්වයන් තුළ වෙනස් හැසිරීම් ප්රදර්ශනය කළ හැකිය. උදාහරණයක් ලෙසample, ආකෘතිකරණය සක්රිය කිරීමට 1printf flt පුස්තකාලය (-1printf_flt විකල්පය) සම්බන්ධ කිරීම තවදුරටත් අවශ්ය නොවේ. I0 float-format specifier සඳහා සහාය. බුද්ධිමත් I0 Microchip Unified Standard Library හි විශේෂාංග මෙම විකල්පය අතිරික්ත කරයි. අතිරේකව, ෆ්ලෑෂ්හි const strings මත ක්රියා කරන තන්තු සහ මතක ක්රියාකාරකම් සඳහා (උදා: strcpy_P ( ) ආදිය..) _P උපසර්ග ක්රියාවලි භාවිතය තවදුරටත් අවශ්ය නොවේ. const-data-in-program-memory විශේෂාංගය සක්රීය කර ඇති විට සම්මත C චර්යාවන් (උදා: strcpy ) එවැනි දත්ත සමඟ නිවැරදිව ක්රියා කරයි.
4.6 අනුවාදය 2.32
කිසිවක් නැත.
4.7 අනුවාදය 2.31
කිසිවක් නැත.
4.8 අනුවාදය 2.30
කිසිවක් නැත.
4.1 අනුවාදය 2.29 (ක්රියාකාරී ආරක්ෂණ නිකුතුව)
කිසිවක් නැත.
4.2 අනුවාදය 2.20
DFP පිරිසැලසුම වෙනස් කරන ලදී සම්පාදකය දැන් DFPs (උපාංග පවුල් ඇසුරුම්) භාවිතා කරන වෙනස් පිරිසැලසුමක් උපකල්පනය කරයි. මෙයින් අදහස් කරන්නේ පැරණි DFP මෙම නිකුතුව සමඟ ක්රියා නොකරනු ඇති බවත්, පැරණි සම්පාදකයින්ට නවතම DFP භාවිතා කිරීමට නොහැකි වනු ඇති බවත්ය.
4.3 අනුවාදය 2.19 (ක්රියාකාරී ආරක්ෂණ නිකුතුව)
කිසිවක් නැත.
4.4 අනුවාදය 2.10
කිසිවක් නැත
4.5 අනුවාදය 2.05
ක්රමලේඛ මතකයේ ඇති Const objects පෙරනිමියෙන් const-qualfiied වස්තු වැඩසටහන් මතකයේ තැන්පත් කර ප්රවේශ වන බව සලකන්න (විස්තර කරන ලද hue ලෙස). මෙය ඔබගේ ව්යාපෘතියේ ප්රමාණයට සහ ක්රියාත්මක වීමේ වේගයට බලපානු ඇත, නමුත් RAM භාවිතය අඩු කළ යුතුය. අවශ්ය නම්, -mnoconst-data-in-progmem විකල්පය භාවිතයෙන් මෙම විශේෂාංගය අක්රිය කළ හැක.
4.6 අනුවාදය 2.00
වින්යාස ෆියුස් උපාංග වින්යාස ෆියුස් දැන් වින්යාස ප්රයෝගයක් භාවිතයෙන් වැඩසටහන්ගත කළ හැකි අතර පසුව ෆියුස් තත්වය නියම කිරීමට අගය යුගල සැකසීමට, උදා.
#pragma config WDTON = SET
#pragma config BODLEVEL = BODLEVEL_4V3
නිරපේක්ෂ වස්තූන් සහ කාර්යයන් වස්තු සහ ශ්රිත දැන් CCI (ලිපින) විශේෂණය භාවිතයෙන් මතකයේ නිශ්චිත ලිපිනයක තැබිය හැක, උදාampලෙ:
#ඇතුළත්
int foobar_at(0x800100);
char __at(0x250) getID(int offset) {…}
මෙම විශේෂණය සඳහා තර්කය විය යුතුය පළමු බයිටය හෝ උපදෙස් තබන ලිපිනය නියෝජනය කරන නියතයකි. RAM ලිපින 0x800000 හි ඕෆ්සෙට් භාවිතා කිරීම මගින් දැක්වේ. මෙම විශේෂාංගය භාවිතා කිරීමට CCI සබල කරන්න.
නව බාධාකාරී ක්රියාකාරී වාක්ය ඛණ්ඩය C ශ්රිතයන් බාධාකාරී හසුරුවන්නක් බව දැක්වීමට සම්පාදකය දැන් CCI _interrupt (num) විශේෂණය පිළිගනී. නිශ්චයකයා බාධා අංකයක් ගනී, උදාampලෙ:
#ඇතුළත්
void __interrupt(SPI_STC_vect_num) spi_Isr(ශුන්ය) {…}
ස්ථාවර ගැටළු
පහත දැක්වෙන්නේ සම්පාදකයට සිදු කර ඇති නිවැරදි කිරීම් ය. මේවා උත්පාදනය කරන ලද කේතයේ දෝෂ නිරාකරණය කිරීමට හෝ පරිශිලක මාර්ගෝපදේශය විසින් අදහස් කරන ලද හෝ නිශ්චිතව දක්වා ඇති ආකාරයට සම්පාදකයේ ක්රියාකාරිත්වය වෙනස් කිරීමට ඉඩ ඇත. උප මාතෘකා වල අනුවාද අංකයෙන් පෙන්නුම් කරන්නේ පහත සඳහන් ගැටළු සඳහා නිවැරදි කිරීම් අඩංගු පළමු සම්පාදක අනුවාදයයි. මාතෘකාවේ ඇති වරහන් ලේබලය (ය) ලුහුබැඳීමේ දත්ත ගබඩාවේ එම ගැටලුව හඳුනාගැනීමයි. ඔබට සහාය සම්බන්ධ කර ගැනීමට අවශ්ය නම් මේවා ප්රයෝජනවත් විය හැක.
උපාංගය හා සම්බන්ධ උපාංග Family Pack (DFP) තුළ සමහර උපාංග-විශේෂිත ගැටළු නිවැරදි කර ඇති බව සලකන්න. DFPs වෙත සිදු කරන ලද වෙනස්කම් පිළිබඳ තොරතුරු සහ නවතම ඇසුරුම් බාගත කිරීම සඳහා MPLAB ඇසුරුම් කළමනාකරු බලන්න.
5.1 අනුවාදය 2.41
Ventura (XC8-3088) Dongles මත Dongle ගැටළු compiler බලපත්ර ලබා දීම සඳහා භාවිතා කරන ලද macOS Ventura ධාරකවල නිසි ලෙස කියවා නොතිබීම, බලපත්ර අසාර්ථක වීමට හේතු විය හැක. XCLM බලපත්ර කළමනාකරුට සිදු කරන වෙනස්කම් මෙම ගැටලුව නිවැරදි කරයි.
මතකය වෙන් කිරීම පිළිබඳ වැරදි ඇඟවීම (XC8-2925) සම්මත පුස්තකාල මතක කළමනාකරණ කාර්යයන් (malloc () et al) භාවිතයෙන් මතකයේ SIZE_MAX බයිට් (හෝ මෙයට ආසන්න අගයක්) වෙන් කිරීමට උත්සාහ කිරීම වැරදි ලෙස සාර්ථක විය. සරල ගතික මතක වෙන්කිරීම් ක්රියාත්මක කිරීමේදී ඉල්ලා සිටින බ්ලොක් එකට අමතරව අමතර බයිට් අවශ්ය බව එය සැලකිල්ලට නොගත්තේය. NULL දර්ශකයක් දැන් ආපසු එනු ඇති අතර එවැනි අවස්ථාවන්හිදී ENOMEM ලෙස වැරදි ලෙස සකසා ඇත.
සාවද්ය fma ශ්රිත ඉවත් කර ඇත (XC8-2913) C99 සම්මත පුස්තකාල fma ( ) -පවුලේ කාර්යයන් ( ) තනි වට කිරීමකට අසීමිත නිරවද්යතාවයකින් ගුණ-එකතු කිරීමක් ගණනය නොකළ නමුත් ඒ වෙනුවට එක් එක් මෙහෙයුම සමඟ වටකුරු දෝෂ එකතු විය. මෙම කාර්යයන් සැපයූ පුස්තකාලයෙන් ඉවත් කර ඇත.
තන්තු පරිවර්තනය වැරදි ලෙස හැසිරවීම (XC8-2921, XC8-2652) strtod Cr විසින් පරිවර්තනය කිරීම සඳහා 'විෂය අනුපිළිවෙලක්' ඝාතීය ආකෘතියේ පාවෙන ලක්ෂ්ය අංකයක් ලෙස පෙනෙන දේ අඩංගු වූ විට සහ e/E අක්ෂරයට පසුව අනපේක්ෂිත අක්ෂරයක් ඇති විට, endptr සපයා ඇති තැන, එයට ලිපිනයක් පවරන ලදී. එය e/E ට පසුව ඇති අක්ෂරයට යොමු කර තිබුනේ නම්, එය පරිවර්තනය කර නොතිබූ බැවින් එය e/E අක්ෂරයටම යොමු විය යුතුව තිබුණි. උදාහරණයක් ලෙසample, strtod (“100exx”, &ep) 100.00 ආපසු ලබා දිය යුතු අතර ep ලෙස තන්තුවේ “exx” කොටසට යොමු කළ යුතු අතර, ශ්රිතය නිවැරදි අගය ආපසු ලබා දෙන නමුත් ep සිට string හි “xx” කොටසට ලක්ෂ්ය කිරීමට සකසයි. .
5.2 අනුවාදය 2.40
ඉතා ලිහිල් (XCS-2876) -mrelax විකල්පය භාවිතා කරන විට, සම්පාදකය සමහර කොටස් එකට වෙන් නොකළ අතර, ප්රශස්ත කේත ප්රමාණය අඩු විය. මෙය නව MUSL පුස්තකාල භාවිතා කළ කේතය හෝ දුර්වල සංකේත සමඟ සිදු වන්නට ඇත.
අනතුරු ඇඟවීමේ (XC8-2875) දක්වා ඇති පරිදි සිතියම්කරණ විශේෂාංගය අබල කර නැත const-data-in-config-mappedprogmem විශේෂාංගය සක්රීය කර ඇති const-data-in-progmem විශේෂාංගය මත රඳා පවතී. const-data-inconfig-mapped-progmem විශේෂාංගය විකල්පය භාවිතයෙන් පැහැදිලිව සක්රීය කර තිබේ නම් සහ const-data-inprogmem විශේෂාංගය අක්රිය කර ඇත්නම්, const-data-in-con fig- බවට අනතුරු ඇඟවීමේ පණිවිඩයක් තිබියදී, සබැඳි පියවර අසාර්ථක විය. mapped-progmem විශේෂාංගය ස්වයංක්රීයව අක්රිය කර ඇත, එය සම්පූර්ණයෙන්ම නිවැරදි නොවේ. මෙම තත්ත්වය තුළ const-data-in-config-mapped-progmem විශේෂාංගය දැන් සම්පූර්ණයෙන්ම අක්රිය කර ඇත.
NVMCTRL (XC8-2848) නිවැරදිව ප්රවේශ වීමට DFP වෙනස් කරයි AVR64EA උපාංග විසින් භාවිතා කරන ධාවන කාල ආරම්භක කේතය NVMCTRL ලේඛනය වින්යාස වෙනස් කිරීමේ ආරක්ෂාව (CCP) යටතේ ඇති බව සැලකිල්ලට නොගත් අතර const-data-in-configmapped-progmem විසින් භාවිතා කරන පිටුවට I0 SFR සැකසීමට නොහැකි විය. සම්පාදක විශේෂාංගය. AVR-Ex_DFP අනුවාදය 2.2.55 හි සිදු කරන ලද වෙනස්කම් ධාවන කාල ආරම්භක කේතයට මෙම ලේඛනයට නිවැරදිව ලිවීමට ඉඩ සලසයි.
වළක්වා ගැනීමට DFP වෙනස්කම් ෆ්ලෑෂ් සිතියම්කරණය (XC8-2847) AVR128DA28/32/48/64 Silicon Errata (D580000882) හි වාර්තා කර ඇති ෆ්ලෑෂ් සිතියම්කරණ උපාංග විශේෂාංගය සමඟ ඇති වූ ගැටලුවක් සඳහා ක්රියාවක් ක්රියාත්මක කර ඇත. const-data-in-config-mapped-progmem compiler විශේෂාංගය බලපෑමට ලක් වූ උපාංග සඳහා පෙරනිමියෙන් යොදනු නොලැබේ, සහ මෙම වෙනස AVR-Dx_DFP අනුවාදය 2.2.160 හි දිස් වනු ඇත.
sinhf හෝ coshf (XC8-2834) සමඟ දෝෂයක් ගොඩනැගීම sinhf () හෝ coshf () පුස්තකාල ශ්රිත භාවිතා කිරීමට ගත් උත්සාහයේ ප්රතිඵලයක් ලෙස, නිර්වචනය නොකළ යොමුවක් විස්තර කරමින් සබැඳි දෝෂයක් ඇති විය. යොමු කර ඇති නැතිවූ ශ්රිතය දැන් සම්පාදක ව්යාප්තියට ඇතුළත් කර ඇත.
නෝපා (XC,8-2833) සමඟ දෝෂ ගොඩනැගීම asm ( ) භාවිතා කරමින් එහි එකලස් කිරීමේ නම සඳහන් කර ඇති ශ්රිතයක් සමඟ nopa උපලක්ෂණ භාවිතා කිරීම එකලස් කරන්නා වෙතින් දෝෂ පණිවිඩ අවුලුවා ඇත. මෙම සංයෝජනය කළ නොහැක.
පොයින්ටර් තර්ක සහිත විචල්ය ශ්රිත අසාර්ථකත්වය (XC8-2755, XC8-2731) විචල්ය තර්ක සංඛ්යාවක් සහිත ශ්රිතයන් const-data-in-progmem විශේෂාංගය සක්රීය කර ඇති විට විචල්ය තර්ක ලැයිස්තුවේ 24-bit (memx වර්ගය) පොයින්ටර් සම්මත කිරීමට අපේක්ෂා කරයි. දත්ත මතකයට දර්ශක වූ තර්ක 16-බිට් වස්තු ලෙස සම්මත වන අතර අවසානයේ ඒවා කියවන විට කේත අසාර්ථක විය. constdata-in-progmem විශේෂාංගය සක්රීය කර ඇති විට, සියලුම 16-bit පොයින්ටර් තර්ක දැන් 24-bit පොයින්ටර් බවට පරිවර්තනය වේ.
strtoxxx පුස්තකාල ක්රියාකාරකම් අසාර්ථක වේ (XC8-2620) const-data-in-progmem විශේෂාංගය සක්රීය කර ඇති විට, strtoxxx පුස්තකාල ශ්රිතවල endptr පරාමිතිය වැඩසටහන් මතකයේ නොමැති මූලාශ්ර තන්තු තර්ක සඳහා නිසි ලෙස යාවත්කාලීන කර නොමැත.
වලංගු නොවන වාත්තු සඳහා ඇඟවීම් (XC8-2612) const-in-progmem විශේෂාංගය සක්රීය කර ඇත්නම් සහ තන්තුවක ලිපිනය පැහැදිලිවම දත්ත ලිපින අවකාශයට (const qualifier අතහැරීම) වාත්තු කරන්නේ නම්, සම්පාදකයා දැන් දෝෂයක් නිකුත් කරයි.ample, (uint 8_t *) "Hello World!". const දත්ත දර්ශකයක් පැහැදිලිවම දත්ත ලිපින අවකාශය වෙත යොමු කරන විට ලිපිනය අවලංගු විය හැකි නම් අනතුරු ඇඟවීමක් නිකුත් වේ.
ප්රාරම්භක නොවන const වස්තූන් ස්ථානගත කිරීම (XC8-2408) ඔවුන්ගේ වැඩසටහන් මතකයේ සම්පූර්ණයෙන් හෝ කොටසක් දත්ත ලිපින අවකාශයට සිතියම් ගත කරන උපාංගවල ආරම්භ නොකළ const සහ const වාෂ්පශීලී වස්තු වැඩසටහන් මතකයේ තබා නොතිබුණි. මෙම උපාංග සඳහා, එවැනි වස්තූන් දැන් වැඩසටහන් මතකයේ තබා ඇති අතර, ඒවායේ ක්රියාකාරිත්වය අනෙකුත් උපාංග සමඟ අනුකූල වේ.
5.3 අනුවාදය 2.39 (ක්රියාකාරී ආරක්ෂණ නිකුතුව)
කිසිවක් නැත.
5.4 අනුවාදය 2.36
ප්රමාද කිරීමේදී දෝෂය (XC8-2774) පෙරනිමි නිදහස් ප්රකාර ප්රශස්තකරණයන්හි සුළු වෙනස්වීම් මඟින් ප්රමාදයේ ගොඩනංවන ලද ශ්රිතවලට ඔපෙරාන්ඩ් ප්රකාශන නිරන්තරයෙන් නැවීම වැළැක්විය, එහි ප්රතිඵලයක් ලෙස ඒවා නියත නොවන ලෙස සලකනු ලබන අතර දෝෂය අවුලුවයි: buildin avr delay_cycles විසින් සම්පාදනය කරන කාල පූර්ණ සංඛ්යා නියතයක් අපේක්ෂා කරයි.
5.5 අනුවාදය 2.35
_at (XC8-2653) භාවිතා කරමින් අඛණ්ඩව වෙන් කිරීම එකම නම සහිත කොටසක බහු වස්තු ස්ථාන අඛණ්ඩව වෙන් කිරීම සහ _at ( ) භාවිතා කිරීම නිවැරදිව ක්රියා කළේ නැත. උදාහරණයක් ලෙසampලෙ:
const char arr1[] __attribute__((section(“.mysec”))) __at (0x500) = {0xAB, 0xCD};
const char arr2[] __attribute__((section(“.mysec”))) = {0xEF, 0xFE};
arr2 ට පසු වහාම arr1 තැබිය යුතුය.
අංශ ආරම්භක ලිපිනයන් සඳහන් කරමින් (XC8-2650) The -W1, –section-start විකල්පය නම් කරන ලද ආරම්භක ලිපිනයෙහි කොටස් තැබීමට නිහඬව අසමත් විය. ඕනෑම අභිරුචි නම් කරන ලද කොටස් සඳහා මෙම ගැටළුව විසඳා ඇත; කෙසේ වෙතත්, එය වැනි කිසිදු සම්මත අංශයක් සඳහා ක්රියා නොකරනු ඇත. පෙළ හෝ . bss, එය -W1, -T විකල්පය භාවිතයෙන් තැබිය යුතුය.
ලිහිල් කරන විට සම්බන්ධකය බිඳ වැටේ (XC8-2647) -mrelax ප්රශස්තිකරණය සක්රීය කර ඇති විට සහ පවතින මතකයට නොගැලපෙන කේත හෝ දත්ත කොටස් තිබූ විට, සම්බන්ධකය බිඳ වැටුණි. දැන්, එවැනි තත්වයක් තුළ, ඒ වෙනුවට දෝෂ පණිවිඩ නිකුත් කරනු ලැබේ.
ආපසු වැටීමක් නැත (XC8-2646) ද -nofallback විකල්පය නිවැරදිව ක්රියාත්මක කර හෝ ලේඛනගත කර නොමැත. සම්පාදකය බලපත්ර රහිත නම්, සම්පාදකය නැවත අඩු ප්රශස්තකරණ සැකසීමකට නොවැටෙන බව සහතික කිරීම සඳහා මෙය දැන් තෝරා ගත හැකි අතර ඒ වෙනුවට දෝෂයක් නිකුත් කරනු ඇත.
නුසුදුසු වේග ප්රශස්තකරණය (X03-2637) 3 මට්ටමේ ප්රශස්තකරණය (-03) තෝරාගැනීමේදී ක්රියාපටිපාටික වියුක්ත ප්රශස්තකරණයන් සක්රීය කර ඇත. මෙම ප්රශස්තකරණය කේත වේගයේ වියදමින් කේත ප්රමාණය අඩු කරයි, එබැවින් සිදු නොකළ යුතුය.
නරක EEPROM ප්රවේශය (XC8-2629) ද eeprom_read_block routine Xmega උපාංග මත -mconst-data-in-progmem විකල්පය සක්රීය කර ඇති විට නිවැරදිව ක්රියා නොකළේය (එය පෙරනිමි තත්වයයි), එහි ප්රතිඵලයක් ලෙස EEPROM මතකය නිවැරදිව කියවා නොමැත.
වලංගු නොවන මතක වෙන් කිරීම (XC8-2593, XC8-2651) විට -Ttext හෝ -Tdata සම්බන්ධක විකල්පය (උදාample passed through a -vl driver option) නිශ්චිතව දක්වා ඇත, අනුරූප පෙළ/දත්ත කලාපයේ සම්භවය යාවත්කාලීන කරන ලදී; කෙසේ වෙතත්, අවසාන ලිපිනය ඒ අනුව සකස් නොකළ අතර, එමඟින් කලාපය ඉලක්කගත උපාංගයේ මතක පරාසය ඉක්මවා යාමට හේතු විය හැක.
අධික ලෙස ආරෝපණය කළ ශ්රිතයක් සහිත බිඳ වැටීම (XC8-2580) බාධා කිරීම්, සංඥා හෝ nmi ගුණාංග වලින් එකකට වඩා භාවිතා කරමින් ශ්රිතයක් ප්රකාශ කළහොත් සම්පාදකය බිඳ වැටේ, උදා, උපලක්ෂණ ( ( සංඥා , බාධා ) ).
වලංගු නොවන ATtiny බාධා කේතය (XC8-2465) ATtiny උපාංග සඳහා තැනීමේදී සහ ප්රශස්තිකරණය අක්රිය කර ඇති විට (-00), බාධා කිරීමේ ක්රියාකාරකම් මඟින් ඔපෙරාන්ඩ් පරාසයෙන් පිටත එකලස් කිරීමේ පණිවිඩ ක්රියාරම්භ කර ඇත.
විකල්ප සමත් නොවේ (XC8-2452) බහුවිධ, කොමාවෙන් වෙන් වූ සම්බන්ධක විකල්ප සමඟ විකල්පය භාවිතා කරන විට, සියලුම සම්බන්ධක විකල්ප සම්බන්ධකය වෙත ලබා නොදෙන ලදී.
වැඩසටහන් මතකය වක්රව කියවීමේ දෝෂයකි (X03-2450) සමහර අවස්ථා වලදී, සම්පාදනය කරන්නා විසින් පොයින්ටරයක සිට ක්රමලේඛන මතකය දක්වා බයිට් දෙකක අගයක් කියවන විට අභ්යන්තර දෝෂයක් (හඳුනාගත නොහැකි insn) ඇති විය.
5.6 අනුවාදය 2.32
දෙවන ප්රවේශය පුස්තකාලය අසාර්ථකයි (XC8-2381) xc8-ar හි වින්ඩෝස් අනුවාදය ඉල්ලා සිටීම. .exe library archiver දෙවන වරට පවතින පුස්තකාල සංරක්ෂිතයකට ප්රවේශ වීමට දෝෂ පණිවිඩය නැවත නම් කිරීමට නොහැකි වීමත් සමඟ අසාර්ථක විය හැක.
5.7 අනුවාදය 2.31
පැහැදිලි නොකළ සම්පාදකය අසාර්ථක (XC8-2367) පද්ධති තාවකාලික නාමාවලිය තිතක් ඇතුළත් මාර්ගයකට සකසා ඇති වින්ඩෝස් වේදිකාවල ධාවනය වන විට '.' අක්ෂරය, සම්පාදකය ක්රියාත්මක කිරීමට අසමත් විය හැක.
5.8 අනුවාදය 2.30
දළ සටහන් කිරීමෙන් පසු ගෝලීය ලේබල් අස්ථානගත වී ඇත (XC8-2299) ක්රියා පටිපාටිමය සාරාංශය මගින් සාධක කර ඇති එකලස් කිරීමේ අනුපිළිවෙලවල් තුළ ගෝලීය ලේබල් ස්ථානගත කරන අතින් ලියන ලද එකලස් කිරීමේ කේතය නිවැරදිව නැවත ස්ථානගත කර නොතිබිය හැකිය.
විවේකී අනතුරක් (XC8-2287) ටේල් ජම්ප් ලිහිල් කිරීමේ ප්රශස්තකරණයන් කොටසක අවසානයේ නොමැති රෙට් උපදෙස් ඉවත් කිරීමට උත්සාහ කළ විට -mrelax විකල්පය භාවිතා කිරීම සම්බන්ධකය බිඳ වැටීමට හේතු විය හැක.
ලේබල් අගයන් ලෙස ප්රශස්ත කරන විට බිඳ වැටීම (XC8-2282) "අගය ලෙස ලේබල්" භාවිතා කරන කේතය GNU C භාෂා දිගුව මඟින් ක්රියා පටිපාටි වියුක්ත ප්රශස්තකරණයන් බිඳ වැටීමට හේතු විය හැක, ගෙනහැර දක්වන ලද VMA පරාසයක විහිදුනු නිවැරදි කිරීමේ දෝෂයක් සමඟ.
එතරම් const නොවේ (XC8-2271) st rstr () සඳහා මූලාකෘති සහ අනෙකුත් කාර්යයන් වෙතින් -mconst-data-inprogmem විශේෂාංගය අක්රිය කර ඇති විට ආපසු ලබා දුන් string pointer හි සම්මත නොවන const qualifier තවදුරටත් සඳහන් නොකරන්න. avrxmega3 සහ avrtiny උපාංග සමඟ, මෙම විශේෂාංගය ස්ථිරවම සක්රීය කර ඇති බව සලකන්න.
අහිමි ආරම්භක (XC8-2269) වඩා වැඩි විට පරිවර්තන ඒකකයක එක් විචල්යයක් කොටසක තබා ඇත (_section හෝ _attribute_ ((section) ) භාවිතා කරමින්), සහ එවැනි පළමු විචල්යය ශුන්ය ආරම්භක හෝ ආරම්භකයක් නොතිබුණි, එම පරිවර්තන ඒකකයේ වෙනත් විචල්යයන් සඳහා ආරම්භක කරන්නන් එම කොටසේම අහිමි විය.
5.1 අනුවාදය 2.29 (ක්රියාකාරී ආරක්ෂණ නිකුතුව)
කිසිවක් නැත.
5.2 අනුවාදය 2.20
දිගු විධාන සමඟ දෝෂයකි (XC8-1983) AVR ඉලක්කයක් භාවිතා කරන විට, සම්පාදකය සමඟ නතර වී තිබිය හැක file විධාන රේඛාව අතිශයින් විශාල නම් සහ උපුටා දැක්වීම්, පසුතල, වැනි විශේෂ අක්ෂර අඩංගු නම් දෝෂයක් හමු නොවීය.
පවරා නොදුන් රොඩේටා කොටස (XC8-1920) AVR සම්බන්ධකය avrxmega3 සහ avrtiny architectures සඳහා ගොඩනඟන විට අභිරුචි rodata කොටස් සඳහා මතකය පැවරීමට අසමත් විය, මතකය අතිච්ඡාදනය වීමේ දෝෂ ඇති කළ හැකිය.
5.3 අනුවාදය 2.19 (ක්රියාකාරී ආරක්ෂණ නිකුතුව)
කිසිවක් නැත.
5.4 අනුවාදය 2.10
නැවත ස්ථානගත කිරීමේ අසාර්ථකත්වය (XC8-1891) හොඳම යෝග්ය විබෙදුම්කරු වූයේ සම්බන්ධක ලිහිල් කිරීමෙන් පසු කොටස් අතර මතක 'සිදුරු' තැබීමයි. මතකය ඛණ්ඩනය කිරීම හැරුණු විට, මෙය pc-සාපේක්ෂ පැනීම් හෝ ඇමතුම් පරාසයෙන් බැහැර වීම සම්බන්ධ සම්බන්ධක නැවත ස්ථානගත කිරීමේ අසාර්ථක වීමේ හැකියාව වැඩි කළේය.
ලිහිල් කිරීම මගින් පරිවර්තනය නොකළ උපදෙස් (XC8-1889) පැනීමේ හෝ ඇමතුම් උපදෙස් සඳහා සම්බන්ධක ලිහිල් කිරීම සිදු නොවීය, ලිහිල් කළහොත් ඉලක්ක කරා ළඟා විය හැකිය.
අතුරුදහන් ක්රියාකාරිත්වය (XC8E-388) අර්ථ දැක්වීම් කිහිපයක් , clock_div_t සහ clock_prescale set () වැනි, ATmega324PB, ATmega328PB, ATtiny441, සහ ATtiny841 ඇතුළු උපාංග සඳහා අර්ථ දක්වා නැත.
මැක්රෝස් අතුරුදහන් පූර්ව සැකසුම් macros _XC8_MODE_, _XC8_VERS ION, _XC, සහ _XC8 සම්පාදකයා විසින් ස්වයංක්රීයව අර්ථ දක්වා නොමැත. මේවා දැන් තිබේ.
5.5 අනුවාදය 2.05
අභ්යන්තර සම්පාදක දෝෂයකි (XC8-1822) වින්ඩෝස් යටතේ ගොඩනැගීමේදී, කේතය ප්රශස්ත කිරීමේදී අභ්යන්තර සම්පාදක දෝෂයක් ඇති විය හැක.
RAM පිටාර ගැලීම අනාවරණය නොවීය (XC8-1800, XC8-1796) පවතින RAM ප්රමාණය ඉක්මවන වැඩසටහන් සමහර අවස්ථා වලදී සම්පාදකයා විසින් අනාවරණය කර නොගත් අතර, එහි ප්රතිඵලයක් ලෙස ධාවන කාල කේතය අසාර්ථක විය.
අතහැර දැමූ ෆ්ලෑෂ් මතකය (XC8-1792) avrxmega3 සහ avrtiny උපාංග සඳහා, ෆ්ලෑෂ් මතකයේ කොටස් MPLAB X විසින් වැඩසටහන්ගත නොකර තබා ඇත. IDE (අයිඩීඊ)
ප්රධාන ක්රියාත්මක කිරීමට අපොහොසත් වීම (XC8-1788) වැඩසටහනට ගෝලීය විචල්යයන් නිර්වචනය කර නොමැති සමහර අවස්ථා වලදී, ධාවන කාල ආරම්භක කේතය පිටව නොගිය අතර ප්රධාන ( ) ශ්රිතයට කිසිදා ළඟා නොවීය.
වැරදි මතක තොරතුරු (XC8-1787) avrxmega3 සහ avrtiny උපාංග සඳහා, avr-size වැඩසටහන මඟින් වැඩසටහන් මතකය වෙනුවට කියවීමට පමණක් දත්ත RAM පරිභෝජනය කරන බව වාර්තා කරයි.
වැරදි වැඩසටහන් මතක කියවීම (XC8-1783) දත්ත ලිපින අවකාශයට සිතියම්ගත කර ඇති ක්රමලේඛ මතකය සහිත උපාංග සඳහා සම්පාදනය කරන ලද ව්යාපෘති සහ PROGMEM macro/attribute භාවිතයෙන් වස්තු නිර්වචනය කරන මෙම වස්තු වැරදි ලිපිනයකින් කියවා තිබිය හැක.
ගුණාංග සහිත අභ්යන්තර දෝෂය (XC8-1773) ඔබ පොයින්ටර් වස්තු නිර්වචනය කළේ නම් අභ්යන්තර දෝෂයක් ඇති විය
_at () හෝ attribute() Tokens in the pointer name and dereferenced type, ex for example, char *
_at (0x800150) cp; එවැනි කේතයක් හමු වුවහොත් දැන් අනතුරු ඇඟවීමක් නිකුත් කෙරේ.
ප්රධාන ක්රියාත්මක කිරීමට අපොහොසත් වීම (XC8-1780, XC8-1767, XC8-1754) EEPROM විචල්යයන් භාවිතා කිරීම හෝ වින්යාස ප්රයෝගය භාවිතයෙන් ෆියුස් නිර්වචනය කිරීම ප්රධාන ( ) වෙත ළඟා වීමට පෙර, ධාවන කාල ආරම්භක කේතයේ වැරදි දත්ත ආරම්භ කිරීම සහ/හෝ අගුලු දැමීමේ වැඩසටහන් ක්රියාත්මක කිරීමට හේතු විය හැක.
කුඩා උපාංග සමඟ ෆියුස් දෝෂය (XC8-1778, XC8-1742) attiny4/5/9/ 10/20/40 උපාංගවල ශීර්ෂයේ වැරදි ෆියුස් දිගක් දක්වා ඇත fileෆියුස් නිර්වචනය කරන ලද කේතය තැනීමට උත්සාහ කිරීමේදී සම්බන්ධක දෝෂ වලට තුඩු දෙන s.
ඛණ්ඩනය දෝෂය (XC8-1777) අතරමැදි ඛණ්ඩන දෝෂයක් නිවැරදි කර ඇත.
එකලස් කිරීමේ බිඳවැටීම (XC8-1761) compiler Ubuntu 18 යටතේ ක්රියාත්මක වන විට avr-as assembler එක කඩා වැටෙන්නට ඇත.
නිෂ්කාශනය නොකළ වස්තු (XC8-1752) ආරම්භ නොකළ ස්ථිතික ගබඩා කාල වස්තු ධාවන කාල ආරම්භක කේතය මගින් ඉවත් කර නොතිබිය හැකිය.
ගැටුම්කාරී උපාංග පිරිවිතර නොසලකා හරින ලදී (XC8-1749) බහු උපාංග පිරිවිතර විකල්ප භාවිතා කරන විට සහ විවිධ උපාංග දක්වන විට සම්පාදකය දෝෂයක් ජනනය කළේ නැත.
ගොඩ අනුව මතක දූෂණය (XC8-1748) ද _heap_start සංකේතය වැරදි ලෙස සකසා ඇති අතර, එහි ප්රතිඵලයක් ලෙස සාමාන්ය විචල්යයන් ගොඩ මගින් දූෂිත වීමට ඉඩ ඇත.
සම්බන්ධක නැවත ස්ථානගත කිරීමේ දෝෂය (XC8-1739) හරියටම බයිට් 4ක් දුරින් ඉලක්කයක් සහිත rjmp හෝ rcall කේතයක් අඩංගු වූ විට සම්බන්ධක නැවත ස්ථානගත කිරීමේ දෝෂයක් නිකුත් වී තිබිය හැක.
5.6 අනුවාදය 2.00
කිසිවක් නැත.
දන්නා ගැටළු
සම්පාදකයේ ක්රියාකාරිත්වයේ සීමාවන් පහත දැක්වේ. මේවා සාමාන්ය කේතීකරණ සීමා කිරීම් හෝ පරිශීලක අත්පොතෙහි අඩංගු තොරතුරු වලින් බැහැරවීම් විය හැක. මාතෘකාවේ ඇති වරහන් ලේබලය(ය) ලුහුබැඳීමේ දත්ත ගබඩාවේ එම ගැටලුව හඳුනාගැනීමයි. ඔබට සහාය සම්බන්ධ කර ගැනීමට අවශ්ය නම් මෙය ප්රයෝජනවත් විය හැකිය. ලේබල් නොමැති එම අයිතම මෝඩි ක්රියාන්විතය විස්තර කරන සීමාවන් වන අතර ඒවා ස්ථිරවම ක්රියාත්මක වීමට ඉඩ ඇත.
6.1 MPLAB X IDE ඒකාබද්ධ කිරීම
MPLAB IDE අනුකලනය MPLAB IDE වෙතින් Compiler භාවිතා කිරීමට නම්, Compiler ස්ථාපනය කිරීමට පෙර ඔබ MPLAB IDE ස්ථාපනය කළ යුතුය.
6.2 කේත උත්පාදනය
Segfault with section-anchors විකල්පය (XC8-3045) විචල්ය තර්ක ලැයිස්තු සහිත ශ්රිත නිර්වචනය කරන ලද සහ -fsection-anchors විකල්පය භාවිතා කරන වැඩසටහන අභ්යන්තර සම්පාදක දෝෂයක් අවුලුවා තිබිය හැක: Segmentation fault.
දෝශ නිරාකරණ තොරතුරු සමමුහුර්ත නොවේ (XC8-2948) සම්බන්ධක ලිහිල් කිරීමේ ප්රශස්තකරණයන් උපදෙස් හැකිලෙන විට (උදාample call to rcall උපදෙස්), එක් කොටසක හැකිලීමේ ක්රියාවන් එකකට වඩා සිදුවන විට ලිපින සිතියම්ගත කිරීම් සඳහා මූලාශ්ර රේඛාව සමමුහුර්තව පැවතිය නොහැක.
පහත example, foo සඳහා ඇමතුම් දෙකක් ඇති අතර එය සාපේක්ෂ ඇමතුම් වලට ලිහිල් වේ.
PA මතක වෙන්කිරීමේ අසාර්ථකත්වය (XC8-2881) ක්රියා පටිපාටි වියුක්ත ප්රශස්තකාරක භාවිතා කරන විට, වැඩසටහන පවතින ඉඩ ප්රමාණයට සරිලන සේ තිබිය යුතු වුවද, කේත ප්රමාණය උපාංගයේ පවතින වැඩසටහන් මතක ප්රමාණයට ආසන්න වන විට සම්බන්ධකය විසින් මතක වෙන් කිරීමේ දෝෂ වාර්තා කළ හැක.
එතරම් ස්මාර්ට් නොවන Smart-I0 (XC8-2872) const-data-in-progmem විශේෂාංගය අක්රිය කර ඇත්නම් හෝ උපාංගයේ සියලුම ෆ්ලෑෂ් දත්ත මතකයට සිතියම්ගත කර ඇත්නම්, සම්පාදකයේ ස්මාර්ට්-io විශේෂාංගය snprint f ශ්රිතය සඳහා වලංගු නමුත් උප-ප්රශස්ත කේතයක් ජනනය කරයි.
ඊටත් වඩා අඩු ස්මාර්ට් Smart-I0 (XC8-2869) -flto සහ -fno-builtin විකල්ප දෙකම භාවිතා කරන විට compiler හි smart-io විශේෂාංගය වලංගු නමුත් උපප්රශස්ත කේතයක් ජනනය කරනු ඇත.
උපප්රශස්ත කියවීමට පමණක් දත්ත ස්ථානගත කිරීම (XC8-2849) සම්බන්ධකය දැනට APPCODE සහ APPDATA මතක කොටස් හෝ මතක සිතියමේ [කියවීම-කියවන අතරතුර-ලියන්න-කියන්න එපා-කොට්ඨාශ ගැන දන්නේ නැත. එහි ප්රතිඵලයක් වශයෙන්, ලින්ක්කරුට මතකයේ නුසුදුසු ප්රදේශයක කියවීමට පමණක් දත්ත වෙන් කිරීමට කුඩා අවස්ථාවක් තිබේ. const-data-in-progmem විශේෂාංගය සක්රීය කර ඇත්නම්, විශේෂයෙන්ම const-data-in-config-mapped-progmem විශේෂාංගය ද සක්රීය කර තිබේ නම්, දත්ත අස්ථානගත වීමේ අවස්ථාව වැඩි වේ. අවශ්ය නම් මෙම විශේෂාංග අක්රිය කළ හැක.
වස්තුව file සැකසුම් ඇණවුම (XC8-2863) වස්තූන් ඇති අනුපිළිවෙල fileසම්බන්ධකය විසින් සකසනු ලැබේ පරිපාටිමය වියුක්ත ප්රශස්තකරණය (-mpa විකල්පය) භාවිතය මත පදනම්ව වෙනස් විය හැක. මෙය බලපානුයේ බහු මොඩියුල හරහා දුර්වල ක්රියාකාරකම් නිර්වචනය කරන කේතයට පමණි.
නිරපේක්ෂ (XC8-2777) සමඟ සම්බන්ධක දෝෂය RAM ආරම්භයේ ලිපිනයක වස්තුවක් නිරපේක්ෂ කර ඇති විට සහ ආරම්භ නොකළ වස්තූන් ද අර්ථ දක්වා ඇති විට, සම්බන්ධක දෝෂයක් ඇති විය හැක.
කෙටි අවදි IDs (XC8-2775) ATA5700/2 උපාංග සඳහා, PHIDO/1 රෙජිස්ටර් අර්ථ දක්වා ඇත්තේ බිටු 16ක් පළලට වඩා බිටු 32ක් පළල ලෙස පමණි.
සංකේතය (XC8-2758) ඇමතීමේ දී සම්බන්ධකය බිඳ වැටේ මූලාශ්ර කේතය -cc., –de f sym ලින්කර් විකල්පය භාවිතයෙන් අර්ථ දක්වා ඇති සංකේතයක් ඇමතීමේ දී -mrelax ධාවක විකල්පය භාවිතා කරන්නේ නම් සම්බන්ධකය බිඳ වැටිය හැක.
වැරදි ආරම්භක (XC8-2679) එහි සමහර ගෝලීය/ස්ථිතික බයිට් ප්රමාණයේ වස්තු සඳහා මූලික අගයන් දත්ත මතකයේ තබා ඇති ස්ථානය සහ ධාවන වේලාවේදී විචල්යයන් වෙත ප්රවේශ වන ස්ථානය අතර විෂමතාවකි.
නරක වක්ර ක්රියාකාරී ඇමතුම් (XC8-2628) සමහර අවස්ථාවලදී, ව්යුහයක කොටසක් ලෙස ගබඩා කර ඇති ශ්රිත දර්ශකයක් හරහා සිදු කරන ලද ක්රියාකාරී ඇමතුම් අසාර්ථක විය හැක.
strtof ෂඩ් දශම පාවෙන සඳහා ශුන්යය ලබා දෙයි (XC8-2626) පුස්තකාල ශ්රිත strtof et al සහ scanf ( ) et al, සෑම විටම ඝාතකයක් ශුන්යයට සඳහන් නොකරන ෂඩාස්ර පාවෙන ලක්ෂ්ය අංකයක් පරිවර්තනය කරයි. උදාහරණයක් ලෙසampලෙ:
strtof ("Oxl", &endptr) ;
I නොව 0 අගය ලබා දෙනු ඇත.
සාවද්ය තොග උපදේශක පණිවිඩ යැවීම (XC8-2542, XC8-2541) සමහර අවස්ථා වලදී, භාවිතා කරන ලද පුනරාවර්තනය හෝ අවිනිශ්චිත තොගය (සමහර විට alloca() භාවිතය හරහා) සම්බන්ධ අට්ටි උපදේශක අනතුරු ඇඟවීම නිකුත් නොකෙරේ.
අනුපිටපත් බාධා කිරීමේ කේතය සමඟ අසමත් වීම (XC8-2421) එක් බාධාකාරී ශ්රිතයකට වඩා එකම ශරීරයක් ඇති විට, සම්පාදකයට එක් බාධාකාරී ශ්රිතයක් අනෙකට ඇමතීමේ ප්රතිදානය තිබිය හැක. මෙහි ප්රතිඵලයක් ලෙස සියලුම ඇමතුම්-ක්ලෝබර්ඩ් රෙජිස්ටර් අනවශ්ය ලෙස සුරැකෙනු ඇති අතර, කේත අසාර්ථක වීමට හේතු විය හැකි වත්මන් බාධා කිරීම් හසුරුවන්නාගේ කථාංගය ක්රියාත්මක වීමට පෙර පවා බාධා කිරීම් සක්රීය වනු ඇත.
වලංගු නොවන DFP මාර්ගයක් සහිත නරක ප්රතිදානය (XC8-2376) සම්පාදකය වලංගු නොවන DFP මාර්ගයක් සහ 'විශේෂයක්' සමඟ ක්රියා කරන්නේ නම් file තෝරාගත් උපාංගය සඳහා පවතී, සම්පාදකය අතුරුදහන් උපාංග පවුල් ඇසුරුම වාර්තා නොකරන අතර ඒ වෙනුවට 'විශේෂය' තෝරා ගනී file, පසුව අවලංගු ප්රතිදානයකට තුඩු දිය හැක. 'විශේෂය' fileබෙදා හරින ලද DFP සමඟ යාවත්කාලීන නොවිය හැකි අතර අභ්යන්තර සම්පාදක පරීක්ෂණ සමඟ පමණක් භාවිතා කිරීමට අදහස් කරන ලදී.
මතක අතිච්ඡාදනය අනාවරණය නොවීය (XC8-1966) සම්පාදකයා විසින් ලිපිනයක (_at ( ) හරහා) නිරපේක්ෂ කරන ලද වස්තු වල මතක අතිච්ඡාදනය සහ ( ) විශේෂණය භාවිතා කරන අනෙකුත් වස්තූන් සහ එම ලිපිනයටම සම්බන්ධ කර ඇති බව හඳුනා නොගනී.
පුස්තකාල කාර්යයන් සහ _memx සමඟ අසමත් වීම (XC8-1763) memx ලිපින අවකාශයේ තර්කයක් සහිත libgcc float ශ්රිතයන් අසාර්ථක විය හැක. පුස්තකාල චර්යාවන් සමහර C ක්රියාකරුවන්ගෙන් කැඳවනු ලබන බව සලකන්න, උදාහරණයක් ලෙසample, පහත කේතය බලපායි:
ආපසු regFloatVar > memxFloatVar;
සීමිත libgcc ක්රියාත්මක කිරීම (AVRTC-731) ATTiny4/5/9/10/20/40 නිෂ්පාදන සඳහා, libgcc හි සම්මත C / Math පුස්තකාල ක්රියාත්මක කිරීම ඉතා සීමිත හෝ නොපවතී.
වැඩසටහන් මතක සීමාවන් (AVRTC-732) 128 kb ට වැඩි වැඩසටහන් මතක රූප සඳහා මෙවලම් දාමය මඟින් සහය දක්වයි; කෙසේ වෙතත්, -mre lax විකල්පය භාවිතා කරන විට අවශ්ය ශ්රිත stubs උත්පාදනය කරනවාට වඩා ලිහිල් කිරීමකින් තොරව සහ ප්රයෝජනවත් දෝෂ පණිවිඩයකින් තොරව සම්බන්ධකය ගබ්සා වන අවස්ථා දන්නා අවස්ථා තිබේ.
අවකාශ සීමාවන් නම් කරන්න (AVRTC-733) නම් කරන ලද ලිපින අවකාශයන් භාවිතා කරන්නාගේ මාර්ගෝපදේශ කොටසේ විශේෂ ආකාරයේ සුදුසුකම් වල සඳහන් සීමාවන්ට යටත්ව මෙවලම් දාමය මගින් සහය දක්වයි.
වේලා කලාප ද පුස්තකාල ශ්රිතයන් GMT උපකල්පනය කරන අතර දේශීය වේලා කලාප සඳහා සහය නොදක්වයි, එබැවින් ප්රාදේශීය වේලාව ( ) gmtime ( ) ට සමාන වේලාවක් ආපසු ලබා දෙනු ඇත, උදාහරණයක් ලෙසample.
file///Applications/microchip/xc8/v2.41/docs/Readme_XC8_for_AVR.htm
ලේඛන / සම්පත්
![]() |
MICROCHIP MPLAB XC8 C සම්පාදක සංවර්ධන මෘදුකාංගය [pdf] හිමිකරුගේ අත්පොත MPLAB XC8 C, MPLAB XC8 C Compiler Development Software, Compiler Development Software, Development Software, Software |




