MCU Donanımları geliştirmek için hata ayıklama paneli.

Üzerinde MCU barındıran yeni bir kart tasarlayacağınızı, bu karta bir panel bağlayacağınızı ve panel üzerinde ekran, display, led, tuş, switch, potansiyometre de olacağını varsayalım.

Daha işin çok başlarında bu panelin tasarlanması için erken olabilir. Zira tuş, led, potansiyometre vs nesnelerin miktarı ve yerleşimi, yazılımınız daha yeni yeni yerine otururken zaman içinde değişim gösterebilir.

Öte yandan projede böyle bir panelin kullanılmasına ihtiyaç da olmayabilir. Fakat program geliştirken bir tuşa basılıp basılmadığını bilmek, bir ledı yakıp söndürmek, bir potun pozisyonunu öğrenmek ya da seri port üzerinden mesaj alıp göndermek programda hata ayıklamayı kolaylaştırabilir.

İşte bu amaçla geliştirdiğim Android uygulaması, telefonunuzun kontrol paneli  gibi davranmasını sağlıyor.

Aşağıdaki ekran görüntüsünde her bir bileşenin etiketini değiştirerek projenize uyumlu hale getirebilirsiniz.

Screenshot_20211205-122635

4 Adet Display (8 Karakter),
4 Adet LED,
4 Adet Potansiyometre (0..100),
4 Adet Switch,
4 Adet Buton
1 Adet Text gönderme kutusu
1 Adet Text alma kutusu

Programı indirmek için:   Control_Panel

Denemelerde Digitus USB/Serial dönüştürücü kullandım ve  sadece Samsung S9 da denedim. Diğer Android telefonlarda nasıl bir ekran görüntüsü olacağı hakkında hiç fikrim yok.

Data formatı:

Hem Tx hem de Rx için iki ayrı 64 byte alanı bu işe ayırmak gerekiyor.

MCU kartınıza gelen 64 byte içinde aşağıdaki bilgiler var.

0xAA, Buton, Sw, Pot1, Pot2, Pot3, Pot4, Text mesaj (max 57 karakter)

Buton verisinde:

Bit 0 =  Birinci butonun durumu
Bit 1 = İkinci butonun durumu
Bit 2 = Üçüncü butonun durumu
Bit 3 = Dördüncü butonun durumu

Switch verisinde:

Bit 0 =  Birinci switchin durumu
Bit 1 = İkinci switchin durumu
Bit 2 = Üçüncü switchin durumu
Bit 3 = Dördüncü switchin durumu

Text: ASCI karakterlerden oluşan string

MCU devrenizden telefona göndereceğiniz 64 byte veriler aşağıdaki şekilde olmalı:

0xAA, Display1 data, Display2 data, Display3, Display4 data,  Led Data, Text Mesaj

Herhangi bir displayde 12345678 belirmesini istiyorsanız;

Datalarınız  0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38 şeklinde sıralanmalı.

Led Data

Bit0: 1. led on/off bilgisi (1=Led On, 0=Led Off)
Bit1: 2. led on/off bilgisi
Bit2: 3. led on/off bilgisi
Bit3: 4. led on/off bilgisi

 

Bu yazı 2- Arm ve Asm kategorisine gönderilmiş. Kalıcı bağlantıyı yer imlerinize ekleyin.