ASM : MPLAB X IDE zobrazení GPR registrů v okně Watches

Pokud chcete v asm kódu zobrazit vámi deklarované registry v okně watches jako globální symboly lze to provést takto:

;Deklarace registru

label_01 idata 20h ;počáteční adresa deklarovaných registrů

;Registr priznaku

Fa01 res 1

;Casovac minimalni prodlevy pred spustenim AD prevodu = 20µS

ACQ_Tm res 1

;Vysledek AD prevodu

AD_L res 1
AD_H res 1

;Odcitani dvou 16bitovych cisel

RegA_L res 1
RegA_H res 1

RegB_L res 1
RegB_H res 1

global	Fa01, ACQ_Tm, AD_L, AD_H, RegA_L, RegA_H, RegB_L, 

Byl to docela boj než se mi to podařilo. Někomu kdo si píše programy v asm to může ušetřit dost času. Jinak je přechod na MPLAB X IDE bez problémů pokud chcete psát programy v assembleru.

Pokud se smíříte s “občasnými vrtochy” toho prostředí, tak to je celkem bez problémů.

Jinak pro některé novinka a pro jiné ne, kdo čte manuály tak ví. To co jsi sem dal se nazývá realokovatelný kód (relocatable code), ale jelikož PICy většinově nemají žádnou MMU (možná snad s vyjímkou PIC32, ale to teď nahonem z hlavy nevím jistě), tak se nejedná o realokovatelnost přeloženého kódu, ale pouze kódu zdrojového, tedy je to hlavně o stylu práce s kompilátorem, linkerem a knihovnami. Tím samozřejmě nesnižuji hodnotu tvého příspěvku a ani snižovat nechci, nicméně přínosy tohoto stylu psaní jsou poněkud diskutabilní. Prostředí se k tomuto ovšem snaží programátora směřovat, jak jsi správně podotkl - záleží na každém jednom člověku, jestli se nechá.

Hint: Kdo chce vidět ve Watches obsahy proměnných i v Absolute mode, nechť si ráčí jako nový watch vložit adresu sledovaného registru. Je to sice poněkud nepraktické z hlediska přehlednosti (osobně to řeším papírkem se jmény registrů nad klávesnicí; potřebnost tohoto řešení zřídkavá), ale někdy pořád lepší než “drátem do oka”.