色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何為STM32編程節省代碼空間?在IAR中配置CRC參數有竅門

STM32單片機 ? 來源:未知 ? 作者:電子大兵 ? 2017-09-06 17:38 ? 次閱讀

前言

STM32全系列產品都具有CRC外設,對CRC的計算提供硬件支持,為應用程序節省了代碼空間。CRC校驗值可以用于數據傳輸中的數據正確性的驗證,也可用于數據存儲時的完整性檢查。在IEC60335中,也接受通過CRC校驗對FLASH的完整性進行檢查。在對FLASH完整性檢查的應用中,需要事先計算出整個FLASH的CRC校驗值(不包括最后保存CRC值的字節),放在FLASH的末尾。在程序啟動或者運行的過程中重新用同樣的方法計算整個FLASH的CRC校驗值,然后與保存在FLASH末尾的CRC值進行比較。

EWARM從v5.5版本之后開始支持STM32芯片的CRC計算。前面所說的計算整個FLASH的CRC校驗值并保存在FLASH末尾的過程,可以在IAR中完成。通過配置EWARM的CRC計算參數,自動對整個FLASH空間進行CRC計算,并將計算結果放到FLASH的末尾。本文中將介紹的就是如何配置IAR的CRC參數,使之與STM32的CRC硬件模塊保持一致。本文中的例子都基于STM32F072進行。

STM32的CRC外設CRC校驗值的計算采用多項式除法,可以通過除數和被除數進行異或運算實現。這種方法非常適合通過硬件電路來實現。使用STM32CRC外設時,你要考慮的內容包括:采用哪個CRC生成多項式,輸入數據(要進行校驗的數據)和初始值。

1.生成多項式默認使用CRC32多項式:0x4C11DB7

部分芯片支持可編程的多項式,比如STM32F3,STM32F0,STM32L0

2.初始值STM32的CRC初始值默認為0xFFFFFFFF,STM32F3,STM32F0,STM32L0系列可以修改初始值

3.輸入/輸出數據的反轉STM32F3,STM32F0,STM32L0系列還提供了對輸入/輸出數據進行反轉的功能。默認不對輸入數據和輸出數據進行位反轉

· 對輸入數據的位反轉操作可以設置為按字節/半字 /字為單元進行操作。例如輸入數據為0x1A2B3C4D, o 每個字節內逐位反轉,結果是0x58D43CB2 o 每半字內逐位反轉,結果是0xD458B23C o 每個字長內逐位反轉,結果是0xB23CD458· 對輸出數據的位反轉。 o 例如輸出數據為0x11223344,反轉后為0x22CC4488

IAR的CRC配置

1.修改Link文件指定checksum在FLASH中的存儲位置,在Link文件中增加下面語句。

該語句指定將CRC的值放在FLASH的末尾位置。是整個FLASH空間的末尾,不是應用程序的代碼末尾。這樣,CRC值的位置就是固定的。不會隨代碼大小而變化。

2.配置Checksum頁面的參數

IAR Checksum頁說明(v6.4及以上)

IAR的checksum頁面分為兩個部分。第一部分,也就是紅線圈出的部分。定義了FLASH中需要計算CRC的范圍和空閑字節填充值。剩下的部分,就是對checksum計算參數的設定部分。 Checksum size :選擇checksum的大小(字節數) Alignment:指定checksum的對齊方式。不填的話默認2字節對齊。

Algorithm:選擇checksum的算法 Complement:是否需要進行補碼計算。選擇“Asis”就是不進行補碼計算。 Bit order:位輸出的順序。MSB first,每個字節的高位在前。LSB first,每個字節的低位在前。 Reverse byte order within word: 對于輸入數據,在一個字內反轉各個字節的順序。 Initial value: checksum計算的初始化值 Checksum unit size :選擇進行迭代的單元大小,按8-bit,16-bit還是32-bit進行迭代。

3.STM32 CRC外設使用默認配置時IAR的配置STM32CRC外設的配置:

POLY= 0x4C11DB7(CRC32) Initial_Crc = 0Xffffffff 輸入/輸出數據不反轉 輸入數據:0x08000000~0x0801FFFB。(最后4個字節用來放計算出的CRC值)

具體使用中我們可以根據實際應用需求參照上面介紹做相應配置即可。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • STM32
    +關注

    關注

    2270

    文章

    10923

    瀏覽量

    357036
  • IAR
    IAR
    +關注

    關注

    5

    文章

    354

    瀏覽量

    36747
  • C語言編程
    +關注

    關注

    6

    文章

    90

    瀏覽量

    21134

原文標題:如何在IAR中配置CRC參數

