bilgisayardan program yazma

Başlatan secretagent, 21 Haziran 2018, 09:28:49

secretagent

Merhaba bir işlemci kartım var ve  bu işlemciyi bilgisayarda yapılan bir program ile programlamak istiyorum.

Mesela;

Out 0.00 dediğimde 0 nolu çıkış aktif olacak
Mov komutu ile taşıma falan yapabilcem  programın çalışmasını istediğim gibi değiştirebileceğim sıralı bir iş değil yani editore ne yazdıysam onu yapacak.
Bunun mantığı nedir ? ( Bilgisayarda oluşturulacak programın mantığı nasıl olmalıdır yazacağım kodların işlemci tarafından algılanabilmesi için nasıl bir yol izleniyor butür işlerde ?

boreas

Normalde yazdığın kod donanımına göre çevrilip işlemci bootloader ile programlanıyor. Yani sen out 0.00 dediğinde derleyicin bu kodu atıyorum porta.7 = 0 gibi bir koda çevirip daha sonra asm ve hex'e dönüyor ya da direk yapabilrsen asm.ye de çevirebilirsin sonrada bootloader yöntemiyle işlemciyi programlıyorsun.

Tagli

Bir çeşit interpreter yazmak istiyorsun. Öncelikle olabilecek tüm komutları ve bunların argümanlarını düşün. Sanki bir fonksiyon gibi. Sonra bu komutlar için birer kod belirle. Örneğin out için 1 olsun. İşlemci 1 komutunu görünce mesela ikinci argümana bakıp 0 görürse, bunu "out 0" gibi yorumlayabilir.

En basit yaklaşım bu olur sanırım. Yoksa tabi istersen programlama dili gibi bir şey oluşturup bunu işlemek için bir lexical analyser ve parser yazabilirsin, veya flex & bison gibi programlarla oluşturabilirsin ama bu zor bir iş olur ve basit bir mikrodenetleyicinin kapasitesi aşabilir.
Gökçe Tağlıoğlu

ByTEK

Bende Kişisel Tavsiyemi söyleyim.

PC tarafında script işleyebilecek bir uygulama yazmalısın. Aynı şekilde PIC tarafında da bu uygulamanın dediklerini yapan bir kod yazmalısın. PIC PC ile iletişim halinde olduğunu düşünelim ve bu işlenecek komutlar seri porttan direkt komut olarak PIC'e gitsin.

Mantık şu :

Script Tarafı için :

 CIKIS(1,3)  // pin3 high olsun komutu gönder.
 BEKLE_SN(1) // 1sn Bekle
 CIKIS(0,3)  // pin3 low olsun komutu gönder.
 BEKLE_SN(1)
 
gibi komutlar oluşturduğunu varsayalım. uygulaman işledi ve gördüğü komuta göre PIC tarafına komut gönderdi. PIC tarafında seriport kesmesi kullanıp gelen komutları işletebilirsin. komut işletilince geri OK cevabı gelir ve sonraki komut işletilir.

Bu seneryoda PC ve PIC sürekli iletişim halinde olması gerekir. Eğer bağımsız olacaksa Komutları Eproma yazıp sürekli okuyup işletmen gerekiyor.

Ya da Arduino gibi bir platform kullan ve kendi dilinde yazıp bootloader ile yüklet.
 





secretagent

yanıtlar için tşkler arkadaşlar

yas


hwdesigner

PLC mantığı gibi bişi istiyorsun. Codesys bu işte çok başarılı. Mcu birimlerine pek hitap etmiyor ama incelemenizi tavsiye ederim.

Türkiyede bu işle uğraşan bir kaç firma var diye biliyorum. Parsnav olması lazım. Linkedinden v.s ulaşabilirseniz uygulamaya yönelik bilgi verebilirler. Bildiğim kadarıyla bazı cihazlarında linux bazılarında MCU var. Codesys tarzı bir yazılımları var. Mcu kısmı sizin aradığınız sorunun cevabı olabilir.