Dotazy začátečníka 2

Odpovědět
DavidO
Příspěvky: 1133
Registrován: 01 kvě 2013, 21:27

Re: Dotazy začátečníka 2

Příspěvek od DavidO »

Zdá se mi, že to nebude jak chceš. Když w6 bude 149, tak na řádku 19 se do w2 uloží 65528. Výraz 149-150*8 se totiž vyhodnotí postupně takhle:
1. 149-150=65535 (protože binárně 0000 0000 1001 0101 - 0000 0000 1001 0110 = 1111 1111 1111 1111 což je těch 65535, neboli šestnáctkově FFFF)
2. 65535*8=65528 (protože binárně 1111 1111 1111 1111 * 0000 0000 0000 1000 = 1111 1111 1111 1000 což je těch 65528, neboli šestnáctkově FFF8)

Prostě vzpomeň si na svá osmibitová léta a počítej jen v tom omezeném rozsahu. Přetečení nahoru ani podtečení pod nulu nevadí, prostě se ty čísla oříznou zase na těch několik málo bitů. Říkej si - já jsem procesor, záporná čísla neznám, to si prý "uživatelé" někde venku vymysleli, že se rozsah bajtu (nebo slova) dá využít na způlky na kladná a způlky na záporná čísla a nějak si to zobrazujou divnejma symbolama, já znám jen nuly a jedničky.

Znovu se přeptám: Kolik chceš, aby vyšlo w2, když w6 bude 149? Kolik chceš, aby ti vyšlo w2, když W6 bude 80?
Nikoho plánovaně neurážím. Jestli se Vám nelíbí co píšu, tak to nečtěte. A ostatně, třeba za to nemůžu - Researchers believe that dark humor can be a significant symptom of dementia.
icalan
Příspěvky: 8
Registrován: 29 říj 2018, 11:39

Re: Dotazy začátečníka 2

Příspěvek od icalan »

Já to počítám matematicky, pri w6= 80 w2=560, pri w6=149 w2=8
zápis by tedy měl být w2 = 150-w6*8 místo původního matematicky w2=w6-150*(-8) ?
DavidO
Příspěvky: 1133
Registrován: 01 kvě 2013, 21:27

Re: Dotazy začátečníka 2

Příspěvek od DavidO »

Ano. Pokud to má být lineární přepočet, tak ta přímka má podle těch dvou bodů rovnici y = -8x + 1200 což se dá napsat i jako y = (150-x) * 8 neboli y = (x-150) * -8.

Píšu to tedy se závorkami, jak se výrazy v matematice píšou; jak se to zapíše pro Picaxe je jiná věc a Picaxe pokládám v tomhle směru za špatný nebo přinejmenším velmi škodlivý - výraz se tam počítá striktně zleva doprava a nesmějí se použít závorky. To buď musel vymyslet magor, nebo to udělal lenoch a manažer to pak prohlásil za fíčuru.
Nikoho plánovaně neurážím. Jestli se Vám nelíbí co píšu, tak to nečtěte. A ostatně, třeba za to nemůžu - Researchers believe that dark humor can be a significant symptom of dementia.
David
Příspěvky: 39
Registrován: 19 dub 2013, 18:05

Re: Dotazy začátečníka 2

Příspěvek od David »

Zdravím,
nemáte někdo zkušenosti s výzkumem a vývojem :) snímače proudu s použitím snímačů například ... http://henrysbench.capnfatz.com/henrys- ... -tutorial/ a procesorů PICAXE ?

David
Marek975
Příspěvky: 2
Registrován: 03 kvě 2019, 23:17

Re: Dotazy začátečníka 2

Příspěvek od Marek975 »

Ahojte,

zacal som s programovanim a skladanim maleho testera pre 10vstupov a 10vystupov s pouzitim picaxe 28X2.

Zapojenie mam dobre zvladnute, no problem mam ze nejako nechce mi nacitat na vstupe H/L hodnotu.
Program som zostavil sposobom:
B7 vystup
B6 vstup ( ak je na B6 log 1 pokracuj dalej ak log. 0 vrat sa na zaciatok) no problem mam s tym ze aj ked nieje fyzicky prepojena B7 s B6 pokracuje to dalej a nevracia sa to spat. Pouzival som prikaz IF, THEN.

Viete mi s tym niekto poradit? Ďakujem
jova
Příspěvky: 361
Registrován: 16 pro 2013, 11:40

Re: Dotazy začátečníka 2

Příspěvek od jova »

Dej sem pomocí </> ten konkrétní kus kódu.
DavidO
Příspěvky: 1133
Registrován: 01 kvě 2013, 21:27

Re: Dotazy začátečníka 2

Příspěvek od DavidO »

Radši ne kus, ale celý. (případně jako přílohu)
Nikoho plánovaně neurážím. Jestli se Vám nelíbí co píšu, tak to nečtěte. A ostatně, třeba za to nemůžu - Researchers believe that dark humor can be a significant symptom of dementia.
Marek975
Příspěvky: 2
Registrován: 03 kvě 2019, 23:17

Re: Dotazy začátečníka 2

Příspěvek od Marek975 »

Ahojte,

prikladam kod.

Marek
kod picaxe 28X2.docx
(11.77 KiB) Staženo 377 x
jova
Příspěvky: 361
Registrován: 16 pro 2013, 11:40

Re: Dotazy začátečníka 2

Příspěvek od jova »

Co jsem to testoval v simulátoru, tak to pracuje jak má. Optal bych se, jak máš ty vstupy ošetřené?
Jak na ně přivádíš ty logické 1 a 0, jsou tyto stavy jednoznačné?
Já to dělám obráceně. Na vstup přivedu logickou 1 pomocí rezistoru 10k napojeného na +5V a když potřebuji změnit stav, přivedu tam log. 0 jako 0V pomocí vypínače nebo tlačítka.
U té 28X2 by jsi logickou 1 mohl na vstupy B.0-B.7 "dostat" příkazem pullup, pak by jsi nemusel připojovat ty vnější rezistory 10k.
Pivrnec78
Příspěvky: 73
Registrován: 30 dub 2017, 15:25

Re: Dotazy začátečníka 2

Příspěvek od Pivrnec78 »

Zdravím,
potřebuju napsat podmínku pro více podmínek, ale kombinace And a Or ... jak to mám napsat - jak je to správně?

If 1 = 0 and 2 = 4 or
If 1 = 0 and 2 = 6 or
if 1 = 0 and 2 = 7 then ...
endif

nebo

If 1 = 0 and 2 = 4 or 2 = 6 or 2 = 7 then ...
endif
Odpovědět