文章出處:【微信號:STM32_STM8_MCU,微信公眾號:STM32單片機】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    如何在IAR Embedded Workbench配置生成對應代碼區域的CRC校驗碼

    “使用IAR Embedded Workbench和MCU的CRC模塊來檢查代碼的完整性”一文,介紹了如何在
    的頭像 發表于 10-27 11:49 ?1748次閱讀
    如何在<b class='flag-5'>IAR</b> Embedded Workbench<b class='flag-5'>中</b><b class='flag-5'>配置</b>生成對應<b class='flag-5'>代碼</b>區域的<b class='flag-5'>CRC</b>校驗碼

    IAR Embedded Workbench中計算多個地址區間的Checksum

    在前面的文章“使用IAR Embedded Workbench和MCU的CRC模塊來檢查代碼的完整性”中介紹了如何在IAR Embedded Workbench
    的頭像 發表于 01-05 12:33 ?1620次閱讀
    <b class='flag-5'>在</b><b class='flag-5'>IAR</b> Embedded Workbench中計算多個地址區間的Checksum

    STM32CRC外設如何設置

    本文中將介紹的就是如何配置IARCRC參數,使之與STM32CRC硬件模塊保持一致。本文中的
    的頭像 發表于 09-28 06:05 ?1.7w次閱讀

    如何在IAR配置CRC參數

    前言STM32全系列產品都具有CRC外設,對CRC的計算提供硬件支持,為應用程序節省代碼空間。
    發表于 09-06 16:01

    請問如何在IAR配置CRC參數?

    前言 STM32全系列產品都具有CRC外設,對CRC的計算提供硬件支持,為應用程序節省代碼空間
    發表于 07-02 02:32

    請問IAR如何直接查看任務使用多少棧空間?

    使用IAR調試freertos任務,IAR自帶了一個調試插件,啟用這個插件會得到任務名、優先級、棧起始空間和棧頂位置,但是如何計算出每個
    發表于 06-10 09:25

    探討一下stm32軟件編程

    參數設置的外圍和中間件模式和初始化。CubeMX生成的代碼可以KEIL、IAR、GCC等編程軟件上面使用。簡單理解,就是CubeMX軟件是
    發表于 02-21 07:34

    stm32IAR程序項目模板

    stm32IAR程序項目模板源代碼,下來看看。
    發表于 05-20 16:29 ?33次下載

    CRC校驗 、STM32CRC計算單元、 CRC應用

    CRC校驗、STM32CRC計算單元、CRC應用
    的頭像 發表于 03-04 13:54 ?6176次閱讀

    IARIDE Options 的Project配置選項

    IARIDE Options的Project配置選項
    的頭像 發表于 03-07 16:47 ?4369次閱讀

    如何配置IARCRC參數STM32)資料下載

    電子發燒友網為你提供如何配置IARCRC參數STM32)資料下載的電子資料下載,更有其他相關的電路圖、源
    發表于 04-07 08:54 ?15次下載
    如何<b class='flag-5'>配置</b><b class='flag-5'>IAR</b>的<b class='flag-5'>CRC</b><b class='flag-5'>參數</b>(<b class='flag-5'>STM32</b>)資料下載

    iar stm32_吃透單片機編程軟件,IAR單片機編程軟件創建stm32工程

    本文能夠有所收獲哦。版本1:stm32是一個當下非常流行的微控制器,很多人都加入了學習stm32的行列,常用的stm32編譯器
    發表于 11-30 10:21 ?15次下載
    <b class='flag-5'>iar</b> <b class='flag-5'>stm32</b>_吃透單片機<b class='flag-5'>編程</b>軟件,<b class='flag-5'>IAR</b>單片機<b class='flag-5'>編程</b>軟件創建<b class='flag-5'>stm32</b>工程

    STM32開發,使用IAR軟件建立工程

    STM32開發,使用IAR軟件建立工程1 概述1.1 資源概述1.2 IAR建立工程2 IAR
    發表于 12-03 10:51 ?14次下載
    <b class='flag-5'>STM32</b>開發,使用<b class='flag-5'>IAR</b>軟件建立工程

    AN4187 STM32系列CRC外設的使用方法

    AN4187 STM32系列CRC外設的使用方法
    發表于 11-21 17:07 ?1次下載
    AN4187 <b class='flag-5'>在</b><b class='flag-5'>STM32</b>系列<b class='flag-5'>中</b><b class='flag-5'>CRC</b>外設的使用方法

    STM32系列中使用CRC外設

    電子發燒友網站提供《STM32系列中使用CRC外設.pdf》資料免費下載
    發表于 08-01 09:23 ?0次下載
    <b class='flag-5'>在</b><b class='flag-5'>STM32</b>系列中使用<b class='flag-5'>CRC</b>外設
    主站蜘蛛池模板: 日韩一区二区三区精品| 蜜臀亚洲AV永久无码精品老司机| 大地影院免费观看视频| 国产日韩在线欧美视频| 蜜桃AV色欲A片精品一区| 天堂岛www天堂资源在线| 最新国产亚洲亚洲精品视频| 国产久久re6免费热在线| 男人日女人的b| 亚洲色综合狠狠综合区| 高清国产在线播放成人| 国产精品久久久久影院| 乱爱性全过程免费视频| 国语自产一区第二页| 在线免费视频a| 神马电影dy888午夜我不卡| 久久精品视频在线看15| 国产国产乱老熟视频网站| 女张腿男人桶羞羞漫画| 一一本之道高清手机在线观看 | 国产成人久久婷婷精品流白浆| 恋孩癖网站大全在线观看| 亚洲精品卡2卡3卡4卡5卡区| 灌满内射HP1V1| 日韩一本在线| 妇少水多18P蜜泬17P亚洲乱| 欧美一区二区三区男同| 欧美午夜福利主线路| 九九电影伦理片| 国产成人免费高清在线观看| 538prom国产在线视频一区| 亚洲 日韩 色 图网站| 国产国产人免费观看在线视频| 色戒无删减流畅完整版| 宝贝你骚死哥了好爽| 嫩草影院一区| 99视频在线免费| 捏奶动态图吃奶动态图q| 66美女人体| 欧美高清69vivo| yellow在线中文|