Elektronik devre

Başlatan natimus, 11 Haziran 2013, 22:19:47

natimus

Arkadaşlar merhaba.
Ben kendim yazılımcıyım. Yaptığım programda bir buton yardımıyla yine benim yapacağım bir devreyi hareket ettirmek istiyorum. Bu konu hakkında yardımcı olurmusunuz?
Konu hakkında pek bir bilgim olmadığı için bilen arkadaşlar var ise yardımcı olabilirlermi acaba?
Kullandığım programlama dili Delphi.
Delphide butona bastığımda devreyi nasıl hareket ettirebilirim?

camby

Hareket ettirmek derken ?

Devre tam olarak ne yapacak ?

natimus

birinci butona ya basınca ileri gidecek ikinci butona basınca geri gelecek. amaç elektronik devreyi hareket ettirme.

Gökhan BEKEN

Alıntı YapYaptığınız program, bilgisayarda mı?
Eğer bilgisayarda ise, ne ile bağlayacaksınız butonu?, Rs232(seri port), LPT(paralel port), USB, Ethernet, Bluetooth vs?
Bunları bağlamak içinde ayrı bir yazılım kullanmanız gerekecek, ancak paralel portta gerek yok.
Az önce yukarıdaki yazıyı yazdım tam gönderecektim siz yeniden yazmışsınız.
---------------------------------
Anladığım kadarıyla elektronik devreye teker takıp araba gibi ileri geri yapmak istiyorsunuz,
Sumo robot diye tabir ettiğimiz, tekerlekli elektronik devreleri araştırınız.

Özel mesaj okumuyorum, lütfen göndermeyin.

natimus

Evet.yaptığım program bilgisayarda.
Şöyle düşünün.. Bilgisayarda bir program arayüzü. 2 tane buton var karşınızda.. birinci butona bastığınızda ileri ikinci butona bastığınızda geri hareket edecek.
Bağlantı şekli için hangisi daha uygun olur bilmiyorum ama kablosuz bağlantı şekilleri dışındaki tüm kablolar olabilir.
Yani o devreye usb denmi kolay erişim sağlarım ethernettemi comporttanmı? hangisi daha işlevselse o olabilir.
Ben yazılım yapıyorum delphide ama elektronik ile ilgili bir proje yapmadım daha önce.. üniversite yıllarında picle uğraşmıştım sadece.
Bu konu hakkında da pek bilgim olmadığı için sizlerin yol göstermesini istiyorum.
Teşekkürler.

sadogan

En kolay seri port iletişimi olur.
Formda bolca örnek var .
Proteus ile aranız nasıldır?

natimus

Malesef hocam bilmiyorum. Daha önce uğraşmadım hiç oyüzden. bana nasıl yapılacağı hakkında bilgi verirmisiniz? Yani ben delphi ile bu elektroniki devreyi nasıl birleştiririm ? delphi tarafını biliyorum elektronik tarafını bilmiyorum.

MrDarK

natimus ;

Bendende yardım istemişsin ama benimde yapabileceğim pek birşey yok daha önce delphi ile yazılım geliştirmedim onunla ilgili nette biraz araştırma yap bizde öğrenelim nasıl delphide yazdığın kodu pic içine nasıl atıyorsun.

Onun dışında yazılımcıysan eğer donanımla uğraşamam diyorsan eğer Raspberry Pi veya Beaglebone gibi kitleri deneyebilirsin.

