İlgili arkadaşlar , hepinize kolay gelsin. Asm kodunu , sadece Lcd ekranda çıkan bir yazıyı sadece isim olarak değiştirmek istiyorum. C'de yazılmış ve Mplamb'da hexedesimal'e çevirirken sorun yaşıyorum neden olabilir ? ''Bilim ve Teknik'' yazan başlıkta , sadece Sercan Ozat yazmasını istiyorum . Normalde koda yazan yazıya bunu uyguluyorum ama Hexedasimal'e çevirirken %100 hata veriyor.
(https://www.teknolojiekibi.com/yeni/proxy.php?request=http%3A%2F%2Fa1210.hizliresim.com%2F12%2F5%2Fdnut6.jpg&hash=ad735ba4c5d7e6b650b15b00307f83a408243f9b) (http://bit.ly/c25MCx)
#include <pic.h>
#include <delay.c>
#include <lcd.c>
#include <stdio.h>
main (void)
{
// Değişken tanımlamaları
const float lsb=5.0/1024.0;
unsigned char gerilim, ust, alt;
float sicaklik;
unsigned char sonuc[]="SICAKLIK = ";
// Port konfigürasyonu
TRISB=0; // PORTB çıkış
TRISA=1; // RA0 analog giriş
// Ön LCD işlemleri
DelayMs(250); // 250ms bekle
lcd_init(); // LCD'yi hazırla
lcd_clear(); // LCD'yi temizle
// ADC ayarları
ADCON1=0x8E; // AN0 analog giriş
ADCON0=0x41; // A/D aktif
for(;;){
// A/D çevrimi başlat
ADCON0=0x45;
// Dönüşümün bitmesini bekle
while((ADCON0&4)!=0);
// Dönüşüm sonucunu kaydet
gerilim=ADRESH;
gerilim=256*gerilim+ADRESL;
// Sıcaklık bilgisini oluştur
sicaklik=gerilim*lsb*100.0;
// Tam ve ondalık kısımları ayır
ust=(int)sicaklik;
alt=(int)(10.0*(sicaklik-ust));
// LCD'ye yazdırma işlemlerini yap
sprintf(sonuc+11,"%d.%dC ",ust,alt);
// 1. satıra geç ve LCD'ye yaz
lcd_goto(0x00);
lcd_puts("Bilim ve Teknik");
// 2. satıra geç ve sıcaklık değerini yaz
lcd_goto(0x40);
lcd_puts(sonuc);
// Biraz bekle ve ekranı temizle
DelayMs(250);
lcd_clear();
} // Ölçümü tekrarla
} // Programın sonu
Normalde bu devreyi ödev olarak yapmam gerekecek .
http://www.biltek.tubitak.gov.tr/gelisim/elektronik/13.htm (http://www.biltek.tubitak.gov.tr/gelisim/elektronik/13.htm)
Merhaba,
Bu kodu direkt olarak derleyemezsin. lcd_goto, lcd_puts gibi fonksiyonlar mevcut. Bunların da olması gerekli.
Saygılar
gerekli fonksiyonlar #include <lcd.c> ile belirtilen dosyada olmalı
ama <> ile yazıldığına göre original kodu yazan kişinin derleyicisinde bu dosya varmış
sizde farklı isimde olabilir, yada farklı bir dizindedir.
bu dosyayı proje dosyaları ile aynı klasöre kopyalayın, #include "lcd.c" şeklinde değişiklik yapın
bu durumda derleme yapabilir
23 nisan usta değişiklik yaptığın kodu yeniden pic c lite programı veya hi tech c programı ile derleme yapman gerekir. Ayrıca derleme yapmana engel olan bir durum bu derleme programını bilgisayar'a kurduktan sonra delay.h delay.c dosyalarını library içerisine kopyalaman gerekiyor. Yapamıyacak olursan yapmak istediğin değişikliği bildirirsen yardımcı olabilirim. Bilgisayarda virüs varsa bu durumda program derleme yapmıyor bu konuda acı tecrübem var bu programla ilgili olarak, yinede bu durumu usta yazılımcı arkadaş'lar değerlendir'sin. Saygılar.
Bunu yapan oldumu