Logo NXPSoftware AN13823 IEC 60730 třídy B pro MCU LPC553x
Uživatelská příručka

Software AN13823 IEC 60730 třídy B pro MCU LPC553x

Rev. 0 – 4. ledna 2023
Poznámka k aplikaci
Informace o dokumentu

Informace Obsah
Klíčová slova LPC553x, AN13823, IEC 60730, LPC5536-EVK, IEC60730B
Abstraktní Hlavním účelem této aplikační poznámky je urychlit zákaznický vývoj softwaru a certifikační procesy pro produkty založené na MCU LPC553x.

Zavedení

Bezpečnostní norma IEC 60730 definuje testovací a diagnostické metody, které zajišťují bezpečný provoz zabudovaného řídicího hardwaru a softwaru pro domácí spotřebiče.
Pro dosažení funkční bezpečnosti je nutné odstranit všechna rizika nebezpečí, která může způsobit porucha systému.
Norma IEC 60730 klasifikuje použitelná zařízení do tří kategorií:

  • Třída A: Není určeno pro spoléhání se na bezpečnost zařízení
  • Třída B: Aby se zabránilo nebezpečnému provozu ovládaného zařízení
  • Třída C: Aby se zabránilo zvláštním nebezpečím

NXP poskytuje knihovnu IEC 60730 bezpečnostní třídy B, která výrobcům automatických ovládacích prvků na trhu velkých spotřebičů pomáhá splnit nařízení IEC 60730 třídy B. Knihovna podporuje IDE IAR, Keil a MCUXpresso.
Binární bezpečnostní knihovnu NXP můžete integrovat do svého aplikačního softwaru. Pro snadnější vývoj aplikace IEC60730B poskytuje knihovna také example projekt. Tento example je distribuován prostřednictvím IEC 60730 Bezpečnostní norma pro domácí spotřebiče  on nxp.com webmísto.Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 1Hlavním účelem této aplikační poznámky je urychlit zákaznický vývoj softwaru a certifikační procesy pro produkty založené na MCU LPC553x.

Knihovna NXP IEC 60730 třídy B přesview

Bezpečnostní knihovna zahrnuje vlastní testy částí závislých na jádru a závislých na periferii, jak je uvedeno níže:

  • Část závislá na jádru
    – Test registrů CPU
    – Test čítače programů CPU
    – Test variabilní paměti
    – Test neměnné paměti
    – Test zásobníku
  • Část závislá na periferii
    – Test hodin
    – Test digitálního vstupu/výstupu
    – Test analogového vstupu/výstupu
    - Test hlídacího psa

Tabulka 1. Shoda s normami IEC 60730 třídy B

NXP IEC 60730 Knihovna třídy B IEC 60730
komponent Metoda Položky Aplikovaný
CPU registry Procedura testu registru CPU testuje všechny registry CPU CM33 na stav zablokování. 1.1 Zaregistrujte se H.2.16.6
Počítadlo programů Procedura testu čítače programů CPU testuje registr čítače programů CPU na stav zablokování. Test registru čítače programu lze provést jednou po resetu MCU a také za běhu.
Vynutit CPU (toku programu) přístup k odpovídající adrese, která testuje vzor, ​​aby se ověřila funkčnost čítače programu.
1.3 Počítadlo programů H.2.16.6
Hodiny Postup testu hodin testuje oscilátory procesoru na nesprávnou frekvenci. Princip testu hodin je založen na porovnání dvou nezávislých zdrojů hodin. Pokud testovací rutina zjistí změnu frekvenčního poměru mezi zdroji hodin, vrátí se chybový kód chyby. 3. Hodiny NA
Neměnná paměť Test neměnné paměti slouží ke kontrole, zda nedošlo ke změně obsahu paměti (on-chip Flash) během provádění aplikace. Několik metod kontrolního součtu (napřample, CRC16) lze k tomuto účelu použít. 4.1
Neměnná paměť
H.2.19.3.1
Test variabilní paměti Zkontroluje RAM na čipu, zda neobsahuje chyby DC. Schémata March C a March X se používají jako kontrolní mechanismy. 4.2 Variabilní paměť H.2.19.6
Digitální
vstupní/výstupní test
Testovací funkce DIO jsou navrženy pro kontrolu funkčnosti digitálního vstupu a výstupu a stavu zkratu mezi testovaným kolíkem a napájecím napětím.tage, zem nebo volitelný sousední kolík. 7.1 Digitální I/O H.2.18.13
Test analogového vstupu/výstupu (I/ 0). Test kontroluje analogové vstupní rozhraní a tři referenční hodnoty: referenční vysoká, referenční nízká a bandgap voltagE. Test analogového vstupu je založen na konverzi tří analogových vstupů se známým objememtage hodnot a zkontroluje, zda převedené hodnoty zapadají do zadaných mezí. Normálně by meze měly být zhruba 10 % kolem požadovaných referenčních hodnot. 7.2 Analogové I/O H.2.18.13

