no se que es lo que esta pasando !
Estoy programando con MicroCode Studio (basic), el programa esta correctamente. pero el codigo que me compila en asembler no esta bien, No es igual a los demas archivos en asambler que tengo, por ejemplo:
MicroCodeStudio:
un pequeño y simple programa para encender y apagar un led en Porta.0
------------------------------------------------------------------------
; PicBasic Pro Compiler 2.43, (c) 1998, 2002 microEngineering Labs, Inc. All Rights Reserved.
PM_USED EQU 1
INCLUDE "16F84.INC"
RAM_START EQU 0000Ch
RAM_END EQU 0004Fh
RAM_BANKS EQU 00001h
BANK0_START EQU 0000Ch
BANK0_END EQU 0004Fh
EEPROM_START EQU 02100h
EEPROM_END EQU 0213Fh
R0 EQU RAM_START + 000h
R1 EQU RAM_START + 002h
R2 EQU RAM_START + 004h
R3 EQU RAM_START + 006h
R4 EQU RAM_START + 008h
R5 EQU RAM_START + 00Ah
R6 EQU RAM_START + 00Ch
R7 EQU RAM_START + 00Eh
R8 EQU RAM_START + 010h
FLAGS EQU RAM_START + 012h
GOP EQU RAM_START + 013h
RM1 EQU RAM_START + 014h
RM2 EQU RAM_START + 015h
RR1 EQU RAM_START + 016h
RR2 EQU RAM_START + 017h
_PORTL EQU PORTB
_PORTH EQU PORTA
_TRISL EQU TRISB
_TRISH EQU TRISA
#define _Led _PORTA_0
#define _PORTA_0 PORTA, 000h
INCLUDE "LED.MAC"
INCLUDE "PBPPIC14.LIB"
LABEL?L _Loop
HIGH?T _Led
PAUSE?C 001F4h
LOW?T _Led
PAUSE?C 001F4h
GOTO?L _Loop
END?
END
-------------------------------------------------------------------------
** estoy usando el sim1684
http://voltio.ujaen.es/casanova/pics/sim1684.htmeste es un pequeño programa que baje de internet, hace lo mismo , pero SI FUNCIONA. Que es lo que esta mal ???
list P=16F84 ; indicamos el modelo de PIC que tenemos
; registros
DDRB equ 0x06 ; banco 1
PORTB equ 0x06 ; banco 0
STATUS equ 0x03 ; banco 0 y 1
TMR0 equ 0x01 ; banco 0
OPTIO equ 0x01 ; banco 1
INTCON equ 0x0b ; banco 0 y 1
; constantes del programa
TIEMPO equ 0x30 ; posicion de memoria
TICKS equ 20 ; Ticks entre parpadeo
org 0
; Accedemos al segundo banco de RAM de Datos
bsf STATUS,5
; Configuración puertos
movlw 0
movwf DDRB ; TRISB = 0 -> puerto B de salida
; configuracion del timer
movlw b"01010111" ; divisor = 256, timer
movwf OPTIO
; Accedemos al primer banco de RAM
bcf STATUS,5
; Pongo a cero el puerto B
clrf PORTB
; empieza el programa principal
inicio
bsf PORTB,1 ; enciende led
call pausa
bcf PORTB,1 ; apaga led
call pausa
goto inicio
; RUTINA DE ESPERA
pausa
movlw TICKS ; tiempo_espera = TICKs * t_tic
movwf TIEMPO ; guarda valor en memoria
otro_tic
movlw 0xB2
movwf TMR0 ; t_tic = 20 mseg
sigue
btfss INTCON,2 ; ¿desbordamiento ?
goto sigue ; no
bcf INTCON,2 ; si -> repongo flag
decfsz TIEMPO,1
goto otro_tic
return
END
PD: tal vez tengo mal configurado la parte de includes, compiladores, etc. en el microcodestudio.
alguien podra ayudarme.
thanks!
neoplat