在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

新版IAR調試查看寄存器問題 STM8代碼大小優化問題

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 2020-03-07 16:13 ? 次閱讀

今天寫兩個后臺問的較多的問題,如標題所示:

1.新版IAR調試查看寄存器問題;

2.STM8代碼大小優化問題;

1新版IAR調試查看寄存器問題

從去年上半年開始,IAR將各開發環境逐漸進行了大升級,首先是將EWARM從V7升級到了V8。然后,陸續將EW430、EWAVR等進行了升級。

什么是新版IAR?圖標是黑色那種,如EWARM V8.2、 EWSTM8 V3.1。如下圖:

老版本IAR,扳手工具圖標。如下圖:

許多小伙伴安裝了新版的IAR,不管是EWARM、EW430還是EWSTM8,都出現了一個問題:調試時,“不能”查看外設寄存器了。

如下面動畫,查看了各主菜單,以及View視圖各個子菜單,都沒有如之前那種可以直接查看寄存器的窗口:

而老版本就會有如下圖可以直接查看寄存器的窗口:

說實話,我這一年很多時間都是在寫業務邏輯相關的代碼,這個功能這一年沒去在意過。很多朋友在后臺問我,我也沒抽時間去研究。

這不前面寫了一篇在較小資源上跑一個實時操作系統,后臺有朋友問了該如何優化代碼,我大概回答了一點可以優化標準外設庫為操作寄存器,所以使用到了該功能,所以我就抽時間看了一下這個功能。

好了,不賣關子了,直接說答案吧,操作基本一樣,只是新版IAR隱藏了下拉選項。直接看下圖你就會明白。

新版IAR調試查看寄存器方法

進入調試模式 -> View -> Registers(1-4都行) -> CPURegister右鍵 -> ViewGroup,此時你就可以選擇了,如下圖:

相信到這里,你不可能不會了。

2

STM8代碼大小優化問題

因為前面寫了一篇文章《一款可以在STM8上運行的實時操作系統Atomthreads》,很多朋友問,像8K的FLASH資源跑一個系統,寫點應用程序都用完了。

既然使用STM8可以跑系統,資源的問題肯定有關系。但如果你選定了該芯片,想辦法或許是可以解決的呢。

這么說吧,我在STM8S003(1K RAM 8K FALSH)跑四個線程,還有兩個隊列,沒有出現什么問題。

本節我簡單說兩點比較常見的優化STM8代碼的方法:

1.不使用標準外設庫自帶的斷言

在表準外設庫里面常看類似如下代碼:

assert_param(IS_GPIO_MODE_OK(GPIO_Mode));

assert_param(IS_GPIO_PIN_OK(GPIO_Pin));

這就是庫自帶用于檢查參數的代碼,但如果資源有限,可以在最終關閉斷言代碼。(調試時可以選擇代碼兼容的大容量芯片調試)。

在stm8s_conf.h中屏蔽即可:

2.將標準外設庫修改成直接操作寄存器

使用表準外設庫配置,通過在線調試,查看寄存器值,最后直接寫寄存器代碼即可。類似如下:

在線調試查看寄存器方法看上一章節內容。本文內容就此結束,希望對你有幫助!

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

    關注

    31

    文章

    5343

    瀏覽量

    120365
  • STM8
    +關注

    關注

    18

    文章

    392

    瀏覽量

    56793
  • 標準外設庫
    +關注

    關注

    0

    文章

    16

    瀏覽量

    3552
