Picproje Elektronik Sitesi

DERLEYİCİLER => Microchip XC Serisi => Microchip XC8 => Konuyu başlatan: izturk - 14 Eylül 2015, 17:53:25

Başlık: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: izturk - 14 Eylül 2015, 17:53:25
Merhaba Arkadaşlar,

XC8 i kurdum öğreneyim dedim. Ama işin başında çuvalladım. Yardımınızı rica ediyorum.

projemi oluşturdum. code configrator ile ayarları yaptım. led yakma uygulaması yazdım derledim ve çalıştı. ama en basit şekliyle led yakma satırını farklı bir fonksiyon olarak tanımlayınca çalışmıyor.

çalışan kod


long i=0;

void main(void) {
SYSTEM_Initialize();
   TRISEbits.TRISE1 = 0;
    while (1) {
        // Add your application code
       
        LATEbits.LATE1 = 1;
        for(i=0;i<60000;i++);

        LATEbits.LATE1 = 0;
        for(i=0;i<60000;i++);

       
    }
}



çalışmayan kod

long i=0;

void led_yak(void)
{
LATEbits.LATE1 = 1;
   
}


void main(void) {
SYSTEM_Initialize();
    TRISEbits.TRISE1 = 0;
    while (1) {
        // Add your application code
        led_yak();
       
        for(i=0;i<60000;i++);

        LATEbits.LATE1 = 0;
        for(i=0;i<60000;i++);

       
    }
}


bir de her seferinde bu uyarıyı veriyor:
:: warning: (1459) peripheral library support is missing for the 18F46K22

herkese iyi çalışmalar
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: mehmet - 14 Eylül 2015, 17:58:29
Led yanık mı kalıyor yoksa hiç yanmıyor mu?


Ek: Olmayan çevre birim kütüphaneleri eklenmiş diyor anladığım kadarıyla.
http://ww1.microchip.com/downloads/en/DeviceDoc/xc8-v1.21-readme.pdf (http://ww1.microchip.com/downloads/en/DeviceDoc/xc8-v1.21-readme.pdf)
Sayfa.5
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: izturk - 14 Eylül 2015, 17:58:59
hiç yanmıyor
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: Gökhan BEKEN - 14 Eylül 2015, 18:10:04
proteus projesi varsa(7.10 versiyonlu),  xc8 projenizi ve proteus projenizi gönderin ben de bir deneyim.
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: izturk - 14 Eylül 2015, 18:22:17
Hocam proje dosyasını ekliyorum. ben gerçek kartla deniyorum. zaten proteus şemasında bişey yok. e1 pinini açması yeterli

https://www.dropbox.com/sh/kkwtud6oagjwdfk/AAA3lTKwpr8jodMfTmSTkQX1a?dl=0 (https://www.dropbox.com/sh/kkwtud6oagjwdfk/AAA3lTKwpr8jodMfTmSTkQX1a?dl=0)
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: t2 - 14 Eylül 2015, 18:35:54
zip yapıp da ekleseydiniz daha kolay olurdu 50 tane dosya indirip klasöre koyup denememiz zor oalcak.
neyse ki yukarıda download as zip yazıyormuş hepsi tek seferde indi
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: izturk - 14 Eylül 2015, 18:39:07
siz yazınca farkettim hocam hemen düzeltiyorum

https://www.dropbox.com/s/xitgzzb06luyobd/cx8%20lcd.rar?dl=0 (https://www.dropbox.com/s/xitgzzb06luyobd/cx8%20lcd.rar?dl=0)


hocam şimdi denedim. proteus ta iki kod da çalışıyor. ama gerçekte fonkisyonlu olan çalışmıyor
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: t2 - 14 Eylül 2015, 18:42:51
fonksiyon çalışıyor. proteusta gördüm. fakat çok hızlı çalıştığı için belki siz göremediniz. işlemci hızı 4Mhz seçiliydi onu değiştirmeden çalıştırdım. göründü

aşağıdaki şekilde çalışıyor. yakma işini fonksiyon yapıyor

    while (1) {
        // Add your application code
        led_yak();

        for(i=0;i<60000;i++);

        LATEbits.LATE1 = 0;
        for(i=0;i<60000;i++);

       
    }
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: izturk - 14 Eylül 2015, 18:45:49
hocam ben de şimdi denedim proteusta iki şekilde de çalışıyor. ama gerçekte fonksiyonlu olanı çalıştıramadım.
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: mehmet - 14 Eylül 2015, 18:48:38
#include "mcc_generated_files/mcc.h"
satırını;
#include "mcc_generated_files\mcc.h"
olarak değiştiriniz. Ayrıca bu satırın üstündeki satırı siliniz...
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: t2 - 14 Eylül 2015, 18:50:33
Bekleme kısmı gerçekte çok hızlı olduğu için görünmemiş olabilir mi? proteus yavaş çalışarak göstermiştir.

belki de bu pin open  drain olabilir. gerçek devrede pull up gerekebilir.
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: izturk - 14 Eylül 2015, 18:53:15
Alıntı yapılan: mehmet - 14 Eylül 2015, 18:48:38
#include "mcc_generated_files/mcc.h"
satırını;
#include "mcc_generated_files\mcc.h"
olarak değiştiriniz. Ayrıca bu satırın üstündeki satırı siliniz...


denedim hocam bi değişiklik yok

mesaj birleştirme:: 14 Eylül 2015, 19:03:13

t2 hocam gerçekte lcd ledini yakıyorum. foknsiyon yokken yanıp söndüğünü görebiliyorum. fonksiyonu çağırınca iş bozuluyor.
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: mehmet - 14 Eylül 2015, 19:03:44
pin_manager.c içerisinde ANSELE = 0x07; tanımlanmış. PORTE ve hatta
tüm pinler analog yapılmış...
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: izturk - 14 Eylül 2015, 19:27:35
code configrator den e1 pinini çıkış yapıyorum. ANSELE = 0x05 oluyor.

yine de değişen bişey yok. fonksiyon bir türlü çalışmıyor. her iki ayarda da fonksiyonsuz her türlü çalışıyor ama
Başlık: Ynt: Acemi! XC8 Sorusu : Fonksiyon Çalışmıyor
Gönderen: mehmet - 16 Eylül 2015, 01:03:38
:: warning: (1459) peripheral library support is missing for the 18F46K22
hatası için;
Proje üzellikleri->XC8 global options->Additional options
bölümüne:
--runtime=-plib
satırını ilave ediniz.

Bir de;
mcc.c içerisindeki;
OSCCON = 0x72;
satırını
OSCCON = 0x70;
olarak değiştirip deneyiniz...

Elimde ilgili mcu olmadığı için ancak simülator
ve isis 7.10 ile test edebildim...