forum.mcontrollers.com - hlavní stránka forum.mcontrollers.com - fórum

 

.: fórum - hlavní stránka :.
Technology Stronghold by Rudolf Vesely
How to build Microsoft System Center hosted cloud series
FAQFAQ HledatHledat Seznam uživatelůSeznam uživatelů Uživatelské skupinyUživatelské skupiny RegistraceRegistrace
ProfilProfil StatistikaStatistika Soukromé zprávySoukromé zprávy PřihlášeníPřihlášení

 
Zahada COMFu

 
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Microchip
 
Dybbuk
Častý přispěvatel
Častý přispěvatel


Založen: 18.3.2016
Příspěvky: 30

PříspěvekZaslal: 13 srpen 2019, 23:24    Předmět: Zahada COMFu Citovat

Ahojte,
v premennej Command mam hodnotu napr.: 10011101. Potrebujem poslat na port znegovanu hodnotu.
Instrukciou COMF Command, F znegujem hodnotu a poslem na port. V simulatore vsetko ok, stav registru sa zneguje a na port sa vsetko posle ako ma.
Zahada pre mna je, ze ked program nahram do realneho procesora, odosle sa na port B'11111111'

Ked manualne vlozim do premennej znegovanu hodnotu B'01100010' vsetko funguje aj v realnom svete.

Kod je cca takyto:
kód:

   COMF Command, F
   MOVLW D'8'
   MOVWF pocet_cyklov
   BCF STATUS,C
LOOP
   RLF Command, F
   BTFSS STATUS,C
   CALL LOG0
   BTFSC STATUS,C
   CALL LOG1
   DECFSZ pocet_cyklov,F
   GOTO LOOP


PS: ked nahradim COMF instrukciou XORF 0xFF tak sa to sprava rovnako. V simulatore ok, v realnom svete posle B'11111111'

Plech je PIC16F690.

Nejake napady co robim zle?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Mikop
Profesionál
Profesionál


Založen: 22.2.2009
Příspěvky: 287

PříspěvekZaslal: 15 srpen 2019, 23:44    Předmět: Re: Zahada COMFu Citovat

Proč máš u označených řádků mezeru za čárkou a až potom registr kam to provest?
Zkousne to takto překladač?


COMF Command, F
MOVLW D'8'
MOVWF pocet_cyklov
BCF STATUS,C
LOOP
RLF Command, F
BTFSS STATUS,C
CALL LOG0
BTFSC STATUS,C
CALL LOG1
DECFSZ pocet_cyklov,F
GOTO LOOP
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Dybbuk
Častý přispěvatel
Častý přispěvatel


Založen: 18.3.2016
Příspěvky: 30

PříspěvekZaslal: 18 srpen 2019, 19:06    Předmět: Citovat

Popravde nad tym som sa nikdy nepozastavil - je to tak nespravne?

Prekladac nenamieta a aj program robi co ma. Niekedy tam tu medyeru proste dam a niekedy nie.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
honza3
Profesionál
Profesionál


Založen: 21.1.2008
Příspěvky: 1168
Bydliště: Přerov

PříspěvekZaslal: 26 srpen 2019, 0:17    Předmět: Citovat

kód:
 COMF Command, F
   MOVLW D'8'
   MOVWF pocet_cyklov
   BCF STATUS,C
LOOP
   RLF Command, F
   BTFSS STATUS,C
   CALL LOG0
   BTFSC STATUS,C
   CALL LOG1
   DECFSZ pocet_cyklov,F
   GOTO LOOP

Tady nic na port neposíláš.


Mezera za , překladači nevadí Very Happy
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

Zobrazit příspěvky z předchozích:   
Zobrazit předchozí téma :: Zobrazit následující téma  
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Microchip Časy uváděny v GMT + 2 hodiny
 
Strana 1 z 1
Přejdi na:  
Můžete přidat nové téma do tohoto fóra.
Můžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Můžete k příspěvkům připojovat soubory
Můžete stahovat a prohlížet přiložené soubory
 



Num Lock Holder - app to hold Numlock
Copyright © 2019 Rudolf Veselý, mcontrollers.com.
Je zakázáno používat části tohoto webu bez souhlasu autora. || Powered by phpBB © 2001, 2002 phpBB Group - with RedSquare DoubleJ(Jan Jaap)