NXP AN14120 Debugging Cortex-M سافٽ ويئر يوزر گائيڊ
تعارف
هي دستاويز بيان ڪري ٿو هڪ ايپليڪيشن کي پار ڪرڻ، ترتيب ڏيڻ، ۽ ڊيبگ ڪرڻ i.MX 8M فيملي، i.MX 8ULP، ۽ i.MX 93 Cortex-M پروسيسر لاءِ Microsoft Visual Studio Code استعمال ڪندي.
سافٽ ويئر ماحول
حل ٻنهي لينڪس ۽ ونڊوز ميزبان تي لاڳو ٿي سگهي ٿو. هن ايپليڪيشن نوٽ لاء، هڪ ونڊوز پي سي فرض ڪيو ويو آهي، پر لازمي ناهي.
لينڪس بي ايس پي رليز 6.1.22_2.0.0 هن ايپليڪيشن نوٽ ۾ استعمال ڪيو ويو آهي. هيٺيون اڳ تعمير ٿيل تصويرون استعمال ڪيون ويون آهن:
- i.MX 8M ميني: imx-image-full-imx8mmevk.wic
- i.MX 8M نانو: imx-image-full-imx8mnevk.wic
- i.MX 8M پلس: imx-image-full-imx8mpevk.wic
- i.MX 8ULP: imx-image-full-imx8ulpevk.wic
- i.MX 93: imx-image-full-imx93evk.wic
انهن تصويرن کي ڪيئن ٺاهجي ان بابت تفصيلي قدمن لاءِ، ڏسو i.MX Linux يوزر گائيڊ (دستاويز IMXLUG) ۽ i.MX Yocto پروجيڪٽ يوزر گائيڊ (دستاويز IMXLXYOCTOUG).
جيڪڏهن ونڊوز پي سي استعمال ڪيو ويو آهي، Win32 ڊسڪ اميجر استعمال ڪندي ايس ڊي ڪارڊ تي اڳ تعمير ٿيل تصوير لکو (https:// win32diskimager.org/) يا بالينا ايچر (https://etcher.balena.io/). جيڪڏهن هڪ Ubuntu PC استعمال ڪيو ويو آهي، هيٺ ڏنل حڪم استعمال ڪندي SD ڪارڊ تي اڳ تعمير ٿيل تصوير لکو:
$ sudo dd if=.wic of=/dev/sd bs=1M status=progress conv=fsync
نوٽ: پنهنجي ڪارڊ ريڊر ورهاڱي کي چيڪ ڪريو ۽ ايس ڊي کي پنهنجي لاڳاپيل ورهاڱي سان تبديل ڪريو. 1.2
هارڊويئر سيٽ اپ ۽ سامان
- ترقي کٽ:
- NXP i.MX 8MM EVK LPDDR4
- NXP i.MX 8MN EVK LPDDR4
- NXP i.MX 8MP EVK LPDDR4
- NXP i.MX 93 EVK لاءِ 11×11 mm LPDDR4 - NXP i.MX 8ULP EVK LPDDR4
- مائڪرو ايس ڊي ڪارڊ: سان ڊسڪ الٽرا 32-GB مائڪرو SDHC I ڪلاس 10 موجوده تجربي لاءِ استعمال ڪيو ويندو آهي.
- ڊيبگ پورٽ لاءِ مائڪرو USB (i.MX 8M) يا ٽائپ-سي (i.MX 93) ڪيبل.
- SEGGER J-Link ڊيبگ پروب.
شرطون
ڊيبگ ڪرڻ شروع ڪرڻ کان پهريان، صحيح ترتيب سان ڊيبگ ماحول حاصل ڪرڻ لاءِ ڪيترائي شرط پورا ٿيڻ گهرجن.
PC ميزبان - i.MX بورڊ ڊيبگ ڪنيڪشن
هارڊويئر ڊيبگ ڪنيڪشن قائم ڪرڻ لاء، هيٺيان قدم انجام ڏيو:
- يو ايس بي ڪيبل استعمال ڪندي DEBUG USB-UART ۽ PC USB ڪنيڪٽر ذريعي i.MX بورڊ کي ميزبان پي سي سان ڳنڍيو. Windows OS خودڪار طريقي سان سيريل ڊوائيسز ڳولي ٿو.
- ڊوائيس مئنيجر ۾، بندرگاهن جي تحت (COM ۽ LPT) ٻه يا چار ڳنڍيل USB سيريل پورٽ (COM) ڳوليو. بندرگاهن مان هڪ Cortex-A ڪور پاران ٺاهيل ڊيبگ پيغامن لاءِ استعمال ڪيو ويندو آهي، ۽ ٻيو Cortex-M ڪور لاءِ آهي. صحيح پورٽ جي ضرورت کي طئي ڪرڻ کان اڳ، ياد رکو:
- [i.MX 8MP، i.MX 8ULP، i.MX 93]: ڊوائيس مئنيجر ۾ چار بندرگاهن موجود آهن. آخري بندرگاهه Cortex-M ڊيبگ لاءِ آهي ۽ ٻيو آخري بندرگاهه Cortex-A ڊيبگ لاءِ آهي، ڊيبگ بندرگاهن کي ڳڻڻ جي ترتيب ۾.
- [i.MX 8MM، i.MX 8MN]: ڊوائيس مئنيجر ۾ ٻه بندرگاهن موجود آهن. پهريون بندرگاهه Cortex-M ڊيبگ لاءِ آهي ۽ ٻيو بندرگاهه Cortex-A ڊيبگ لاءِ آهي، ڊيبگ بندرگاهن کي ڳڻڻ جي ترتيب ۾.
- پنھنجي پسند ڪيل سيريل ٽرمينل ايموليٽر کي استعمال ڪندي صحيح ڊيبگ پورٽ کوليو (مثال طورample PuTTY) ھيٺ ڏنل پيٽرولن کي ترتيب ڏيڻ سان:
- رفتار 115200 bps تائين
- 8 ڊيٽا بٽ
- 1 اسٽاپ بٽ (115200, 8N1)
- برابري ناهي
- SEGGER ڊيبگ پروب USB کي ميزبان سان ڳنڍيو، پوءِ SEGGER J کي ڳنڍيوTAG i.MX بورڊ سان ڪنيڪٽر JTAG انٽرفيس. جيڪڏهن i.MX بورڊ JTAG انٽرفيس ۾ ڪو به ھدايت وارو ڪنيڪٽر نه آھي، رخ ڳاڙھي تار کي پن 1 سان ترتيب ڏيڻ سان طئي ڪيو ويندو آھي، جيئن تصوير 1 ۾.
VS ڪوڊ جي ٺاھ جوڙ
VS ڪوڊ ڊائون لوڊ ۽ ترتيب ڏيڻ لاءِ، ھيٺ ڏنل قدمن تي عمل ڪريو:
- سرڪاري مان Microsoft Visual Studio Code جو جديد نسخو ڊائون لوڊ ۽ انسٽال ڪريو webسائيٽ. ونڊوز کي ميزبان OS طور استعمال ڪرڻ جي صورت ۾، Visual Studio Code مين پيج مان ”ڊائون لوڊ فار ونڊوز“ بٽڻ چونڊيو.
- Visual Studio Code انسٽال ڪرڻ کان پوءِ، ان کي کوليو ۽ "Extensions" ٽيب چونڊيو يا Ctrl + Shift + X ميلاپ کي دٻايو.
- وقف ٿيل سرچ بار ۾، VS ڪوڊ لاءِ MCUXpresso ٽائيپ ڪريو ۽ ايڪسٽينشن کي انسٽال ڪريو. VS ڪوڊ ونڊو جي کاٻي پاسي هڪ نئين ٽيب ظاهر ٿئي ٿي.
MCUXpresso توسيع جي تشڪيل
MCUXpresso ايڪسٽينشن کي ترتيب ڏيڻ لاءِ، ھيٺ ڏنل قدمن تي عمل ڪريو:
- ڪلڪ ڪريو MCUXpresso extension dedicated tab from the side side bar. QuickSTART PANEL کان، ڪلڪ ڪريو
MCUXpresso انسٽالر کوليو ۽ انسٽالر کي ڊائون لوڊ ڪرڻ جي اجازت ڏيو. - انسٽالر ونڊو ٿوري وقت ۾ ظاهر ٿيندي. ڪلڪ ڪريو MCUXpresso SDK ڊولپر ۽ SEGGER JLink تي پوءِ انسٽال بٽڻ تي ڪلڪ ڪريو. انسٽالر آرڪائيوز، ٽول چين، پٿون سپورٽ، گيٽ، ۽ ڊيبگ پروب لاءِ گهربل سافٽ ويئر انسٽال ڪري ٿو
سڀني پيڪيجز کي انسٽال ڪرڻ کان پوء، پڪ ڪريو ته J-Link جي تحقيق ميزبان پي سي سان ڳنڍيل آهي. پوء، چيڪ ڪريو ته ڇا پروب پڻ موجود آهي MCUXpresso ايڪسٽينشن ۾ DEBUG PROBES تحت view، جيئن تصوير ۾ ڏيکاريل آهي
درآمد ڪريو MCUXpresso SDK
ان تي منحصر آهي ته توهان ڪهڙي بورڊ هلائي رهيا آهيو، ٺاهي ۽ ڊائون لوڊ ڪريو مخصوص SDK کان NXP آفيسر webسائيٽ. ھن ايپليڪيشن نوٽ لاءِ، ھيٺيون SDKs آزمايا ويا آھن:
- SDK_2.14.0_EVK-MIMX8MM
- SDK_2.14.0_EVK-MIMX8MN
- SDK_2.14.0_EVK-MIMX8MP
- SDK_2.14.0_EVK-MIMX8ULP
- SDK_2.14.0_MCIMX93-EVK
اڳوڻي تعمير ڪرڻ لاءample i.MX 93 EVK لاءِ، ڏسو تصوير 7:
- VS ڪوڊ ۾ MCUXpresso SDK مخزن کي درآمد ڪرڻ لاءِ، ھيٺ ڏنل قدم انجام ڏيو:
- SDK ڊائون لوڊ ڪرڻ کان پوء، بصري اسٽوڊيو ڪوڊ کوليو. ڪلڪ ڪريو MCUXpresso ٽئب کاٻي پاسي کان، ۽ وڌايو انسٽال ٿيل ريپوزٽوريز ۽ پروجيڪٽس views.
- Import Repository تي ڪلڪ ڪريو ۽ لوڪل آرڪائيو چونڊيو. ڪلڪ ڪريو برائوز... آرڪائيو فيلڊ سان لاڳاپيل ۽ تازو ڊائون لوڊ ڪيل SDK آرڪائيو چونڊيو.
- اھو رستو چونڊيو جتي آرڪائيو ان زپ ٿيل آھي ۽ جڳھ واري فيلڊ ۾ ڀريو.
- نالو فيلڊ ڊفالٽ طور ڇڏي سگھجي ٿو، يا توھان ھڪڙو ڪسٽم نالو چونڊي سگھو ٿا.
- چيڪ ڪريو يا چيڪ ڪريو Git مخزن ٺاھيو توھان جي ضرورتن جي بنياد تي ۽ پوءِ ڪلڪ ڪريو درآمد ڪريو.
اڳوڻو درآمد ڪريوampدرخواست
جڏهن SDK درآمد ڪيو ويندو آهي، اهو ظاهر ٿئي ٿو هيٺ نصب ٿيل ذخيرو view.
اڳوڻي درآمد ڪرڻ لاءampSDK مخزن مان ايپليڪيشن، ھيٺ ڏنل قدمن کي انجام ڏيو:
- Import Ex تي ڪلڪ ڪريوamprepository بٽڻ مان PROJECTS مان view.
- ڊراپ-ڊائون لسٽ مان هڪ مخزن چونڊيو.
- ڊراپ-ڊائون لسٽ مان ٽول چين چونڊيو.
- ھدف بورڊ چونڊيو.
- چونڊيو demo_apps/hello_world exampچونڊيو ٽيمپليٽ لسٽ مان.
- پروجيڪٽ لاءِ نالو چونڊيو (ڊفالٽ استعمال ڪري سگھجي ٿو) ۽ رستو سيٽ ڪريو پروجيڪٽ جي جڳھ لاءِ.
- ڪلڪ ڪريو ٺاھيو.
- صرف i.MX 8M فيملي لاءِ هيٺيان قدم انجام ڏيو. منصوبن جي تحت view، درآمد ٿيل منصوبي کي وڌايو. سيٽنگون سيڪشن ڏانھن وڃو ۽ ڪلڪ ڪريو mcuxpresso-tools.json file.
a. شامل ڪريو "انٽرفيس": "جيTAG” هيٺ ”ڊيبگ“ > ”سيگر“
b. i.MX 8MM لاءِ، ھيٺ ڏنل تشڪيل شامل ڪريو: “ڊوائيس”: “MIMX8MM6_M4” تحت “debug” > “segger”
c. i.MX 8MN لاءِ، ھيٺ ڏنل تشڪيل شامل ڪريو: “ڊوائيس”: “MIMX8MN6_M7” تحت “debug” > “segger”
d. i.MX 8MP لاءِ، ھيٺ ڏنل تشڪيل شامل ڪريو:
"ڊوائيس": "MIMX8ML8_M7" هيٺ "ڊيبگ" > "سيگر"
هيٺ ڏنل ڪوڊ ڏيکاري ٿو هڪ اڳوڻيampi.MX8 MP "ڊيبگ" سيڪشن لاءِ mcuxpresso-tools.json جي مٿين ترميمن کان پوءِ ڪيو ويو:
ايڪس درآمد ڪرڻ کان پوءampلي ايپليڪيشن ڪاميابيءَ سان، اهو لازمي طور تي پروجيڪٽس تحت نظر ايندو view. پڻ، منصوبي جو ذريعو files ايڪسپلورر (Ctrl + Shift + E) ٽئب ۾ نظر اچن ٿا.
ايپليڪيشن جي تعمير
ايپليڪيشن ٺاھڻ لاءِ، بٽڻ دٻايو ٺاھيو منتخب ٿيل آئڪن، جيئن تصوير 9 ۾ ڏيکاريل آھي.
ڊيبگر لاءِ بورڊ تيار ڪريو
استعمال ڪرڻ لاءِ جيTAG Cortex-M ايپليڪيشنن کي ڊيبگ ڪرڻ لاءِ، پليٽ فارم تي منحصر ڪجھ شرط آھن:
- i.MX 93 لاءِ
i.MX 93 کي سپورٽ ڪرڻ لاءِ، SEGGER J-Link لاءِ پيچ ضرور انسٽال ڪيو وڃي: SDK_MX93_3RDPARTY_PATCH.zip.
نوٽ: هي پيچ استعمال ٿيڻ گهرجي، جيتوڻيڪ اهو ماضي ۾ نصب ڪيو ويو آهي. ڊائون لوڊ مڪمل ٿيڻ کان پوء، آرڪائيو کي ان زپ ڪريو ۽ نقل ڪريو ڊوائيسز ڊاريڪٽري ۽ JLinkDevices.xml file ڏانهن سي: \ پروگرام Files\SEGGER\JLink. جيڪڏهن هڪ لينڪس پي سي استعمال ڪيو ويو آهي، ٽارگيٽ رستو آهي /opt/SEGGER/JLink.- ڊيبگنگ Cortex-M33 جڏهن ته صرف Cortex-M33 هلندڙ آهي
ھن موڊ ۾، بوٽ موڊ سوئچ SW1301[3:0] کي [1010] تي مقرر ڪيو وڃي. ان کان پوء M33 تصوير سڌو سنئون لوڊ ۽ ڊيبگ بٽڻ کي استعمال ڪندي ڊيبگ ڪري سگھجي ٿو. وڌيڪ تفصيل لاءِ، ڏسو سيڪشن 5.
جيڪڏهن Cortex-A55 تي هلندڙ لينڪس Cortex-M33 سان متوازي ضرورت آهي، Cortex-M33 کي ڊيبگ ڪرڻ جا ٻه طريقا آهن: - ڊيبگنگ Cortex-M33 جڏهن ته Cortex-A55 U-Boot ۾ آهي
پهرين، ڪاپي ڪريو sdk20-app.bin file (جي armgcc/debug ڊاريڪٽري ۾ واقع آهي) سيڪشن 3 ۾ ٺاهيل SD ڪارڊ جي بوٽ ورشن ۾. بورڊ کي بوٽ ڪريو ۽ ان کي U-Boot ۾ روڪيو. جڏهن بوٽ سوئچ کي Cortex-A بوٽ ڪرڻ لاء ترتيب ڏني وئي آهي، بوٽ جي ترتيب Cortex-M کي شروع نٿو ڪري. ان کي ھيٺ ڏنل حڪمن کي استعمال ڪندي دستي طور تي ختم ڪيو وڃي. جيڪڏهن Cortex-M شروع نه ڪيو ويو آهي، JLink ڪور سان ڳنڍڻ ۾ ناڪام ٿيندو.
- نوٽ: جيڪڏهن سسٽم کي عام طور تي ڊيبگ نه ٿي ڪري سگھجي، ڪوشش ڪريو پروجيڪٽ تي صحيح ڪلڪ ڪريو MCUXpresso for VS
ڪوڊ ۽ چونڊيو "منسلڪ ڪريو منصوبي کي ڊيبگ ڪرڻ لاء". - ڊيبگنگ Cortex-M33 جڏهن ته Cortex-A55 لينڪس ۾ آهي
Kernel DTS کي تبديل ڪيو وڃي UART5 کي غير فعال ڪرڻ لاءِ، جيڪو ساڳيو پن استعمال ڪري ٿو J.TAG انٽرفيس.
جيڪڏهن هڪ ونڊوز پي سي استعمال ٿئي ٿي، سڀ کان آسان آهي انسٽال ڪرڻ لاءِ WSL + Ubuntu 22.04 LTS، ۽ پوءِ ڊي ٽي ايس کي پار ڪرڻ لاءِ.
WSL + Ubuntu 22.04 LTS تنصيب کان پوء، WSL تي هلندڙ Ubuntu مشين کي کوليو ۽ گهربل پيڪيجز کي انسٽال ڪريو:
هاڻي، ڪرنل ذريعن کي ڊائون لوڊ ڪري سگھجي ٿو:
UART5 پردي کي غير فعال ڪرڻ لاءِ، linux-imx/arch/arm5/boot/dts/freescale/imx64-93×11-evk.dts ۾ lpuart11 نوڊ ڳولھيو. file ۽ ٺيڪ حالت کي معذور سان تبديل ڪريو:
ڊي ٽي ايس کي ٻيهر ترتيب ڏيو:
نقل ڪريو نئون ٺهيل linux-imx/arch/arm64/boot/dts/freescale/imx93 11×11-evk.dtb file SD ڪارڊ جي بوٽ ورهاڱي تي. نقل ڪريو hello_world.elf file (جي armgcc/debug ڊاريڪٽري ۾ واقع آهي) سيڪشن 3 ۾ ٺاهيل SD ڪارڊ جي بوٽ ورشن ۾. لينڪس ۾ بورڊ کي بوٽ ڪريو. جيئن ته بوٽ ROM Cortex-M کي ختم نه ڪندو آهي جڏهن Cortex-A بوٽن، CortexM کي دستي طور تي شروع ڪيو وڃي.
نوٽ: The Hello_world.elf file /lib/firmware ڊاريڪٽري ۾ رکيل هجي.
- ڊيبگنگ Cortex-M33 جڏهن ته صرف Cortex-M33 هلندڙ آهي
- i.MX 8M لاءِ
i.MX 8M Plus کي سپورٽ ڪرڻ لاءِ، SEGGER J-Link لاءِ پيچ کي انسٽال ڪيو وڃي:
iar_segger_support_patch_imx8mp.zip.
ڊائون لوڊ ختم ٿيڻ کان پوء، آرڪائيو کي ان زپ ڪريو ۽ نقل ڪريو ڊوائيسز ڊاريڪٽري ۽
JLinkDevices.xml file JLink ڊاريڪٽري کان C:\Program ڏانهن Files\SEGGER\JLink. جيڪڏهن هڪ لينڪس پي سي
استعمال ڪيو ويو آھي، ھدف جو رستو آھي /opt/SEGGER/JLink.- ڊيبگنگ Cortex-M جڏهن ته Cortex-A يو-بوٽ ۾ آهي
هن معاملي ۾، ڪجهه خاص نه ڪرڻ گهرجي. يو بوٽ ۾ بورڊ کي بوٽ ڪريو ۽ سيڪشن 5 ڏانھن وڃو. - ڊيبگنگ Cortex-M جڏهن ته Cortex-A لينڪس ۾ آهي
Cortex-A تي هلندڙ لينڪس سان متوازي ۾ Cortex-M ايپليڪيشن کي هلائڻ ۽ ڊيبگ ڪرڻ لاءِ، مخصوص ڪلاڪ کي مقرر ڪيو وڃي ۽ Cortex-M لاءِ محفوظ ڪيو وڃي. اهو U-Boot جي اندر کان ڪيو ويندو آهي. U-Boot ۾ بورڊ کي روڪيو ۽ ھيٺ ڏنل حڪمن کي ھلايو:
- ڊيبگنگ Cortex-M جڏهن ته Cortex-A يو-بوٽ ۾ آهي
- i.MX 8ULP لاءِ
i.MX 8ULP کي سپورٽ ڪرڻ لاءِ، SEGGER J-Link لاءِ پيچ انسٽال ٿيڻ گھرجي: SDK_MX8ULP_3RDPARTY_PATCH.zip.
نوٽ: هي پيچ استعمال ڪيو وڃي جيتوڻيڪ اهو ماضي ۾ نصب ڪيو ويو آهي.
ڊائون لوڊ ڪرڻ کان پوء، آرڪائيو کي ان زپ ڪريو ۽ نقل ڪريو ڊوائيسز ڊاريڪٽري ۽ JLinkDevices.xml file ڏانهن سي: \ پروگرام Files\SEGGER\JLink. جيڪڏهن هڪ لينڪس پي سي استعمال ڪيو ويو آهي، ٽارگيٽ رستو آهي /opt/SEGGER/JLink. i.MX 8ULP لاءِ، Upower يونٽ جي ڪري، اسان جي "VSCode" ريپو ۾ m33_image استعمال ڪندي flash.bin ٺاهيو. M33 تصوير ڏسي سگھجي ٿي {موجوده رپورٽ}\armgcc\debug\sdk20-app.bin. Flash.bin تصوير ڪيئن ٺاهجي ان بابت SDK_6_xx_x_EVK-MIMX8ULP/Docs ۾ EVK-MIMX9ULP ۽ EVK8-MIMX2ULP لاءِ MCUX پريسو SDK سان شروعات ڪرڻ کان سيڪشن 8 جو حوالو ڏيو.
نوٽ: فعال VSCode ريپو ۾ M33 تصوير استعمال ڪريو. ٻي صورت ۾، پروگرام صحيح طرح سان ڳنڍيل نه آهي. صحيح ڪلڪ ڪريو ۽ "منسلڪ" چونڊيو.
هلائڻ ۽ ڊيبگنگ
ڊيبگ بٽڻ کي دٻائڻ کان پوء، ڊيبگ پروجيڪٽ جي ترتيب کي چونڊيو ۽ ڊيبگنگ سيشن شروع ٿئي ٿو.
جڏهن هڪ ڊيبگنگ سيشن شروع ٿئي ٿو، هڪ وقف مينيو ڏيکاري ٿو. ڊيبگنگ مينيو ۾ بٽڻون آھن ايگزيڪيوشن کي شروع ڪرڻ لاءِ جيستائين بريڪ پوائنٽ فائر نه ٿئي، عمل کي روڪيو، قدم وڌو، قدم وڌايو، قدم ٻاھر، ٻيهر شروع ڪريو، ۽ بند ڪريو.
انهي سان گڏ، اسان مقامي متغير ڏسي سگهون ٿا، قيمتون رجسٽر ڪريو، ڪجهه اظهار ڏسو، ۽ ڪال اسٽيڪ ۽ بريڪ پوائنٽس کي چيڪ ڪريو
کاٻي هٿ جي نيويگيٽر ۾. اهي فنڪشنل علائقا ”رن ۽ ڊيبگ“ ٽيب هيٺ آهن، ۽ نه MCUXpresso ۾
VS ڪوڊ لاءِ.
دستاويز ۾ سورس ڪوڊ بابت نوٽ ڪريو
Exampهن دستاويز ۾ ڏيکاريل ڪوڊ هيٺ ڏنل ڪاپي رائيٽ ۽ BSD-3-Clause لائسنس آهي:
ڪاپي رائيٽ 2023 NXP وري ورهائڻ ۽ ماخذ ۽ بائنري فارمن ۾ استعمال، ترميم سان يا بغير، اجازت ڏني وئي آھي ته ھيٺيون شرطون پوريون ڪيون وڃن:
- ماخذ ڪوڊ جي ٻيهر ورهاست کي لازمي طور تي مٿي ڏنل ڪاپي رائيٽ نوٽس، شرطن جي هن فهرست ۽ هيٺ ڏنل رد ڪرڻ لازمي آهي.
- بائنري فارم ۾ ٻيهر ورهائڻ لاءِ مٿي ڏنل ڪاپي رائيٽ نوٽس کي ٻيهر پيش ڪرڻ گهرجي، شرطن جي هن فهرست ۽ دستاويزن ۽/يا ٻيون مواد ۾ هيٺ ڏنل ترديد کي تقسيم سان مهيا ڪيو وڃي.
- نه ئي ڪاپي رائيٽ هولڊر جو نالو ۽ نه ئي هن جي مددگارن جا نالا هن مخصوص سافٽويئر مان حاصل ٿيل شين جي تائيد يا ترويج لاءِ هن اڳوڻي تحريري اجازت کان بغير استعمال ڪري سگهندا
هي سافٽ ويئر ڪاپي رائيٽ هولڊرز ۽ تعاون ڪندڙن پاران مهيا ڪيل آهي "جيئن آهي" ۽ ڪنهن به ظاهري يا تقاضا وارنٽيون، بشمول، پر ان تائين محدود نه آهي، درخواست ڏيندڙ وارنٽيز ۽ هڪ ماهر آفيسر جي گهربل وارنٽي SCLAIMED. ڪنهن به صورت ۾ ڪاپي رائيٽ هولڊر يا حصو وٺندڙ ڪنهن به سڌي، اڻ سڌي، اتفاقي، خاص، مثالي، يا نتيجي ۾ ٿيندڙ نقصانن لاءِ ذميوار نه هوندا (بشمول، پر محدود، غير محفوظ، محفوظ ڪيل؛ استعمال جو نقصان، ڊيٽا، يا منافعو؛ يا ڪاروباري مداخلت) بهرحال سبب ۽ ذميواري جي ڪنهن به نظريي تي، ڇا معاهدي ۾، سخت ذميواري، يا ٽارٽ (بشمول لاپرواهي يا ٻي صورت ۾) ڪنهن به طريقي سان پيدا ٿيڻ کان سواء، بغير ڪنهن به صورت ۾. اهڙي نقصان جي امڪان جي
قانوني ڄاڻ
وصفون
مسودو - هڪ دستاويز تي هڪ مسودو جي حيثيت ظاهر ڪري ٿو ته مواد اڃا تائين آهي
اندروني ري جي تحتview ۽ باضابطه منظوري جي تابع، جنهن جي نتيجي ۾ تبديليون يا اضافو ٿي سگهي ٿو. NXP Semiconductors ڪنهن دستاويز جي مسودي ۾ شامل معلومات جي درستگي يا مڪمليت جي حوالي سان ڪا به نمائندگي يا ضمانت نه ڏيندا آهن ۽ اهڙي معلومات جي استعمال جي نتيجن لاءِ ڪو به ذميوار نه هوندو.
رد ڪرڻ وارا
محدود وارنٽي ۽ ذميواري - هن دستاويز ۾ معلومات کي صحيح ۽ قابل اعتماد سمجهيو ويندو آهي. بهرحال، NXP سيمڪنڊڪٽرز اهڙي معلومات جي درستگي يا مڪمليت جي حوالي سان ڪا به نمائندگي يا ضمانت نه ٿا ڏين، بيان ڪيل يا تقاضا، ۽ اهڙي معلومات جي استعمال جي نتيجن لاءِ ڪو به ذميوار نه هوندو. NXP Semiconductors هن دستاويز ۾ مواد جي ڪا به ذميواري نه کڻندا آهن جيڪڏهن NXP Semiconductors کان ٻاهر هڪ معلوماتي ماخذ طرفان مهيا ڪيل هجي. ڪنهن به صورت ۾ NXP سيميڪنڊڪٽرز ڪنهن به اڻ سڌي، حادثاتي، سزا واري، خاص يا نتيجي ۾ ٿيندڙ نقصانن جا ذميوار نه هوندا (بشمول - بغير ڪنهن حد جي - گم ٿيل منافعو، گم ٿيل بچت، ڪاروباري رڪاوٽ، ڪنهن به پروڊڪٽ کي هٽائڻ يا بدلائڻ يا ٻيهر ڪم ڪرڻ جي چارجز) ته ڇا يا نه ته اهڙا نقصان تشدد (بشمول غفلت)، وارنٽي، معاهدي جي ڀڃڪڙي يا ڪنهن ٻئي قانوني نظريي تي ٻڌل آهن.
ڪنهن به نقصان جي باوجود جيڪو صارف ڪنهن به سبب جي ڪري برداشت ڪري سگهي ٿو، NXP سيميڪنڊڪٽرز جي مجموعي ۽ مجموعي ذميواري ڪسٽمر جي لاءِ هتي بيان ڪيل مصنوعات جي شرطن ۽ شرطن جي مطابق محدود هوندي NXP سيمي ڪنڊڪٽرز جي تجارتي وڪرو جي شرطن جي مطابق.
تبديليون ڪرڻ جو حق — NXP Semiconductors هن دستاويز ۾ شايع ٿيل معلومات ۾ تبديليون ڪرڻ جو حق محفوظ رکي ٿو، بشمول ڪنهن به وقت ۽ بغير ڪنهن اطلاع جي. هي دستاويز هتي جي اشاعت کان اڳ فراهم ڪيل سڀني معلومات کي ختم ڪري ٿو ۽ تبديل ڪري ٿو.
استعمال لاء مناسب - NXP Semiconductors پراڊڪٽس ڊزائين ڪيل، مجاز يا وارنٽي ٿيل نه آهن جيڪي زندگي جي حمايت، زندگي جي نازڪ يا حفاظت جي نازڪ سسٽم يا سامان ۾ استعمال لاء مناسب هجن، ۽ نه ئي ايپليڪيشنن ۾ جتي NXP سيمي ڪنڊڪٽر پروڊڪٽ جي ناڪامي يا خرابي جي نتيجي ۾ مناسب طور تي توقع رکي سگهجي ٿي. زخم، موت يا سخت ملڪيت يا ماحولياتي نقصان. NXP Semiconductors ۽ ان جا سپلائرز شامل ڪرڻ ۽/يا NXP Semiconductors پروڊڪٽس جي اهڙين سامان يا ايپليڪيشنن ۾ استعمال جي ذميواري قبول نٿا ڪن ۽ ان ڪري اهڙي شموليت ۽/يا استعمال صارف جي پنهنجي خطري تي آهي.
درخواستون - درخواستون جيڪي هتي بيان ڪيون ويون آهن انهن مان ڪنهن لاءِ
مصنوعات صرف مثالي مقصدن لاءِ آهن. NXP Semiconductors ڪابه نمائندگي يا وارنٽي نٿو ڏئي ته اهڙيون ايپليڪيشنون مخصوص استعمال لاءِ موزون هونديون بغير ڪنهن وڌيڪ جاچ يا ترميم جي.
گراهڪ انهن جي ڊيزائن ۽ آپريشن جا ذميوار آهن
ايپليڪيشنون ۽ پراڊڪٽس استعمال ڪندي NXP Semiconductors پروڊڪٽس، ۽ NXP Semiconductors ايپليڪيشنن يا ڪسٽمر پراڊڪٽ ڊيزائن سان ڪنهن به مدد لاءِ ڪا به ذميواري قبول نه ڪندا آهن. اها ڪسٽمر جي واحد ذميواري آهي ته اهو طئي ڪري ته ڇا NXP Semiconductors پراڊڪٽ مناسب ۽ مناسب آهي گراهڪ جي ايپليڪيشنن ۽ پروڊڪٽس جي منصوبابندي لاءِ، گڏوگڏ رٿيل ايپليڪيشن ۽ صارف جي ٽئين پارٽي گراهڪ جي استعمال لاءِ. صارفين کي انهن جي ايپليڪيشنن ۽ شين سان لاڳاپيل خطرن کي گھٽائڻ لاء مناسب ڊيزائن ۽ آپريٽنگ حفاظت فراهم ڪرڻ گهرجي.
NXP Semiconductors ڪنهن به ڊفالٽ، نقصان، قيمت يا مسئلي سان لاڳاپيل ڪنهن به ذميواري کي قبول نه ڪندا آهن جيڪي ڪسٽمر جي ايپليڪيشنن يا پروڊڪٽس ۾ ڪنهن به ڪمزوري يا ڊفالٽ تي ٻڌل آهن، يا صارف جي ٽئين پارٽي گراهڪ طرفان استعمال يا استعمال. ڪسٽمر ذميوار آهي NXP Semiconductors پراڊڪٽس استعمال ڪندي ڪسٽمر جي ايپليڪيشنن ۽ پروڊڪٽس لاءِ سڀ ضروري جانچ ڪرڻ لاءِ ته جيئن ايپليڪيشنن ۽ پروڊڪٽس يا ايپليڪيشن جي ڊفالٽ کان بچڻ لاءِ يا صارف جي ٽئين پارٽي طرفان استعمال ٿئي.
تجارتي وڪري جا شرط ۽ شرط - NXP Semiconductors پراڊڪٽس وڪرو ڪيا وڃن ٿا تجارتي وڪري جي عام شرطن ۽ شرطن جي تابع، جيئن شايع ٿيل https://www.nxp.com/profile/شرط، جيستائين ٻي صورت ۾ صحيح لکيل انفرادي معاهدي ۾ اتفاق نه ڪيو وڃي. ان صورت ۾ جڏهن هڪ فرد معاهدو ڪيو ويو آهي صرف لاڳاپيل معاهدي جا شرط ۽ شرط لاڳو ٿيندا. NXP Semiconductors ھتي واضح طور تي ڪسٽمر پاران NXP Semiconductors پروڊڪٽس جي خريداري جي حوالي سان ڪسٽمر جي عام شرطن ۽ شرطن کي لاڳو ڪرڻ تي اعتراض ڪن ٿا.
برآمد ڪنٽرول - ھي دستاويز ۽ ھتي بيان ڪيل شيون (ص) برآمد ڪنٽرول ضابطن جي تابع ٿي سگھي ٿي. ايڪسپورٽ کي قابل اختيار اختيارين کان اڳواٽ اجازت جي ضرورت هجي.
غير آٽوميٽڪ قابل مصنوعات ۾ استعمال لاء مناسب - جيستائين هي دستاويز واضح طور تي بيان ڪري ٿو ته هي مخصوص NXP سيمڪنڊڪٽرز
پيداوار آٽوميٽڪ قابليت آهي، پيداوار گاڏين جي استعمال لاء مناسب ناهي. اهو نه ته قابل آهي ۽ نه ئي آزمائشي آٽوميٽڪ ٽيسٽنگ يا ايپليڪيشن گهرجن جي مطابق. NXP Semiconductors شامل ڪرڻ ۽/يا غير آٽوميٽڪ قابل پراڊڪٽس جي استعمال جي ذميواري قبول نه ڪندا آهن آٽوميٽڪ سامان يا ايپليڪيشنن ۾.
ان صورت ۾ ته ڪسٽمر پراڊڪٽ استعمال ڪري ٿو ڊيزائن-ان ۽ استعمال ۾
گاڏين جي ايپليڪيشنن کي گاڏين جي وضاحتن ۽ معيار لاء،
گراهڪ (a) پراڊڪٽ کي NXP سيميڪنڊڪٽرز جي وارنٽي کان سواءِ پراڊڪٽ جي اهڙين آٽوميٽڪ ايپليڪيشنن، استعمال ۽ وضاحتن، ۽ (b) جڏهن به گراهڪ پراڊڪٽ استعمال ڪري ٿو خودڪار ايپليڪيشنن لاءِ NXP Semiconductors جي وضاحتن کان ٻاهر اهڙي استعمال کي صرف صارف جي پنهنجي خطري تي هوندو، ۽ (c) گراهڪ مڪمل طور تي NXP سيمي ڪنڊڪٽرز کي ڪنهن به ذميواري، نقصان يا ناڪام پراڊڪٽ جي دعوائن لاءِ معاوضو ڏئي ٿو جيڪو ڪسٽمر ڊيزائن ۽ پروڊڪٽ جي استعمال جي نتيجي ۾ NXP Semiconductors جي معياري وارنٽي ۽ NXP Semiconductors جي پيداوار جي وضاحتن کان ٻاهر گاڏين جي ايپليڪيشنن لاءِ.
ترجما - هڪ دستاويز جو هڪ غير انگريزي (ترجمو ڪيل) نسخو، جنهن ۾ ان دستاويز ۾ قانوني معلومات شامل آهي، صرف حوالي لاءِ آهي. ترجمو ٿيل ۽ انگريزي ورزن جي وچ ۾ ڪنهن به فرق جي صورت ۾ انگريزي ورزن غالب هوندو.
سيڪيورٽي - ڪسٽمر سمجھي ٿو ته سڀئي NXP پروڊڪٽس اڻڄاتل خطرن جي تابع ٿي سگھن ٿيون يا سڃاتل حدن سان قائم ڪيل حفاظتي معيارن يا وضاحتن جي مدد ڪري سگھن ٿيون. ڪسٽمر پنهنجي زندگيءَ جي دوران ان جي ايپليڪيشنن ۽ پراڊڪٽس جي ڊيزائن ۽ آپريشن لاءِ ذميوار هوندو آهي ته جيئن صارف جي ايپليڪيشنن ۽ پروڊڪٽس تي انهن ڪمزورين جو اثر گهٽجي. ڪسٽمر جي ذميواري ٻين کليل ۽/يا پراپرائيٽري ٽيڪنالاجيز تائين به وڌي ٿي جيڪا NXP پروڊڪٽس جي مدد سان ڪسٽمر جي ايپليڪيشنن ۾ استعمال لاءِ. NXP ڪنهن به خطري جي ذميواري قبول نه ڪندو آهي. ڪسٽمر کي باقاعدي NXP کان سيڪيورٽي اپڊيٽ چيڪ ڪرڻ گهرجي ۽ مناسب طريقي سان پيروي ڪرڻ گهرجي.
ڪسٽمر حفاظتي خصوصيتن سان پروڊڪٽس کي چونڊيندو جيڪي قاعدن، ضابطن ۽ ارادي واري ايپليڪيشن جي معيارن کي بهترين طريقي سان ملن ٿا ۽ ان جي پروڊڪٽس جي حوالي سان حتمي ڊيزائن جا فيصلا ڪن ٿا ۽ ان جي پروڊڪٽس بابت سڀني قانوني، ريگيوليٽري، ۽ سيڪيورٽي سان لاڳاپيل گهرجن جي تعميل لاءِ مڪمل طور تي ذميوار آهي، قطع نظر ڪنهن به معلومات يا مدد جي جيڪا شايد NXP پاران مهيا ڪئي وئي هجي. NXP وٽ پراڊڪٽ سيڪيورٽي حادثن جي جوابي ٽيم (PSIRT) (PSIRT@nxp.com تي دستياب آهي) جيڪا NXP پروڊڪٽس جي سيڪيورٽي خطرن جي تحقيقات، رپورٽنگ، ۽ حل جاري ڪرڻ جو انتظام ڪري ٿي.
NXP B.V. - NXP B.V. هڪ آپريٽنگ ڪمپني ناهي ۽ اها پراڊڪٽس کي ورهائي يا وڪرو نه ڪري ٿي.
دستاويز / وسيلا
![]() |
NXP AN14120 ڊيبگنگ Cortex-M سافٽ ويئر [pdf] استعمال ڪندڙ ھدايت i.MX 8ULP, i.MX 93, AN14120 Debugging Cortex-M Software, AN14120, Debugging Cortex-M سافٽ ويئر, Cortex-M سافٽ ويئر, سافٽ ويئر |