pettter´s noob faq...

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
pettter
Příspěvky: 83
Registrován: 07 říj 2013, 02:00

#61 Příspěvek od pettter »

Ďakujem páni!
AB1 píše:...Je to naopak. W se odečte od konstanty a uloží do W.
SUBLW KONSTANTA = 0x05 - 0x0A = -5
Sorry, ale uniká mi logika tej vety...
Ak: ...W se odečte od konstanty..., tak to máš Ty naopak! Ak sa 10 odčíta od 20, tak vzorec je:
20 - 10 =...
Nechcel si napísať, že sa konštanta odčíta od W?

Vyššie uvádzam citáty s DS kde je aj toto:
"Operands vyzerá takto: k-(W)→(W), v českom DS k 16F84A: (W) = k - (W)"

Nechcem Ťa poučovať, až taký noob zase nie som. Len čistím myšlienky.

Uživatelský avatar
pettter
Příspěvky: 83
Registrován: 07 říj 2013, 02:00

#62 Příspěvek od pettter »

AB1 píše:...Operand je tady (LEDMEM - 1) = 0x1f.
Od 0x1f odečti W a ulož do W.
Aha! Takže ak za operand dám dáke číslo so znamienkom + či - , tak to urobí pred samostatným vykonaním príkazu tento matematický úkon? Keby som dal napr:

Kód: Vybrat vše

NIEČO EQU 20
MOVLW 10
SUBLW NIEČO + 3
Tak výsledok bude: (NIEČO + 3) - W = 13?

Ak áno, tak kua kde sa toto píše v tých po..aných DS?

A ešte mi prosím prezraď, ako to je s formátom hodnoty. V celom kóde sú hodnoty v hex a neraz jééb a je tu "LEMEM - 1" a sme v dekadickej rade. To ma poser.
Viem že číslo jedna nie je práve moc rozdiel, ale ak by sa napísalo napr. dekadických "17", nie je to problém pre prevod do strojového kódu? Či to assembler zožerie ako mu to napíšeš. Nemá tam byť dáka značka, že je to dekadický, binárny a tak? Napr: LEMEM - 1. (bodka/tečka za 1)

Uživatelský avatar
MiloPS3
Příspěvky: 259
Registrován: 07 srp 2010, 02:00

#63 Příspěvek od MiloPS3 »

1 nebo D1 - decimal
0x01/0x1 - hexadecimal
Ox01 - octal
0b00000001 - binary

A urcite to najdes i v helpu MPLABu

Uživatelský avatar
pettter
Příspěvky: 83
Registrován: 07 říj 2013, 02:00

#64 Příspěvek od pettter »

MiloPS3 píše:...Ox01 - octal...
No vidíš, ešte aj toto...! :roll:
Naposledy upravil(a) pettter dne 27 bře 2018, 20:30, celkem upraveno 1 x.

Uživatelský avatar
MiloPS3
Příspěvky: 259
Registrován: 07 srp 2010, 02:00

#65 Příspěvek od MiloPS3 »

MPLAB X help , priloha

PS:mas od vcera neprectenou SZ
Přílohy
Numeric Constants and Radix.zip
(2.85 KiB) Staženo 173 x

Uživatelský avatar
pettter
Příspěvky: 83
Registrován: 07 říj 2013, 02:00

#66 Příspěvek od pettter »

PIC16F88
Assembler v MPLAB IDE 8

Príkaz SUBLW mi nejde do gebule. Našiel som taký príklad http://www.pcbheaven.com/picpages/Mathe ... tructions/ kde je kód:

Kód: Vybrat vše

movlw d'30'   ;The W register has now the value '30'
sublw d'100'  ;The content of W register is subtracted from the value '100'
                    ;Now the W register has the decimal value '70'
Ale ja neviem dosiahnuť ten výsledok! Prečo?
Môj kód:

Kód: Vybrat vše

