女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

    文章

    5434

    瀏覽量

    124443
  • STM8
    +關注

    關注

    18

    文章

    392

    瀏覽量

    57858
  • 標準外設庫
    +關注

    關注

    0

    文章

    16

    瀏覽量

    3701
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    STP08CP05 低壓低電流8位移位寄存器數據手冊

    STP08CP05 是一款單片、低電壓、低電流、高功率 8 位移位寄存器,專為 LED 面板顯示而設計。STP08CP05包含一個 8 位 serial-in, parallel-o
    的頭像 發表于 04-16 18:10 ?405次閱讀
    STP08CP05 低壓低電流<b class='flag-5'>8</b>位移位<b class='flag-5'>寄存器</b>數據手冊

    74HC594-Q100;74HCT594-Q100帶輸出寄存器8位移位寄存器規格書

    電子發燒友網站提供《74HC594-Q100;74HCT594-Q100帶輸出寄存器8位移位寄存器規格書.pdf》資料免費下載
    發表于 02-09 15:19 ?0次下載
    74HC594-Q100;74HCT594-Q100帶輸出<b class='flag-5'>寄存器</b>的<b class='flag-5'>8</b>位移位<b class='flag-5'>寄存器</b>規格書

    24l01寄存器列表指南免費下載

      寄存器的功能是存儲二進制代碼,它是由具有存儲功能的觸發組合起來構成的。一個觸發可以存儲1位二進制代碼,故存放n位二進制
    發表于 01-22 17:25 ?1次下載

    STC15系列常用寄存器匯總免費下載

      寄存器的功能是存儲二進制代碼,它是由具有存儲功能的觸發組合起來構成的。一個觸發可以存儲1位二進制代碼,故存放n位二進制
    發表于 01-22 17:24 ?9次下載

    調試ADS1259遇到讀取寄存器返回隨機的問題,怎么解決?

    你好,我最近在調試ADS1259這款芯片,遇到讀取寄存器返回隨機的問題, 邏輯分析儀抓的圖如下: 參照官方的資料,返回的第三個字符應該是config0的默認值,即10xx0101b,但是現在
    發表于 12-06 07:19

    寫單個線圈與單個保持寄存器相關

    05功能用于將單個線圈寄存器(或離散輸入)設置為ON或OFF,該功能支持廣播模式在廣播模式下,所有從站設備的同一地址的值將被統一修改。查詢報文中的ON/OFF狀態由報文數據字段的常數指定
    的頭像 發表于 11-01 13:46 ?714次閱讀

    Modbus協議的讀取保持寄存器

    功能用于讀取從設備保持寄存器的內容,不支持廣播模式。消息頓中指定了需要讀取的保持寄存器的起始地址和數目。而保持寄存器中各地址的具體內容和意義則由設備開發者自行規定。
    的頭像 發表于 10-30 10:54 ?3895次閱讀

    接口的控制與狀態寄存器什么作用

    接口的控制與狀態寄存器(Control and Status Registers,簡稱CSR)是計算機系統中用于控制和監控硬件設備操作的寄存器。它們是硬件設備與其驅動程序之間的橋梁,允許軟件控制硬件
    的頭像 發表于 10-17 10:42 ?1521次閱讀

    TAS5805寄存器中,有沒有寄存器用來指示當前輸出幅值大小的?

    問一下 TAS5805寄存器中,有沒有寄存器用來指示當前輸出幅值大小的? 就是說,輸出到喇叭的信號大小,這個能不能從寄存器中讀出來?
    發表于 10-15 07:42

    寄存器間接尋址和寄存器尋址的區別

    寄存器間接尋址和寄存器尋址是計算機體系結構中兩種重要的尋址方式,它們在指令執行過程中起著關鍵作用。下面將從定義、原理、特點、應用場景以及區別等方面對這兩種尋址方式進行詳細闡述。
    的頭像 發表于 10-05 17:13 ?3670次閱讀

    ARM寄存器的分類及功能

    ARM寄存器是ARM處理內部的重要組成部分,它們在處理的運算、控制以及數據存儲等方面發揮著至關重要的作用。下面,我們將從ARM寄存器的定義、結構、分類以及功能等多個方面進行詳細闡述
    的頭像 發表于 09-05 14:18 ?2929次閱讀

    通用寄存器是什么意思

    在計算機體系結構中,通用寄存器是中央處理(CPU)內部最為核心和基礎的組成部分之一。它們被設計為能夠存儲和傳輸各種類型的數據和指令,是CPU進行數據處理和運算的關鍵工具。通用寄存器不僅在程序的執行過程中起著至關重要的作用,還直
    的頭像 發表于 09-05 14:13 ?2324次閱讀

    寄存器的類型和作用

    在計算機科學中,寄存器(Register)是一種高速存儲單元,它位于CPU內部,與CPU的運算單元和邏輯控制單元緊密相連。寄存器的主要作用是暫時存儲指令、操作數和地址等臨時數據,以便CPU快速訪問和處理。由于寄存器直接集成在CP
    的頭像 發表于 09-05 14:11 ?4762次閱讀

    寄存器故障分析

    寄存器故障分析是計算機硬件維護與系統穩定性保障中的重要環節。寄存器作為計算機中的關鍵組成部分,負責存儲和傳輸數據,其穩定性和可靠性直接影響到整個計算機系統的性能。以下是對寄存器故障的全面分析,包括故障類型、故障現象、故障原因及診
    的頭像 發表于 08-29 11:26 ?2169次閱讀

    寄存器是什么意思?寄存器是如何構成的?

    在計算機科學中,寄存器(Register)是一個高速存儲單元,它位于中央處理(CPU)內部,用于存儲計算機程序執行過程中所需要的數據、指令地址或狀態信息。寄存器是計算機體系結構中至關重要的組成部分,對計算機的運算速度和性能有著
    的頭像 發表于 08-02 18:23 ?7518次閱讀
    <b class='flag-5'>寄存器</b>是什么意思?<b class='flag-5'>寄存器</b>是如何構成的?