1. sayfa
#code# tag larını kullanarak programını buraya koy çeviren çıkacaktır. Satırlarına bakınca bilenler şu derleyici diyebilirler... |
kodlardan bazıları; #include <16F688.h> #device adc=10 #fuses NOBROWNOUT,MCLR,INTRC_IO,NOCPD,NOWDT,PUT,NOIESO,NOFCMEN #use delay(clock=8000000) #byte lcdport = 0x06 // PORTB #byte lcdport_tris = 0x86 // PORTB tris nokia_erase_y(4); nokia_gotoxy(0,4); switch(cmode){ case 1: if(!input(PIN_A1)) { hr=hr+1; if(hr==23) hr=0; bit_set(bayrak,0);} printf(nokia_printchar,"Set HH"); break; case 2: if(!input(PIN_A1)) { min=min+1; if(min==60) min=0; bit_set(bayrak,0); } printf(nokia_printchar,"Set MM"); break; case 3: if(!input(PIN_A1)) { day=day+1; if(day==32) day=0; bit_set(bayrak,0); } printf(nokia_printchar,"Set DD"); break; case 4: if(!input(PIN_A1)) { mth=mth+1; if(mth==13) mth=0; bit_set(bayrak,0); } printf(nokia_printchar,"Set Mh"); break; case 5: if(!input(PIN_A1)) { year=year+1; if(year==51) year=0; bit_set(bayrak,0);} printf(nokia_printchar,"Set YY"); break; } delay_ms(300) bu kodları hex e çevirmek için hangi programı kullanmalıyım? |
Sanırım önemli sırlar içerdiği için hepsini yazamadın. Hepsini yazsa idin derleyip hex dosyasını verirdik. Derleyicinin adı CCS... http://www.ccsinfo.com/content.php?page=compilers ------------ code taglarının örneği : üst barda code kutusuna tıkla,iki köşeli parantez arasına kodlarını yapıştır... #include <16F688.h> |
yok hayır öyle gizemli bi kodlar değil durum şöyle; bi abi bana bu kodları hediye etti normalde parayla satıyo olurya nette falan gezinirken denk gelirse bende hepsini yayınlarsam ayıp olur.zaten bu işi bilenlenler tarih saat devresinin kodları olduğunu anlayacaktır. ilginiz için teşekkür ederim |
Nokia lcd termometre diye aratırsan çok sayıda tam proje bulabilirsin. http://www.4shared.com/file/26251788/8ed6ed93/Nokia1.html http://www.4shared.com/file/26252171/66aa9aa4/Nokia2.html http://www.4shared.com/file/72244717/79bab8be/Nokia3.html .... |
c# dilinde devrenn açık kodları var hex e dönüşmüş halide var fakat ben açık kodlarda ufak bi değişiklik yaptım değişiklikte şu; ekranda koıdları yazan kişinin adı yazıyodu bene açık kodların içinden o kısmı silip kendi adımı yazdım yani dolayısıyla tekrar hex e çevirmem gerekiyo bunu yapamadım.elimde kodlar hazır olarak var ama hexe çeviremiyorum bilmemek kadar kötü bişey yokmuş ekrana kendi ismimi yazdırmak istiyorum verdiğiniz en son linkteki devre çok hoşuma gitti o devreye kendi adımı yazdırabilmem mümknmü ? pic c compiler ccs pswhd programının tam sürümünü buldum bu programla hex e çevirmeye çalıştım fakat 2 satırda hata verdi satırları yazayım belki düzeltebilirsiniz nokia_gotoxy(0,5)111; printf(nokia_printchar,("reha") (111 rakamını ben koydum hata yerini belirtmek için; program 111 rakamının hemen önndeki parantezi işaret ederek hata veriyor) i=hr-((hr/10)*10);222 yaz(i,8,0); (gene 222 rakamının önndeki noktalı vrgülde hata veriyor program , sorun ne anlayamadım |
Bu şekilde yardım mümkün olmadığına göre , fırsat bu fırsat. CCS C öğrenmenin tam zamanı. Türkçe pek çok kaynak bulabilirsin. Bir çok kez verilmişti zaten... |
C# bilmiyorum ama C biliyorum. Bu kodlar C kodları, sen eminmisin bu programın C# da yazıldığından? |
hadi ya ben kisini aynı sanıyodum c yada c# hakkında hiçbi bilgim yok sadece elimdeki hazır kodları hex e çevirmeliyim tüm yapmak istediğim bu. |
#include <pic.h> #include <delay.c> main(void) { unsigned char gecici_dizi[16]; unsigned char i,a,toplam_sutun; signed int kayma,deger; unsigned const char metin[]={ 0x7F,0x08,0x08,0x08,0x76,0x00, // B 0x84,0xFD,0x84,0x00, // İ 0xFF,0x80,0x80,0x80,0x80,0x00, // L 0x84,0xFD,0x84,0x00, // İ 0xFF,0x02,0x0C,0x02,0xFF,0x00, // M 0x00,0x00,0x00,0x00, // Bosluk 0x38,0x40,0x80,0x40,0x38,0x00, // v 0x70,0xA8,0xA8,0xA8,0xB0,0x00, // e 0x00,0x00,0x00,0x00, // Bosluk 0x01,0x01,0xFF,0x01,0x01,0x00, // T 0xFF,0x89,0x89,0x89,0x81,0x00, // E 0xFF,0x18,0x24,0x42,0x81,0x00, // K 0xFF,0x04,0x08,0x10,0xFF,0x00, // N 0x84,0xFD,0x84,0x00, // İ 0xFF,0x18,0x24,0x42,0x81,0x00};// K //Metindeki sütunların sayısını hesapla toplam_sutun=80; //10x6+5x4=60+20=80 //Port ayarlama işlemleri TRISB=0; TRISA=0; CMCON=0x07; PORTB=0x00; for(;;){//Ana döngü //Geçici diziyi sıfırla for(i=0;i<=15;i++){ gecici_dizi=0; //Dizi elemanları başlangıçta 0 } //Kaydırma işlemleri for(kayma=-14;kayma<=toplam_sutun;kayma++){ //Metni 16 sütunluk parçalara böl for(i=0;i<=15;i++){ deger=i+kayma; if(deger<0)gecici_dizi=0; //metin girişi if(deger>=0&°er<=toplam_sutun-1) gecici_dizi=metin[deger]; if(deger>toplam_sutun)gecici_dizi=0; //metin çıkışı } //Tarama işlemleri for(a=0;a<40;a++){ //Aynı görüntüyü 40 kez tekrarla for(i=0;i<=15;i++){ //Geçici diziyi görüntüle PORTB=gecici_dizi; // Veriyi PortB'ye gönder PORTA=i; // ilgili sütun'u seç DelayUs(200); // 200 mikrosaniye bekle }}} }// işlemleri tekrarla }// Program sonu selam arkadaşlar yardımınıza ihtiyacım var.ben bunu bilim teknik yazan yeri silip yerine HUSEYİN & ZEYNEP yazdırmak istiyorum ama hex e dönüştürülmüş olması lazım.bana bunu dönüştürebilirseniz minnettar kalırım. ![]() |
merhaba elimdeki c kodları var nasıl hex e ceviceğimi bilmiyorrum acaba yardım ede bilirmisiniz KODLAR #include <pic.h> #include <delay.c> main(void) { unsigned int i; unsigned char dizi[]={ 0xFF,0x09,0x09,0x09,0x09,0x00, // F 0x7F,0x80,0x80,0x80,0x7F,0x00, // U 0xFF,0x04,0x08,0x10,0xFF,0x00, // N 0xFF,0x81,0x81,0x81,0x7E,0x00, // D 0xFC,0x12,0x11,0x12,0xFC,0x00, // A 0x00,0x00,0x00,0x00,0x00,0x00 // Boluk 0xFC,0x12,0x11,0x12,0xFC,0x00, // A 0xFF,0x18,0x24,0x42,0x81,0x00, // K 0xFC,0x12,0x11,0x12,0xFC,0x00, // A 0xFF,0x19,0x29,0x49,0x86,0x00, // R 0x00,0x00,0x00,0x00,0x00,0x00 // Bosluk }; TRISB=0; for(;;){ for(i=0;i<48;i++){ PORTB=dizi; DelayMs(1); // 1ms bekle } DelayMs(48); // 48ms bekle } } |
rica etsem bu kodları hex yapabilirmiyiz. pic 16F84A atılacak. #include <pic.h> unsigned char time; unsigned char variable=200; //--data logic1-- void send1 (void) { for(time=variable;time>0;time--) { PORTA^=1; #asm NOP NOP #endasm } } //--data logic0-- void send0 (void) { for(time=variable;time>0;time--) { PORTA=0; #asm NOP NOP #endasm } } //--startbit-- void startbit(void) //2400us 1 600us 0 { send1(); send1(); send1(); send1(); send0(); } //--device code-- void senddevicecode(void) //device code 10000000 not inverted { send1(); send0(); send0(); send0(); send0(); send0(); send0(); send0(); } //--data-- void senddata_1(void) { send1(); send0(); send0(); send0(); send0(); send0(); send0(); send0(); } void senddata_2(void) { send0(); send1(); send0(); send0(); send0(); send0(); send0(); send0(); } void senddata_3(void) { send0(); send0(); send1(); send0(); send0(); send0(); send0(); send0(); } void senddata_4(void) { send0(); send0(); send0(); send1(); send0(); send0(); send0(); send0(); } void senddata_5(void) { send0(); send0(); send0(); send0(); send1(); send0(); send0(); send0(); } void senddata_6(void) { send0(); send0(); send0(); send0(); send0(); send1(); send0(); send0(); } void senddata_7(void) { send0(); send0(); send0(); send0(); send0(); send0(); send1(); send0(); } void senddata_8(void) { send0(); send0(); send0(); send0(); send0(); send0(); send0(); send1(); } //-----// Butonlara basili degilken gonderilecek veri (hepsi 0) void senddata_9(void) { send0(); send0(); send0(); send0(); send0(); send0(); send0(); send0(); } //----------------------------- //--stopbits-- void sendstopbit(void) //stop 11001 { send1(); } void main(void) { RBPU=0; TRISA=0; TRISB=255; while(1) { if(RB0==0){ startbit(); senddevicecode(); senddata_1(); sendstopbit(); for(time=12;time>2;time--) send0; } if(RB1==0){ startbit(); senddevicecode(); senddata_2(); sendstopbit(); for(time=12;time>2;time--) send0; } if(RB2==0){ startbit(); senddevicecode(); senddata_3(); sendstopbit(); for(time=12;time>2;time--) send0; } if(RB3==0){ startbit(); senddevicecode(); senddata_4(); sendstopbit(); for(time=12;time>2;time--) send0; } if(RB4==0){ startbit(); senddevicecode(); senddata_5(); sendstopbit(); for(time=12;time>2;time--) send0; } if(RB5==0){ startbit(); senddevicecode(); senddata_6(); sendstopbit(); for(time=12;time>2;time--) send0; } if(RB6==0){ startbit(); senddevicecode(); senddata_7(); sendstopbit(); for(time=12;time>2;time--) send0; } if(RB7==0){ startbit(); senddevicecode(); senddata_8(); sendstopbit(); for(time=12;time>2;time--) send0; } //----------------- //butonlar basili degilse 9 nolu datayi gönder startbit(); senddevicecode(); senddata_9(); sendstopbit(); for(time=12;time>2;time--) send0; //------------------ } } |
slm arkadaşlar..c de yazılmış bi programım var..bunu hex e çevirirken sorun yaşıyorum yardımcı olabilecek var mı? program bu ; #include <pic.h> #include <delay.c> #include <lcd.c> #include <stdio.h> //Konfigurasyon ayarlari __CONFIG(WDTDIS&LVPDIS&PWRTEN&XT); // Reed anahtar RA0'a pinine bagli #define SW RA0 // Global degiskenler unsigned char kontrol=0; unsigned char sonuc[]=" "; unsigned int CX; float pi=3.14159, r=0.0022; //Türbin yaricapi //---- TIMER kesme alt programi ----- void interrupt kesme(void){ CX++; if(CX>10000)kontrol=1; T0IF=0; // Bayragi temizle TMR0=131; // TIMER'i tekrar yukle } //--------- LCD alt programi---------- void LCD_yaz(void){ float hiz; unsigned int hiz2; lcd_clear(); // LCD'yi temizle hiz=2*pi*r*10^(-3)/CX; // m/sn cinsinden hiz2=(int)hiz; // hiz degerini hesapla lcd_goto(0x00); lcd_puts(" AKISKAN HIZI "); if(kontrol==0){ // Sonucu LCD'ye yazdir sprintf(sonuc+3,"%d m/sn",hiz2); lcd_goto(0x40); lcd_puts(sonuc); } else{ // Türbin duruyorsa Hiz=0 yazdir lcd_goto(0x41); lcd_puts("*** HIZ=0 ***"); } } //----------- ANA PROGRAM ------------ main(void) { TRISA=0x01; // Port A'nin ilk pini giris TRISB=0x00; // PortB'nin hepsi cikis CMCON=0x07; // PortA sayisal giris PORTA=0; // Baslangic durumu ayarlari PORTB=0; // LCD islemleri DelayMs(250); lcd_init(); lcd_clear(); lcd_write(0x0C); //imleci gizle lcd_goto(0x00); lcd_puts(" AKISKAN HIZI "); // TIMER islemleri T0CS=0; // Dahili clock PSA=0; // Prescaler TMR0 icin ayarli PS0=0; PS1=1; PS2=0; // Oran 1:8 ei(); // Butun kesmeler etkin T0IE=0; // Baslangicta TIMER pasif T0IF=0; // Bayrak temizle // Hiz olcum islemleri for(;;){ CX=0; kontrol=0; while(SW==0); // Giris 0 ise bekle TMR0=131; // 125 sayim (256-131=125) T0IE=1; // TIMER baslat while(SW==1); // Giris 1 ise bekle while(kontrol==0){if(SW==1)break;} T0IE=0; // TIMER'i durdur LCD_yaz(); // LCD alt programina git DelayMs(250); // 250 ms bekle while(SW==1); } // islemleri tekrarla } // Programin sonu şimdiden teşekkürler.. |
Konu ile alakası yok ama bunlar c# kodu mu? Bana c kodu gibi geldi. |
konu basligin dikkatimi cekti c# dilinde bir mikro islemciye program yazamazsin c# microsoftun gelistirdigi c ye benzer bir kutuphanedir fakat kodlar kesinliklle c arkadaslarin dedigi gibi ccs c var pic icin |
#include #include main(void) { unsigned int i; unsigned char dizi[]={ 0xFF,0x02,0x0C,0x02,0xFF,0x00, // H 0xFF,0x89,0x89,0x89,0x81,0x00, // A 0xFF,0x11,0x31,0x51,0x8E,0x00, // V 0xFF,0x10,0x10,0x10,0xFF,0x00, // V 0xFC,0x12,0x11,0x12,0xFC,0x00, // A 0xFF,0x89,0x89,0x89,0x76,0x00, // N 0xFC,0x12,0x11,0x12,0xFC,0x00, // U 0x00,0x00,0x00,0x00,0x00,0x00 // R }; TRISB=0; for(;;){ for(i=0;i<48;i++){ PORTB=dizi; DelayMs(1); // 1ms bekle } DelayMs(48); // 48ms bekle } } bunun hexe dönüşmüş hali lazım arkadaşlar yardımcı olabilir misiniz ? :) |
1. sayfa
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.