精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

MCU之IEC_60335_CLASSB軟件庫

jf_pJlTbmA9 ? 來源:華芯微特32位MCU ? 作者:華芯微特32位MCU ? 2023-10-25 17:12 ? 次閱讀

IEC(國際電工委員會)是由所有國家電工委員會組成的世界性標(biāo)準(zhǔn)化組織,IEC針對家用電器的正常安全運(yùn)行制定了安全標(biāo)準(zhǔn)。

IEC60335安全標(biāo)準(zhǔn)里面定義了多種測試和診斷方法,確保面向家用電器的嵌入式控制硬件和軟件的安全運(yùn)行。IEC60730安全標(biāo)準(zhǔn)主要針對安全和性能、環(huán)境、電能效率及其可再生能力,其標(biāo)準(zhǔn)為硬件及軟件解決方案提供建議。

為此,華芯微特開發(fā)出多款安全特性和軟件開發(fā)包(包括IEC60335安全庫),可幫助大型電器市場的自動化控制制造商滿足IEC60335 CLASSB規(guī)范。

在這里我們以SWM341為例給大家簡單介紹一下在IEC_60335_CLASSB軟件庫。

整體流程

ClassB軟件包程序檢測內(nèi)容分為兩個主要部分:啟動時的自檢和運(yùn)行時的周期自檢,MCU在上電的時候會進(jìn)行復(fù)位啟動,在啟動完成以后會進(jìn)行運(yùn)行自檢。

wKgZomUDwfCAPJfTAAGud37QhK0265.png

啟動時檢測

CPU寄存器進(jìn)行自檢操作,如果檢測沒有故障則進(jìn)行看門狗的自檢,如果有故障則進(jìn)行故障的處理。看門狗自檢流程與CPU寄存器自檢的流程一致,后面依次會進(jìn)行FLASH,RAM以及時鐘自檢,啟動自檢完成以后會進(jìn)入程序的主循環(huán)函數(shù)中。

啟動自檢流程如下圖:

wKgaomUDwfGAIheeAAIV0S_a0YQ451.png

CPU啟動時檢測

進(jìn)行CPU寄存器的相關(guān)檢測,主要檢查內(nèi)核標(biāo)志、寄存器和堆棧指針等是否正確。如果發(fā)生錯誤,就會調(diào)用故障安全處理函數(shù)Selftest_fail_handle()。

wKgaomUDwfOAZX2LAAER6SD7u-k442.png

看門狗啟動時檢測

驗(yàn)證看門狗復(fù)位功能是否正常,保證后續(xù)運(yùn)行中如果因?yàn)槌绦蛴?jì)數(shù)器出現(xiàn)非預(yù)期異常情況導(dǎo)致程序跑飛時可以通過看門狗復(fù)位恢復(fù)。測試通過判斷復(fù)位狀態(tài)寄存器的復(fù)位標(biāo)識來判斷是否測試成功。

wKgaomUDwfSAb16KAAAM-4Je-uY561.png

時鐘啟動時檢測

啟動階段的時鐘檢測通過內(nèi)部低速時鐘源(LICK)和系統(tǒng)時鐘的交叉測量結(jié)果來判斷。系統(tǒng)時鐘頻率作為基準(zhǔn)頻率,采用外部高速時鐘源(HEXT)或者內(nèi)部高速時鐘源(HICK)。將定時器的時鐘源設(shè)置為LICK,systick設(shè)置為系統(tǒng)時鐘,運(yùn)行systick相同時間,兩次timer當(dāng)前值之間的差值作為測量值與LICK預(yù)期的范圍值進(jìn)行比較。如果測量值超出了LICK預(yù)期范圍值,則測試失敗。

wKgZomUDwfaAIK-UAAAX-r3zZ6Q952.png

FLASH啟動時檢測

FLASH自檢是存儲器檢測的一部分, 程序中將FLASH數(shù)據(jù)用CRC算法計(jì)算, 將結(jié)果值跟編譯時已存儲在FLASH指定位置的預(yù)先計(jì)算好的CRC值進(jìn)行比較。

wKgaomUDwfeAfne8AAECZS23avY147.png

RAM啟動時檢測

RAM自檢是存儲器檢測的一部分,對于支持硬件SRAM奇偶校驗(yàn)功能的型號,可以開啟RAM校驗(yàn)功能并且可以跳過該步驟,而對于不支持硬件SRAM奇偶校驗(yàn)功能的型號,則采用March C算法,用值0x00和0xFF逐字交替填充整個RAM并檢查,填充時可以選擇加擾模式(scramble)或者標(biāo)準(zhǔn)模式(standard),加擾模式基本物理單元是4字,下圖單元格內(nèi)的編號代表測試填充的順序。

wKgaomUDwfmAWAzaAABRM9MgoIM084.png