NXP IEC 60730 Knihovna třídy B example projekt

Pro snadnější vývoj aplikace IEC60730B poskytuje knihovna example projektový rámec, postavený na dedikované vyhodnocovací desce LPC553x  Přihlaste se na NXP.com | Polovodiče NXP (LPC5536-EVK). Musíte nakonfigurovat správné nastavení knihovny pro skutečný projekt.Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 23.1 Integrace bezpečnostní knihovny do uživatelské aplikace
Bezpečnostní exampRutiny projektu jsou rozděleny do dvou hlavních procesů: jednorázový bezpečnostní test před spuštěním a pravidelný bezpečnostní test za běhu.
Následující obrázek ukazuje procesy testování bezpečnosti.Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 3Chcete-li integrovat bezpečnostní knihovnu NXP, proveďte následující kroky:

  1. Stáhněte si bezpečnostní exampprojekt z nxp.com
  2. Hardwarové nastavení s ohledem na periferie použité pro bezpečnostní autotest
  3. Nakonfigurujte bezpečnostní knihovnu podle skutečného návrhu hardwaru
  4. Zapněte funkce testu bezpečnosti jednu po druhé v safety_config.h
    • Pro ladění je lepší nejprve vypnout flash test a watchdog
    • Dávejte pozor na přerušení, protože některé bezpečnostní testy nelze přerušit
  5. Vytvořte aplikační kód na základě bezpečnostních příkladůamprámec projektu

Bezpečnostní knihovna LPC553x example projekt v praxi

4.1 Blokové schéma hardwaru
Následující moduly se standardně používají pro bezpečnostní autotest, jak je znázorněno na obrázku níže:Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 4Tabulka 2. Modul MCU pro bezpečnostní autotest

Testovací položka bezpečnostní knihovny modul MCU
test CPU Jádro LPC5536 CM33
Test hodin Systick
CTIMER0
Test hlídacího psa Hlídací pes
CTIMER0
Test variabilní paměti SRAM
Test neměnné paměti Blikat
Digitální I/O test GPIO1
Analogový I/O test ADC0

4.2 Test CPU
4.2.1 Popis testu registrů CPU
Testovací procedura registru CPU testuje všechny registry CPU CM33 na stav zaseknutí (kromě registru čítače programu). Test počítadla programu je implementován jako samostatná bezpečnostní rutina. Tato sada testů zahrnuje test následujících registrů:

  • Univerzální registry:
    – R0-R12
  • Registry ukazatelů zásobníku:
    – MSP + MSPLIM (zabezpečené / nezabezpečené)
    – PSP + PSPLIM (zabezpečené / nezabezpečené)
  • Speciální registry:
    – APSR
    – OVLÁDÁNÍ (zabezpečené / nezabezpečené)
    – PRIMASK (zabezpečený / nezabezpečený)
    – FAULTMASK (zabezpečená / nezabezpečená)
    – BASEPRI (zabezpečené / nezabezpečené)
  • Odkaz na registraci:
    – LR
  • Registry FPU:
    – FPSCR
    – S0 – S31

Existuje sada testů, které se provádějí jednou po resetu MCU a také za běhu. Můžete znovu použít výchozí nastavení bezpečnostní knihovny LPC553x napřample projektu však musíte věnovat pozornost přerušení, protože některé testy registru CPU nelze přerušit.

  • Předběžně spusťte jednorázový bezpečnostní test
    – SafetyCpuAfterResetTest /* Přerušení musí být na chvíli zakázáno */
    – 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
  • Pravidelný bezpečnostní test za běhu
    – SafetyCpuBackgroundTest /* Test přerušitelných registrů CPU */
    – FS_CM33_CPU_Register
    – FS_CM33_CPU_NonStackedRegister
    – FS_CM33_CPU_Control /* Přerušení musí být na chvíli zakázáno */
    – FS_CM33_CPU_SPprocess_S /* Přerušení musí být na chvíli zakázáno */

