avatar_Mucit23

SD kart kullanımı

Başlatan Mucit23, 26 Eylül 2011, 13:21:31

Mucit23

Merhabalar ETE hocam. Acaba Daha önce SD kartları inceledinizmi? Bu yönde Herhangi bir uygulamanız oldumu?
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

ete

Hiç SD kart ile uğraşmadım. Bir ara niyetlendim ben genellikle proje olmayınca pek o tür şeylerle uğraşacak ne ortam nede fırsat bulamıyorum. Ama proje konusu olunca mecburen ilgileniyorum. Bu tür şeyler genellikle süreklilik isteyen ilgi ister.
Bugün bir kısmına başak bir gün diğer kısmına bakayım dersen olmuyor maalesef.
En iyisi konuyu eline alacaksın bitirinceye kadarda bırakmayacaksın.
Sorduğuna göre kafanda bir düşünce var herhalde.

Ete

Mucit23

var aslında..
Termometre benzeri uygulamalarda hep dataloggerbenzeri özellikler olmasını istemişimdir.   sd kart bu işin temelini olusuruyor.
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

ete

Düşünceler farklı oluyor demekki. Bir kaç yıl önce bir sıcaklık sistemi üzerinde çalışıyordum. Sürekli sıcaklığı ölçüp saat bazında kayıt almam gerekiyordu. Bende bir ara devre yaparak okunan sıcaklıkları saat bilgisi ile birlikte PC ye aktardım. PC ye de bir program yazarak gelen bilgileri alıp kayıt etmesini ve gelen bilgiler üzerinden ekrana bir grafik vermesini sağlamış idim. Data logger deyince aldığın bilileri bir yerde değerlendirmen gerekecek ve büyük ihtimalle bu bir PC olacaktır. Bence SD kart yerine direk PC ye aktaracak bir sistem tasarlarsan daha uygun olacaktır.
Ama işin detayını bilemiyorum tabiiki. Bilgi alacağın kaynak PC ye uzakta ise ve zaman zaman bu bilgileri alıp PC de değerlendirecek isen tabiiki SD kart  iyi bir çözümdür.

Ete

Mucit23

Evet Hocam aynen Öyle. Aslında SD kartın çalışmasını çözebilirsem aynı PicBasic ile GLCD kullanır gibi SD karta dosya açıp veri aktarabilirim. Ama bilmediğim birçok şey var. Mesela SD kartın yapısı, Sektörler, En basitinden Bir .txt uzantılı bir dosya açıp içine bişeyler yazmak için sırasıyla yapılması gerekenler vs... Bunun gibi öğrenmek istediğim birçok nokta var. İlk önce bunları öğrenmem gerekiyor.
  Dediğiniz gibi direk PC bağlantılı bir sistem yapılabilir. Ama malesef. Yapmak istediğim cihazın yakınlarda pc yok. Bu yüzden SD kart kullanımını öğrenmek istiyorum.

Birazdaha ayrıntı vermek gerekirse ürün bilgisayardan bağımsız olarak yerleştirilen bölgede sıcaklık okuyup SD karta kayıt yapamasını istiyorum. Yani diyelim günlük olarak veya iki günde bir cihaz üzerindeki SD kart alınıp PC üzerinde incelenebilecek. Bu benim ilk aşamadaki hayalim :) Sonrasında pc programı ile sd kattaki verileri okuyup grafiklerle gösterebilmek istiyorum.

Bana çok uçuk bir proje gibi gelmiyor.Buna benzer C dili ile yapılan uygulamalar görmüştüm.

Bu arada hocam Siz yaptığınız uygulamada PC yazılımını hangi dil ile yazdınız?
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

ete

Delphi ile yazmıştım. Bir ara epeyce delphi çalışıp öğrenmiştim ama nerdeyse 3-4 yıldır en ufak bir şey yazmadım ve çoğunu unuttum. Bunlardan biriside önceki sitede yayınladığım elektronik hesap tablosu idi.  İlişiktedir.

Yeniden çalışsam hatırlarım ama vakit yok pekde PC programına ihtiyacım yok şu aralar.

Ete

Mucit23

#6
Merhabalar ete hocam.

Ben biraz araştırma yaptım. Anladımki bu iş gerçekten zor. Derleyicinin bu iş için hazırlanmış kütüphanesi olmadan bu işi yapmak bir hayli birlgi ve tecrübe istiyor malesef. Belki Sd kart Eproom gibi kullanılabilir yani sektörlere veri yazılıp okunabilir ama sd kart içerisinde dosya oluşturmak için fat dosya sistemi çok iyi bilinmeli.

Ben sağdan soldan bazı kaynaklar buldum. Belki incelemek istersiniz.

Şuanda protonu SD cart kütüphanesini inceliyorum. Birhayli umut verici...
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

ete

Dosyalara baktım. Mikrochip pdf dosyasında hemen her şeyi anlatmış. Sıkı incelenirse anlaşılır. Ancak epeyce zaman alacak bir iş ve basic uygulaması insana saç yoldurabilir. Bu nedenle ihtiyaç olursa sıkı bir şekilde incelemeye karar verdim.
Ama bir yandan da elime farklı bir bilgi kaynağı geçerse bakacağım. Doğan İbrahim in kitabına bakarsan Mikrobasic bu konuda her türlü komuta sahip gözüküyor. Belkide o derleyiciyi denemelisin.

Sana kolaylıklar dilerim.

Ete

Mucit23

