Picproje Elektronik Sitesi

DERLEYİCİLER => Diğer Derleyiciler => CC5X => Konuyu başlatan: multimesut - 18 Mayıs 2006, 16:06:58

Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: multimesut - 18 Mayıs 2006, 16:06:58
CC5X öğranmek istiyorum. Keşke PicBasicPro gibi anlatımlı isisli çizimleri örnek kodları olan bir sunu olsa keşke. Bu dili bilenler aslında biraz oynasanız o dosyalarla bir hazırlasanız çok memnun oluruz. Bende dili öğrenirsem bende yardım ederim :D kolay gelsin iyi gönler....
Başlık: CC5X Applications
Gönderen: ipek - 18 Mayıs 2006, 20:07:35
bu adreste aradiklarini temin edebirsin Anadilimizde cc5x aciklamasi cok zor heveslisi ve kullanicisi cok az yinede belki gizli kahramanlar vardir
kolay gelsin   uzun yillar sonra 1k derleme limiti asilabildi buda popularitesini azaltti
http://www.isk.kth.se/kursinfo/6b4059/
Başlık: Selam
Gönderen: multimesut - 10 Haziran 2006, 19:10:56
Galiba o gizli kahramanların sitesini buldum. :D tam açılsın buraya link atarım.
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: nuwanda - 24 Mart 2007, 11:27:59
Kendi hazırladığım bir dökümanı sizlerle de paylaşmak istedim. Henüz pek fazla bilgi birikimim yok ama öğrendikçe dökümanı geliştirmeye devam edicem.Ayrıca en kısa zamanda devre çizimlerini de eklemek istiyorum.

Fakat şimdilik cc5x derleyicisi nasıl kurulur, en basit anlamda programlar nasıl yazılır diye merak edenler için başlangıç rehberi şeklinde olacaktır. Eğer döküman içerisinde yanlışlar varsa, bana bildirirseniz sevinirim.

Herkese iyi çalışmalar..


http://rapidshare.com/files/22519421/CC5X_ve_16F877.pdf.html
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: alieren - 12 Nisan 2007, 21:23:16
merhaba  nuwanda
linke verdiginiz dokumani inceledim, aynisi, birsen yayin evinden c dili ile pic programlama diye bir kitap ta var.
bazi basit programlari derleyebiliyorum. ancak bu programi derlerken en alt a vercegim hatayi veriyor, buna iliskin epey ugrasmama ragmen bir sey anlayamadim.

// INFRARED VERICI C KODLARI
#include "DELAY.h"
#define VERI PORTB.0
uns8 BUTON_KOD1,BUTON_KOD2;

void darbe(void)
{
   uns8 i;
   for(i=0;i<100;i++)
   {
      VERI=1;
      DELAY_us(50);
      VERI=0;
      bekle_us(50);
   }
}

void infra_ver(uns8 BUTON)
{
   uns8 i;
   darbe();
   darbe();
   darbe();
   darbe();
   darbe();
   VERI=0;
   DELAY_ms(12);
   for(i=0;i<8;i++)
   {
      BUTON=rr(BUTON);
      if(carry==1) darbe();
      else { VERI=0; DELAY_ms(12);}
   }
   VERI=0;
}

void main(void)
{
   TRISA=0XFF;
   TRISB=0XFE;
   CMCON=0X07;
   VERI=0;
   BUTON_KOD1=0X00;
   BUTON_KOD2=0X00;
   while(1)
   {
      BUTON_KOD1=~PORTA;
      BUTON_KOD1&=0X07;
      if(BUTON_KOD1!=BUTON_KOD2)
      {
         infra_ver(BUTON_KOD1);
         BUTON_KOD2=BUTON_KOD1;
      }
   }
}




verdigi hata ise; output un tamami olarak


Clean: Deleting intermediary and output files.
Clean: Deleted file "E:\Documents and Settings\MASIDE\Desktop\karisik\c icin\C1\infra.mcs".
Clean: Done.
Executing: "E:\Program Files\bknd\CC5X\CC5X.EXE" infra.c -CC -fINHX8M -p16F628 -a -L -Q -V -FM
CC5X Version 3.3, Copyright (c) B Knudsen Data, Norway 1992-2006
--> FREE edition, 8-16 bit int, 24 bit float, 1k code, reduced optim.
infra.c:

