12f675 illegal opcode & overwriting hataları

Başlatan aticevik, 28 Ekim 2012, 14:17:51

aticevik

Merhaba arkadaşlar. programlama Microcode studio (MCS) ile başladım, amatörüm.
birkaç başarılı 16f628 denememden sonra, daha az kanal sayılı animasyon devrelerinde 12f675 kullanmak istiyorum.
gerek kendim yazarak gerek paylaşım yapmış arkadaşlarımızın kodlarında kendime göre düzenlemeler yaparak kullanmak istiyorum

ancak  derleme yaparken hata veriyor. ya illegal opcode yada overwritting. 2 gündür araştırıyorum bi sonuç elde edemedim.
örnek olarak daha önce bi arkadaşımızın hazırlayp paylaştığı bas dosyası şu şekilde;

'****************************************************************
'*  Name    : UNTITLED.BAS                                      *
'*  Author  : [select VIEW...EDITOR OPTIONS]                    *
'*  Notice  : Copyright (c) 2010 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 14.03.2010                                        *
'*  Version : 1.0                                               *
'*  Notes   :   tabela etrafındaki çerçeve yi yürüterek yakmak için
'*            
'*                                                 
'*          :                                                   *
'**************************************************************** 
                           
@ DEVICE pic12F675, WDT_ON              'Watch Dog timer açık
@ DEVICE pic12F675, PWRT_ON             'Power on timer açık
@ DEVICE pic12F675, PROTECT_OFF         'Kod Protek kapalı
@ DEVICE pic12F675, MCLR_Off           'MCLR pini kullanılMIYOR.
@ DEVICE pic12F675, INTRC_OSC_NOCLKOUT  'Dahili osilatör kullanılacak 
'**************************************************************** 
DEFINE OSCCAL_1K 1
DEFINE OSC 4
CMCON = 7
ANSEL=0
TRISIO=%0000000

'**************************************************************** 
symbol bir=gpio.0
symbol iki=gpio.1
symbol uc=gpio.2

'**************************************************************** 
bir=0
iki=0
uc=0

t con 200

x var byte
y var byte
z var byte
 pause 200
GPIO=0
'**************************************************************** 
 pause 200
 
 basla: 
 gosub s1
 gosub s2
 gosub s3
 
 bir=0:iki=0:uc=0:pause t*5
 goto basla
 
 
  s1:
  for x=1 to 10
  bir=1:pause t :  bir=0
  iki=1:pause t :  iki=0
  uc=1 :pause t :  uc=0
  next
   return
   
   s2:
  for x=1 to 10
  bir=1:pause t*2 :  bir=0
  iki=1:pause t*2 :  iki=0
  uc=1 :pause t*2 :  uc=0
  next
   return
  
 s3:
 
 for x=1 to 10
 bir=1:iki=1:uc=1:pause t 
 bir=0:iki=0:uc=0:pause t/2
 bir=1:iki=1:uc=1:pause t*2
  next
 return 
     
     
     end


Bunun üzerinde hiç bir oynama yapmadan (yukarda işlemcide 12f675 olarak seçili) derleme yapmak istediğimde
illegal opcode (12f675)
fount label after column 1. (DEVICE)
illegal opcode (12f675)
fount label after column 1. (DEVICE)
illegal opcode (12f675)
fount label after column 1. (DEVICE)
illegal opcode (12f675)
fount label after column 1. (DEVICE)
illegal opcode (12f675)
fount label after column 1. (DEVICE)

Bi konuta ete hocamızın bu konuda MPASM derleyici kullananlar için

@ __config _INTRC_OSC_NOCLKOUT & _WDT_ON & _PWRTE_ON & _PROTECT_OFF & _MCLRE_OFF

şeklinde ayarları belirtmek gerektiğini söylemişti, device ile belirtmek yerine

'*  Name    : UNTITLED.BAS                                      *
'*  Author  : [select VIEW...EDITOR OPTIONS]                    *
'*  Notice  : Copyright (c) 2010 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 14.03.2010                                        *
'*  Version : 1.0                                               *
'*  Notes   :   tabela etrafındaki çerçeve yi yürüterek yakmak için
'*            
'*                                                 
'*          :                                                   *
'**************************************************************** 
                           
@ __config _INTRC_OSC_NOCLKOUT & _WDT_ON & _PWRTE_ON & _PROTECT_OFF & _MCLRE_OFF
'**************************************************************** 
DEFINE OSCCAL_1K 1
DEFINE OSC 4
CMCON = 7
ANSEL=0
TRISIO=%0000000

'**************************************************************** 
symbol bir=gpio.0
symbol iki=gpio.1
symbol uc=gpio.2

'**************************************************************** 
bir=0
iki=0
uc=0

t con 200

x var byte
y var byte
z var byte
 pause 200
GPIO=0
'**************************************************************** 
 pause 200
 
 basla: 
 gosub s1
 gosub s2
 gosub s3
 
 bir=0:iki=0:uc=0:pause t*5
 goto basla
 
 
  s1:
  for x=1 to 10
  bir=1:pause t :  bir=0
  iki=1:pause t :  iki=0
  uc=1 :pause t :  uc=0
  next
   return
   
   s2:
  for x=1 to 10
  bir=1:pause t*2 :  bir=0
  iki=1:pause t*2 :  iki=0
  uc=1 :pause t*2 :  uc=0
  next
   return
  
 s3:
 
 for x=1 to 10
 bir=1:iki=1:uc=1:pause t 
 bir=0:iki=0:uc=0:pause t/2
 bir=1:iki=1:uc=1:pause t*2
  next
 return 
     
     
     end


ama bu seferde

Overwriting previous address contents (2007)
Symbol not previously defined (_PROTECT_OFF)

hata mesajları geliyor.

arkadaşımızın paylaştığı orjinal dosyalar http://elektrobilim.org/forum/istekleriniz/8256-donen-led-cerceve.html  adresinde yürüyen.rar olarak var.

içinden çıkan isis simulasyonuda gayet başarılı çalışıyor.
bunun haricinde başka yazılmış çalışan kodlarlada aynı problemi yaşıyorum
ustalarım bi yardım edermisiniz.?

ete

Anlaşılan makinan 64 bit ve Mpasm ile derleme yapıyorsun.
Sigorta ayarlarını olması gerektiği gibi değiştirmişsin. Ancak PBP klasörü içinde yer alan pic12F675.INC. Dosyası içinde altta yer alan sigorta satırlarını başlarına noktalı virgül koyarak kapatman gerekiyor. Kapatmayı yapıp dosyayı geri kayıt etmeyi unutma.
Ete
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com

kaganayanoglu


kursattaskin

Eski bir konu ama arkadaşlar ben çokyeni olunca eski konular bile yeni oluyor.

pbp3 gördüm orada, ben pbp bulmuştum bir yerde. bana pbp3 konusunda yardımcı olabilecek bir arkadaşımız olurmu?

diğer yandan benzer sorun ile bende karşılaşıyorum. yukarıda bahsettiğiniz konuları denemeye çalıştım ama sanırım denemeyi bile başaramadım :)
ümitsiz vaka demeyin lütfen.

teşekkürler