4.3 Test čítače programů CPU
4.3.1 Popis testu čítače programu CPU
Testovací procedura registru čítače programů CPU testuje registr čítače programů CPU na stav zablokování. Na rozdíl od ostatních CPU registrů nelze programový čítač jednoduše vyplnit testovacím vzorem. Pro ověření funkčnosti programového čítače je nutné přinutit CPU (tok programu) k přístupu na odpovídající adresu, která testuje vzor.
Mějte na paměti, že test počítadla programu nelze přerušit.Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 5Test registru čítače programu lze provést jednou po resetu MCU a také za běhu.

  • Předběžně spusťte jednorázový bezpečnostní test
    – SafetyPcTest
    – FS_CM33_PC_Test
  • Pravidelný bezpečnostní test za běhu
    – SafetyIsrFunction > SafetyPcTest
    – FS_CM33_PC_Test

4.4 Test variabilní paměti
4.4.1 Popis testu proměnné paměti
Test variabilní paměti pro podporovaná zařízení kontroluje RAM na čipu, zda neobsahuje chyby DC.
Otestovat lze také oblast zásobníku aplikací. Schémata March C a March X se používají jako kontrolní mechanismy.Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 6Manipulační funkce se liší pro test po resetu a pro test za běhu.
Test po resetu se provádí funkcí FS_CM33_RAM_AfterReset (). Tato funkce je volána jednou po resetu, kdy doba provedení není kritická. Vyhraďte volné místo v paměti pro oblast zálohování. Parametr velikosti bloku nemůže být větší než velikost oblasti zálohy. Funkce nejprve zkontroluje oblast zálohování, poté začne smyčka. Bloky paměti jsou zkopírovány do oblasti zálohy a jejich umístění je kontrolováno příslušným březnovým testem. Data se zkopírují zpět do původní oblasti paměti a aktualizuje se skutečná adresa s velikostí bloku. Toto se opakuje, dokud není testován poslední blok paměti. Pokud je detekována porucha DC, funkce vrátí vzor poruchy.
Runtime test se provádí funkcí FS_CM33_RAM_Runtime (). Pro úsporu času testuje včas pouze jeden segment (definovaný RAM_TEST_BLOCK_SIZE) paměti SRAM. Zatímco test po resetu kontroluje celý blok místa RAM související s bezpečností. V bezpečnostní knihovně LPC553x example project, RAM_TEST_BLOCK_SIZE je nakonfigurován na 0x4, to znamená, že 32 bajtů RAM bude testováno v jedné runtime testovací rutině RAM.Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 7

  • Předběžně spusťte jednorázový bezpečnostní test
    – SafetyRamAfterResetTest /* Před spuštěním hlavní rutiny otestujte celý prostor RAM části „.safety_ram“. */
    – FS_CM33_RAM_AfterReset
  • Pravidelný bezpečnostní test za běhu
    – SafetyIsrFunction(&g_sSafetyCommon, &g_sSafetyRamTest, &g_sSafetyRamStackTest) /* spuštěné v Systick ISR, nelze přerušit */
    – FS_CM33_RAM_Runtime

4.4.2 Konfigurace testu proměnné paměti
Konfigurace testu proměnné paměti v :Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 8Konfigurace bezpečnostního bloku RAM je in :
definujte blok SAFETY_RAM_BLOCK se zarovnáním = 8
{sekce .safety_ram };
místo v RAM_regionu {blok SAFETY_RAM_BLOCK};
Všimněte si, že test proměnné paměti se vztahuje pouze na .safety_ram. Přidejte proměnné do sekce .safety_ram ručně, jak je uvedeno níže v main.c.Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 94.5 Test neměnné paměti
4.5.1 Popis testu neměnné paměti
Neměnná paměť na MCU LPC5536 je flash na čipu. Principem testu neměnné paměti je kontrola, zda nedošlo ke změně obsahu paměti během běhu aplikace. K tomuto účelu lze použít několik metod kontrolního součtu. Kontrolní součet je algoritmus, který vypočítává podpis dat umístěných v testované paměti. Podpis tohoto paměťového bloku je pak periodicky vypočítáván a porovnáván s původním podpisem.
Signatura pro přiřazenou paměť se vypočítá ve fázi propojení aplikace. Podpis musí být uložen do neměnné paměti, ale v jiné oblasti, než pro kterou se počítá kontrolní součet. Za běhu a po resetu musí být v aplikaci implementován stejný algoritmus pro výpočet kontrolního součtu. Výsledky jsou porovnány. Pokud nejsou stejné, dojde k bezpečnostnímu chybovému stavu.
Při implementaci po resetu nebo když neexistuje žádné omezení doby provádění, může být volání funkce následující.
• Předběžně spusťte jednorázový bezpečnostní test
– SafetyFlashAfterResetTest
– FS_FLASH_C_HW16_K /* výpočet CRC celého Flash */
Za běhu aplikace a s omezeným časem pro provedení se CRC vypočítává v sekvenci. Znamená to, že vstupní parametry mají jiný význam ve srovnání s voláním po resetu. Provedení example je následující:
• Periodický test bezpečnosti za běhu
– SafetyFlashRuntimeTest
– FS_FLASH_C_HW16_K /* výpočet CRC blok po bloku */
– SafetyFlashTestHandling /* porovnat CRC při výpočtu všech bloků Flash. */
4.5.2 Konfigurace testu neměnné paměti
V bezpečnostní knihovně LPC553x exampV projektu je alokace flash uvedena níže, jak je specifikováno v Linkeru file . Objekt files a jsou umístěny v bezpečnostním flash bloku, který je kontrolován testem neměnné paměti. Můžete umístit více objektů filedo oblasti SAFETY_FLASH_BLOCK Flash úpravou Linkeru file podle toho.Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 10Během běhu MCU je třeba porovnat dva kontrolní součty, aby se ověřilo, zda byl obsah daného flash prostoru upraven:

  • Kontrolní součet vypočítaný Linkerem při Compiling/Linking
  • Kontrolní součet vypočítaný MCU za běhu