RAM采用March C算法測試時分6個步驟,前3個循環(huán)按照地址遞增執(zhí)行,后3個循環(huán)按照地址遞減執(zhí)行。測試步驟如下,如果采用March X算法則省略步驟3和4:

·全部范圍寫0x00,按照地址遞增順序執(zhí)行

·檢測是否全部范圍為0x00,然后全部范圍寫0xFF,按照地址遞增順序執(zhí)行

·檢測是否全部范圍為0xFF,然后全部范圍寫0x00,按照地址遞增順序執(zhí)行

·檢測是否全部范圍為0x00,然后全部范圍寫0xFF,按照地址遞減順序執(zhí)行

·檢測是否全部范圍為0xFF,然后全部范圍寫0x00,按照地址遞減順序執(zhí)行

·檢測是否全部范圍為0x00,按照地址遞減順序執(zhí)行

wKgZomUDwfqAe_dDAAEvayw8Ygc754.png

控制流啟動時檢測

控制流檢測也屬于程序計(jì)數(shù)器檢測的一部分,啟動階段控制流檢測主要分為了兩個節(jié)點(diǎn),其中一個檢測節(jié)點(diǎn)是在RAM檢測之前,通過控制流變量值判斷是否前面所有測試項(xiàng)都正確完成,另外一個節(jié)點(diǎn)是在RAM檢測后,主要是運(yùn)行階段檢測必須操作的流程的配置,比如CRC參考變量初始化、棧溢出pattern設(shè)置。

運(yùn)行時周期檢測

在主循環(huán)中會定期的進(jìn)行自檢操作,在進(jìn)行自檢操作的時候會依次進(jìn)行如下操作:CPU寄存器的自檢、棧自檢、時鐘自檢、FLASH自檢、并設(shè)置定時器定時進(jìn)行RAM自檢,如果在自檢的過程中出現(xiàn)故障則會進(jìn)行故障的處理。

wKgZomUDwfyAYtylAAGAaISt6TQ036.png

CPU運(yùn)行時檢測

CPU運(yùn)行時周期自檢跟啟動時的自檢類似,只是不檢測內(nèi)核標(biāo)志和堆棧指針。

wKgaomUDwf2AW_PmAADEA6Vyhuc449.png

看門狗運(yùn)行時檢測

運(yùn)行時需要定期喂狗保證系統(tǒng)正常運(yùn)行, 看門狗的刷新部分放置在每次檢測最后部分。

時鐘運(yùn)行時檢測

啟動階段的時鐘檢測通過內(nèi)部低速時鐘源(LICK)和系統(tǒng)時鐘的交叉測量結(jié)果來判斷。系統(tǒng)時鐘頻率作為基準(zhǔn)頻率,采用外部高速時鐘源(HEXT)或者內(nèi)部高速時鐘源(HICK)。將定時器的時鐘源設(shè)置為LICK,systick設(shè)置為系統(tǒng)時鐘,運(yùn)行systick相同時間,兩次timer當(dāng)前值之間的差值作為測量值與LICK預(yù)期的范圍值進(jìn)行比較。如果測量值超出了LICK預(yù)期范圍值,則測試失敗。

wKgZomUDwf-AWtAFAAHA9XA1qEY003.png

FLASH CRC運(yùn)行時檢測

運(yùn)行時進(jìn)行Flash CRC的自檢,因?yàn)闄z測范圍不同耗時不同,如果一次計(jì)算檢測全部范圍CRC可能耗時過長,影響正常應(yīng)用部分的執(zhí)行,所以可以根據(jù)用戶應(yīng)用程序大小配置分段CRC計(jì)算,當(dāng)計(jì)算到最后一段范圍時,再進(jìn)行CRC值比較,如果不一致則測試失敗。

wKgaomUDwgGAGPoyAAFIATSYt9s422.png

棧邊界運(yùn)行時檢測

可驗(yàn)證尋址和數(shù)據(jù)路徑測試相關(guān),定義特殊固定值的Magic Pattern數(shù)組,放置在棧區(qū)域最底部地址,通過運(yùn)行中檢測Magic Pattern數(shù)組完整性來判斷棧是否溢出。如果原始Pattern被破壞,則表明棧溢出測試失敗,調(diào)用故障安全程序。

這一區(qū)域根據(jù)設(shè)備及應(yīng)用有不同的配置。用戶必須為堆棧定義足夠的區(qū)域,并保證pattern正確放置。下圖是程序中RAM的簡要分配圖,其中灰色部分是相比較于常規(guī)應(yīng)用,支持自檢需要額外添加的部分。

wKgZomUDwgKAAj9aAADfSZiNQks517.png

wKgaomUDwgWAAM4DAAFD-cdt0WE647.png

局部RAM運(yùn)行時檢測