Pinleri dışarı çıkarılmış hazır herşey. Sen Linux içinde çalıştır kodu koştur devreni bu kadar basit (:
Picproje Eğitim Gönüllüleri ~ MrDarK

Gökhan BEKEN

Fazla uğraştıracak bişey değil bu,
LPT port kullanırsan, mcu kullanmana gerek kalmaz. Çünkü doğrudan çıkış verir.
(seri port kullanacak olsaydın mcu kullanman gerekirdi.)
Motorlara gidecek 2 adet paralel port pinini delphi ile kontrol edebiliyorsan,
motorların fiziksel dengesinide ayarlayabiliyorsan bişey kalmamış demektir.
Önce motoru hiç birşeye monte etmeden ileri geri hareket ettirmeye çalış delphi ile, gerisi gelir zaten.
Başarılar.
Özel mesaj okumuyorum, lütfen göndermeyin.

MrDarK

Adam belki bilgisayarı hiç kullanmak bile istemiyor buda olabilir.

Delphi ile yazdığın kodu pic içine yükleyebilen kişileri duymuştum ama hiç araştırmalarda denk gelmedim

Yok mu bu işin üstadları merak ettik yaw
Picproje Eğitim Gönüllüleri ~ MrDarK

Gökhan BEKEN

#10
Ne ile yazıldığı önemli değilki, assembly diline ve daha sonra hex çıktısına çevirebiliyorsa yüklenir.(siz biliyorsunuz bunu zaten)
Ancak delphinin böyle bir seçeneği olduğunu hiç sanmıyorum.
Mikro Pascal dili delphiye yakın olduğu için tavsiye ederim: http://www.mikroe.com/mikropascal/pic/

mesaj birleştirme:: 12 Haziran 2013, 23:22:44

Biraz araştırmadan sonra şunları buldum:
https://www.picproje.org/index.php?topic=924.0
http://www.delphiturkiye.com/forum/viewtopic.php?f=2&t=928
Özel mesaj okumuyorum, lütfen göndermeyin.

z

Alıntı yapılan: MrDarK - 12 Haziran 2013, 23:01:56
..... Delphi ile yazdığın kodu pic içine yükleyebilen kişileri duymuştum ama hiç araştırmalarda denk gelmedim....

Burda denmek istenen;

"Delphi ile yazılan program, hex kodu okuyup ardından da çipi programlıyor"olabilir. PIC16F84'ü PC de C ile yazdığım program sayesinde programlayabiliyordum.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

RaMu

Alıntı yapılan: meftun - 12 Haziran 2013, 23:20:41
Ne ile yazıldığı önemli değilki, assembly diline ve daha sonra hex çıktısına çevirebiliyorsa yüklenir.(siz biliyorsunuz bunu zaten)


Buradan anlaşılacak olan kullanılan program herhangibir hex çıktısı veriyorsa tamam bunu md ye yükleyebiiriz ise yanlış.

Aslında yazılan bütün programların geldiği nokta hex dir, hex dosya biçimi formatıdır aslında ama içerisinde hexadesimal tabanda ve md programlayıcı donanımları çalıştıran programların (pickit brenner vs.) anladığı şekilde dizilmiş, md nin program hafızasında şu satıra şu sayı yazılacak bilgisini tutan dosya biçimidir.

asm komutlar, sayı olan opcode ların, bizim anlayacağımız şekildeki, kelime karşılıklarıdır.

asm komut seti md den mdye değişiklik gösterebilir, mimariden mimariyede
hatta 8 bit md ile 16 bit md nin komut setinin aynı olamayacağı açıktır

16 f serisi için
misal asm derleyicileri bsf portc,7 yazdığımızda bunu 0101   07,07  olarak görür,
derleme esnasında bu 0x2F0E  sayısına dönüşür, daha sonra programın kaçınca satırına yazılacağı bilgisi
ile birleştirilip intel hex 16 formatına + programlayıcı donanımı kontrol eden programın (pickit brenner vs)
anlayacağı sıraya göre hex dosyasındaki yerini alır,

Buradan şu açıkca görülüyorki portc her md de 07 adresinde olmayabilir, bu yüzden bsf komutunun bu kısmı değişebilir,
hatta portc nin 7 nolu biti hiç varolmayabilir, bsf komutu bu şekliyle kullanılamıyor ama  bset adıyla kullanılıyor olabilir
daha öncede söylediğim gibi md 16 bitlik olabilir buda herşeyi değiştirir,

Yani bir programın hex dosyası üretiyor olması bunun md ye yüklenebilir olduğu anlamına gelmez,

c derleyicilerinde bu anlatılanların üst adıı olarak önce if vs. yapılar öncelikle kullanılan md serisinin
uygun asm kodları seçilerek asm ye çevrilir, bunun devamında yukarıdaki işleme tabi tutulur

aslında derleyicilerin tam çalışma prensibi bu değildir, arada yazım hatası kontrolü vs. birçok adım bulunur

Yani baştada söylediğim gibi yazılan tüm programların geldiği nokta hex dir, tam geldiği nokta makina dilidir,
bu aşamalara gelirken programı çalıştıracak donanıma yani işlemci komut setine (instruction set) uygun ve
işlemci (ve varsa diğer gömülü mödülleri) donanım yapısına uygun bir şekilde yazılmak zorundadır.

Tabiki herhangibir programlama dili ile yazılan program pice atılabilir eğer yukarıda saydıklarımı yapacak bir derleyici kısmı yazılırsa,
aynen z hocamın yazmış olduğu 16f i programlamak için kullandığı program gibi (yani ben yanlış anlamadıysam belkide sadece
varolan bir hex dosyasını sadece 16f84 e yazan kısmı yapmışta olabilir)

Ben pic üzerinde çalışan bir derleyici yazmaya çalıştım fakat henüz bitiremedim,
deneme olarak sadece (pc kullanmadan) opcode larını hazırladığım 3-4 satırlık bir programı (pc kullanmadan) bir md ile diğer md nin program hafızasına yazıp led yaktırdım. Niyet portatif pic programlayıcı derleyici yapmak, derslerde kullanılabiir diye hocam istemişti.

Yok eğer Meftun hocam söylediklerimi kaasteddiyseniz katılıyorum sonuçta uygun hex i ürettirebilirsek md yede yazarız. 
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

MrDarK

Konu tartışmalarla dağılmış oysa soru basitti ; Delphi ile Pic programlama ;

Linkler : https://www.picproje.org/index.php?topic=924.0

https://320volt.com/delphi-ve-elektronik/

http://www.pdfindir.com/delphi-7-arayüz-pıc-kontrolü-pdf-1.html
Picproje Eğitim Gönüllüleri ~ MrDarK