Gömülü Sistem Programlama Nedir ve Dilleri

Sorunları Ortadan Kaldırmak Için Enstrümanımızı Deneyin





Bir sistem, verilen talimatlara göre çalışmak üzere bir araya getirilmiş birden çok ünitenin bir düzenlemesidir. Gömülü bir sistem, belirli bir süre içinde belirli bir görevi gerçekleştiren (yani çamaşır makinesi gibi yalnızca belirli bir görevi gerçekleştirmesi gerektiği anlamına gelir) hem donanım hem de yazılımın birleşimidir. Bir uygulamada gömülü sistem kullanmanın temel avantajı, boyutu ve maliyeti en aza indirebilmesi ve ayrıca görevin güvenilirliğini ve verimliliğini artırmasıdır. Bu makale gömülü yazılım dilleri, gömülü sistem hakkında genel bakış programlama ve işlevleri.

Gömülü Sistem Bileşenleri

Aşağıdakiler gömülü sistemlerin bileşenleridir




  • Gömülü Donanım: Mikro denetleyici, iletişim amacıyla birden çok çevre biriminin gömülü donanıma arabirim oluşturduğu gömülü sistemin kalbidir.
  • Gömülü RTO'lar: Tüm karmaşık (ar işlemlerini gerçekleştirmek için yerleşik bir gerçek zamanlı işletim sistemi kullanılır.
  • Aygıt sürücüleri: İşletim sistemleri ve çevresel cihazlar arasında bir köprü görevi görür.
  • İletişim yığınları: Harici cihazlarla iletişim kurmak için kullanılır.
  • Gömülü uygulamalar: Gömülü aygıtın önceden tanımlanmış işlevini gerçekleştirir.
Gömülü Sistem Bileşenleri

Gömülü Sistem Bileşenleri

Gömülü Yazılım

Gömülü bir yazılım veya gömülü sistem programlama, bir dizi talimat sağlayarak cihazları kontrol etmek için kullanılan bilgisayar yazılımıdır. Olarak da adlandırılır firmware, çeşitli işlevlere sahip çeşitli cihazlar, tasarım kısıtlamaları (yanıt süresi kısıtlamaları, katı son tarihler ve işlenmiş veriler gibi) korunarak ve nihai verileri depolayarak gömülü yazılım kullanılarak programlanabilir. hafıza (Ram / Rom).



Yazılım, bir makine arayüzü tarafından kontrol edilir veya başlatılır. Gömülü yazılım, arabalar, telefonlar, robotlar gibi tüm elektronik cihazlarda yerleşiktir. güvenlik sistemi , vb. 8 bit üzerinde çalıştırılması kolaydır mikrodenetleyici birkaç KB'ye kadar bellek kullanarak. Karmaşık işlemlerin işlenmesine yardımcı olur ve doğru hesaplama çerçevesini belirler.

Gömülü Sistem Programlama Dilleri

Gömülü yazılım, aynı anda birden çok görevi gerçekleştiren gerçek zamanlı bir işletim sistemi olan bir işletim sistemi kullanır. Gömülü programlar, aşağıdakiler kullanılarak programlanır: C / C ++ , Phyton ve Java Scripts dilleri ve benzeri işletim sistemlerinde işlenir. Linux İşletim Sistemi , VxWorks , Fusion RTOS, Nucleus RTOS, mikro C / OS, OSE, vb. Programlama dilinin seçimi, aşağıda gösterildiği gibi belirli faktörlere dayanan gömülü yazılım geliştirmede hayati bir rol oynar,

  • Boyut : Gömülü işlemciler (mikro denetleyiciler), uygulamasına bağlı olarak belirli miktarda ROM (Salt Okunur Bellek) içerdiğinden, bir programın gerektirdiği bellek miktarı önemli bir rol oynar.
  • Hız : Program yürütme hızı hızlı olmalıdır
  • Taşınabilirlik: Tek bir program kullanılarak farklı işlemciler derlenebilir.
  • Uygulama zor
  • Bakımı zordur.