運(yùn)行時的RAM自檢是在systick中斷函數(shù)中進(jìn)行的。因?yàn)檫\(yùn)行中不允許破壞應(yīng)用部分RAM,所以測試只覆蓋分配給CLASS B變量的那部分內(nèi)存。測試流程方法概要描述如下:

·測試根據(jù)systick時基分批次進(jìn)行,每次測試按照CLASS B部分4個字的區(qū)域偏移,為保障耦合故障覆蓋率,每次測試的實(shí)際內(nèi)存塊還包括測試區(qū)域前后各1個相鄰字,總共6個字。

·首先將待測試內(nèi)存塊(RAM block)的數(shù)據(jù)存儲到專門用于測試過程中臨時保存數(shù)據(jù)的緩沖塊(buffer block)

·然后跟啟動時檢測RAM類似, 對測試內(nèi)存塊(RAM block)采用March C算法測試,同樣可以選擇加擾模式(scramble)或者標(biāo)準(zhǔn)模式(standard)

·測試完成后將緩沖塊(buffer block)中保存的數(shù)據(jù)恢復(fù)至測試內(nèi)存塊(RAM block)。

wKgZomUDwgaABqDDAAE0xrHucgE858.png

工程配置

Keil中添加bat文件

wKgaomUDwgiAU0TqAAITpZ2HZIs428.png

添加ini文件

wKgZomUDwgmAUxZTAADb67Z-_Sg333.jpg

分散加載文件配置

wKgaomUDwguAYf__AADpWRm8Whs854.jpg

編譯結(jié)果

wKgZomUDwgyAFY4IAADHK4_jAAM005.jpg

運(yùn)行結(jié)果

wKgaomUDwg6AY58QAAEBNX2-wpI067.jpg

以上是本次介紹的IEC_60335_CLASSB軟件庫,如需更多了解SWM芯片信息請聯(lián)系華芯微特技術(shù)人員。

來源:華芯微特32位MCU

免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進(jìn)行處理

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    16989

    瀏覽量

    350306
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5317

    瀏覽量

    120005
  • RAM
    RAM
    +關(guān)注

    關(guān)注

    8

    文章

    1367

    瀏覽量

    114530
  • 檢測
    +關(guān)注

    關(guān)注

    5

    文章

    4437

    瀏覽量

    91370
  • 軟件庫
    +關(guān)注

    關(guān)注

    0

    文章

    15

    瀏覽量

    7761