LIST P=16F88
#include p16f88.inc
movlw d'30'   ;The W register has now the value '30'
sublw d'100'  ;The content of W register is subtracted from the value '100'
                   ;Now the W register has the decimal value '70'
            END
V simulácii to beží až na ten výsledok.
Skúsil som aj iné číslo, napr. 0!

Kód: Vybrat vše

movlw d'0'
sublw d'0'
Výsledok je .25!!! Ako môže byť nula - nula 25...???
Přílohy
1 krok.jpg
(55.51 KiB) Staženo 138 x
2 krok.jpg
(56.79 KiB) Staženo 143 x

Uživatelský avatar
MiloPS3
Příspěvky: 259
Registrován: 07 srp 2010, 02:00

#67 Příspěvek od MiloPS3 »

mas tam jednu zasadni a podstatnou chybu, struktura programu ...
skusim o tom neco najit pak ti to sem hodim, skus zatim premejslet

Uživatelský avatar
pettter
Příspěvky: 83
Registrován: 07 říj 2013, 02:00

#68 Příspěvek od pettter »

MiloPS3 píše:mas tam jednu zasadni a podstatnou chybu, struktura programu ...
V dvoch riadkoch kódu??? Ako neviem o tom nič, tak sa len čudujem. Sa PICnem...
MiloPS3 píše:... skusim o tom neco ...
Prosím Ťa a Tebe to v simulácii fachčí ako?

Uživatelský avatar
MiloPS3
Příspěvky: 259
Registrován: 07 srp 2010, 02:00

#69 Příspěvek od MiloPS3 »

jo funguje "ale...."

https://web.archive.org/web/20160424154 ... l&mobile=0

PS:doporucuju projit si vsechny dily

Uživatelský avatar
pettter
Příspěvky: 83
Registrován: 07 říj 2013, 02:00

#70 Příspěvek od pettter »

MiloPS3 píše:jo funguje "ale...."
Ma drbne... pošli prosím kód. Ja si ho skopčím do nového projektu a uvidím... ja už mám pochybnosťi aj o tom, či píšem to, čo vidím.
Neviem či som už postihnutý, či mám divnú klávesnicu...
MiloPS3 píše:...pandatron.cz...
No tu som začal. Potom som si kúpil EasyPIC v7, aby som mal na čom blikať a potom Pandatron zmizol... Vraj ten pán čo ho mal zomrel...

Uživatelský avatar
MiloPS3
Příspěvky: 259
Registrován: 07 srp 2010, 02:00

#71 Příspěvek od MiloPS3 »

neposlu...

tady je malej kod,skopiruj si ho bez ty hlavicky a odsimuluj si ho , pak odsimuluj ten tvuj a uvidis ...

Uživatelský avatar
pettter
Příspěvky: 83
Registrován: 07 říj 2013, 02:00

#72 Příspěvek od pettter »

Si ma nepochopil. Ja som myslel, že ak si skúšal ten príkaz SUBLW a Tebe to šlo dobre. Tak aby si mi toto poslal. Neva, študujem ten Pandatron...

Uživatelský avatar
MiloPS3
Příspěvky: 259
Registrován: 07 srp 2010, 02:00

#73 Příspěvek od MiloPS3 »

pochopil ,tys to nepochopil, prave kvuli ty chybe ti to nefunguje, odsimuluj si ten blikac

Uživatelský avatar
pettter
Příspěvky: 83
Registrován: 07 říj 2013, 02:00

#74 Příspěvek od pettter »

Dneska nie. Vybuchla pivná smršť na "zelený štvrtok" čapovali zelené! No nechoď...

Uživatelský avatar
pettter
Příspěvky: 83
Registrován: 07 říj 2013, 02:00

#75 Příspěvek od pettter »

Už to šlape! Napísal som do Microchipu na forum http://www.microchip.com/forums/m1045896.aspx
Asi mám problém s tým, že som neukončil korektne program. Domnieval som sa, že slovo END na to stačí. Zjavne nie...

Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“