Bir Gömülü Sistemin Assembly Dilinde Programlanması

Gömülü bir sistemin programlanması montaj dili (girdi) ve makine düzeyinde dil (çıktı) bir assembler kullanarak açıklanabilir, burada iki sperate register kullanarak iki sayısal eklemeyi gerçekleştirdiğimiz ve sonucu bir çıkış kaydında sakladığımız aşağıdaki örnek kullanılarak açıklanabilir.


Giriş

BURADA: MOV R0, # 01H

MOV # 1, # 02H

MOV A, R0

A, R1 EKLE

MOV P0, A

BURAYA SIMP

Çıktı

Adres İşlem Kodu İşlenen

0000 78 01
0002 79 02
0004 E8 –
0005 29 -
0006 F5 80
0008 80 00

Montaj kodu, boyut ve hız açısından verimli kod geliştirmek için kullanılır. Assembly dilinde daha büyük kod geliştirmek zorlaşır ve bu da daha yüksek yazılım geliştirme maliyetine yol açabilir ve kod taşınabilirliği yoktur. Dolayısıyla, bu dezavantajın üstesinden gelmek için aşağıdaki gibi üst düzey bir dil kullanıyoruz: gömülü C .

C, C ++, Java ve Gömülü C hakkında

C Programlama

C dili, Dennis Ritchie tarafından geliştirilmiş, yapı odaklı bir dildir. Basit derleyiciyi kullanarak daha az bellek erişimi sağlar ve verileri makine talimatlarına göre verimli bir şekilde sunar. Gömülü sistemlerden süper bilgisayarlara kadar geniş bir yelpazede uygulanabilir.

Gömülü C

Gömülü C, gömülü bir sistem geliştirmek için kullanılan C dilinin bir uzantısıdır. Sözdizimi C diline benzer (ana işlev, işlev bildirimi, veri türü bildirimi, döngüler vb.). Gömülü C ve standart C dili arasındaki temel fark, donanımın giriş-çıkış adreslemesi, sabit nokta işlemleri ve işleme adres alanlarıdır.

Aşağıdaki avantajlardan dolayı gömülü sistemde C kullanımı

  • Programın öğrenilmesi, anlaşılması ve hatalarının ayıklanması küçük ve kolaydır.
  • Tüm C derleyicileri tüm gömülü cihazlarla uyumludur
  • İşlemciden bağımsızdır (yani, belirli bir mikroişlemciye veya mikro denetleyiciye özgü değildir).
  • C dili, montaj dili ve üst düzey dilin özelliklerinin kombinasyonunu kullanır
  • Farklı platformlar arasında oldukça verimli, daha güvenilir, daha esnek, daha taşınabilir.
  • C'de geliştirilen programların anlaşılması, hata ayıklaması ve bakımı daha kolaydır.

Diğer yüksek seviyeli dillerle karşılaştırıldığında C daha fazla esneklik sunar çünkü nispeten küçük yapı odaklı bir dildir ve düşük seviyeli bitsel desteği destekler veri manipülasyonları .

C ++

C ++ gibi nesne yönelimli dil, gömülü aygıtlar gibi araştırma kısıtlama ortamlarında verimli bir program geliştirmek için isteğe bağlı değildir. C ++ 'nın sanal işlevleri ve istisna işleme, sistemin alanı ve hızı açısından verimli olmayan bazı belirli özelliklerdir.

JAVA

Gömülü bir sistem, çok sayıda kaynağa erişen JAVA sanal makinesi (JVM) kullanılarak JAVA dilinde programlanabilir. Öncelikle ileri teknoloji uygulamalarda (cep telefonları gibi) kullanım bulur ve uygulamaları işlemek için sistemler arasında taşınabilirlik sunar. Daha küçük gömülü cihazlar için tercih edilmez.