// INFRARED VERICI C KODLARI
#include "DELAY.h"
                ^------
Error[1] E:\Documents and Settings\MASIDE\Desktop\karisik\c icin\C1\infra.c 2 : Unable to open file 'DELAY.h'
(The file name or path can be wrong)

Error options: -ew: no warning details  -ed: no error details  -eL: list details
BUILD FAILED: Thu Apr 12 21:06:55 2007




ilginizi bekliyorum, saygilarimla
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: Macera - 12 Nisan 2007, 23:14:54
Anladığım kadarı ile MPLAB da CC5X ile derleme yapıyorsun.
Projenin header file kısmına delay.h dosyasını eklemelesin.
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: alieren - 13 Nisan 2007, 09:55:28
evet mplab da cc5x ile derleme yapiyorum.
yalniz dediginizi tam anlayamadim. header file kismina zaten
"DELAY.h" dosyasini #include etmisim, koda goruluyor. eger sizin dediginiz baska bir sey ise lutfen yeniden izah edebilirmisiniz.
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: alieren - 13 Nisan 2007, 10:00:50
Unable to open file 'DELAY.h'


verilen hata da DELAY.h dosyasinin acilamadigini soyluyor, neden acilmiyor acaba, bir ayar sorunumu yoksa derleyici sorunu falanmi?
normalde cc5x in bknd isimli klasorunun icerisinde DELAY diye bir dosya mevcut.
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: Macera - 13 Nisan 2007, 12:58:20
MPLAB programının delay.h dosyasına yada daha doğrusu MPLAB a tanıtığın dosyalara daha kısa bir yol ile ulaşmasını sağla.
Daha açık bir şekilde söyliyim
örneğin C:\cc5x\infra klasörü yarat derleyeceğin dosyaları vede başlık dosyalarını bu klasörün altına at.
Dosyaları MPLAB da tekrar tanıt ve derle.
MPLABda uzun dosya yolları ile bir hata var zannedersem.
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: alieren - 13 Nisan 2007, 21:10:52
Clean: Deleting intermediary and output files.
Clean: Deleted file "E:\CC5X\A.mcs".
Clean: Done.
Executing: "E:\CC5X\CC5X.EXE" infra.c -CC -fINHX8M -p16F628 -a -L -Q -V -FM
CC5X Version 3.3, Copyright (c) B Knudsen Data, Norway 1992-2006
--> FREE edition, 8-16 bit int, 24 bit float, 1k code, reduced optim.
infra.c:

// INFRARED VERICI C KODLARI
#include "DELAY.h"
                ^------
Error[1] E:\CC5X\infra.c 2 : Unable to open file 'DELAY.h'
(The file name or path can be wrong)

Error options: -ew: no warning details  -ed: no error details  -eL: list details
BUILD FAILED: Fri Apr 13 20:55:48 2007



sayin macera dediginiz bicimdede denedim ama malesef problemi asamadim, mplab i ise karistirmadan cc5x ile dos formatinda denedim yine ayni sonuc. acaba cc5x dosyasindaki delay...vb. diger dosyalarda bir problem olabilirmi. cunku LCD icin yazdigim bir program var ve onun icinde ilgili baslik dosyasi icin benzer hatayi veriyor.
bu kulandigim derleyici sinirlandirilmis free surumdur, eger elinizde varsa tam surumu nu paylasamazmisiniz, yada temin edebilecegim, bir yol onerebilirmisiniz. iyi aksamlar
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: Macera - 13 Nisan 2007, 22:05:54
şu delay.h dosyasınıda burda yayınlayabilirmisin?
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: alieren - 14 Nisan 2007, 08:45:45
/*
 DELAYS AND TIMING
 =================

 Delays are frequently used. There are various
 ways to generate them:
    1. Instruction cycle counting
    2. Using the TMR0 timer
    3. Watchdog timeout for low power consumption
    4. Using variables achieves longer delays
*/


void delay_ms( uns16 millisec)
// Delays a multiple of 1 milliseconds at 4 MHz
// using the TMR0 timer
{
   char next = 0;

   OPTION = 2; // prescaler divide TMR0 rate by 8
   TMR0 = 2;  // deduct 2*8 fixed instruction cycles delay
   do  {
       next += 125;
       clrwdt();  // needed only if watchdog is enabled
       while (TMR0 != next)   // 125 * 8 = 1000 (= 1 ms)
           ;
   } while ( -- millisec != 0);
}


