Hirdetés

Új hozzászólás Aktív témák

  • ecaddsell

    aktív tag

    válasz gyapo11 #12562 üzenetére

    ESP32
    #include "xtensa/core-macros.h"
    uint32_t start, stop;
    ...
    start = xthal_get_ccount();
      <kód amit mérni akarsz>
    stop = xthal_get_ccount();

    A különbséget meg kiírod soros porton, USB-n stb.

    Hiába mutatod meg a forrás valami programnak, ha a háttérben az interruptok viszik az időt, meg néha cache miss van a nagyobb kód miatt, ez lehet csak ESP32, vagy mondjuk STM32-nél meg pl. bus matrix hozzáférés korlát van (az STM32 bus matrixot érdemes kicsit megnézni, tanulságos, hogy működik egy modern MCU).
    A profilerek is tényleges futást mérnek és sok esetben egyszerűbb tickcount-ot nézni (ez majdnem mindenütt van) mint a toolokkal (ha van egyáltalán) küzdeni.

    Egyébként az iopin toggle is ugyanez. Az állapotváltás közzé teszed a kódot amit mérsz és szkópon vagy multiméteren nézed az eredményt. Itt is a HW bütykölés csupán a pin váltás nézése.

    De felőlem azt csinálsz amit akarsz, elég sok infót bedobtam már, lehet többiek tudnak olyan progiról amit keresel, nem hiszem, hogy olyan egyszerűen működik mint gondolod, legalábbis ha tényleg komoly időzítési kritériumok vannak.

Új hozzászólás Aktív témák