Definice místa pro umístění výsledku kontrolního součtu (předem vypočítaného nástroji linkeru) je v :
definovat symbol __FlashCRC_start__ = 0x0300; /* pro umístění kontrolního součtu */
definovat symbol __FlashCRC_end__ = 0x030F; /* pro umístění kontrolního součtu */
definovat region CRC_region = mem: [od __FlashCRC_start__ do __FlashCRC_end__];
definovat blok KONTROLNÍ SOUČET se zarovnáním = 8 {sekce. kontrolní součet}; místo v CRC_region { block CHECKSUM};
Vezměte IAR IDE, napřample, v nastavení možnosti projektu > Akce sestavení > příkazový řádek po sestavení.Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 11Příkazový řádek:
ielftool –fill 0xFF;c_checksumStart-c_checksumEnd+3 –checksum __checksum:2,crc16,0x0;c_checksumStart-c_checksumEnd+3 –verbose “$TARGET_PATH$” “$TARGET_PATH$”
Linker vypočítá původní kontrolní součet adresování flash od _checksumStart do c_checksumEnd, poté umístí výsledek kontrolního součtu do _checksum, který je v bloku CHECKSUM definovaném linkerem. file.
Definice specifikovaného flash prostoru, který má být zkontrolován, je v :
definuj blok SAFETY_FLASH_BLOCK se zarovnáním = 8, pevné pořadí { sekce checksum_start_mark pouze pro čtení, sekce .textový objekt main.o, sekce .textový objekt safety_cm33_lpc.o, sekce .rodata objekt safety_cm33_lpc.o, sekce jen pro čtení checksum_end_mark };
místo v ROM_regionu { blok SAFETY_FLASH_BLOCK};
4.6 Test zásobníku
4.6.1 Popis testu zásobníku
Test zásobníku je doplňkový test, který není přímo specifikován v tabulce IEC60730 přílohy H.
Tato testovací rutina se používá k testování podmínek přetečení a podtečení zásobníku aplikací. Testování zaseknutých chyb v oblasti paměti obsazené zásobníkem je pokryto testem proměnné paměti. K přetečení nebo podtečení zásobníku může dojít při nesprávném ovládání zásobníku nebo definováním „příliš nízké“ oblasti zásobníku pro danou aplikaci.
Principem testu je vyplnění oblasti pod a nad stohem známým vzorem. Tyto oblasti musí být definovány v konfiguraci linkeru file, spolu se zásobníkem. Inicializační funkce pak vyplní tyto oblasti vaším vzorem. Vzor musí mít hodnotu, která se jinde v aplikaci nevyskytuje. Účelem je zkontrolovat, zda je v těchto oblastech stále napsán přesný vzor. Pokud tomu tak není, je to známka nesprávného chování zásobníku. Pokud k tomu dojde, musí být vrácená hodnota FAIL z testovací funkce zpracována jako bezpečnostní chyba.Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 12Test se provádí po resetu a za běhu aplikace stejným způsobem.

  • Předběžně spusťte jednorázový bezpečnostní test
    – SafetyStackTestInit
    – FS_CM33_STACK_Init /* zápis STACK_TEST_PATTERN (0x77777777) do STACK_TEST_BLOCK */
    – SafetyStackTest
    – FS_CM33_STACK_Test /* kontrola obsahu STACK_TEST_BLOCK, selhalo, pokud se hodnota nerovná STACK_TEST_PATTERN (0x77777777).
  • Pravidelný bezpečnostní test za běhu
    – SafetyStackTest
    – FS_CM33_STACK_Init /* zápis STACK_TEST_PATTERN (0x77777777) do STACK_TEST_BLOCK */
    – SafetyStackTest
    – FS_CM33_STACK_Test /* kontrola obsahu STACK_TEST_BLOCK, selže, pokud se hodnota nerovná STACK_TEST_PATTERN (0x77777777)

4.6.2 Konfigurace testu zásobníku
Konfigurace testu zásobníku je in a linker file Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 134.7 Test hodin
4.7.1 Popis testu hodin
Princip testu hodin je založen na porovnání dvou nezávislých zdrojů hodin.
V bezpečnostní knihovně LPC553x example project, CTIMER0 a Systick na MCU LPC5536 se používají jako dvě nezávislé hodiny pro test bezpečnostních hodin, nezávisí na hardwarové desce LPC5536-EVK.
Rutina testu hodin se provádí pouze v rámci periodického testu bezpečnosti za běhu.

  • Předběžně spusťte jednorázový bezpečnostní test
    – Žádný test hodin
  • Pravidelný bezpečnostní test za běhu
    – SafetyClockTestCheck
    – SafetyClockTestIsr

Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 144.7.2 Konfigurace testu hodin
Protože jsou vyžadovány dvě nezávislé hodiny pro test hodin v bezpečnostní knihovně LPC553x exampprojekt:

  • Časovač SYSTICK pochází z PLL0 150 M (zdroj z externího 16 MHz krystalu)
  • Časovač CTIMER0 je napájen z interního FRO_96M

Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 15

Podrobné konfigurace Systicku a CTIMER0 jsou uvedeny níže:

  • Konfigurace systému Systick: SystickISR_Freq = 1000 Hz, nastavením hodnoty opětovného načtení 150,000 150 pod takt jádra XNUMX MHz
  • Konfigurace CTIMER: CTIMER_Freq = 96 MHz, zdroj z hodin 96 MHz FRO_96M
  • Očekávaný čítač CTIMER by měl být CTIMER _Freq/SystickISR_Freq = 96 MHz / 1000 = 96,000 XNUMX
  • V každém přerušení ISR systému Systick uložte hodnotu čítače CTIMER
  • V runtime while (1) smyčce zkontrolujte: (96,000 20 – 96,000 %) < CTIMER očekávaný čítač < (20 XNUMX + XNUMX %)

Konfigurace testu hodin je v Safety_config.h.
Podle aktuální aplikace můžete změnit instanci CTIMER pro test bezpečnostních hodin konfigurací makra REF_TIMER_USED. Také musíte nakonfigurovat REF_TIMER_CLOCK_FREQUENCY podle skutečné frekvence hodin. Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 164.8 Test digitálních I/O
4.8.1 Popis testu digitálních I/O
V bezpečnostní knihovně LPC553x example projektu, GPIO P1_4 a P1_17 na LPC5536-EVK jsou vybrány pro bezpečnostní digitální I/O test, tyto dva piny jsou připojeny k J10 headeru na desce LPC553x EVK.
Digitální I/O testovací rutiny jsou rozděleny do dvou hlavních procesů: jednorázový bezpečnostní test před spuštěním a pravidelný bezpečnostní test za běhu

  • Předběžně spusťte jednorázový bezpečnostní test
    – SafetyDigitalOutputTest
    – SafetyDigitalInputOutput_ShortSupplyTest
    – SafetyDigitalInputOutput_ShortAdjTest
  • Pravidelný bezpečnostní test za běhu
    – SafetyDigitalOutputTest
    – SafetyDigitalInputOutput_ShortSupplyTest

4.8.2 Konfigurace testu digitálních I/O
Konfigurace digitálního I/O testu je v safety_test_items.c.Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 17Provádění digitálních I/O testů musí být přizpůsobeno konečné aplikaci. Buďte opatrní s hardwarovými připojeními a designem. Pro jistotu můžete GPIO změnit
digitální I/O test konfigurací dio_safety_test_items[] v safety_test_items.c. Ve většině případů je nutné testovaný (a někdy i pomocný) pin během běhu aplikace překonfigurovat. Pro digitální I/O test se doporučuje použít nepoužité piny.
4.9 Test analogových I/O
4.9.1 Popis testu analogových I/O
V bezpečnostní knihovně LPC553x exampPro test bezpečnostních analogových I/O je vybrán projekt P0_16/ADC0IN3B, P0_31/ADC0IN8A a P0_15/ADC0IN3A na LPC5536-EVK, protože modul ADC na MCU LPC5536 neumožňuje interně připojit VREFH, VREFL k ADC vstup. Je nutné, aby uživatel propojil tyto signály (pro test analogových I/O) pomocí volných vodičů, jak je znázorněno níže.

  • GND připojeno k P0_16/ADC0IN3B (J9-5) pro test ADC VREFL
  • 3.3 V připojené k P0_31/ADC0IN8A (J9-31) pro test ADC VREFH
  • 1.65 V připojené k P0_15/ADC0IN3A (J9-1) pro test ADC Bandgap

Analogové I/O testovací rutiny jsou rozděleny do dvou hlavních procesů:

  • Předběžně spusťte jednorázový bezpečnostní test
    – SafetyAnalogTest
  • Pravidelný bezpečnostní test za běhu
    – SafetyAnalogTest

4.9.2 Konfigurace testu analogových I/O
Provádění analogových I/O testů musí být přizpůsobeno konečné aplikaci. Buďte opatrní s hardwarovými připojeními a designem. Kanály ADC pro bezpečnostní analogový I/O test můžete změnit nakonfigurováním FS_CFG_AIO_CHANNELS_INIT a
FS_CFG_AIO_CHANNELS_SIDE_INIT v safety_config.h.

  • FS_CFG_AIO_CHANNELS_INIT označuje číslo kanálu ADC.
  • FS_CFG_AIO_CHANNELS_SIDE_INIT označuje stranu kanálu ADC.

Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 18Jak je znázorněno na obrázku výše:

  • První prvek odpovídá testu ADC VREFL
  • Druhý prvek odpovídá testu ADC VREFH
  • Třetí prvek odpovídá testu ADC Bandgap

Napřample, „3“ v FS_CFG_AIO_CHANNELS_INIT a „1“ v
FS_CFG_AIO_CHANNELS_SIDE_INIT označuje, že strana B kanálu 0 ADC3 je vybrána pro test ADC VREFL.
4.10 Test hlídacího psa
4.10.1 Popis testu hlídacího psa
Watchdog test není přímo specifikován v tabulce IEC60730 – příloha H, nicméně částečně splňuje bezpečnostní požadavky dle norem IEC 60730-1, IEC 60335, UL 60730 a UL 1998.
Watchdog test poskytuje testování funkčnosti hlídacího časovače. Test se po resetu provede pouze jednou. Test způsobí reset WDOG a porovná přednastavený čas pro reset WDOG s reálným časem.Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x – Obrázek 20V bezpečnostní knihovně LPC553x exampV projektu je hlídací pes testován pomocí následujících kroků:

  1. Po resetu povolte watchdog a záměrně zastavte obnovování, aby se spustil reset watchdog MCU.
  2. Povolte CTIMER0, abyste změřili, jak dlouho trvá vypršení časového limitu hlídacího psa a jeho reset.
  3. Po resetu watchdogu zkontrolujte registr PMC->AOREG1, zda je tento reset způsoben watchdogem.
  4. Přečtěte si CTIMER0, abyste získali přesný čas vypršení časového limitu hlídacího obvodu a resetování.

Historie revizí

Níže uvedená tabulka shrnuje revize tohoto dokumentu.
Tabulka 3. Historie revizí

Číslo revize Datum Podstatné změny
0 4. ledna 23 První veřejné vydání

Právní informace

6.1 Definice
Koncept — Stav konceptu na dokumentu označuje, že obsah je stále pod interní revizíview a podléhá formálnímu schválení, které může vést k úpravám nebo doplnění. NXP Semiconductors neposkytuje žádná prohlášení ani záruky ohledně přesnosti nebo úplnosti informací obsažených v pracovní verzi dokumentu a nenese žádnou odpovědnost za důsledky použití takových informací.
6.2 Zřeknutí se odpovědnosti
Omezená záruka a odpovědnost — Informace v tomto dokumentu jsou považovány za přesné a spolehlivé. Společnost NXP Semiconductors však neposkytuje žádná prohlášení ani záruky, vyjádřené nebo předpokládané, pokud jde o přesnost nebo úplnost takových informací, a nenese žádnou odpovědnost za důsledky použití takových informací. NXP Semiconductors nenese žádnou odpovědnost za obsah tohoto dokumentu, pokud je poskytnut informačním zdrojem mimo NXP Semiconductors.
Společnost NXP Semiconductors v žádném případě nenese odpovědnost za jakékoli nepřímé, náhodné, trestné, zvláštní nebo následné škody (včetně – bez omezení ušlého zisku, ušlých úspor, přerušení provozu, nákladů souvisejících s odstraněním nebo výměnou jakýchkoli produktů nebo nákladů na přepracování), ať už tyto škody nejsou založeny na protiprávním jednání (včetně nedbalosti), záruce, porušení smlouvy nebo jiné právní teorii.
Bez ohledu na jakékoli škody, které by mohly zákazníkovi z jakéhokoli důvodu vzniknout, bude souhrnná a kumulativní odpovědnost NXP Semiconductors vůči zákazníkovi za produkty popsané v tomto dokumentu omezena v souladu s podmínkami komerčního prodeje NXP Semiconductors.
Právo provádět změny — Společnost NXP Semiconductors si vyhrazuje právo kdykoli a bez upozornění provádět změny informací zveřejněných v tomto dokumentu, včetně, bez omezení, specifikací a popisů produktů. Tento dokument nahrazuje a nahrazuje všechny informace poskytnuté před jeho zveřejněním.
Vhodnost použití — Produkty NXP Semiconductors nejsou navrženy, autorizovány nebo zaručeny tak, aby byly vhodné pro použití v systémech nebo zařízeních pro podporu života, život kritických nebo kritických systémech nebo zařízeních, ani v aplikacích, kde lze důvodně očekávat selhání nebo nesprávnou funkci produktu NXP Semiconductors. zranění osob, smrt nebo vážné poškození majetku nebo životního prostředí. Společnost NXP Semiconductors a její dodavatelé nepřijímají žádnou odpovědnost za zahrnutí a/nebo použití produktů NXP Semiconductors v takovém zařízení nebo aplikacích, a proto je takové zahrnutí a/nebo použití na vlastní riziko zákazníka.
Aplikace — Zde popsané aplikace pro kterýkoli z těchto produktů jsou pouze ilustrativní. NXP Semiconductors neposkytuje žádné prohlášení ani záruku, že takové aplikace budou vhodné pro specifikované použití bez dalšího testování nebo úprav. Zákazníci jsou zodpovědní za návrh a provoz svých aplikací a produktů využívajících produkty NXP Semiconductors a NXP Semiconductors nepřijímá žádnou odpovědnost za jakoukoli pomoc s aplikacemi nebo návrhem zákaznických produktů. Je výhradní odpovědností zákazníka určit, zda je produkt NXP Semiconductors vhodný a vhodný pro zákazníkovy aplikace a plánované produkty, jakož i pro plánovanou aplikaci a použití zákazníkem (zákazníků) jako třetí strana. Zákazníci by měli zajistit odpovídající návrh a provozní zabezpečení, aby minimalizovali rizika
spojené s jejich aplikacemi a produkty. NXP Semiconductors nepřijímá žádnou odpovědnost související s jakýmkoli selháním, poškozením, náklady nebo problémem, který je založen na jakékoli slabosti nebo selhání v aplikacích nebo produktech zákazníka nebo v aplikaci nebo použití zákazníkem (zákazníky třetí strany) zákazníka. Zákazník je odpovědný za provedení všech nezbytných testů pro aplikace a produkty zákazníka využívající produkty NXP Semiconductors, aby se zabránilo selhání aplikací a produktů nebo aplikace nebo použití zákazníkem (zákazníky třetí strany) zákazníka. NXP nenese v tomto ohledu žádnou odpovědnost.
Podmínky komerčního prodeje — Produkty NXP Semiconductors se prodávají v souladu se všeobecnými podmínkami komerčního prodeje, jak jsou zveřejněny na http://www.nxp.com/profile/terms, není-li v platné písemné individuální dohodě dohodnuto jinak. V případě uzavření individuální smlouvy platí pouze podmínky příslušné smlouvy. Společnost NXP Semiconductors tímto výslovně nesouhlasí s uplatňováním všeobecných obchodních podmínek zákazníka s ohledem na nákup produktů NXP Semiconductors zákazníkem.
Kontrola exportu — Tento dokument, stejně jako položky zde popsané, mohou podléhat předpisům o kontrole vývozu. Vývoz může vyžadovat předchozí povolení od příslušných orgánů.
Vhodnost pro použití ve výrobcích nekvalifikovaných pro automobilový průmysl — Pokud tento technický list výslovně neuvádí, že tento konkrétní produkt NXP Semiconductors je způsobilý pro automobilový průmysl, produkt není vhodný pro použití v automobilech. Není kvalifikován ani testován v souladu s automobilovým testováním nebo aplikačními požadavky. Společnost NXP Semiconductors nenese žádnou odpovědnost za zahrnutí a/nebo použití jiných než automobilových kvalifikovaných produktů v automobilovém vybavení nebo aplikacích.
V případě, že zákazník použije produkt pro návrh a použití v automobilových aplikacích podle automobilových specifikací a norem, zákazník (a) použije produkt bez záruky NXP Semiconductors na produkt pro takové automobilové aplikace, použití a specifikace a ( b) kdykoli zákazník použije produkt pro automobilové aplikace nad rámec specifikací NXP Semiconductors, takové použití bude výhradně na vlastní riziko zákazníka a (c) zákazník plně odškodní společnost NXP Semiconductors za jakoukoli odpovědnost, škody nebo neúspěšné nároky na produkt vyplývající z návrhu a použití zákazníka. produkt pro automobilové aplikace nad rámec standardní záruky NXP Semiconductors a specifikace produktu NXP Semiconductors.
Překlady — Neanglická (přeložená) verze dokumentu, včetně právních informací v tomto dokumentu, je pouze orientační. V případě jakéhokoli rozporu mezi přeloženou a anglickou verzí má přednost anglická verze.
Zabezpečení — Zákazník chápe, že všechny produkty NXP mohou být předmětem neidentifikovaných zranitelností nebo mohou podporovat zavedené bezpečnostní standardy nebo specifikace se známými omezeními. Zákazník je odpovědný za návrh a provoz svých aplikací a produktů po celou dobu jejich životního cyklu, aby se snížil účinek těchto zranitelností na aplikace a produkty zákazníka. Odpovědnost zákazníka se vztahuje také na další otevřené a/nebo proprietární technologie podporované produkty NXP pro použití v aplikacích zákazníka. NXP nenese žádnou odpovědnost za jakoukoli zranitelnost. Zákazník by měl pravidelně kontrolovat aktualizace zabezpečení z NXP a patřičně je sledovat.
Zákazník si musí vybrat produkty s bezpečnostními prvky, které nejlépe splňují pravidla, předpisy a normy zamýšlené aplikace a učinit konečná rozhodnutí o designu týkající se svých produktů a je výhradně odpovědný za shodu se všemi právními, regulačními a bezpečnostními požadavky týkajícími se jeho produktů, bez ohledu na jakékoli informace nebo podporu, kterou může NXP poskytnout.
NXP má tým pro reakci na bezpečnostní incidenty produktu (PSIRT) (dostupný na adrese PSIRT@nxp.com), která spravuje vyšetřování, hlášení a uvolňování řešení bezpečnostních zranitelností produktů NXP.
6.3 Ochranné známky
Oznámení: Všechny odkazované značky, názvy produktů, názvy služeb a ochranné známky jsou majetkem příslušných vlastníků.
NXP — wordmark a logo jsou ochranné známky společnosti 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 — jsou ochranné známky nebo registrované ochranné známky společnosti Arm Limited (nebo jejích dceřiných společností) v USA a/nebo jinde. Související technologie může být chráněna některým nebo všemi patenty, autorskými právy, vzory a obchodním tajemstvím. Všechna práva vyhrazena.
Uvědomte si prosím, že důležitá upozornění týkající se tohoto dokumentu a zde popsaných produktů byla zahrnuta v části „Právní informace“.

© 2023 NXP BV
Další informace naleznete na adrese: http://www.nxp.com
Všechna práva vyhrazena.
Datum vydání: 4. ledna 2023
Identifikátor dokumentu: AN13823

Dokumenty / zdroje

Software NXP AN13823 IEC 60730 třídy B pro MCU LPC553x [pdfUživatelská příručka
Software AN13823 IEC 60730 třídy B pro MCU LPC553x, AN13823, IEC 60730 Software třídy B pro MCU LPC553x, AN13823 Software IEC 60730 třídy B

Reference

Zanechte komentář

Vaše emailová adresa nebude zveřejněna. Povinná pole jsou označena *