void delay10( char n)
/*
 Delays a multiple of 10 milliseconds using the TMR0 timer
 Clock : 4 MHz   => period T = 0.25 microseconds
 1 IS = 1 Instruction Cycle = 1 microsecond
 error: 0.16 percent
*/
{
   char i;

   OPTION = 7;
   do  {
       clrwdt();  // only if watchdog enabled
       i = TMR0 + 39; /* 256 microsec * 39 = 10 ms */
       while ( i != TMR0)
           ;
   } while ( --n > 0);
}


void _delay10( char x)
/*
 Delays a multiple of 10 milliseconds
  using instruction cycle counting
 Clock : 32768 Hz   => period T = 30.518 microseconds
 1 Instruction Cycle = 1 IS = 4 * T = 122 microseconds
 10 ms = 82 IS (81.92) =>  error: 0.1 percent
*/
{
   do  {
       char i = 26;            /* 2 IS */
       do ; while ( --i > 0);  /* 26 * 3 - 1 = 77 IS */
   } while ( --x > 0);         /* 3 IS */
}



char counter;

void main( void)
{
   if ( TO == 1)  {
       /* power up or MCLR */
       PORTA = 0;     /* write output latch first */
       TRISA = 0;     /* all outputs */
       TRISB = 0xFF;  /* all inputs */
   }
   else  {
       /* watchdog wakeup */
       if ( --counter > 0)  {
           OPTION = 0x0B; /* WDT divide by 16 */
           sleep();  /* waiting 16 * 18 ms =
                        288 ms = 0.288 seconds */
       }
   }

   // ..

   delay_ms( 5500);  /* 5.5 seconds */

   // ..

   delay10( 100);  /* 1 second */

   // ..

   counter = 7;   // 7 * 0.288 sec. = 2 sec. totally
   OPTION = 0x0B; // 0 1011: WDT divide by 16
   // main terminates by sleep();, allows low power consumption
   // waiting for watchdog timeout: approx. 16*18 ms = 288 ms
}




DELAY DOSYASI.
birde islemciyi programda tanitmamisim, sanirim gerek yok değilmi, zaten mplab' da seciyoruz onu.
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: Macera - 14 Nisan 2007, 10:17:56
Alieren

delay.h dosyasının doğru dosya olduğuna pragramına ait olduğuna eminmisin?
Verdiğin dosyaları bir klasör altına attım.Programı derledim.
delay.h dosyasını görüyor ama yanlış yazmalardan dolayı (Syntax) alarmlar veriyor.
Birde MPLAB programında Project menüsü Build Options seçeneğine tıkla .
Çıkan yan menüden project kısmına tıkla.
Çıkan dialog kutusunda CC5X sekmesini tıkla.
En aşağıya resmin altındaki gibi -IC:\cc5xfree\ parametresini yazmalısın.
Bu include dosyalarını MPLAB altında çalışan derleyiciye tanıtır.


(http://img340.imageshack.us/img340/5650/bldoptfj1.jpg)
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: alieren - 15 Nisan 2007, 10:17:06
merhaba
basaramadim bunun icin sana bendeki derleyiciyi yoluyorum, bir bakarsabelki orada bir sorun vardir.

http://rapidshare.tv/383621

mplab olarakta;
v7.31 i kulaniyorum.

tesekur ederim.
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: gsever - 15 Nisan 2007, 17:17:48
Konudan epey alakasız bir soru sorayım.

HI-TECH PICC gibi çok güçlü bir ANSI-C Picmicro derleyicisi dururken niçin CC5X?

Keza, pekçok pratik C derleyicisi varken fazladan başağrısı olmuyor mu bununla uğraşmak?
Başlık: CC5X örnekli anlatımı olsa keşke
Gönderen: alieren - 16 Nisan 2007, 22:32:48
bu konuda acemi oldugumu soylemistim. hangisini tercih etmem gerektigini icine girerek secerim diye basladim. ve bir kac gundur genel c calisiyorum, herhalde o zaman daha isabetli tercih yapabilirim, tabi birde ustadlarim oneri ve destegi ile.
saygilarimla