AN13823 IEC 60730 programska oprema razreda B za mikrokontrolerje LPC553x
Uporabniški priročnik
AN13823 IEC 60730 programska oprema razreda B za mikrokontrolerje LPC553x
Rev. 0 – 4. januar 2023
Opomba o aplikaciji
Informacije o dokumentu
Informacije | Vsebina |
Ključne besede | LPC553x, AN13823, IEC 60730, LPC5536-EVK, IEC60730B |
Povzetek | Glavni namen te opombe o aplikaciji je pospešiti razvoj programske opreme za stranke in postopke certificiranja za izdelke, ki temeljijo na LPC553x MCU. |
Uvod
Varnostni standard IEC 60730 opredeljuje testne in diagnostične metode, ki zagotavljajo varno delovanje vgrajene krmilne strojne in programske opreme za gospodinjske aparate.
Da bi dosegli funkcionalno varnost, je treba odstraniti vsa tveganja nevarnosti, ki jih lahko povzroči okvara sistema.
Standard IEC 60730 razvršča uporabno opremo v tri kategorije:
- Razred A: Ni namenjeno zanašanju na varnost opreme
- Razred B: Za preprečevanje nevarnega delovanja nadzorovane opreme
- Razred C: Za preprečevanje posebnih nevarnosti
NXP ponuja knjižnico varnostnega razreda B IEC 60730, ki proizvajalcem avtomatskih krmilnikov na trgu velikih naprav pomaga izpolniti predpis IEC 60730 razreda B. Knjižnica podpira IAR, Keil in MCUXpresso IDE.
Binarno varnostno knjižnico NXP lahko integrirate v svojo aplikacijsko programsko opremo. Za lažji razvoj aplikacije IEC60730B knjižnica ponuja tudi eksample projekt. Ta bivšiample se distribuira prek IEC 60730 Varnostni standard za gospodinjske aparate on nxp.com webmesto.Glavni namen te opombe o aplikaciji je pospešiti razvoj programske opreme za stranke in postopke certificiranja za izdelke, ki temeljijo na LPC553x MCU.
Knjižnica NXP IEC 60730 razreda B končanaview
Varnostna knjižnica vključuje samopreizkuse delov, odvisnih od jedra, in delov, odvisnih od periferije, kot je navedeno spodaj:
- Od jedra odvisen del
– Test registrov procesorja
– Test programskega števca procesorja
– Test variabilnega spomina
– Test nespremenljivega spomina
– Stack test - Periferno odvisen del
– Preizkus ure
– Digitalni vhodno/izhodni test
– Test analognega vhoda/izhoda
– Watchdog test
Tabela 1. Skladnost s standardi IEC 60730 razreda B
NXP IEC 60730 knjižnica razreda B | IEC 60730 | ||
komponento | Metoda | Predmeti | Uporabljeno |
CPE registri | Testni postopek registra CPE preizkusi vse registre CPE CM33 glede stanja obtičanja. | 1.1 Registracija | H.2.16.6 |
Programski števec | Postopek testiranja števca programov CPE preizkusi register števca programov CPE glede stanja zastoja. Test registra programskega števca se lahko izvede enkrat po ponastavitvi MCU in tudi med izvajanjem. Prisilite CPE (programski tok), da dostopa do ustreznega naslova, ki preizkuša vzorec, da preveri funkcionalnost programskega števca. |
1.3 Programski števec | H.2.16.6 |
Ura | Postopek testiranja ure testira oscilatorje procesorja za napačno frekvenco. Načelo preizkusa ure temelji na primerjavi dveh neodvisnih virov ure. Če testna rutina zazna spremembo frekvenčnega razmerja med viri ure, se vrne koda napake pri napaki. | 3.Ura | NA |
Nespremenljiv spomin | Preskus nespremenljivega pomnilnika je namenjen preverjanju, ali je med izvajanjem aplikacije prišlo do spremembe v vsebini pomnilnika (on-chip Flash). Več metod kontrolne vsote (nprample, CRC16) lahko uporabite za ta namen. | 4.1 Nespremenljiv spomin |
H.2.19.3.1 |
Test spremenljivega spomina | Preveri RAM na čipu za napake enosmernega toka. Shemi March C in March X se uporabljata kot nadzorna mehanizma. | 4.2 Spremenljivi pomnilnik | H.2.19.6 |
Digitalno vhodno/izhodni test |
Preizkusne funkcije DIO so zasnovane za preverjanje delovanja digitalnega vhoda in izhoda ter pogojev kratkega stika med testiranim zatičem in napajalno napetostjo.tage, ozemljitev ali izbirni sosednji zatič. | 7.1 Digitalni V/I | H.2.18.13 |
Test analognega vhoda/izhoda (I/0). | Test preveri analogni vhodni vmesnik in tri referenčne vrednosti: referenčno visoko, referenčno nizko in pasovno vrzeltage. Test analognega vhoda temelji na pretvorbi treh analognih vhodov z znano voltage vrednosti in preveri, ali se pretvorjene vrednosti ujemajo z določenimi mejami. Običajno morajo biti meje približno 10 % okrog želenih referenčnih vrednosti. | 7.2 Analogni V/I | H.2.18.13 |
NXP IEC 60730 knjižnica razreda B example projekt
Za lažji razvoj aplikacije IEC60730B knjižnica ponuja exampogrodje projekta, zgrajeno na namenski ocenjevalni plošči LPC553x Prijavite se na NXP.com | Polprevodniki NXP (LPC5536-EVK). Konfigurirati morate pravilne nastavitve knjižnice za dejanski projekt.3.1 Integracija varnostne knjižnice v uporabniško aplikacijo
Varnostni exampRutine projekta so razdeljene na dva glavna procesa: enkratni varnostni preizkus pred izvajanjem in občasni varnostni test med izvajanjem.
Naslednja slika prikazuje postopke varnostnega testiranja.Za integracijo varnostne knjižnice NXP izvedite naslednje korake:
- Prenesite varnostni example projekt z nxp.com
- Nastavitev strojne opreme ob upoštevanju perifernih naprav, uporabljenih za varnostni samotest
- Konfigurirajte varnostno knjižnico glede na dejansko zasnovo strojne opreme
- Funkcije varnostnega preizkusa eno za drugo vklopite v safety_config.h
• Za odpravljanje napak je bolje, da najprej IZKLOPITE preizkus bliskavice in čuvaja
• Pazite na prekinitve, saj nekaterih varnostnih testov ni mogoče prekiniti - Razvijte aplikacijsko kodo na podlagi varnostnega primeraampokvir projekta
Varnostna knjižnica LPC553x exampprojekt v praksi
4.1 Blok diagram strojne opreme
Naslednji moduli se privzeto uporabljajo za varnostni samotest, kot je prikazano na spodnji sliki:Tabela 2. Modul MCU za varnostni samotest
Preskusni element varnostne knjižnice | MCU modul |
CPE test | Jedro LPC5536 CM33 |
Test ure | Systick CTIMER0 |
Watchdog test | pes čuvaj CTIMER0 |
Test spremenljivega spomina | SRAM |
Test nespremenljivega spomina | Flash |
Digitalni V/I test | GPIO1 |
Test analognega V/I | ADC0 |
4.2 Test procesorja
4.2.1 Opis preizkusa registrov CPE
Postopek preizkusa registra CPE preizkusi vse registre CPE CM33 glede stanja stuckat (razen registra programskega števca). Preizkus programskega števca je izveden kot samostojna varnostna rutina. Ta sklop testov vključuje preizkus naslednjih registrov:
- Splošni registri:
– R0-R12 - Registri kazalcev sklada:
– MSP + MSPLIM (varno/nevarno)
– PSP + PSPLIM (varno / nezaščiteno) - Posebni registri:
– APSR
– NADZOR (varno/nevarno)
– PRIMASK (varno/nevarno)
– FAULTMASK (varno / nezaščiteno)
– BASEPRI (varno/nevarno) - Register povezav:
– LR - FPU registri:
– FPSCR
– S0 – S31
Obstaja niz testov, ki se izvedejo enkrat po ponastavitvi MCU in tudi med izvajanjem. Ponovno lahko uporabite privzete nastavitve varnostne knjižnice LPC553x, nprample projekt, vendar morate biti pozorni na prekinitev, saj nekaterih testov registra CPU ni mogoče prekiniti.
- Enkratni varnostni preizkus pred izvedbo
– SafetyCpuAfterResetTest /* Prekinitve morajo biti za nekaj časa onemogočene */
– FS_CM33_CPU_Register
– 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 - Redni varnostni preskus med delovanjem
– SafetyCpuBackgroundTest /* Test prekinljivih registrov CPU */
– FS_CM33_CPU_Register
– FS_CM33_CPU_NonStackedRegister
– FS_CM33_CPU_Control /* Prekinitve morajo biti za nekaj časa onemogočene */
– FS_CM33_CPU_SPprocess_S /* Prekinitve morajo biti za nekaj časa onemogočene */
4.3 Test programskega števca procesorja
4.3.1 Opis preizkusa števca programa CPE
Postopek testiranja registra števca programov CPE preizkusi register števca programov CPE glede stanja obtičanja. V nasprotju z drugimi registri CPU programskega števca ni mogoče enostavno zapolniti s testnim vzorcem. CPU (programski tok) je treba prisiliti v dostop do ustreznega naslova, ki preizkuša vzorec, da preveri funkcionalnost programskega števca.
Upoštevajte, da preizkusa programskega števca ni mogoče prekiniti.Test registra programskega števca se lahko izvede enkrat po ponastavitvi MCU in tudi med izvajanjem.
- Enkratni varnostni preizkus pred izvedbo
– SafetyPcTest
– FS_CM33_PC_Test - Redni varnostni preskus med delovanjem
– SafetyIsrFunction > SafetyPcTest
– FS_CM33_PC_Test
4.4 Test variabilnega spomina
4.4.1 Opis preskusa spremenljivega pomnilnika
Preizkus spremenljivega pomnilnika za podprte naprave preveri RAM na čipu za napake enosmernega toka.
Preizkusiti je mogoče tudi območje sklada aplikacij. Shemi March C in March X se uporabljata kot nadzorna mehanizma.Funkcije upravljanja so različne za preskus po ponastavitvi in za preskus med izvajanjem.
Preizkus po ponastavitvi izvede funkcija FS_CM33_RAM_AfterReset (). Ta funkcija se pokliče enkrat po ponastavitvi, ko čas izvajanja ni kritičen. Rezervirajte prosti pomnilniški prostor za območje varnostne kopije. Parameter velikosti bloka ne sme biti večji od velikosti območja varnostne kopije. Funkcija najprej preveri območje varnostne kopije, nato se začne zanka. Bloki pomnilnika se prekopirajo v območje varnostne kopije in njihove lokacije se preverijo z ustreznim marčevskim testom. Podatki se kopirajo nazaj v prvotno pomnilniško območje in dejanski naslov z velikostjo bloka se posodobi. To se ponavlja, dokler ni testiran zadnji blok pomnilnika. Če je zaznana napaka DC, funkcija vrne vzorec napake.
Preskus izvajalnega časa izvede funkcija FS_CM33_RAM_Runtime (). Da prihrani čas, pravočasno preizkusi samo en segment (definiran z RAM_TEST_BLOCK_SIZE) SRAM-a. Medtem ko preskus po ponastavitvi preveri celoten blok prostora RAM, povezanega z varnostjo. V varnostni knjižnici LPC553x nprampv projektu, je RAM_TEST_BLOCK_SIZE konfiguriran na 0x4, kar pomeni, da bo 32 bajtov RAM-a testiranih v eni preskusni rutini RAM-a med izvajanjem.
- Enkratni varnostni preizkus pred izvedbo
– SafetyRamAfterResetTest /* Preden zaženete glavno rutino, preizkusite celoten prostor RAM-a razdelka ».safety_ram«. */
– FS_CM33_RAM_AfterReset - Redni varnostni preskus med delovanjem
– SafetyIsrFunction(&g_sSafetyCommon, &g_sSafetyRamTest, &g_sSafetyRamStackTest) /* se izvaja v Systick ISR, ni ga mogoče prekiniti */
– FS_CM33_RAM_Runtime
4.4.2 Konfiguracija preskusa spremenljivega pomnilnika
Konfiguracija preskusa spremenljivega pomnilnika v :Konfiguracija varnostnega bloka RAM je vklopljena :
definirajte blok SAFETY_RAM_BLOCK z poravnavo = 8
{section .safety_ram};
mesto v RAM_regiji {block SAFETY_RAM_BLOCK};
Upoštevajte, da je test spremenljivega pomnilnika zajet samo .safety_ram. Ročno dodajte spremenljivke v razdelek .safety_ram, kot je prikazano spodaj v main.c.4.5 Test nespremenljivega spomina
4.5.1 Opis testa nespremenljivega pomnilnika
Nespremenljivi pomnilnik na LPC5536 MCU je flash na čipu. Načelo testa nespremenljivega pomnilnika je preveriti, ali je prišlo do spremembe v vsebini pomnilnika med izvajanjem aplikacije. V ta namen lahko uporabite več metod kontrolne vsote. Kontrolna vsota je algoritem, ki izračuna podpis podatkov, shranjenih v testiranem pomnilniku. Podpis tega pomnilniškega bloka se nato periodično izračuna in primerja z izvirnim podpisom.
Podpis za dodeljeni pomnilnik se izračuna v fazi povezovanja aplikacije. Podpis mora biti shranjen v nespremenljivem pomnilniku, vendar na drugem področju od tistega, za katerega se izračuna kontrolna vsota. Med izvajanjem in po ponastavitvi mora biti v aplikaciji implementiran isti algoritem za izračun kontrolne vsote. Rezultati se primerjajo. Če nista enaka, pride do stanja varnostne napake.
Če se izvede po ponastavitvi ali ko ni omejitve glede časa izvajanja, je klic funkcije lahko naslednji.
• Enkratni varnostni preizkus pred zagonom
– SafetyFlashAfterResetTest
– FS_FLASH_C_HW16_K /* izračuna CRC celotnega Flasha */
V času izvajanja aplikacije in z omejenim časom za izvajanje se CRC izračuna v zaporedju. To pomeni, da imajo vhodni parametri drugačne pomene v primerjavi s klicem po ponastavitvi. Izvedba prample je sledeče:
• Redni varnostni test med delovanjem
– SafetyFlashRuntimeTest
– FS_FLASH_C_HW16_K /* izračunaj CRC blok za blokom */
– SafetyFlashTestHandling /* primerjaj CRC, ko so izračunani vsi bloki Flash. */
4.5.2 Nespremenljiva konfiguracija preskusa pomnilnika
V varnostni knjižnici LPC553x nprample projekt, je dodelitev flash prikazana spodaj, kot je določeno v povezovalniku file . Objekt files in so postavljeni v varnostni bliskovni blok, ki se preveri s testom nespremenljivega pomnilnika. Lahko postavite več predmetov files v območje SAFETY_FLASH_BLOCK Flash tako, da spremenite povezovalnik file temu primerno.Med izvajanjem MCU je treba primerjati dve kontrolni vsoti, da se preveri, ali je bila vsebina danega prostora flash spremenjena:
- Kontrolna vsota, ki jo izračuna Linker pri prevajanju/povezovanju
- Kontrolna vsota, ki jo izračuna MCU med izvajanjem
Opredelitev lokacije za postavitev rezultata kontrolne vsote (predhodno izračunana z orodji za povezovanje) je v :
definirajte simbol __FlashCRC_start__ = 0x0300; /* za postavitev kontrolne vsote */
definirajte simbol __FlashCRC_end__ = 0x030F; /* za postavitev kontrolne vsote */
definirajte regijo CRC_region = mem: [od __FlashCRC_start__ do __FlashCRC_end__];
definirajte blok CHECKSUM s poravnavo = 8 {odsek. kontrolna vsota}; mesto v CRC_regiji { blok CHECKSUM};
Vzemite npr. IAR IDEample, v nastavitvi možnosti projekta > Dejanja gradnje > Ukazna vrstica po gradnji.Ukazna vrstica:
ielftool –fill 0xFF;c_checksumStart-c_checksumEnd+3 –kontrolna vsota __checksum:2,crc16,0x0;c_checksumStart-c_checksumEnd+3 –besedno “$TARGET_PATH$” “$TARGET_PATH$”
Povezovalnik izračuna prvotno kontrolno vsoto bliskovnega naslavljanja od _checksumStart do c_checksumEnd, nato rezultat kontrolne vsote postavi v _checksum, ki je v bloku CHECKSUM, ki ga definira povezovalnik file.
Opredelitev določenega prostora bliskovnice, ki ga je treba preveriti, je notri :
definirajte blok SAFETY_FLASH_BLOCK s poravnavo = 8, fiksni vrstni red { readonly razdelek checksum_start_mark, section .text object main.o, section .text object safety_cm33_lpc.o, section .rodata object safety_cm33_lpc.o, readonly razdelek checksum_end_mark };
mesto v ROM_regiji { block SAFETY_FLASH_BLOCK};
4.6 Stack test
4.6.1 Opis preskusa sklada
Preskus sklada je dodaten preskus, ki ni neposredno določen v tabeli IEC60730 v dodatku H.
Ta preskusna rutina se uporablja za preizkušanje pogojev prelivanja in prenizkega pretoka aplikacijskega sklada. Testiranje zataknjenih napak v pomnilniškem območju, ki ga zaseda sklad, je zajeto s testom spremenljivega pomnilnika. Do prelivanja ali premajhnega pretoka sklada lahko pride, če je sklad nepravilno nadzorovan ali če definirate »prenizko« območje sklada za dano aplikacijo.
Načelo preizkusa je zapolniti območje pod in nad kupom z znanim vzorcem. Ta področja morajo biti definirana v konfiguraciji povezovalnika file, skupaj s skladom. Funkcija inicializacije nato ta območja zapolni z vašim vzorcem. Vzorec mora imeti vrednost, ki ni prikazana drugje v aplikaciji. Namen je preveriti, ali je na teh območjih še vedno zapisan točen vzorec. Če ni, je to znak nepravilnega vedenja sklada. Če se to zgodi, je treba povratno vrednost FAIL iz testne funkcije obdelati kot varnostno napako.Test se izvede po ponastavitvi in med izvajanjem aplikacije na enak način.
- Enkratni varnostni preizkus pred izvedbo
– SafetyStackTestInit
– FS_CM33_STACK_Init /* zapiši STACK_TEST_PATTERN (0x77777777) v STACK_TEST_BLOCK */
– SafetyStackTest
– FS_CM33_STACK_Test /* preveri vsebino STACK_TEST_BLOCK, neuspešno, če vrednost ni enaka STACK_TEST_PATTERN (0x77777777). - Redni varnostni preskus med delovanjem
– SafetyStackTest
– FS_CM33_STACK_Init /* zapiši STACK_TEST_PATTERN (0x77777777) v STACK_TEST_BLOCK */
– SafetyStackTest
– FS_CM33_STACK_Test /* preveri vsebino STACK_TEST_BLOCK, ne uspe, če vrednost ni enaka STACK_TEST_PATTERN (0x77777777)
4.6.2 Konfiguracija preskusa sklada
Konfiguracija preskusa sklada je v in povezovalec file 4.7 Preizkus ure
4.7.1 Opis preskusa ure
Načelo preizkusa ure temelji na primerjavi dveh neodvisnih virov ure.
V varnostni knjižnici LPC553x nprample projekt, CTIMER0 in Systick na MCU LPC5536 se uporabljata kot dve neodvisni uri za preizkus varnostne ure, nista odvisna od plošče strojne opreme LPC5536-EVK.
Rutina preizkusa ure se izvaja samo v občasnem varnostnem preskusu med izvajanjem.
- Enkratni varnostni preizkus pred izvedbo
– Brez preizkusa ure - Redni varnostni preskus med delovanjem
– SafetyClockTestCheck
– SafetyClockTestIsr
4.7.2 Konfiguracija preskusa ure
Ker sta za preizkus ure v varnostni knjižnici LPC553x potrebni dve neodvisni uri, nprample projekt:
- Časovnik SYSTICK izvira iz PLL0 150 M (iz zunanjega kristala 16 MHz)
- Časovnik CTIMER0 izvira iz notranjega FRO_96M
Podrobne konfiguracije Systick in CTIMER0 so prikazane spodaj:
- Konfiguracija Systick: SystickISR_Freq = 1000 Hz, z nastavitvijo vrednosti ponovnega nalaganja 150,000 pod jedrno uro 150 MHz
- Konfiguracija CTIMER: CTIMER_Freq = 96 MHz, izvira iz ure 96 MHz FRO_96M
- Pričakovani števec CTIMER bi moral biti CTIMER _Freq/SystickISR_Freq = 96 MHz / 1000 = 96,000
- V vsaki prekinitvi ISR Systick shranite vrednost števca CTIMER
- V zanki med izvajanjem (1) preverite: (96,000 – 20 %) < CTIMER pričakovani števec < (96,000 + 20 %)
Konfiguracija preizkusa ure je v Safety_config.h.
Glede na dejansko aplikacijo lahko spremenite instanco CTIMER za preizkus varnostne ure tako, da konfigurirate makro REF_TIMER_USED. Prav tako morate konfigurirati REF_TIMER_CLOCK_FREQUENCY glede na dejansko frekvenco ure. 4.8 Digitalni V/I test
4.8.1 Opis preizkusa digitalnega V/I
V varnostni knjižnici LPC553x nprampV projektu sta GPIO P1_4 in P1_17 na LPC5536-EVK izbrana za preskus varnostnega digitalnega V/I, ta dva zatiča sta povezana z glavo J10 na plošči LPC553x EVK.
Preizkusne rutine digitalnega V/I so razdeljene na dva glavna procesa: enkratni varnostni preizkus pred zagonom in občasni varnostni test med izvajanjem
- Enkratni varnostni preizkus pred izvedbo
– SafetyDigitalOutputTest
– SafetyDigitalInputOutput_ShortSupplyTest
– SafetyDigitalInputOutput_ShortAdjTest - Redni varnostni preskus med delovanjem
– SafetyDigitalOutputTest
– SafetyDigitalInputOutput_ShortSupplyTest
4.8.2 Testna konfiguracija digitalnega V/I
Konfiguracija preizkusa digitalnega V/I je v safety_test_items.c.Izvedba digitalnih V/I testov mora biti prilagojena končni aplikaciji. Bodite previdni pri povezavah in oblikovanju strojne opreme. Zaradi varnosti lahko spremenite GPIO
preizkus digitalnega V/I s konfiguracijo dio_safety_test_items[] v safety_test_items.c. V večini primerov je treba preizkušeni (in včasih tudi pomožni) pin med izvajanjem aplikacije ponovno konfigurirati. Priporočljivo je, da uporabite neuporabljene nožice za preizkus digitalnega V/I.
4.9 Test analognega V/I
4.9.1 Opis preskusa analognega V/I
V varnostni knjižnici LPC553x nprampprojekt, P0_16/ADC0IN3B, P0_31/ADC0IN8A in P0_15/ADC0IN3A na LPC5536-EVK so izbrani za preskus varnostnega analognega V/I, ker modul ADC na MCU LPC5536 ne dovoljuje notranje povezave VREFH, VREFL z ADC vnos. Uporabnik mora povezati te signale (za analogni V/I test) z letečimi žicami, kot je prikazano spodaj.
- GND priključen na P0_16/ADC0IN3B (J9-5) za preizkus ADC VREFL
- 3.3 V priključen na P0_31/ADC0IN8A (J9-31) za preizkus ADC VREFH
- 1.65 V priključen na P0_15/ADC0IN3A (J9-1) za preizkus pasovne vrzeli ADC
Preizkusne rutine analognega V/I so razdeljene na dva glavna procesa:
- Enkratni varnostni preizkus pred izvedbo
– SafetyAnalogTest - Redni varnostni preskus med delovanjem
– SafetyAnalogTest
4.9.2 Testna konfiguracija analognega V/I
Izvajanje analognih I/O testov mora biti prilagojeno končni aplikaciji. Bodite previdni pri povezavah in oblikovanju strojne opreme. Kanale ADC za varnostni analogni V/I test lahko spremenite tako, da konfigurirate FS_CFG_AIO_CHANNELS_INIT in
FS_CFG_AIO_CHANNELS_SIDE_INIT v safety_config.h.
- FS_CFG_AIO_CHANNELS_INIT označuje številko kanala ADC.
- FS_CFG_AIO_CHANNELS_SIDE_INIT označuje stran kanala ADC.
Kot je prikazano na zgornji sliki:
- Prvi element ustreza testu ADC VREFL
- Drugi element ustreza testu ADC VREFH
- Tretji element ustreza testu pasovne vrzeli ADC
Na primerample, “3” v FS_CFG_AIO_CHANNELS_INIT in “1” v
FS_CFG_AIO_CHANNELS_SIDE_INIT označuje, da je stran B kanala 0 ADC3 izbrana za preizkus ADC VREFL.
4.10 Preizkus nadzornega psa
4.10.1 Opis testa Watchdog
Watchdog test ni neposredno določen v tabeli IEC60730 – priloga H, vendar delno izpolnjuje varnostne zahteve po standardih IEC 60730-1, IEC 60335, UL 60730 in UL 1998.
Watchdog test zagotavlja testiranje funkcionalnosti nadzornega časovnika. Test se izvede samo enkrat po ponastavitvi. Test povzroči ponastavitev WDOG in primerja prednastavljeni čas za ponastavitev WDOG z realnim časom.V varnostni knjižnici LPC553x nprampv projektu se nadzorni pes testira z naslednjimi koraki:
- Po ponastavitvi omogočite nadzornega psa in namerno ustavite osveževanje, da sprožite MCU za ponastavitev nadzornega psa.
- Omogočite CTIMER0, da izmerite, kako dolgo traja časovna omejitev nadzornega psa in ponastavitev.
- Po ponastavitvi nadzornega psa potrdite, da je to ponastavitev povzročil nadzorni pes, tako da preverite register PMC->AOREG1.
- Preberite CTIMER0, da dobite natančen čas časovne omejitve in ponastavitve nadzornega psa.
Zgodovina revizij
Spodnja tabela povzema popravke tega dokumenta.
Tabela 3. Zgodovina revizij
Številka revizije | Datum | Vsebinske spremembe |
0 | 4. januarja 23 | Začetna javna objava |
Pravne informacije
6.1 Definicije
Osnutek — status osnutka na dokumentu pomeni, da je vsebina še vedno v internem pregleduview in predmet formalne odobritve, ki lahko povzroči spremembe ali dodatke. NXP Semiconductors ne daje nobenih zagotovil ali jamstev glede točnosti ali popolnosti informacij, vključenih v osnutek različice dokumenta, in ne prevzema nobene odgovornosti za posledice uporabe takih informacij.
6.2 Omejitve odgovornosti
Omejena garancija in odgovornost — Informacije v tem dokumentu naj bi bile točne in zanesljive. Vendar pa NXP Semiconductors ne daje nobenih izrecnih ali implicitnih zagotovil ali jamstev glede točnosti ali popolnosti takih informacij in ne prevzema nobene odgovornosti za posledice uporabe takih informacij. NXP Semiconductors ne prevzema nikakršne odgovornosti za vsebino v tem dokumentu, če jo zagotavlja vir informacij zunaj NXP Semiconductors.
NXP Semiconductors v nobenem primeru ni odgovoren za kakršno koli posredno, naključno, kaznovalno, posebno ali posledično škodo (vključno – brez omejitev z izgubljenim dobičkom, izgubljenimi prihranki, prekinitvijo poslovanja, stroški, povezanimi z odstranitvijo ali zamenjavo katerega koli izdelka ali stroški predelave), ne glede na to ali taka škoda ne temelji na odškodninski odgovornosti (vključno z malomarnostjo), garanciji, kršitvi pogodbe ali kateri koli drugi pravni teoriji.
Ne glede na morebitno škodo, ki bi jo stranka lahko utrpela iz kakršnega koli razloga, je skupna in kumulativna odgovornost družbe NXP Semiconductors do stranke za izdelke, opisane v tem dokumentu, omejena v skladu s pogoji komercialne prodaje družbe NXP Semiconductors.
Pravica do sprememb — NXP Semiconductors si pridržuje pravico do sprememb informacij, objavljenih v tem dokumentu, vključno brez omejitev s specifikacijami in opisi izdelkov, kadar koli in brez predhodnega obvestila. Ta dokument nadomešča in zamenjuje vse informacije, posredovane pred objavo tega dokumenta.
Primernost za uporabo — Izdelki NXP Semiconductors niso zasnovani, odobreni ali zanje ni zajamčeno, da bi bili primerni za uporabo v sistemih ali opremi za vzdrževanje življenja, življenjsko kritičnih ali varnostno kritičnih sistemih ali opremi, niti v aplikacijah, kjer je razumno pričakovati, da bo okvara ali okvara izdelka NXP Semiconductors povzročila osebne poškodbe, smrt ali huda materialna ali okoljska škoda. NXP Semiconductors in njegovi dobavitelji ne prevzemajo nobene odgovornosti za vključitev in/ali uporabo izdelkov NXP Semiconductors v tako opremo ali aplikacije, zato je taka vključitev in/ali uporaba na lastno odgovornost stranke.
Aplikacije — Aplikacije, ki so tukaj opisane za katerega koli od teh izdelkov, so samo v ilustrativne namene. NXP Semiconductors ne daje nobene izjave ali jamstva, da bodo takšne aplikacije primerne za določeno uporabo brez nadaljnjega testiranja ali spreminjanja. Stranke so odgovorne za načrtovanje in delovanje svojih aplikacij in izdelkov, ki uporabljajo izdelke NXP Semiconductors, NXP Semiconductors pa ne prevzema nobene odgovornosti za kakršno koli pomoč pri oblikovanju aplikacij ali izdelkov strank. Stranka je izključno odgovorna za določitev, ali je izdelek NXP Semiconductors primeren in primeren za strankine aplikacije in načrtovane izdelke, kot tudi za načrtovano uporabo in uporabo kupčevih tretjih oseb. Stranke morajo zagotoviti ustrezne zaščitne ukrepe za načrtovanje in delovanje, da zmanjšajo tveganja
povezanih z njihovimi aplikacijami in izdelki. NXP Semiconductors ne prevzema nobene odgovornosti v zvezi s kakršno koli napako, škodo, stroški ali težavo, ki temelji na kakršni koli slabosti ali napaki v strankinih aplikacijah ali izdelkih ali aplikaciji ali uporabi strankine tretje stranke. Stranka je odgovorna za izvedbo vseh potrebnih testiranj za strankine aplikacije in izdelke z uporabo izdelkov NXP Semiconductors, da se izogne privzetim aplikacijam in izdelkim ali aplikaciji ali uporabi s strani strankine tretje stranke. NXP v zvezi s tem ne prevzema nobene odgovornosti.
Pogoji komercialne prodaje — Izdelki NXP Semiconductors se prodajajo v skladu s splošnimi pogoji komercialne prodaje, kot so objavljeni na http://www.nxp.com/profile/terms, razen če ni drugače dogovorjeno v veljavni pisni individualni pogodbi. V primeru sklenitve posamezne pogodbe veljajo le pogoji posamezne pogodbe. NXP Semiconductors s tem izrecno nasprotuje uporabi strankinih splošnih pogojev v zvezi z nakupom izdelkov NXP Semiconductors s strani stranke.
Izvozni nadzor — Ta dokument in predmet(i), opisani v njem, so lahko predmet predpisov o nadzoru izvoza. Izvoz lahko zahteva predhodno dovoljenje pristojnih organov.
Primernost za uporabo v neavtomobilskih izdelkih — Če ta podatkovni list izrecno ne navaja, da je ta izdelek NXP Semiconductors primeren za avtomobile, izdelek ni primeren za uporabo v avtomobilih. Ni niti kvalificiran niti preizkušen v skladu z avtomobilskimi testiranji ali zahtevami uporabe. NXP Semiconductors ne prevzema nikakršne odgovornosti za vključitev in/ali uporabo neavtomobilskih izdelkov v avtomobilski opremi ali aplikacijah.
V primeru, da stranka uporablja izdelek za načrtovanje in uporabo v avtomobilskih aplikacijah v skladu z avtomobilskimi specifikacijami in standardi, mora stranka (a) uporabljati izdelek brez garancije NXP Semiconductors za izdelek za takšne avtomobilske aplikacije, uporabo in specifikacije in ( b) kadarkoli stranka uporablja izdelek za avtomobilske aplikacije, ki presegajo specifikacije NXP Semiconductors, je taka uporaba izključno na strankino lastno odgovornost in (c) stranka v celoti odškodnini družbi NXP Semiconductors za kakršno koli odgovornost, škodo ali neuspešne zahtevke glede izdelka, ki izhajajo iz strankine zasnove in uporabe izdelek za avtomobilske aplikacije, ki presegajo standardno garancijo NXP Semiconductors in specifikacije izdelkov NXP Semiconductors.
Prevodi — Neangleška (prevedena) različica dokumenta, vključno s pravnimi informacijami v tem dokumentu, je samo za referenco. V primeru neskladja med prevedeno in angleško različico prevlada angleška različica.
Varnost — Stranka razume, da so lahko vsi izdelki NXP izpostavljeni neznanim ranljivostim ali podpirajo uveljavljene varnostne standarde ali specifikacije z znanimi omejitvami. Stranka je odgovorna za načrtovanje in delovanje svojih aplikacij in izdelkov v celotnem življenjskem ciklu, da zmanjša učinek teh ranljivosti na strankine aplikacije in izdelke. Odgovornost stranke se razširi tudi na druge odprte in/ali lastniške tehnologije, ki jih podpirajo izdelki NXP za uporabo v aplikacijah stranke. NXP ne prevzema nobene odgovornosti za kakršno koli ranljivost. Stranka mora redno preverjati varnostne posodobitve podjetja NXP in ustrezno ukrepati.
Stranka bo izbrala izdelke z varnostnimi funkcijami, ki najbolje ustrezajo pravilom, predpisom in standardom predvidene uporabe, in sprejela končne odločitve glede oblikovanja svojih izdelkov ter je izključno odgovorna za skladnost z vsemi pravnimi, regulativnimi in varnostnimi zahtevami v zvezi z njenimi izdelki, ne glede na to. kakršnih koli informacij ali podpore, ki jih lahko zagotovi NXP.
NXP ima ekipo za odzivanje na incidente varnosti izdelkov (PSIRT) (dosegljiva na PSIRT@nxp.com), ki upravlja preiskavo, poročanje in objavo rešitev za varnostne ranljivosti izdelkov NXP.
6.3 Blagovne znamke
Obvestilo: Vse navedene blagovne znamke, imena izdelkov, imena storitev in blagovne znamke so last njihovih lastnikov.
NXP — besedni znak in logotip sta blagovni znamki 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, Versatile — so blagovne znamke ali registrirane blagovne znamke družbe Arm Limited (ali njenih podružnic) v ZDA in/ali drugje. Povezana tehnologija je lahko zaščitena s katerim koli ali vsemi patenti, avtorskimi pravicami, dizajni in poslovnimi skrivnostmi. Vse pravice pridržane.
Upoštevajte, da so pomembna obvestila o tem dokumentu in izdelkih, opisanih v njem, vključena v razdelek »Pravne informacije«.
© 2023 NXP BV
Za več informacij obiščite: http://www.nxp.com
Vse pravice pridržane.
Datum izida: 4. januar 2023
Identifikator dokumenta: AN13823
Dokumenti / Viri
![]() |
NXP AN13823 IEC 60730 programska oprema razreda B za LPC553x MCU-je [pdf] Uporabniški priročnik AN13823 IEC 60730 programska oprema razreda B za LPC553x MCU, AN13823, IEC 60730 programska oprema razreda B za LPC553x MCU, AN13823 IEC 60730 programska oprema razreda B |