evet hocam mikrobasic ikinci seçeneğim. Bugün protonun sd kart kütüphanesini indirdim akşam biraz uğraşayım. Olmazsa mikrobasic ile ilgileneceğim
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

Mucit23

#9
Hocam sonunda SD kart işini çözdüm ve İlk SD kart denememi yaptım. Sonuç gayet iyi.
Protonun kendi Örnek kodlarıyla denedim. Çok iyi çalışıyor.
Device = 18F452
Xtal = 20

Config_Start
   OSC = HS ; HS
   PWRT = On ; Enabled
   BOR = On ; Enabled
   WDT = OFF ; Disabled
   CCP2MUX = OFF ; Disable (RB3)
   STVR = OFF ; Disabled
   LVP = OFF ; Disabled
   Debug = OFF ; Disabled
Config_End

'-----------------------------------------------------------
All_Digital = TRUE
'-----------------------------------------------------------
Hserial_Baud = 115200                                       'Setup RS232 port
Hserial_RCSTA = %10010000                                       
Hserial_TXSTA = %00100100
'-----------------------------------------------------------
Dim Response As Byte
Dim SD_IO As Byte
'-----------------------------------------------------------
Symbol SD_CS = PORTE.0                                      'SPI CS to SD CS (SD pin 1)
Symbol SD_DI = PORTC.5                                      'SPI DO to SD DI (SD Pin 2)
Symbol SD_CLK = PORTC.3                                     'SPI CLK to SD CLK (SD Pin 5)
Symbol SD_DO = PORTC.4                                      'SPI DI to SD DO (SD Pin 7)
'-----------------------------------------------------------
Include "SD_MMC_Deneme1_Lib.pbp"
'-----------------------------------------------------------
GoTo Over_Sub                                               'Jump over the subroutines
'-----------------------------------------------------------
Over_Sub:                                                   
    DelayMS 200
'-----------------------------------------------------------
Main_Prog:

    HSerOut ["INSERT SD OR MMC",13]

    Repeat

        Response = SD_Init_FS

    Until Response = 0

'-----------------------------------------------------------

Open_New_File:

    SD_File_Name = "TESTFILE"                                 'File Name, upper case only!

    SD_File_Ext = "TXT"                                     'File Ext, upper case only! 

    Response = SD_Check_For_File                            'Check if file already exists

    If Response = 0 Then

        HSerOut ["FILE EXISTS - STOPPING",13]

        Stop

    Else         

        HSerOut ["OPENING FILE",13]

        SD_New_File                                         'Open new file

    EndIf

'-----------------------------------------------------------

Write_To_File:

    HSerOut ["WRITING TO FILE",13]

    SD_IO_String = "SD Kart Deneme Programıdır"

    SD_Write_String_To_File                                 'Write SD_IO_String to file

    SD_Write_Byte_To_File 13                                                   

    SD_Write_Byte_To_File 10                                                   

'-----------------------------------------------------------

Close_File:

    SD_Close_File                                           'Close file

    HSerOut ["FILE CLOSED",13]


Bundan sonra bu işin ayrıntısına inmek istiyorum. İş başta yukarıdaki programın yaptıklarını belirli koşullar dahilinde yapmak istiyorum.. Birçok komut Dolayısıyla öğrenmem gereken daha birçok bilgi var..
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

inventor

Eline sağlık. Örnek olması açısından güzel bir çalışma oldu. Böyle bir çalışmanın herkesin arşivine faydası olur. İlgiyle takip ediyorum.

Selam
İlmin en büyük düşmanı, sabırsızlıktır. (Şems-i Tırmizi)

Mucit23

Teşekkür ederim hocam. Öğrenmeye çalışıyorum işte. Hedefim Bi amatörün yapabileceği En profesyonel, En Ayrıntılı kaliteli uygulamalar ve   projeler ortaya çıkarmak. Benim için SD kart olmazsa olmazlardan biri ;)
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

kotan04

hımm benimde ilgimi çekti acaba şöyle birşey olabilirmi yazdığımız programın 
ana program kısmını  hex koduna çevirip sd karttan okutmak mümkün olabilirmi ? bunu yapmak mümkün olursa hafıza sorunum olmadan program yazabiliriz diye düşünüyorum yorumlarınız beni aydınlatacaktır arkadaşlar iyi çalışmalar

basla:


ana program


goto basla

Mucit23

Pek kötümser olmayı sevmem ama Bana pek mümkün görünmüyor. Sanırım Siz Programı SD karta yükleyip picin oradan programı okuyup öyle yürütmesinden bahsediyorsunuz. Dediğim gibi bu şimdilik imkansız görünüyor. Pic Mikroişlemcilerin yapısı buna müsait değil. (ama olsaydı fena olmazdı :) )

Ama Buna Nekadar ihtiyaç var bilemiyorum. Çünkü Pic mikrodenetleyicilerde Hafıza olarak 128KB a kadar seçenek var. 128Kb bir flash hafıza ile neler yapılmazki. Bence Bir Mikrodenetleyicinin Yapabileceği uygulamaların çoğu yapılabilir. Daha ilerisi İçin LPC veya STM ... gibi ARM çekirdekli Mikrodenetleyiciler var. Onlarda Hafıza 512Kb'a kadar çıkıyor. Yukarıda parantez içerisinde olsaydı fena olmazdı dediğim hafızası için değil. Sanki birazdaha kullanımı kolay olurdu. Daha kolay program yüklenirdi. En azından programlayıcıya gerek kalmazdı"
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/


Powered by EzPortal