Hirdetés

Keresés

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

  • Szirty

    őstag

    válasz drgab #2916 üzenetére

    Helló drgab!

    Egy screenshot sokat mondott volna arról mit hogyan csináltál.
    Kipróbáltam, nálam működik, így csináltam:

    Amikor M200.0 +-ból 0-be vált, akkor lép egyet, majd beírja M200.1 pillanatnyi állapotát a shift regiszter elejére (M222.0-ba). 3 bitet tol el balra, az eredmény M222.2-es biten jön ki.

    "reset:???? ez miért kell? és mi lesz"

    Ha a RESET TRUE amikor a blokk lefut, akkor törli a shift regisztert (avagy annak összes bitjébe nullát ír).
    "Whenever the RESET input is set to 1, the locations in the table are set to 0 rather than being shifted."
    Hogy kell-e, azt döntsd el te. :) Van, ez egy lehetőség, nem kell kihasználni ha nincs rá szükség.

    Bár ennek a blokknak a használata kényelmes (ez a blokk inkább akkor kap fontos szerepet ha több mint 32 bitet kell léptetni), de megjegyzem, hogy vannak bit léptető (shift és rotate) utasítások is:
    Létrában és FBD-ben: SHR_I, SHR_DI, SHR_W, SHR_DW, SHL_I, SHL_DI, SHL_W, SHL_DW, ROL_DV, ROR_DW. Azokkal is megoldható a feladat.

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