Gömülü C Programlama Mimarisi ve Örneği

Gömülü C programlama mimarisi, bir kullanım örneği ile anlaşılabilir 8051 mikro denetleyiciler , burada işlevi kontrolörün PORT1'ine bağlı LED ampulünü ve kullanılan derleyiciyi yanıp sönmek olan Keil C Derleyicisidir. Aşağıdaki koddur LED goz kirpmak.

#include // ön işlemci yönergesi
Void delay (int) // gecikme fonksiyonu beyanı
Void main (void) // Ana işlev
{
P1 = 0x00 // port1 kapalı, bu nedenle LED kapalı ve reg51.h'de saklanıyor
while (1) // sonsuz döngü
{
P1 = OxFF //// port1 açık, bu yüzden LED açık
gecikme (1000) // gecikme atama
P1 = 0X00 // port1 kapalı
gecikme (1000)
}
}
Void delay (int d) // gecikme fonksiyonu atama
{
işaretsiz int i = 0 // yerel olarak atanan değişkenler
(d> 0 d-) için
{
için (i = 250 i> 0i–)
için (i = 248 i> 0i–)
}
}

Avantajları

Aşağıdakiler Gömülü Yazılımın avantajlarıdır

  • Verilerin yüklenmesi daha hızlıdır
  • Maliyet düşük
  • Daha az kaynak kullanır.

Dezavantajları

Aşağıdakiler Gömülü Yazılımın dezavantajlarıdır

  • Yükseltme karmaşıktır
  • Herhangi bir sorun meydana gelirse her seferinde sıfırlama gereklidir
  • Küçük değerler için ölçeklenebilirlik zordur.

Uygulamalar

Aşağıdakiler Gömülü Yazılım uygulamalarıdır

  • Bankacılık
  • Otomobil
  • Ev Aletleri
  • Araba
  • Füzeler vb.

SSS

1). Gömülü Yazılım nedir?

Gömülü bir yazılım veya gömülü sistem programlama, talimatları sağlayarak cihazları kontrol etmek için kullanılan bilgisayar yazılımıdır.

2). Gömülü sistem yazılımında kullanılan programlar nelerdir?

Gömülü sistem yazılım programları C veya C ++, Phyton ve Java Scriptlerinde programlanmıştır.

3). Gömülü sistemler ile normal sistem arasındaki fark nedir?

Gömülü bir sistem, belirli bir amaç için tasarlandığı bir donanım ve yazılım kombinasyonudur. İşlemler sırayla işlenir. Normal bir işlemci, RTO’nun gerçek zamanlı işletim sistemi iken, paralel yürütmeye ihtiyaç duyulduğunda gereklidir.

4). Farklı Gömülü sistem türleri nelerdir?

Gömülü sistemler iki kategoriye ayrılır

  • Performans ve işlevsel gereksinimlere bağlı olarak, ayrıca Gerçek zamanlı, bağımsız, ağ bağlantılı, mobil olarak sınıflandırılırlar.
  • Mikrodenetleyicinin performansına bağlı olarak, küçük ölçekli, orta ölçekli ve gelişmiş ölçek olarak sınıflandırılırlar.

5). Gömülü sistemin başlıca uygulamaları

Gömülü bir sistemin başlıca uygulamaları şunlardır:

  • Çamaşır makinesi
  • Dijital kameralar
  • Müzik çalar vb.

Gömülü bir sistem, donanım ve yazılımın bir kombinasyonudur. Nerede gömülü yazılım programları C veya C ++, Phyton ve Java Scriptlerinde programlanmıştır. Linux OS, mikro C / OS, QNX, vb. Üzerinde çalışırlar. C dili, gömülü yazılım kodlarını yazmak için temel dili oluşturur. Bu nedenle bu, Gömülü Yazılım ve mimarisinin bir program kullanılarak açıklanan bir genel bakıştır.