Beyin#
giriiş#
VEX EXP C++’da Beyin, brain sınıfı ile temsil edilir. Beyin nesnesini oluşturursunuz (veya proje tarafından sağlanan varsayılanı kullanırsınız) ve ardından üye nesneleri aracılığıyla Beyin özelliklerine erişirsiniz.
Türetilmiş Sınıflar#
brain sınıfı, aşağıdaki türetilmiş sınıflar için temel sınıf görevi görür:
Screen- Bu sınıf, programların metin, grafik görüntülemesine ve dokunmatik girdi almasına olanak tanıyan, Beynin yerleşik renkli dokunmatik ekranına erişim sağlar.Timer- Bu sınıf, programlarda geçen süreyi ölçmek ve zamana dayalı davranışı kontrol etmek için yüksek çözünürlüklü zamanlama yardımcı programları sağlar.Battery- Bu sınıf, programların Beynin pil durumunu (voltaj, akım, kapasite ve sıcaklık dahil) izlemesine olanak tanır.Button- Bu sınıf, programların Beynin düğmeleriyle etkileşim kurmasına olanak tanır.ThreeWirePort(triport/ 3-Wire Port) - Bu sınıf, limit anahtarları, potansiyometreler ve LED’ler gibi eski sensörleri ve cihazları bağlamak ve kontrol etmek için Brain’in 3-Wire portlarına erişim sağlar.SDcard- Bu sınıf, dosya depolama, veri kaydı ve harici kaynakların yüklenmesi için Beynin SD kartından okuma ve yazma işlemlerini sağlar.
Sınıf Oluşturucuları#
brain();
Parametreler#
brain yapıcı fonksiyonu hiçbir parametre kullanmaz.
Notlar#
Bir projede yalnızca bir adet
brainnesnesi oluşturulmalıdır.
Örnek#
// Create the EXP Brain
brain Brain = brain();
Üye Fonksiyonları#
brain sınıfı aşağıdaki üye fonksiyonlarını içerir:
playSound- Beynin yerleşik ses efektlerinden birini çalar.playNote- Belirli bir süre boyunca bir müzik notası çalar.programStop- EXP Beyninde şu anda çalışan projeyi durdurur.timer- Beynin dahili zamanlayıcısının geçerli değerini belirtilen birimlerde döndürür.resetTimer- Beynin dahili zamanlayıcısını sıfıra sıfırlar ve zamanlamayı yeniden başlatır.setTimer- Beynin dahili zamanlayıcısını belirtilen bir değere ve zaman birimine ayarlar.
Herhangi bir brain üye fonksiyonunu çağırmadan önce, aşağıda gösterildiği gibi bir brain örneği oluşturulmalıdır:
// Create the EXP Brain
brain Brain = brain();
Sesi çal#
Beynin dahili seslerinden birini çalar.
Available Functionsvoid playSound(
soundtype sound,
uint32_t volume = 50 );
Parametreler |
Tip |
Tanım |
|---|---|---|
|
|
Beyinden çalınacak belirtilen ses. |
|
|
İsteğe bağlı. Sesin çalınacağı ses seviyesi, %0 ile %100 arasında bir tamsayı olarak belirtilir. Varsayılan değer %50’dir. |
Ses Adı |
Sesi Çal |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Bu fonksiyon bir değer döndürmez.
playNote#
Beyinden bir müzik notası çalar.
Available Functions1 - Bir müzik notası çalın.
void playNote( int32_t octave, int32_t note );
Parameters2 - Belirtilen süre ve ses seviyesinde bir nota çalar.
void playNote( int32_t octave, int32_t note, int32_t duration, int32_t volume = 50 );
Parametreler |
Tip |
Tanım |
|---|---|---|
|
|
Çalınan notanın oktavını temsil eden tam sayı:
|
|
|
Çalınacak nota:
|
|
|
İsteğe bağlı. Notanın çalınma süresi milisaniye cinsinden, en fazla 500 milisaniye. Süre belirtilmezse, varsayılan süre 500 milisaniyedir. |
|
|
İsteğe bağlı. Sesin çalınacağı ses seviyesi, %0 ile %100 arasında bir tamsayı olarak belirtilir. Varsayılan değer %50’dir. |
Bu fonksiyon bir değer döndürmez.
programı durdur#
EXP Brain üzerinde halihazırda çalışan projeyi durdurur.
Available Functionsvoid programStop();
Bu fonksiyon herhangi bir parametre kabul etmez.
Return ValuesBu fonksiyon bir değer döndürmez.
Examples// Stop the project when the Brain screen is pressed
while (true) {
if (Brain.Screen.pressing()) {
Brain.programStop();
}
wait(20, msec);
}
zamanlayıcı#
Beynin dahili zamanlayıcısının geçerli değerini belirtilen birimlerde döndürür.
Available Functionsdouble timer(
timeUnits units );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Dönüş zaman birimi:
|
Programın başlangıcından bu yana geçen süreyi belirtilen birimlerde temsil eden double bir double değeri döndürür.
Proje başladığında zamanlayıcı otomatik olarak başlar.
Zamanlayıcı,
resetTimerkullanılarak sıfırlanabilir.
// Stop the project after 3 seconds
while (Brain.timer(seconds) < 3) {
wait(20, msec);
}
Brain.programStop();
resetTimer#
Beynin dahili zamanlayıcısını sıfırlar. Ardından, zamanlayıcı hemen sıfırdan tekrar saymaya başlar.
Available Functionsvoid resetTimer();
Bu fonksiyon herhangi bir parametre kabul etmez.
Return ValuesBu fonksiyon bir değer döndürmez.
NotesZamanlayıcı sıfırlandıktan hemen sonra tekrar saymaya başlar.
resetTimerçağrısı,timer’e yapılan sonraki çağrıların döndürdüğü değeri etkiler.
// Reset the timer and measure elapsed time
Brain.resetTimer();
while (Brain.timer(sec) < 5) {
wait(20, msec);
}
// 5 seconds have elapsed since reset
Brain.Screen.print("5 seconds passed");
zamanlayıcıyı ayarla#
Beynin dahili zamanlayıcısını belirtilen bir değere ve zaman birimine ayarlar.
Available Functionsvoid setTimer(
double value,
timeUnits units );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Zamanlayıcının ayarlanacağı süre, |
|
|
|
Bu fonksiyon bir değer döndürmez.
NotesZamanlayıcı ayarlandıktan sonra ileri doğru saymaya devam eder.
setTimerçağırmak,timertarafından döndürülen değeri hemen değiştirir.
// Set the timer to start at 10 seconds
Brain.setTimer(10, sec);
// Wait until the timer is at 3 seconds
while (Brain.timer(sec) < 3) {
wait(20, msec);
}
// 5 seconds have elapsed since setTimer was called
Brain.Screen.print("5 seconds passed");