收藏 人收藏

    評論

    相關(guān)推薦

    極海APM32F030系列MCU通過IEC60730軟件安全認(rèn)證

    ? 隨著物聯(lián)網(wǎng)的飛速發(fā)展,越來越多智能家電走進(jìn)我們的生活,針對家電產(chǎn)品日益增長的安全功能需求,近日極海APM32F030系列MCU順利通過IEC60730軟件安全認(rèn)證,并可提供符合IEC603
    的頭像 發(fā)表于 05-26 14:06 ?2814次閱讀
    極海APM32F030系列<b class='flag-5'>MCU</b>通過<b class='flag-5'>IEC</b>60730<b class='flag-5'>軟件</b>安全認(rèn)證

    IEC60335-1

    IEC60335-1IEC60730 Annex HThe standard applies to electronic controls and controls using software
    發(fā)表于 09-12 10:48

    TUV認(rèn)證的標(biāo)準(zhǔn)以IEC60335為基礎(chǔ)

    世界各地的家電法規(guī),均以IEC標(biāo)準(zhǔn)IEC60335為基礎(chǔ)。其中,歐洲標(biāo)準(zhǔn)與國際標(biāo)準(zhǔn)最為接近,例如TUV認(rèn)證。歐洲標(biāo)準(zhǔn)分為兩大部分:第一部分EN60335-1是對家電的綜合要求;第二部分EN60
    發(fā)表于 05-11 15:54

    AN4435_基于STM32系列MCU實(shí)現(xiàn)UL_CSA_IEC60730_60335_Class_B安全規(guī)范的設(shè)計(jì)指南

    本文檔適用于STM32產(chǎn)品全系列,是關(guān)于基于STM32實(shí)現(xiàn)UL/CSA/IEC60730/60335 Class B安全規(guī)范的應(yīng)用筆記。通過本文檔和相關(guān)X-Cube-ClassB軟件
    發(fā)表于 11-02 18:22

    家電IEC60335-1總標(biāo)準(zhǔn)測試報(bào)告

    60335-2-65-2008冷氣機(jī)家用和類似用途電器的安全.第2-40部分:電動熱泵、空調(diào)器和去濕器的特殊要求IEC 60335-2-40-2006空氣清新機(jī)家用和類似電器的安全.第2-101部分
    發(fā)表于 04-16 19:19

    IEC60335 ClassB ST MCU軟件介紹

    IEC60730的附錄H(H.2.22)中對軟件進(jìn)行了分類A類軟件軟件僅實(shí)現(xiàn)產(chǎn)品的功能,不涉及產(chǎn)品的安全控制。比如室用恒溫器的軟件,燈光控
    發(fā)表于 09-12 07:32

    AT32_IEC 60730_CLASSB軟件使用指南

    AT32_IEC 60730_CLASSB軟件使用指南描述了AT32系列的MCU如何執(zhí)行IEC
    發(fā)表于 10-24 06:40

    iec 60335-1:2001

    iec 60335-
    發(fā)表于 09-12 11:18 ?11次下載

    極海APM32F030系列MCU通過IEC 60730軟件安全認(rèn)證

    隨著物聯(lián)網(wǎng)的飛速發(fā)展,越來越多智能家電走進(jìn)我們的生活,針對家電產(chǎn)品日益增長的安全功能需求,近日極海APM32F030系列MCU順利通過IEC 60730軟件安全認(rèn)證,并可提供符合IEC
    的頭像 發(fā)表于 05-25 11:50 ?1967次閱讀

    AN4435_基于STM32系列MCU實(shí)現(xiàn)UL_CSA_IEC60730_1_60335-1_Class_B安全規(guī)范的設(shè)計(jì)指南

    AN4435_基于STM32系列MCU實(shí)現(xiàn)UL_CSA_IEC60730_1_60335-1_Class_B安全規(guī)范的設(shè)計(jì)指南
    發(fā)表于 11-21 17:07 ?1次下載
    AN4435_基于STM32系列<b class='flag-5'>MCU</b>實(shí)現(xiàn)UL_CSA_<b class='flag-5'>IEC60730_1_60335</b>-1_Class_B安全規(guī)范的設(shè)計(jì)指南

    AN4435_基于STM32系列MCU實(shí)現(xiàn)UL_CSA_IEC60730-1_60335-1_Class_B安全規(guī)范的設(shè)計(jì)指南

    AN4435_基于STM32系列MCU實(shí)現(xiàn)UL_CSA_IEC60730-1_60335-1_Class_B安全規(guī)范的設(shè)計(jì)指南
    發(fā)表于 11-21 17:07 ?2次下載
    AN4435_基于STM32系列<b class='flag-5'>MCU</b>實(shí)現(xiàn)UL_CSA_<b class='flag-5'>IEC60730-1_60335</b>-1_Class_B安全規(guī)范的設(shè)計(jì)指南

    AN4435_基于STM32系列MCU實(shí)現(xiàn)UL_CSA_IEC60730_60335_Class_B安全規(guī)范的設(shè)計(jì)指南

    AN4435_基于STM32系列MCU實(shí)現(xiàn)UL_CSA_IEC60730_60335_Class_B安全規(guī)范的設(shè)計(jì)指南
    發(fā)表于 11-21 17:07 ?0次下載
    AN4435_基于STM32系列<b class='flag-5'>MCU</b>實(shí)現(xiàn)UL_CSA_<b class='flag-5'>IEC60730_60335</b>_Class_B安全規(guī)范的設(shè)計(jì)指南

    國際電工委員會(IEC)發(fā)布了第7版IEC 60335-2-40

    2022年5月25日, 國際電工委員會(IEC)發(fā)布了第7版IEC 60335-2-40, 家用和類似用途電器的安全第2部分:熱泵、空調(diào)器和除濕機(jī)的特殊要求;該版本在舊版IEC60335
    的頭像 發(fā)表于 07-20 17:49 ?2126次閱讀
    國際電工委員會(<b class='flag-5'>IEC</b>)發(fā)布了第7版<b class='flag-5'>IEC</b> <b class='flag-5'>60335</b>-2-40

    復(fù)旦微MCUIEC60730 Class B軟件

    復(fù)旦微MCUIEC60730 Class B軟件
    的頭像 發(fā)表于 09-26 16:58 ?1317次閱讀
    復(fù)旦微<b class='flag-5'>MCU</b><b class='flag-5'>之</b><b class='flag-5'>IEC</b>60730 Class B<b class='flag-5'>軟件</b><b class='flag-5'>庫</b>

    極海APM32F003 MCU通過IEC 60730/60335功能安全認(rèn)證

    近日,極海APM32F003系列工業(yè)級超值型MCU,已順利通過IEC 60730/60335功能安全認(rèn)證,并可提供符合CLASS B標(biāo)準(zhǔn)的功能安全設(shè)計(jì)套件,有助于客戶減少認(rèn)證時間與成本,快速推出穩(wěn)定可靠的終端產(chǎn)品。
    的頭像 發(fā)表于 01-08 18:04 ?866次閱讀
    極海APM32F003 <b class='flag-5'>MCU</b>通過<b class='flag-5'>IEC</b> 60730/<b class='flag-5'>60335</b>功能安全認(rèn)證