AN13823 IEC 60730 Kilasi B Software fun LPC553x MCUs
Itọsọna olumulo
AN13823 IEC 60730 Kilasi B Software fun LPC553x MCUs
Osọ 0 - 4 Oṣu Kini, Ọdun 2023
Akọsilẹ ohun elo
Alaye iwe
Alaye | Akoonu |
Awọn ọrọ-ọrọ | LPC553x, AN13823, IEC 60730, LPC5536-EVK, IEC60730B |
Áljẹbrà | Idi akọkọ ti akọsilẹ ohun elo yii ni lati mu idagbasoke sọfitiwia alabara pọ si ati awọn ilana ijẹrisi fun awọn ọja ti o da lori LPC553x MCUs. |
Ọrọ Iṣaaju
Iwọn aabo IEC 60730 ṣe asọye idanwo ati awọn ọna iwadii ti o rii daju iṣẹ ailewu ti ohun elo iṣakoso ifibọ ati sọfitiwia fun awọn ohun elo ile.
Lati ṣaṣeyọri aabo iṣẹ-ṣiṣe, o jẹ dandan lati yọ gbogbo awọn eewu ti aiṣedeede eto le fa.
Idiwọn IEC 60730 ṣe ipin ohun elo to wulo si awọn ẹka mẹta:
- Kilasi A: Ko ṣe ipinnu lati gbẹkẹle fun aabo ẹrọ naa
- Kilasi B: Lati ṣe idiwọ iṣẹ ailewu ti ẹrọ iṣakoso
- Kilasi C: Lati ṣe idiwọ awọn eewu pataki
NXP n pese IEC 60730 ile-ikawe ailewu Class B lati ṣe iranlọwọ fun awọn aṣelọpọ ti awọn iṣakoso adaṣe ni ọja ohun elo nla lati pade ilana IEC 60730 kilasi B. Ile-ikawe naa ṣe atilẹyin IAR, Keil, ati awọn IDE MCUXpresso.
O le ṣepọ alakomeji ile-ikawe aabo NXP sinu sọfitiwia ohun elo rẹ. Fun idagbasoke irọrun ti ohun elo IEC60730B, ile-ikawe naa tun pese tẹlẹample ise agbese. Eyi example ti wa ni pin nipasẹ awọn Iwọn Aabo IEC 60730 fun Awọn ohun elo Ile on nxp.com webojula.Idi akọkọ ti akọsilẹ ohun elo yii ni lati mu idagbasoke sọfitiwia alabara pọ si ati awọn ilana ijẹrisi fun awọn ọja ti o da lori LPC553x MCUs.
NXP IEC 60730 Class B ìkàwé loriview
Ile-ikawe aabo pẹlu apakan ti o gbẹkẹle ipilẹ ati agbeegbe-igbẹkẹle apakan awọn idanwo ara ẹni bi a ṣe ṣe akojọ rẹ si isalẹ:
- Mojuto-ti o gbẹkẹle apakan
– Sipiyu forukọsilẹ igbeyewo
– Sipiyu eto counter igbeyewo
- Ayipada iranti igbeyewo
- Idanwo iranti ailopin
- Ayẹwo akopọ - Agbeegbe-ti o gbẹkẹle apakan
– Aago igbeyewo
– Digital input / o wu igbeyewo
– Afọwọṣe input / o wu igbeyewo
– Watchdog igbeyewo
Table 1. Ibamu pẹlu IEC 60730 Class B awọn ajohunše
NXP IEC 60730 Kilasi B Library | IEC 60730 | ||
paati | Ọna | Awọn nkan | Ti a lo |
Sipiyu forukọsilẹ | Ilana idanwo iforukọsilẹ Sipiyu ṣe idanwo gbogbo awọn iforukọsilẹ Sipiyu CM33 fun ipo di-ni. | 1.1 Forukọsilẹ | H.2.16.6 |
counter eto | Ilana idanwo counter eto Sipiyu ṣe idanwo iforukọsilẹ eto Sipiyu fun ipo di-ni ipo. Idanwo iforukọsilẹ counter eto le ṣee ṣe lẹẹkan lẹhin atunto MCU ati paapaa lakoko akoko asiko. Fi agbara mu Sipiyu (sisan eto) lati wọle si adirẹsi ti o baamu ti o n ṣe idanwo ilana lati jẹrisi iṣẹ ṣiṣe counter eto naa. |
1.3 Eto ounka | H.2.16.6 |
Aago | Ilana idanwo aago ṣe idanwo awọn oscillators ti ero isise fun igbohunsafẹfẹ ti ko tọ. Ilana idanwo aago da lori lafiwe ti awọn orisun aago ominira meji. Ti ilana iṣe idanwo ṣe iwari iyipada ninu ipin igbohunsafẹfẹ laarin awọn orisun aago, koodu aṣiṣe ikuna yoo pada. | 3.Aago | NA |
Iranti ti ko yipada | Idanwo iranti ailopin ni lati ṣayẹwo boya iyipada wa ninu akoonu iranti (Filaṣi ori-chip) lakoko ṣiṣe ohun elo. Orisirisi awọn ọna checksum (fun example, CRC16) le ṣee lo fun idi eyi. | 4.1 Iranti ti ko yipada |
H.2.19.3.1 |
Ayipada iranti igbeyewo | Ṣayẹwo Ramu lori-chip fun awọn aṣiṣe DC. Awọn ero March C ati Oṣu Kẹta X ni a lo bi awọn ilana iṣakoso. | 4.2 Ayípadà iranti | H.2.19.6 |
Oni-nọmba igbewọle / o wu igbeyewo |
Awọn iṣẹ idanwo DIO jẹ apẹrẹ lati ṣayẹwo titẹ sii oni-nọmba ati iṣẹ ṣiṣejade ati awọn ipo Circuit kukuru laarin PIN idanwo ati voll ipesetage, ilẹ, tabi yiyan lẹgbẹ pinni. | 7.1 Digital Mo / awọn | H.2.18.13 |
Afọwọṣe Input/ Ijade (I/ 0) idanwo | Idanwo naa ṣe ayẹwo wiwo wiwo afọwọṣe ati awọn iye itọkasi mẹta: itọkasi giga, itọkasi kekere, ati bandgap voltage. Idanwo igbewọle afọwọṣe da lori iyipada ti awọn igbewọle afọwọṣe mẹta pẹlu voltagawọn iye e ati pe o ṣayẹwo ti awọn iye iyipada ba baamu si awọn opin pàtó kan. Ni deede, awọn opin yẹ ki o jẹ aijọju 10% ni ayika awọn iye itọkasi ti o fẹ. | 7.2 Afọwọṣe Mo / awọn | H.2.18.13 |
NXP IEC 60730 Class B ìkàwéample ise agbese
Fun idagbasoke ti o rọrun ti ohun elo IEC60730B, ile-ikawe n pese iṣaajuample ise agbese ilana, itumọ ti lori kan ifiṣootọ LPC553x igbelewọn Wọle si NXP.com | NXP Semikondokito (LPC5536-EVK). O gbọdọ tunto awọn ti o tọ ìkàwé eto fun awọn gangan ise agbese.3.1 Ijọpọ ti ile-ikawe aabo sinu ohun elo olumulo
Awọn ailewu exampAwọn iṣẹ ṣiṣe iṣẹ akanṣe pin si awọn ilana akọkọ meji: iṣaju-ṣiṣe idanwo aabo akoko kan ati idanwo aabo igbakọọkan.
Nọmba atẹle yii fihan awọn ilana idanwo aabo.Lati ṣepọ ile-ikawe aabo NXP, ṣe awọn igbesẹ wọnyi:
- Gba awọn ailewu example ise agbese lati nxp.com
- Eto ohun elo ti n ṣakiyesi awọn agbeegbe ti a lo fun idanwo ara ẹni aabo
- Tunto ile-ikawe aabo ni ibamu si apẹrẹ ohun elo gangan
- Tan awọn iṣẹ idanwo aabo ni ọkọọkan ni safe_config.h
• Fun n ṣatunṣe aṣiṣe, o dara lati tan idanwo filasi ati oluṣọ PA akọkọ
Ṣe abojuto awọn idalọwọduro, nitori diẹ ninu awọn idanwo ailewu ko le ni idilọwọ - Dagbasoke koodu ohun elo ti o da lori ailewu example ise agbese ilana
LPC553x ailewu ìkàwéample ise agbese ni iwa
4.1 Hardware Àkọsílẹ aworan atọka
Awọn modulu wọnyi ni a lo fun idanwo ara-ẹni aabo nipasẹ aiyipada bi a ṣe han ninu nọmba ni isalẹ:Table 2. MCU module fun ailewu ara-igbeyewo
Aabo ìkàwé igbeyewo ohun kan | MCU module |
Sipiyu igbeyewo | LPC5536 CM33 mojuto |
Idanwo aago | Sisitemu CTIMER0 |
Watchdog igbeyewo | aja aja CTIMER0 |
Ayipada iranti igbeyewo | SRAM |
Idanwo iranti ailopin | Filaṣi |
Idanwo I/O Digital | GPIO1 |
Afọwọṣe I/O igbeyewo | AD0 |
4.2 Sipiyu igbeyewo
4.2.1 Sipiyu forukọsilẹ igbeyewo apejuwe
Ilana idanwo iforukọsilẹ Sipiyu ṣe idanwo gbogbo awọn iforukọsilẹ Sipiyu CM33 fun ipo iduro (ayafi fun iforukọsilẹ counter eto). Idanwo counter eto naa jẹ imuse bi ilana aabo iduroṣinṣin kan. Eto idanwo yii pẹlu idanwo ti awọn iforukọsilẹ atẹle:
- Awọn iforukọsilẹ gbogboogbo:
– R0-R12 - Awọn iforukọsilẹ atọka akopọ:
- MSP + MSPLIM (ailewu / ti kii ṣe aabo)
- PSP + PSPLIM (ailewu / ti kii ṣe aabo) - Awọn iforukọsilẹ pataki:
-APSR
- Iṣakoso (ailewu / ti kii ṣe aabo)
- PRIMASK (ailewu / ti kii ṣe aabo)
- FAULTMASK (ailewu / ti kii ṣe aabo)
- BASEPRI (ailewu / ti kii ṣe aabo) - Iforukọsilẹ ọna asopọ:
– LR - Awọn iforukọsilẹ FPU:
FPSCR
S0 – S31
Awọn idanwo kan wa ti a ṣe ni ẹẹkan lẹhin atunto MCU ati paapaa lakoko akoko ṣiṣe. O le tun lo awọn eto aiyipada ti ile-ikawe aabo LPC553x example ise agbese, sibẹsibẹ, o gbọdọ san ifojusi si da gbigbi bi diẹ ninu awọn ti Sipiyu Forukọsilẹ igbeyewo ko le wa ni Idilọwọ.
- Ṣaaju ṣiṣe idanwo aabo akoko kan
– SafetyCpuAfterResetTest /* Awọn idilọwọ gbọdọ jẹ alaabo fun igba diẹ */
- FS_CM33_CPU_Forukọsilẹ
– FS_CM33_CPU_NonStackedRegister
- FS_CM33_CPU_SPmain_S
- FS_CM33_CPU_SPmain_Limit_S
– FS_CM33_CPU_SPprocess_S
- FS_CM33_CPU_SPprocess_Limit_S
- FS_CM33_CPU_Primask_S
– FS_FAIL_CPU_PRIMASK
- FS_CM33_CPU_Special8PriorityLevels_S
- FS_CM33_CPU_Control
- FS_CM33_CPU_Float1
- FS_CM33_CPU_Float2 - Ṣiṣe ayẹwo igbakọọkan aabo
- Idanwo SafetyCpuBackground /* Idanwo awọn iforukọsilẹ Sipiyu idilọwọ */
- FS_CM33_CPU_Forukọsilẹ
– FS_CM33_CPU_NonStackedRegister
- FS_CM33_CPU_Control /* Awọn idilọwọ gbọdọ jẹ alaabo fun igba diẹ */
- FS_CM33_CPU_SPprocess_S /* Awọn idilọwọ gbọdọ jẹ alaabo fun igba diẹ */
4.3 Sipiyu eto counter igbeyewo
4.3.1 Sipiyu eto counter igbeyewo apejuwe
Ilana idanwo iforukọsilẹ counter eto Sipiyu ṣe idanwo iforukọsilẹ eto Sipiyu fun ipo di-ni ipo. Ni idakeji si awọn iforukọsilẹ Sipiyu miiran, counter eto ko le kun ni irọrun pẹlu ilana idanwo kan. O jẹ dandan lati fi agbara mu Sipiyu (sisan eto) lati wọle si adirẹsi ti o baamu ti o n ṣe idanwo ilana lati jẹrisi iṣẹ ṣiṣe counter eto naa.
Ṣe akiyesi pe idanwo counter eto ko le ṣe idiwọ.Idanwo iforukọsilẹ counter eto le ṣee ṣe ni ẹẹkan lẹhin ti a ti tunto MCU ati paapaa lakoko akoko ṣiṣe.
- Ṣaaju ṣiṣe idanwo aabo akoko kan
– SafetyPcTest
- FS_CM33_PC_Test - Ṣiṣe ayẹwo igbakọọkan aabo
– SafetyIsrFunction> SafetyPcTest
- FS_CM33_PC_Test
4.4 Ayipada iranti igbeyewo
4.4.1 Ayipada iranti igbeyewo apejuwe
Idanwo iranti oniyipada fun awọn ẹrọ ti o ni atilẹyin sọwedowo Ramu lori-chip fun awọn aṣiṣe DC.
Agbegbe akopọ ohun elo tun le ṣe idanwo. Awọn ero March C ati Oṣu Kẹta X ni a lo bi awọn ilana iṣakoso.Awọn iṣẹ mimu naa yatọ fun idanwo atunto lẹhin ati fun idanwo akoko asiko.
Idanwo atunto lẹhin naa jẹ ṣiṣe nipasẹ iṣẹ FS_CM33_RAM_AfterReset (). Iṣẹ yii ni a pe ni ẹẹkan lẹhin atunto, nigbati akoko ipaniyan ko ṣe pataki. Ṣe ipamọ aaye iranti ọfẹ fun agbegbe afẹyinti. Paramita iwọn Àkọsílẹ ko le tobi ju iwọn agbegbe afẹyinti lọ. Iṣẹ naa kọkọ ṣayẹwo agbegbe afẹyinti, lẹhinna lupu bẹrẹ. Awọn bulọọki iranti jẹ daakọ si agbegbe afẹyinti ati pe awọn ipo wọn jẹ ayẹwo nipasẹ idanwo Oṣu Kẹta. Data naa ti daakọ pada si agbegbe iranti atilẹba ati pe adirẹsi gangan pẹlu iwọn bulọki ti ni imudojuiwọn. Eyi tun ṣe titi di igba ti a ti danwo idinaki iranti ti o kẹhin. Ti o ba ti ri aṣiṣe DC kan, iṣẹ naa da apẹrẹ ikuna pada.
Idanwo akoko ṣiṣe jẹ ṣiṣe nipasẹ iṣẹ FS_CM33_RAM_Runtime (). Lati fi akoko pamọ, o ṣe idanwo apa kan (ti a ṣalaye nipasẹ RAM_TEST_BLOCK_SIZE) ti SRAM ni akoko. Lakoko ti idanwo atunto-lẹhin ṣayẹwo gbogbo bulọọki ti aaye Ramu ti o ni ibatan ailewu. Ni LPC553x ailewu ìkàwé example ise agbese, RAM_TEST_BLOCK_SIZE ti wa ni tunto si 0x4, o tumo si wipe 32 baiti ti Ramu yoo wa ni idanwo ni ọkan asiko isise Ramu igbeyewo baraku.
- Ṣaaju ṣiṣe idanwo aabo akoko kan
– SafetyRamAfterResetTest /* Ṣe idanwo gbogbo aaye Ramu ti apakan “.safety_ram” ṣaaju ṣiṣe ilana iṣe akọkọ. */
– FS_CM33_RAM_AfterReset - Ṣiṣe ayẹwo igbakọọkan aabo
– SafetyIsrFunction (&g_sSafetyCommon, &g_sSafetyRamTest, &g_sSafetyRamStackTest) /* ti a ṣe ni Systick ISR, ko le ṣe idiwọ */
– FS_CM33_RAM_Runtime
4.4.2 Ayípadà iranti igbeyewo iṣeto ni
Iṣeto ni ti awọn ayípadà iranti igbeyewo ni :Awọn iṣeto ni ti aabo Ramu Àkọsílẹ jẹ ninu :
setumo Àkọsílẹ SAFETY_RAM_BLOCK pẹlu titete = 8
{apakan .safety_ram};
ibi ni RAM_region {dina SAFETY_RAM_BLOCK};
Ṣe akiyesi pe .safety_ram nikan ni o ni aabo nipasẹ idanwo iranti oniyipada. Ṣafikun awọn oniyipada sinu apakan .safety_ram pẹlu ọwọ, bi a ṣe han ni isalẹ ni main.c.4.5 Ailopin iranti igbeyewo
4.5.1 Ailopin iranti igbeyewo apejuwe
Iranti aiṣedeede lori LPC5536 MCU jẹ filaṣi ori-ërún. Ilana ti idanwo iranti ailopin ni lati ṣayẹwo boya iyipada wa ninu akoonu iranti lakoko ṣiṣe ohun elo. Orisirisi awọn ọna checksum le ṣee lo fun idi eyi. Checksum jẹ algorithm kan ti o ṣe iṣiro ibuwọlu ti data ti a gbe sinu iranti idanwo. Ibuwọlu ti bulọọki iranti yii jẹ iṣiro lorekore ati ṣe afiwe pẹlu ibuwọlu atilẹba.
Ibuwọlu fun iranti ti a yàn jẹ iṣiro ni ipo asopọ ti ohun elo kan. Ibuwọlu gbọdọ wa ni fipamọ sinu iranti aiyipada, ṣugbọn ni agbegbe ti o yatọ ju eyiti a ṣe iṣiro checksum fun. Ni akoko ṣiṣe ati lẹhin atunto, alugoridimu kanna gbọdọ wa ni imuse ninu ohun elo lati ṣe iṣiro checksum. Awọn esi ti wa ni akawe. Ti wọn ko ba dọgba, ipo aṣiṣe aabo kan waye.
Nigbati imuse lẹhin atunto tabi nigbati ko ba si ihamọ lori akoko ipaniyan, ipe iṣẹ le jẹ bi atẹle.
Ṣaaju ṣiṣe idanwo aabo akoko kan
– SafetyFlashAfterResetTest
- FS_FLASH_C_HW16_K /* ṣe iṣiro CRC ti gbogbo Flash */
Ni akoko ṣiṣe ohun elo ati pẹlu akoko to lopin fun ipaniyan, a ṣe iṣiro CRC ni ọkọọkan. O tumọ si pe awọn paramita igbewọle ni awọn itumọ oriṣiriṣi ni lafiwe pẹlu pipe lẹhin atunto. Awọn imuse example jẹ bi wọnyi:
Idanwo aabo igbakọọkan
- Idanwo SafetyFlashRuntime
- FS_FLASH_C_HW16_K /* ṣe iṣiro Àkọsílẹ CRC nipasẹ Àkọsílẹ */
- SafetyFlashTestHandling /* ṣe afiwe CRC nigbati gbogbo awọn bulọọki Flash ṣe iṣiro. */
4.5.2 Ailopin iranti igbeyewo iṣeto ni
Ni LPC553x ailewu ìkàwé example ise agbese, filasi ipin ti han ni isalẹ bi pato ninu awọn Linker file . Nkan na files ati ti wa ni gbe ni aabo filasi Àkọsílẹ eyi ti o ti wa ni ẹnikeji nipasẹ awọn ailyipada iranti igbeyewo. O le fi nkan diẹ sii files sinu SAFETY_FLASH_BLOCK Flash agbegbe nipa iyipada Linker file ni ibamu.Awọn ayẹwo ayẹwo meji lo wa lati ṣe afiwe lakoko akoko asiko MCU lati rii daju boya akoonu ti aaye filasi ti a fun ni ti yipada:
- Checksum ṣe iṣiro nipasẹ Linker ni Compiling/Sisopọ
- Checksum ṣe iṣiro nipasẹ MCU ni akoko ṣiṣe
Itumọ ipo lati gbe abajade checksum (iṣiro-tẹlẹ nipasẹ awọn irinṣẹ ọna asopọ) wa ninu :
setumo aami __FlashCRC_start__ = 0x0300; /* fun gbigbe kan checksum */
setumo aami __FlashCRC_end__ = 0x030F; /* fun gbigbe kan checksum */
setumo agbegbe CRC_region = mem: [lati __FlashCRC_start__ si __FlashCRC_end__];
setumo Àkọsílẹ CHECKSUM pẹlu titete = 8 {apakan. checksum}; ibi ni CRC_region {dina CHECKSUM};
Mu IAR IDE, fun example, ninu eto aṣayan iṣẹ akanṣe> Kọ Awọn iṣe> Laini aṣẹ lẹhin-Kọ.Laini aṣẹ:
ielftool –fill 0xFF;c_checksumStart-c_checksumIpari+3 –checksum __checksum:2,crc16,0x0;c_checksumStart-c_checksumEnd+3 –verbose “$TARGET_PATH$”“$TARGET_PATH$”
Asopọmọra naa ṣe iṣiro ayẹwo ayẹwo atilẹba ti filasi adirẹsi lati _checksumStart si c_checksumEnd, lẹhinna gbe abajade checksum sinu _checksum, eyiti o wa ni Àkọsílẹ CHECKSUM asọye nipasẹ Linker file.
Itumọ aaye filasi pàtó kan lati ṣayẹwo wa ninu :
setumo Àkọsílẹ SAFETY_FLASH_BLOCK pẹlu titete = 8, ti o wa titi aṣẹ {ka nikan apakan checksum_start_mark, apakan .text object main.o, apakan .text object safe_cm33_lpc.o, apakan .rodata object safe_cm33_lpc.o, readonly section checksum_end_mark};
ibi ni ROM_region {dina SAFETY_FLASH_BLOCK};
4.6 akopọ igbeyewo
4.6.1 Stack igbeyewo apejuwe
Idanwo akopọ jẹ idanwo afikun, kii ṣe pato taara ninu tabili IEC60730 Annex H.
Ilana idanwo yii ni a lo lati ṣe idanwo aponsedanu ati awọn ipo abẹlẹ ti akopọ ohun elo. Idanwo awọn aṣiṣe di-ni awọn ašiše ni agbegbe iranti ti o tẹdo nipasẹ akopọ ni aabo nipasẹ idanwo iranti oniyipada. Aponsedanu tabi ṣiṣan ti akopọ le waye ti akopọ naa ba jẹ iṣakoso ti ko tọ tabi nipa asọye agbegbe akopọ “kekere ju” fun ohun elo ti a fun.
Ilana ti idanwo naa ni lati kun agbegbe ni isalẹ ati loke akopọ pẹlu ilana ti a mọ. Awọn agbegbe wọnyi gbọdọ wa ni asọye ni iṣeto ọna asopọ file, pọ pẹlu akopọ. Iṣẹ ipilẹṣẹ lẹhinna kun awọn agbegbe wọnyi pẹlu apẹrẹ rẹ. Apẹrẹ gbọdọ ni iye ti ko han ni ibomiiran ninu ohun elo naa. Idi ni lati ṣayẹwo boya apẹrẹ gangan ni a tun kọ ni awọn agbegbe wọnyi. Ti kii ba ṣe bẹ, o jẹ ami ti ihuwasi akopọ ti ko tọ. Ti eyi ba waye, lẹhinna iye ipadabọ FAIL lati iṣẹ idanwo gbọdọ wa ni ilọsiwaju bi aṣiṣe ailewu.Idanwo naa ni a ṣe lẹhin atunto ati lakoko akoko ṣiṣe ohun elo ni ọna kanna.
- Ṣaaju ṣiṣe idanwo aabo akoko kan
– SafetyStackTestInit
- FS_CM33_STACK_Init /* kọ STACK_TEST_PATTERN (0x77777777) si STACK_TEST_BLOCK */
– SafetyStackTest
- FS_CM33_STACK_Test /* ṣayẹwo awọn akoonu ti STACK_TEST_BLOCK, kuna ti iye ko ba dọgba si STACK_TEST_PATTERN (0x77777777). - Ṣiṣe ayẹwo igbakọọkan aabo
– SafetyStackTest
- FS_CM33_STACK_Init /* kọ STACK_TEST_PATTERN (0x77777777) si STACK_TEST_BLOCK */
– SafetyStackTest
- FS_CM33_STACK_Test /* ṣayẹwo awọn akoonu ti STACK_TEST_BLOCK, kuna ti iye ko ba dọgba si STACK_TEST_PATTERN (0x77777777)
4.6.2 Stack igbeyewo iṣeto ni
Iṣeto ni igbeyewo akopọ wa ninu ati alasopọ file 4.7 Aago igbeyewo
4.7.1 Aago igbeyewo apejuwe
Ilana idanwo aago da lori lafiwe ti awọn orisun aago ominira meji.
Ni LPC553x ailewu ìkàwé example ise agbese, CTIMER0 ati Systick on MCU LPC5536 wa ni lo bi meji ominira aago fun aabo aago igbeyewo, won ko da lori LPC5536-EVK hardware ọkọ.
Ilana idanwo aago naa jẹ ṣiṣe ni idanwo aabo igbakọọkan nikan.
- Ṣaaju ṣiṣe idanwo aabo akoko kan
– Ko si aago igbeyewo - Ṣiṣe ayẹwo igbakọọkan aabo
– SafetyClockTestCheck
– SafetyClockTestIsr
4.7.2 Aago igbeyewo iṣeto ni
Bi awọn aago ominira meji ti nilo fun idanwo aago ni ile-ikawe aabo LPC553x example ise agbese:
- Aago SYSTICK ti wa lati PLL0 150 M (orisun lati ita 16 MHz gara)
- Aago CTIMER0 wa lati inu FRO_96M
Awọn atunto alaye ti Systick ati CTIMER0 ti han ni isalẹ:
- Atunto Systick: SystickISR_Freq = 1000 Hz, nipa tito iye atungbejade 150,000 labẹ aago koko 150 MHz
- atunto CTIMER: CTIMER_Freq = 96 MHz, ti o jade lati aago 96 MHz FRO_96M
- Onka CTIMER ti a nireti yẹ ki o jẹ CTIMER _Freq/SystickISR_Freq = 96 MHz / 1000 = 96,000
- Ni kọọkan Systick idalọwọduro ISR, fi CTIMER counter iye
- Ni akoko ṣiṣe lakoko (1) loop, ṣayẹwo: (96,000 – 20%) <CTIMER reti counter <(96,000 + 20%)
Iṣeto ni idanwo aago wa ni Safety_config.h.
Gẹgẹbi ohun elo gangan, o le yi apẹẹrẹ CTIMER pada fun idanwo aago aabo nipasẹ atunto Makiro REF_TIMER_USED. Paapaa, o gbọdọ tunto REF_TIMER_CLOCK_FREQUENCY ni ibamu si igbohunsafẹfẹ aago gangan. 4.8 Digital Mo / O igbeyewo
4.8.1 Digital ni mo / Eyin igbeyewo apejuwe
Ni LPC553x ailewu ìkàwé example ise agbese, GPIO P1_4 ati P1_17 on LPC5536-EVK ti wa ni ti a ti yan fun aabo oni ni mo / Eyin igbeyewo, wọnyi meji pinni ti sopọ si J10 akọsori on LPC553x EVK ọkọ.
Awọn ọna ṣiṣe idanwo I/O oni-nọmba ti pin si awọn ilana akọkọ meji: ṣaju iṣaju idanwo aabo akoko kan ati idanwo ailewu akoko asiko
- Ṣaaju ṣiṣe idanwo aabo akoko kan
– SafetyDigitalOutputTest
– SafetyDigitalInputOutput_ShortSupplyTest
– SafetyDigitalInputOutput_ShortAdjTest - Ṣiṣe ayẹwo igbakọọkan aabo
– SafetyDigitalOutputTest
– SafetyDigitalInputOutput_ShortSupplyTest
4.8.2 Digital ni mo / Eyin igbeyewo iṣeto ni
Iṣeto ni idanwo I/O oni-nọmba wa ni safe_test_items.c.Ipaniyan ti awọn idanwo I/O oni-nọmba gbọdọ ni ibamu si ohun elo ikẹhin. Ṣọra pẹlu awọn asopọ hardware ati apẹrẹ. O le yi GPIO pada fun aabo
idanwo I/O oni-nọmba nipasẹ atunto dio_safety_test_items [] ni safe_test_items.c. Ni ọpọlọpọ awọn ọran, PIN ti o ni idanwo (ati nigba miiran tun oluranlọwọ) gbọdọ tunto lakoko ṣiṣe ohun elo. A ṣe iṣeduro lati lo awọn pinni ti ko lo fun idanwo I/O oni-nọmba.
4.9 Afọwọṣe Mo / O igbeyewo
4.9.1 Analog ti mo ti / O igbeyewo apejuwe
Ni LPC553x ailewu ìkàwé example ise agbese, P0_16/ADC0IN3B, P0_31/ADC0IN8A, ati P0_15/ADC0IN3A on LPC5536-EVK ti wa ni ti a ti yan fun aabo afọwọṣe I / O igbeyewo, nitori ADC module on MCU LPC5536 ko gba laaye lati so VREFH, VREFL fipa si ADC. igbewọle. O jẹ dandan fun olumulo lati so awọn ifihan agbara wọnyi pọ (fun idanwo I/O afọwọṣe) pẹlu awọn okun onirin bi o ti han ni isalẹ.
- GND ti sopọ mọ P0_16/ADC0IN3B (J9-5) fun Idanwo ADC VREFL
- 3.3 V ti sopọ si P0_31/ADC0IN8A (J9-31) fun Idanwo ADC VREFH
- 1.65 V ti sopọ si P0_15/ADC0IN3A (J9-1) fun Idanwo ADC Bandgap
Awọn ilana idanwo I/O analog ti pin si awọn ilana akọkọ meji:
- Ṣaaju ṣiṣe idanwo aabo akoko kan
– SafetyAnalogTest - Ṣiṣe ayẹwo igbakọọkan aabo
– SafetyAnalogTest
4.9.2 Afọwọṣe Mo / Eyin igbeyewo iṣeto ni
Ipaniyan ti awọn idanwo I/O afọwọṣe gbọdọ wa ni ibamu si ohun elo ikẹhin. Ṣọra pẹlu awọn asopọ hardware ati apẹrẹ. O le yi awọn ikanni ADC pada fun idanwo I/O afọwọṣe aabo nipasẹ atunto FS_CFG_AIO_CHANNELS_INIT ati
FS_CFG_AIO_CHANNELS_SIDE_INIT ni safe_config.h.
- FS_CFG_AIO_CHANNELS_INIT tọkasi nọmba ikanni ADC.
- FS_CFG_AIO_CHANNELS_SIDE_INIT tọkasi ẹgbẹ ikanni ADC.
Bi o ṣe han ninu eeya loke:
- Ohun akọkọ ni ibamu si idanwo ADC VREFL
- Abala keji ni ibamu pẹlu idanwo ADC VREFH
- Ẹka kẹta ni ibamu pẹlu idanwo ADC Bandgap
Fun example, "3" ni FS_CFG_AIO_CHANNELS_INIT ati "1" ni
FS_CFG_AIO_CHANNELS_SIDE_INIT tọkasi pe ikanni ADC0 3 ẹgbẹ B ti yan fun idanwo ADC VREFL.
4.10 Watchdog igbeyewo
4.10.1 Watchdog igbeyewo apejuwe
Idanwo oluṣọ ko ni pato taara ni tabili IEC60730 - annex H, sibẹsibẹ, apakan kan mu awọn ibeere aabo ni ibamu si IEC 60730-1, IEC 60335, UL 60730, ati awọn iṣedede UL 1998.
Idanwo oluṣọ n pese idanwo ti iṣẹ ṣiṣe aago aago. Idanwo naa ti ṣiṣẹ ni ẹẹkan lẹhin atunto. Idanwo naa fa atunto WDOG ati ṣe afiwe akoko tito tẹlẹ fun atunto WDOG si akoko gidi.Ni LPC553x ailewu ìkàwé exampFun iṣẹ akanṣe, a ṣe idanwo oluṣọ nipa lilo awọn igbesẹ wọnyi:
- Lẹhin ti atunto, mu oluṣọ ṣiṣẹ ki o da isunmi duro lori idi lati ṣe okunfa atunto MCU ajafitafita.
- Mu CTIMER0 ṣiṣẹ lati wiwọn bi o ṣe pẹ to fun akoko aago oluṣọ ati tunto.
- Lẹhin atunto ajafitafita, jẹrisi pe atunto yii waye nipasẹ oluṣọ nipasẹ ṣiṣe ayẹwo iforukọsilẹ PMC-> AOREG1.
- Ka CTIMER0 lati gba akoko deede ti akoko aago ajafitafita ati tunto.
Àtúnyẹwò itan
Tabili ti o wa ni isalẹ ṣe akopọ awọn atunyẹwo si iwe-ipamọ yii.
Table 3. Àtúnyẹwò itan
Nọmba atunṣe | Ọjọ | Awọn iyipada pataki |
0 | 4-Jan-23 | Itusilẹ gbangba akọkọ |
Alaye ofin
6.1 Awọn asọye
Akọpamọ - Ipo yiyan lori iwe kan tọkasi pe akoonu naa tun wa labẹ atunlo inuview ati ki o koko ọrọ si lodo alakosile, eyi ti o le ja si ni awọn iyipada tabi awọn afikun. NXP Semiconductors ko fun eyikeyi awọn aṣoju tabi awọn atilẹyin ọja bi deede tabi pipe alaye ti o wa ninu ẹya iyaworan ti iwe kan ati pe ko ni layabiliti fun awọn abajade ti lilo iru alaye.
6.2 Awọn AlAIgBA
Atilẹyin ọja to lopin ati layabiliti - Alaye ti o wa ninu iwe yii jẹ deede ati igbẹkẹle. Sibẹsibẹ, NXP Semiconductors ko fun eyikeyi awọn aṣoju tabi awọn atilẹyin ọja, ti a fihan tabi mimọ, nipa deede tabi pipe iru alaye ati pe kii yoo ni layabiliti fun awọn abajade ti lilo iru alaye. NXP Semiconductors ko gba ojuse fun akoonu inu iwe yii ti o ba pese nipasẹ orisun alaye ni ita ti NXP Semiconductors.
Ko si iṣẹlẹ ti NXP Semiconductors yoo ṣe oniduro fun eyikeyi aiṣe-taara, isẹlẹ, ijiya, pataki tabi awọn bibajẹ ti o wulo (pẹlu – laisi aropin awọn ere ti o padanu, awọn ifowopamọ ti o sọnu, idalọwọduro iṣowo, awọn idiyele ti o ni ibatan si yiyọkuro tabi rirọpo awọn ọja eyikeyi tabi awọn idiyele atunṣe) boya tabi Kii ṣe iru awọn bibajẹ bẹ da lori ijiya (pẹlu aifiyesi), atilẹyin ọja, irufin adehun tabi ilana ofin eyikeyi miiran.
Laibikita eyikeyi awọn ibajẹ ti alabara le fa fun eyikeyi idi eyikeyi, apapọ NXP Semiconductor ati layabiliti akopọ si alabara fun awọn ọja ti a ṣalaye ninu rẹ yoo ni opin ni ibamu pẹlu Awọn ofin ati ipo ti titaja iṣowo ti NXP Semiconductor.
Ọtun lati ṣe awọn ayipada - NXP Semiconductors ni ẹtọ lati ṣe awọn ayipada si alaye ti a tẹjade ninu iwe yii, pẹlu laisi awọn pato aropin ati awọn apejuwe ọja, nigbakugba ati laisi akiyesi. Iwe yi rọpo ati rọpo gbogbo alaye ti a pese ṣaaju ki o to tẹjade nibi.
Imudara fun lilo Awọn ọja Semiconductor NXP ko ṣe apẹrẹ, ni aṣẹ tabi atilẹyin ọja lati dara fun lilo ninu atilẹyin igbesi aye, pataki-aye tabi awọn eto aabo-pataki tabi ohun elo, tabi ni awọn ohun elo nibiti ikuna tabi aiṣedeede ti ọja NXP Semiconductor ọja le ni idi yẹ lati ja si ipalara ti ara ẹni, iku tabi ohun-ini nla tabi ibajẹ ayika. NXP Semiconductors ati awọn olupese rẹ ko gba layabiliti fun ifisi ati/tabi lilo awọn ọja Semiconductor NXP ni iru ẹrọ tabi awọn ohun elo ati nitorinaa iru ifisi ati/tabi lilo wa ni eewu alabara.
Awọn ohun elo - Awọn ohun elo ti o ṣapejuwe ninu rẹ fun eyikeyi awọn ọja wọnyi wa fun awọn idi apejuwe nikan. NXP Semiconductors ko ṣe aṣoju tabi atilẹyin ọja pe iru awọn ohun elo yoo dara fun lilo pàtó laisi idanwo siwaju tabi iyipada. Awọn alabara ni iduro fun apẹrẹ ati iṣẹ awọn ohun elo wọn ati awọn ọja nipa lilo awọn ọja Semiconductor NXP, ati NXP Semiconductor ko gba layabiliti fun eyikeyi iranlọwọ pẹlu awọn ohun elo tabi apẹrẹ ọja alabara. O jẹ ojuṣe alabara nikan lati pinnu boya ọja Semiconductor NXP dara ati pe o yẹ fun awọn ohun elo alabara ati awọn ọja ti a gbero, bakanna fun ohun elo ti a gbero ati lilo ti alabara ẹgbẹ kẹta ti alabara. Awọn alabara yẹ ki o pese apẹrẹ ti o yẹ ati awọn aabo iṣẹ lati dinku awọn eewu naa
ni nkan ṣe pẹlu awọn ohun elo wọn ati awọn ọja. NXP Semiconductors ko gba eyikeyi layabiliti ti o ni ibatan si eyikeyi aiyipada, ibajẹ, awọn idiyele tabi iṣoro eyiti o da lori eyikeyi ailera tabi aiyipada ninu awọn ohun elo alabara tabi awọn ọja, tabi ohun elo tabi lilo nipasẹ awọn alabara ẹgbẹ kẹta ti alabara. Onibara jẹ iduro fun ṣiṣe gbogbo awọn idanwo pataki fun awọn ohun elo alabara ati awọn ọja ni lilo awọn ọja Semiconductor NXP lati yago fun aiyipada awọn ohun elo ati awọn ọja tabi ohun elo tabi lilo nipasẹ alabara ẹgbẹ kẹta ti alabara. NXP ko gba gbese eyikeyi ni ọwọ yii.
Ofin ati ipo ti owo tita Awọn ọja Semiconductor NXP ni a ta labẹ awọn ofin gbogbogbo ati awọn ipo ti titaja iṣowo, bi a ti tẹjade ni http://www.nxp.com/profile/terms, ayafi ti bibẹkọ ti gba ni a wulo kọ olukuluku adehun. Ni ọran ti adehun ẹni kọọkan ba pari awọn ofin ati ipo ti adehun oniwun yoo lo. NXP Semikondokito nipa bayi ni awọn nkan taara si lilo awọn ofin gbogbogbo ti alabara pẹlu iyi si rira awọn ọja Semiconductor NXP nipasẹ alabara.
Iṣakoso okeere - Iwe-ipamọ yii ati awọn nkan (awọn) ti a ṣalaye ninu rẹ le jẹ koko-ọrọ si awọn ilana iṣakoso okeere. Si ilẹ okeere le nilo aṣẹ ṣaaju lati ọdọ awọn alaṣẹ to peye.
Ibamu fun lilo ninu awọn ọja ti ko ni oye ọkọ ayọkẹlẹ - Ayafi ti iwe data yii ba sọ ni gbangba pe ọja NXP Semiconductor pato yii jẹ oṣiṣẹ adaṣe, ọja naa ko dara fun lilo adaṣe. Ko jẹ oṣiṣẹ tabi idanwo ni ibamu pẹlu idanwo adaṣe tabi awọn ibeere ohun elo. NXP Semiconductors gba ko si gbese fun ifisi ati/tabi lilo awọn ọja ti kii ṣe adaṣe ni ohun elo adaṣe tabi awọn ohun elo.
Ni iṣẹlẹ ti alabara nlo ọja naa fun apẹrẹ-inu ati lilo ninu awọn ohun elo adaṣe si awọn pato adaṣe ati awọn iṣedede, alabara (a) yoo lo ọja laisi atilẹyin ọja Semiconductor NXP fun iru awọn ohun elo adaṣe, lilo ati awọn pato, ati ( b) nigbakugba ti alabara ba lo ọja naa fun awọn ohun elo ọkọ ayọkẹlẹ ti o kọja awọn pato NXP Semiconductors iru lilo yoo jẹ nikan ni eewu ti ara alabara, ati (c) alabara ni kikun ṣe idalẹbi awọn Semiconductor NXP fun eyikeyi layabiliti, awọn ibajẹ tabi awọn ẹtọ ọja ti o kuna ti o waye lati apẹrẹ alabara ati lilo ti ọja fun awọn ohun elo adaṣe kọja atilẹyin ọja boṣewa NXP Semiconductor ati awọn pato ọja NXP Semiconductor.
Awọn itumọ - Ẹya ti kii ṣe Gẹẹsi (tumọ) ti iwe kan, pẹlu alaye ofin ninu iwe yẹn, jẹ fun itọkasi nikan. Ẹ̀yà Gẹ̀ẹ́sì náà yóò gbilẹ̀ ní irú ìyàtọ̀ èyíkéyìí láàárín àwọn ìtúmọ̀ àti èdè Gẹ̀ẹ́sì.
Aabo - Onibara loye pe gbogbo awọn ọja NXP le jẹ koko ọrọ si awọn ailagbara ti a ko mọ tabi o le ṣe atilẹyin awọn iṣedede aabo ti iṣeto tabi awọn pato pẹlu awọn idiwọn ti a mọ. Onibara jẹ iduro fun apẹrẹ ati iṣẹ ti awọn ohun elo ati awọn ọja jakejado awọn igbesi aye wọn lati dinku ipa ti awọn ailagbara wọnyi lori awọn ohun elo alabara ati awọn ọja. Ojuse alabara tun gbooro si ṣiṣi miiran ati/tabi awọn imọ-ẹrọ ohun-ini ni atilẹyin nipasẹ awọn ọja NXP fun lilo ninu awọn ohun elo alabara. NXP ko gba gbese fun eyikeyi ailagbara. Onibara yẹ ki o ṣayẹwo awọn imudojuiwọn aabo nigbagbogbo lati NXP ati tẹle ni deede.
Onibara yoo yan awọn ọja pẹlu awọn ẹya aabo ti o dara julọ pade awọn ofin, awọn ilana, ati awọn iṣedede ti ohun elo ti a pinnu ati ṣe awọn ipinnu apẹrẹ ti o ga julọ nipa awọn ọja rẹ ati pe o jẹ iduro nikan fun ibamu pẹlu gbogbo ofin, ilana, ati awọn ibeere ti o ni ibatan aabo nipa awọn ọja rẹ, laibikita awọn ọja rẹ. eyikeyi alaye tabi atilẹyin ti o le wa nipasẹ NXP.
NXP ni Ẹgbẹ Idahun Iṣẹlẹ Aabo Aabo (PSIRT) (ti o le de ọdọ ni PSIRT@nxp.com) ti o ṣakoso iwadii, ijabọ, ati itusilẹ ojutu si awọn ailagbara aabo ti awọn ọja NXP.
6.3 Awọn aami-iṣowo
Akiyesi: Gbogbo awọn ami iyasọtọ ti a tọka si, awọn orukọ ọja, awọn orukọ iṣẹ, ati aami-iṣowo jẹ ohun-ini ti awọn oniwun wọn.
NXP — aami-ọrọ ati aami jẹ aami-iṣowo ti NXP BV
AMBA, Arm, Arm7, Arm7TDMI, Arm9, Arm11, Artisan, big.LITTLE, Cordio, CoreLink, CoreSight, Cortex, DesignStart, DynamIQ, Jazelle, Keil, Mali, Mbed, Mbed Enabled, NEON, POP, RealView, SecurCore, Socrates, Thumb, TrustZone, ULINK, ULINK2, ULINK-ME, ULINK-PLUS, ULINKpro, μVision, Wapọ - jẹ aami-iṣowo tabi aami-iṣowo ti a forukọsilẹ ti Arm Limited (tabi awọn ẹka rẹ) ni AMẸRIKA ati/tabi ibomiiran. Imọ-ẹrọ ti o ni ibatan le ni aabo nipasẹ eyikeyi tabi gbogbo awọn itọsi, awọn aṣẹ lori ara, awọn apẹrẹ ati awọn aṣiri iṣowo. Gbogbo awọn ẹtọ wa ni ipamọ.
Jọwọ ṣe akiyesi pe awọn akiyesi pataki nipa iwe-ipamọ yii ati ọja (awọn) ti a ṣalaye ninu rẹ, ti wa ninu apakan 'Alaye ofin'.
© 2023 NXP BV
Fun alaye diẹ sii, jọwọ ṣabẹwo: http://www.nxp.com
Gbogbo awọn ẹtọ wa ni ipamọ.
Ọjọ idasilẹ: Oṣu Kini Ọjọ 4, Ọdun 2023
Idanimọ iwe: AN13823
Awọn iwe aṣẹ / Awọn orisun
![]() |
NXP AN13823 IEC 60730 Kilasi B sọfitiwia fun LPC553x MCUs [pdf] Itọsọna olumulo AN13823 IEC 60730 Kilasi B Software fun LPC553x MCUs, AN13823, IEC 60730 Kilasi B Software fun LPC553x MCUs, AN13823 IEC 60730 Kilasi B Software |