abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 19:44 | Nová verze

    Byla vydána verze 9.1 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 1
    včera 17:44 | IT novinky

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem zůstává El Capitan od HPE (Cray) s výkonem 1,809 exaFLOPS. Druhý Frontier má výkon 1,353 exaFLOPS. Třetí Aurora má výkon 1,012 exaFLOPS. Nejvýkonnější superpočítač v Evropě JUPITER Booster s výkonem 1,000 exaFLOPS je na čtvrtém místě. Nejvýkonnější český superpočítač C24 klesl na 192. místo. Karolina, GPU partition klesla na 224. místo a Karolina, CPU partition na 450. místo. Další přehledy a statistiky na stránkách projektu.

    Ladislav Hagara | Komentářů: 1
    včera 17:22 | IT novinky

    Microsoft představil Azure Cobalt 200, tj. svůj vlastní SoC (System-on-Chip) postavený na ARM a optimalizovaný pro cloud.

    Ladislav Hagara | Komentářů: 0
    včera 12:00 | IT novinky

    Co způsobilo včerejší nejhorší výpadek Cloudflare od roku 2019? Nebyl to kybernetický útok. Vše začalo změnou oprávnění v jednom z databázových systémů a pokračovalo vygenerováním problém způsobujícího konfiguračního souboru a jeho distribucí na všechny počítače Cloudflare. Podrobně v příspěvku na blogu Cloudflare.

    Ladislav Hagara | Komentářů: 3
    18.11. 23:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) první RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    18.11. 23:22 | Komunita

    Eugen Rochko, zakladatel Mastodonu, tj. sociální sítě, která není na prodej, oznámil, že po téměř 10 letech odstupuje z pozice CEO a převádí vlastnictví ochranné známky a dalších aktiv na neziskovou organizaci Mastodon.

    Ladislav Hagara | Komentářů: 0
    18.11. 19:44 | Nová verze

    Byla vydána nová major verze 5.0 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v obsáhlých poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    18.11. 14:00 | Upozornění

    Cloudflare, tj. společnost poskytující "cloudové služby, které zajišťují bezpečnost, výkon a spolehlivost internetových aplikací", má výpadek.

    Ladislav Hagara | Komentářů: 13
    18.11. 04:22 | Pozvánky

    Letos se uskuteční již 11. ročník soutěže v programování Kasiopea. Tato soutěž, (primárně) pro středoškoláky, nabízí skvělou příležitost procvičit logické myšlení a dozvědět se něco nového ze světa algoritmů – a to nejen pro zkušené programátory, ale i pro úplné začátečníky. Domácí kolo proběhne online od 22. 11. do 7. 12. 2025 a skládá se z 9 zajímavých úloh různé obtížnosti. Na výběru programovacího jazyka přitom nezáleží – úlohy jsou

    … více »
    SoutezKasiopea | Komentářů: 1
    18.11. 04:11 | Nová verze

    Byla vydána nová verze 2.52.0 distribuovaného systému správy verzí Git. Přispělo 94 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (23%)
     (15%)
     (23%)
     (15%)
     (17%)
    Celkem 371 hlasů
     Komentářů: 17, poslední včera 21:57
    Rozcestník

    Dotaz: rozbor kódu - unicable diseqc

    21.11.2015 10:02 marian34
    rozbor kódu - unicable diseqc
    Přečteno: 408×
    Páni jaksi mi to nejde do makovice.Čerpám z týchto zdrojov:

    -patch

    +int setup_unicable (int frontend_fd, const uint32_t frequency, int unicable_chan, int unicable_freq, int pol, int band)
    +{
    +        struct dvb_diseqc_master_cmd cmd = { { 0xe0, 0x10, 0x5a, 0x00, 0x00, 0x00 }, 5 };
    +        unsigned int t = (frequency / 1000 + unicable_freq + 2) / 4 - 350;
    +        uint32_t ret = (t + 350) * 4000 - frequency;
    +        cmd.msg[3] = (t >> 8)                   |       /* highest 3 bits of t */
    +                (unicable_chan << 5)            |       /* adress */
    +                (0x00 << 4)                     |       /* input 0/1 */
    +                (pol << 3)                      |       /* horizontal == 0x08 */
    +                (band) << 2;                            /* high_band  == 0x04 */
    +        cmd.msg[4] = t & 0xFF;
    +        ioctl(frontend_fd, FE_SET_TONE, SEC_TONE_OFF);
    +        ioctl(frontend_fd, FE_SET_VOLTAGE, SEC_VOLTAGE_18);
    +        usleep(15 * 1000);
    +        ioctl(frontend_fd, FE_DISEQC_SEND_MASTER_CMD, cmd);
    +        usleep(50 * 1000);
    +        ioctl(frontend_fd, FE_SET_VOLTAGE, SEC_VOLTAGE_13);
    +        return ret;
    -príklad
    D1:
      (7..5) Benutzer-Band
      (4)    Satelliten Position: 'A' = 0, 'B' = 1
      (3)    Polarisation: 'V' = 0, 'H' = 1
      (2)    High Band: low = 0, high = 1
      (1..0) Tuning Word MSB
    
    D2:
      (7..0) Tuning Word LSB:
             TuningWord = round(fVCO/4MHz - 350) = round((abs(fSat - fLO) + fUser)/4 - 350)
    
    D3:
      (7..0) PIN
    
     example:
     fSat = 11837MHz, Horizontal, LNB = (9750/10600/11700)MHz, PIN=20
     User freq = 1400MHz auf Kanal-ID = 0.
     1. do we use highband? what LO freq?
        11837MHz > 11700MHz -> fLO = 10600MHz, hiband = 1
     2. calculate vco freq
        f_vco_goal = abs(f_transponder - f_LO) + f_userband = abs(11837MHz - 10600MHz) + 1400MHz = 2637MHz
     3. calculate 4MHz divider and substract constant value 350)
        (f_vco_goal / 4MHz) - 350 = 659.0 - 350 = 309.0
     4. round value to hit middle of userband as near as possible
        round(309.0) = 309 = 0x0135
     5. program lnb vco value
        D1 : bit(7..5) = 0 (id); bit(0..1) = (309 >> 8) & 0x3
        D3 : bit(7..0) = PIN   -> D1 D2 D3 = 0x01 0x35 0x14  
        hiband = 1             -> D1 D2 D3 = 0x05 0x35 0x14
        horizontal             -> D1 D2 D3 = 0x0D 0x35 0x14
        send DISEQC seq = 0xE0 0x00 0x5C 0x0D 0x35 0x14 oder mit Diseqc Adresse: 0xE0 0x10 0x5C 0x0D 0x35 0x14
     6. as the vco is programmed in 4MHz steps, and we did rounding, we will get up to +/-2MHz frequency offset rel. to middle of user band
        f_vco_real = 4MHz * (tuning_word + 350) = 2636MHz
     7. freq_offset = f_vco_real - f_vco_goal = 2636MHz - 2637MHz = -1MHz
     8. tune dvb tuner
        f_userband + freq_offset = (1400MHz - 1MHz) = 1399MHz
    
    neviem dopočítať(ručne) ten tretí byt(D1).

    Odpovědi

    21.11.2015 10:28 marian34
    Rozbalit Rozbalit vše Re: rozbor kódu - unicable diseqc
    Výsledok z príkladu(0x0D) je správny-prakticky overené.No ako sa k tomu autor dopracoval?Prvé dva bity su vždy nulové.Takže pre highband 1, polarizácia 1, sat.poz. 0 = 00110 .Benutzer-band by mal byť pre ID0 001,no z toho mi vychádza D1=00110001 to sa ale nerovná 0x0D.

    Pre ID1 mi vychádza D1=00110101,teda 0x35,čo je správna(overená hodnota).

    No a pre ID2 a ID3 sa už neviem dopočítať správneho výsledku.

    21.11.2015 11:17 chrono
    Rozbalit Rozbalit vše Re: rozbor kódu - unicable diseqc
    Síce sa tam píše "highest 3 bits of t", ale v skutočnosti sa tam používajú len 2 bity "(1..0) Tuning Word MSB". Ten zvyšný bit je potom v "(7..5) Benutzer-Band", takže to bude 000 0 1 1 01 = 0x0D
    21.11.2015 11:29 marian34
    Rozbalit Rozbalit vše Re: rozbor kódu - unicable diseqc
    Ok,dík.Aj tak mi stále uniká pointa.Ako by si teda dopočítal D1 pre ID1(2,3)?
    21.11.2015 14:25 chrono
    Rozbalit Rozbalit vše Re: rozbor kódu - unicable diseqc
    0x35 je 001 1 0 1 01 (a teda ID1, sat. pos B, pol. V, HiBand)

    Pre ID2 a ID3 by sa zmenili tie prve tri bity (na 010 a 011), ostatné bity závisia na iných parametroch (a tie spodné dva na frekvencii)
    21.11.2015 16:06 marian34
    Rozbalit Rozbalit vše Re: rozbor kódu - unicable diseqc
    Už mi začína svitať.Prakticky som to počítal zo zlej strany a zmiatli ma aj nepresnosti v detailoch tých príkladov.Napr. /* highest 3 bits of t */ má byť skôr /* highest 2 bits of t & 0x03*/.Takisto v:
    5. program lnb vco value
        D1 : bit(7..5) = 0 (id); bit(0..1) = (309 >> 8) & 0x3
    malo byť skôr
    ...(id); bit(1..0)...
    Takisto neviem prečo mi šlo ladenie(na H transp.,hiband) na ID1 s D1=0x35(pol.V,sat.pos B-to by až tak nevadilo),keďže správne by malo byť 001 0 1 1 01=0x2D.To ale mohla byť "chyba merania".

    Takže analogicky by pre parametre napr.:11836MHz,H malo platiť,D1=:

    ID0->0D
    ID1->2D
    ID2->4D
    ID3->6D
    kedže bit(1..0) sa nemení.Uvidíme,ako by povedal slepý.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.