收藏 人收藏

    評論

    相關推薦

    寄存器有哪幾種?可以實現什么功能?

    寄存器是計算機中最基本的寄存器類型,用于存儲數據和指令。它們通常具有相同的大小和功能,可以用于執行各種操作。通用寄存器的數量和大小因計算機架
    的頭像 發表于 07-12 10:32 ?1141次閱讀

    寄存器分為基本寄存器和什么兩種

    寄存器是計算機中用于存儲數據的高速存儲單元,它們是CPU內部的重要組成部分。寄存器可以分為基本寄存器和擴展寄存器兩種類型。 一、基本寄存器
    的頭像 發表于 07-12 10:31 ?1374次閱讀

    在VSCODE中打開了OPENOCD ,可以進行DEBUG調試,如何查看寄存器的值?

    在VSCODE 中打開了 OPENOCD ,可以進行DEBUG 調試,但是如何查看 某個寄存器 的值呢。
    發表于 06-21 08:07

    用的IAR For STM8新版本3.10.2 ,編譯提示錯誤的原因?

    用的IAR For STM8新版本3.10.2 ,編譯提示錯誤Error[Li005]: no definition for \"main\" [referenced from cstartup.o(dlstm
    發表于 04-30 08:00

    帶輸出寄存器的汽車類8位移位寄存器SN74LV8T594-Q1數據表

    電子發燒友網站提供《帶輸出寄存器的汽車類8位移位寄存器SN74LV8T594-Q1數據表.pdf》資料免費下載
    發表于 04-29 10:07 ?0次下載
    帶輸出<b class='flag-5'>寄存器</b>的汽車類<b class='flag-5'>8</b>位移位<b class='flag-5'>寄存器</b>SN74LV<b class='flag-5'>8</b>T594-Q1數據表

    IAR FOR STM8 v3.10.4調試時軟件崩潰的原因?

    環境:ide是iar for stm8 v3.10.4 版本, 芯片stm8L051,調試器是Risym 的ST-LINK v2, swim連接 部分程序如下: void main(
    發表于 04-26 08:29

    安裝最新版IAR for stm8無法燒寫程序怎么解決?

    我有兩臺電腦分別安裝win7和win10,并都安裝了最新版IAR for stm8(V3.10)。win10系統那臺沒有任何問題,win7那臺無法燒寫程序一直提示“Failed
    發表于 04-22 07:49

    STM8IAR編輯調用串口2函數報錯的原因?

    新手入門STM8,資料是用眾拳的,,新手求助,為什么STM8使用IAR編輯,程序是網上眾拳的教程,為什么修改不了庫函數的c文件,文件在編輯
    發表于 04-17 08:23

    請問STM8中的RAM會像51系列一樣有一段初始化清零代碼嗎?

    最近在做防止復位腳復位的程序,想利用RAM的保存數據特性做一段復位恢復,STM8 中的RAM會像51系列一樣有一段初始化清零代碼嗎?
    發表于 04-16 06:49

    STVP燒錄stm8的hex文件不運行,但在IAR for stm8調試正常,為什么?

    請教各位高手一個問題,我用IAR for stm8調試模式下一切正常的程序,但是變成release模式下生成hex文件以后,用STVP燒錄卻不能運行,應該說是大部分時候不能運行,偶爾極少數情況下
    發表于 04-10 08:17

    新裝IAR準備上手stm8,安裝完后,licence彈出安裝stm8庫,為什么?

    新裝IAR準備上手stm8,安裝完后,licence彈出安裝stm8庫,可是安裝失敗。提示沒有許可。請問如何安裝解決? 查看了licence,里面是有STM
    發表于 04-09 06:49

    IAR FOR ARM和IAR FOR STM8無法共存怎么解決?

    IAR FOR ARM和IAR FOR STM8無法共存, 先用的ARM開發STM32,最近有個STM8的要開發。 電腦:WIN10 64位。 ARM版本:EWARM-CD-8321
    發表于 04-07 07:39

    AFE模擬前端寄存器讀取操作

    AFE模擬前端寄存器讀取操作是電子系統設計和調試中不可或缺的一環。寄存器作為AFE模擬前端中的重要組成部分,存儲著各種配置參數和狀態信息,通過讀取這些寄存器,工程師可以了解AFE的工作
    的頭像 發表于 03-15 15:50 ?712次閱讀

    如何根據自己設計中的寄存器配置總線定義來生成一套寄存器配置模版

    無論是FPGA還是ASIC,系統設計中總會存在配置寄存器總線的使用,我們會將各種功能、調試寄存器掛載在寄存器總線上使用。
    的頭像 發表于 03-04 13:56 ?1149次閱讀
    如何根據自己設計中的<b class='flag-5'>寄存器</b>配置總線定義來生成一套<b class='flag-5'>寄存器</b>配置模版

    arm三個寄存器在gdb調試時的作用

    arm三個寄存器在gdb調試時作用? ARM是一種廣泛使用的微處理架構,它廣泛應用于移動設備、嵌入式系統和其他高性能計算設備。當我們在使用gdb(GNU調試器
    的頭像 發表于 01-31 10:44 ?991次閱讀
    主站蜘蛛池模板: 超级香蕉97视频在线观看一区| 午夜h| 久久国内视频| 1000又爽又黄禁片| 天天躁夜夜躁狠狠躁2021西西| 91福利视频免费| 四虎永久在线精品2022| 国产中文字幕一区| 香港三级理论在线观看网站| 日本免费xxxx色视频| 国产亚洲精品在天天在线麻豆| 亚洲黄色网址在线观看| 九九国产精品| 伊人草| 你懂的网站在线播放| 不卡中文字幕在线| 欧美一级看片a免费观看| 精品欧美| 亚洲男人精品| 欧美日韩一区在线观看| 成人免费看片视频色多多| 欧美天天色| 正在播放久久| 免费视频淫片aa毛片| 夜夜夜夜夜夜夜猛噜噜噜噜噜噜| 久久riav国产精品| 亚洲四虎| 在线好吊色视频98gao| 在线黄色网| 色批网站| 777成了人乱视频| 4444狠狠| 色多多在线观看高清免费| 都市激情亚洲综合| 99久免费精品视频在线观看2| 综合99| 久久这里只有精品免费视频| 天天搞一搞| 欧美一区亚洲二区| 欧美三级一区二区| 国产在线免|