Newsgroup: it.hobby.elettronica.digitale
Titolo: ho un programma come faccio a trasformarlo in linguaggio x pic?

scusate ma sn nubbio in materia ho questo programma
PROCESSOR 16F84
          RADIX     DEC
          INCLUDE   "P16F84.INC"
          __CONFIG  11111111110001B
;-----------------------------------------------------
LUCE      EQU       32
H_CONT    EQU       33
L_CONT    EQU       34
DIREZ     EQU       35
;-----------------------------------------------------
          ORG       12
          BSF       STATUS,RP0  ;Attiva banco 1
          CLRF      TRISB       ;Rende PORTB un'uscita
          BCF       STATUS,RP0  ;Ritorna al banco 0
          MOVLW     00000001B
          MOVWF     LUCE        ;LUCE=00000001
          CLRF      DIREZ       ;DIREZ=0
MAINLOOP  MOVF      LUCE,W
          MOVWF     PORTB       ;Scrive LUCE sulla PORTB
          BCF       STATUS,C    ;Azzera flag C
          BTFSC     DIREZ,0     ;Se DIREZ=0 (sinistra) skip
          GOTO      LAB1        ;altrimenti GOTO LAB1
          RLF       LUCE,F      ;Ruota LUCE verso sinistra
          GOTO      LAB2        ;GOTO fine struttura IF
LAB1      RRF       LUCE,F      ;Ruota LUCE verso destra
LAB2      BTFSC     LUCE,7      ;Se bit 7 di LUCE è 0 skip
          INCF      DIREZ,F     ;altrimenti direzione=destra
          BTFSC     LUCE,0      ;Se bit 0 di luce è 0 skip
          CLRF      DIREZ       ;altrimenti direzione=sinistra
          CALL      DELAY       ;Richiama subroutine di ritardo
          GOTO      MAINLOOP    ;Nuovo ciclo del programma
;-----------------------------------------------------
DELAY     MOVLW     20          ;Carica 5320 nei 16 bit
          MOVWF     H_CONT      ;formati dai due bytes
          MOVLW     200         ;H_CONT e L_CONT
          MOVWF     L_CONT
DELAY2    DECF      L_CONT,F    ;Decrementa parte bassa del contatore
          COMF      L_CONT,W    ;Inverte i bit
          BTFSC     STATUS,Z    ;Se tutti zero c'è stato rollover
          DECF      H_CONT,F    ;allora decrementa parte alta
          MOVF      L_CONT,W    ;Carica in W la parte bassa
          IORWF     H_CONT,W    ;Mettila in OR con la parte alta
          BTFSS     STATUS,Z    ;Se tutto zero skip (fine ciclo)
          GOTO      DELAY2      ;Altrimenti ritorna a DELAY2
          RETURN
;-----------------------------------------------------
          END
1)come faccio a trasformarlo in linguaggio compatibile con icprog?
2) è tutto corretto?
--
<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>
Non visitare assolutamente questo sito...ih ih
http://it.geocities.com/lukeshop2004/

 ha scritto nel messaggio 
news:SMtSd.44581$lB4.1...@twister1.libero.it...



il codice nel mio primo post è in assembler?
xchè se lo trasformo con il tuo programmino e poi lo copio nella pic mi da
errore di verifica at address ..000h


 ha scritto nel messaggio 
news:MODSd.45400$QG6.8...@twister2.libero.it...



-ic prog 1.04
- programmatore ora sto usando un Bidons (semplicissimo seriale - 2
condensatori - Pic - cè anche lo slot x la eeprom ma lo lascio  vuoto)
xò posso anche usare un UNICOEASYONE
- win xp

 - programmatore ora sto usando un Bidons
Quell'errore lo da per ogni piu' piccola vaccatina anche con un
programmatore serio (cavi lunghi, windows xp senza driver ecc)
Vedi queste discussioni:
http://www.plcforum.it/forums/index.php?showtopic=14111
http://www.plcforum.it/forums/index.php?showtopic=14222
http://www.plcforum.it/forums/index.php?showtopic=14642