Re: Pic kredsløb / kode virker ik?

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From Danish to

Threaded View
Hejsa,

--
Loop1     decfsz COUNT1,1
              goto Loop1

--

Her trækker du konstanten 1 fra 'COUNT1'. Resultatet placeres i 'COUNT1'. På
et eller andet tidspunkt når 'COUNT1' værdien 0.
We've slightly trimmed the long signature. Click to see the full one.
Re: Pic kredsløb / kode virker ik?
klip

Quoted text here. Click to load it

klip

prøv i steddet

      movlw    b'00000000'    ;S‘tter alle Port b
    tris    PORTB
      clrf    PORTB

Iøvrigt er simuleringsværktøjet i mplab rimeligt godt se evt
www.jeppeglue.dk/PIC/mplab.avi

mvh Jeppe

Re: Pic kredsløb / kode virker ik?
Claus:

vil det sige jeg kan skrive Loop1    decfsz COUNT4,5
det er jo forskelligt... ?
eller hvordan skal det forstE5%s..

Mvh. Kevin H

Re: Pic kredsløb / kode virker ik?
Per: tak for det, vil prF8%ve at indsE6%tte det og se om det virker :) tja
tror 40 ms vil vE6%re fint, det burde da kunne ses, jeg skal ikk bruge
det til noget, jeg skal bare F8%ve mig og blive bedre og se nogle
resultater :)

Jeppe: tak for det, det var sku fint, men jeg kan ikk fE5% mit MPlab til
at vise den projekt holder :( ved du evt hvad der kan vE6%re galt?


Mvh. Kevin H

Re: Pic kredsløb / kode virker ik?
Hej Kevin
Jeg kan se at ud includer p16f84a.inc uden at du bruger den til noget, det
er lidt fjollet,
men du er sikkert ikke rigtigt med på hvad den bruges til ?
jeg har lavet en lille kode stump som du kan prøve, du skal sikkert
ændre på stien i include linjen så den passer til den computer

koden her under er skrevet til Microchip's gamle  mpasm
men den borte kunde fungere med mplab, og i modsat fald er det kun oppe i
hovedet af programmet der skal laves lidt om  

God fornøjelse

MHV
Carsten


 LIST P16%F84a, RDE%C
 ERRORLEVEL 0,-305
 __config 0x3FF9


 include "\udvik\pic\util\p16f84a.inc"

 list

COUNT1  equ     0x0d
COUNT2  equ     0x0e
 
        org 0
        goto    START
        org     06h

START
        BSF STATUS,RP0  ;select bank1
        movlw 0x00      ;Sætter PortB som output
        movwf TRISB
        bcf STATUS,RP0  ;bank select 0


DiOn    bsf PORTB,1     ; tænder for dioden

        movlw 0xff
        movwf COUNT1
        movlw 0x0f
        movwf COUNT2

Loop1   decfsz COUNT1,1
        goto Loop1
        decfsz COUNT2,1
        goto Loop1


DiOff   bcf PORTB,1     ; slukker for dioden

        movlw 0xff
        movwf COUNT1
        movlw 0x0f
        movwf COUNT2

Loop2   decfsz COUNT1,1
        goto Loop2
        decfsz COUNT2,1
        goto Loop2

        goto DiOn

        end



Re: Pic kredsløb / kode virker ik?
Quoted text here. Click to load it


Hej Claus det er noget af en påstand du kommer med !
Jeg går ud-fra at mplab er Microchip's mplab
jeg har søgt på Microchips hjemme side og har ikke kunde finde hold i din
påstand,

Som der så smukt står skrevet, her under betyder '1' at resultatet bliver
placeret i variablen, og havde du skrevet '0' var resultatet blevet
placeret i 'W'


DECFSZ Decrement f, Skip if 0
Syntax:                 [ label ] DECFSZ f,d
Operands:               0 ? f ? 127
                        d ? [0,1]
Operation:              (f) - 1 ? (destination);
                        skip if result = 0
Status Affected:        None
Description:            The contents of register ?f? are
                        decremented. If ?d? is ?0?, the result
                        is placed in the W register. If ?d? is
                        ?1?, the result is placed back in
                        register ?f?.
                        If the result is ?1?, the next instruction
                        is executed. If the result is ?0?,
                        then a NOP is executed instead,
                        making it a two-cycle instruction.

Jeg har lavet en test, og her er et lille udsnit af list filen
som meget tydelig viser hvad der går galt
som du kan se bliver resultatet af DECFSZ T1,3 det samme som DECFSZ T1,1
og DECFSZ T1,2 som DECFSZ T1,0, og sådan vil det gå med alle de tal du kan
finde på at bruge, lige tal bliver betragtet som '0' og ulige som '1'

0006                00019 START
                    00020
0006 0B0D           00021         DECFSZ T1,0
0007 0B8D           00022         DECFSZ T1,1
Warning[202]: Argument out of range.  Least significant bits used.
0008 0B0D           00023         DECFSZ T1,2
Warning[202]: Argument out of range.  Least significant bits used.
0009 0B8D           00024         DECFSZ T1,3
                    00025         END


--
MHV
Carsten

Site Timeline