Music Technology တိုးတက်မှုနှင့်အတူဂီတကိရိယာများပိုမိုများပြားလာခြင်း Midi (Musical Contacter Digital Intervace) protocol ကိုထောက်ပံ့ရန်ဂီတကိရိယာများပိုမိုများပြားလာသည်။ ဤ protocol သည်ကွဲပြားခြားနားသောအမှတ်တံဆိပ်များနှင့်တေးဂီတပစ္စည်းအမျိုးအစားများအတွက်ကိရိယာများတွင်ဆက်သွယ်ရေးနှင့်အပြန်အလှန်ဆက်သွယ်မှုကိုထောက်ပံ့ပေးသည်။ ဤဆောင်းပါးသည် MIDI Protocol နှင့်ဆက်သွယ်ရန် PHP ကိုမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။
MIDI Protocol သည်ဂီတကိရိယာများအကြားအချက်အလက်များအားဂီယာ format နှင့်ဆက်သွယ်ရေးနည်းလမ်းကိုသတ်မှတ်ပေးသောဒီဂျစ်တယ်ဆက်သွယ်ရေး protocol ဖြစ်သည်။ Midi Message ကိုပုံမှန်အားဖြင့် data byte 1 နှင့် data byte 2 ခုကိုဖော်ပြရန် Byte 2 ခုဖြင့်ဖွဲ့စည်းထားသည်။ ROME BYTE ၏အမျိုးအစားကိုဖော်ပြရန်အသုံးပြုသည်။ 0x90 သည်မက်ဆေ့ခ်ျကိုကိုယ်စားပြုပြီး 0x40 သည်အသံအတိုးအကျယ်ကိုကိုယ်စားပြုသည်။
MIDI ထုတ်ကုန်များနှင့်ထိရောက်စွာဆက်သွယ်ပြောဆိုရန် PHP ကိုအသုံးပြုခြင်းသည် Serial Port ဆက်သွယ်ရေးကိုအထောက်အကူပြုသည့် PHP တိုးချဲ့စာကြည့်တိုက်ကိုထည့်သွင်းရန်လိုအပ်သည်။ PHP မှတစ်ဆင့်တေးဂီတပစ္စည်းများကို MILI မက်ဆေ့ခ်ျများမည်သို့ပေးပို့ရမည်ကိုပြသသည့်ရိုးရှင်းသောကျင့်ထုံးဥပမာတစ်ခုဖြစ်သည်။
<?php // အမှတ်စဉ်ဆက်သွယ်ရေးကိုဖွင့်ပါ $serial = new PhpSerial(); $serial->Deviceet ("/ dev / ttyusb0); $ serial-> conflaudratr (31250); // baud နှုန်း 31250 အထိသတ်မှတ် $ serial-> ရှုပ်ထွေးမှု ("အဘယ်သူမျှမ"); // အဘယ်သူမျှမကွာဟမှု $ serial-> confquarcitterlength (8); // ဇာတ်ကောင်အရှည် 8-bits $ serial-> confmopbits (1); // 1 မှ stop နည်းနည်းသတ်မှတ်ပါ $ serial-> confflowcontrol ("None"); // စီးဆင်းမှုကိုမထိန်းချုပ်ပါ။ // ကိရိယာ $ serial-> developleopen (); // MIDI မက်ဆေ့ခ်ျကို $ statusbyte = 0x90; // မက်ဆေ့ခ်ျတွင်မှတ်စု $ databyte1 = 60; // ဗဟို C မှတ်ချက် $ databyte2 = 127; // အများဆုံး volume $ message = pack = အထုပ် (C * ", $ statabyte, $ databyte1, $ databyte2); $ serial-> SendMessage ($ မက်ဆေ့ခ်ျ); // အနီးကပ်အမှတ်စဉ်ဆိပ်ကမ်းဆက်သွယ်ရေး $ serial-> deviceclose (); >
အထက်ပါကုဒ်များတွင်ကျွန်ုပ်တို့သည် `phpserial` ၏ comport ကို serial communicate object ကိုသုံးရန်ပထမ ဦး ဆုံးအသုံးပြုသည်။ Device Name, Baud Rate နှင့် Verification Method ကဲ့သို့သော parameters တွေကိုသတ်မှတ်ခြင်းဖြင့် serial comport ကို configure လုပ်ပါ။ Serial port ကိုဖွင့်ရန် `deviceopen ()` နည်းလမ်းကိုခေါ်ပါ။ `sidmessage ()` mether ကိုသုံးပါ။
ဤနမူနာကုဒ်သည်အခြေခံနိဒါန်းတစ်ခုသာဖြစ်သည်။ ဥပမာအားဖြင့်, သင်သည်မတူကွဲပြားသောမက်ဆေ့ခ်ျအမျိုးအစားများကိုကိုင်တွယ်ရန်သို့မဟုတ် MIDI ကိရိယာများမှအချက်အလက်များကိုလက်ခံရန်ပိုမိုရှုပ်ထွေးသောလုပ်ဆောင်ချက်များကိုရေးနိုင်သည်။ ထို့အပြင်ဆက်သွယ်ရေးလုပ်ငန်းစဉ်၏တည်ငြိမ်မှုနှင့်ယုံကြည်စိတ်ချရမှုများကိုသေချာစေရန်အမှန်တကယ်လိုအပ်ချက်များနှင့်အညီအမှားကိုင်တွယ်သည့်ယန္တရားတစ်ခုကိုထည့်ရန်အကြံပြုသည်။
PHP နှင့် MIDI protocols များကိုအသုံးပြုခြင်းအားဖြင့်သင်သည်ဂီတဖန်တီးမှုနှင့်ထိန်းချုပ်မှုလျှောက်လွှာများကိုနားလည်သဘောပေါက်ရန်ဂီတကိရိယာအမျိုးမျိုးဖြင့်ဆက်သွယ်နိုင်သည်။ ဤဆောင်းပါးတွင်ဖော်ပြထားသောသင်္ကေတများက MIDI ကိရိယာများသို့စာများမည်သို့မက်ဆေ့ခ်ျများပေးပို့နိုင်ကြောင်းနှင့်ပိုမိုရှုပ်ထွေးသော midi application များကိုတိုးချဲ့ရန်နှင့်ဖွံ့ဖြိုးတိုးတက်ရန်အခြေခံအနေဖြင့်နားလည်နိုင်ရန်ကူညီလိမ့်မည်။ ဤဆောင်းပါး၏အကြောင်းအရာသည်သင်၏တေးဂီတနည်းပညာလျှောက်လွှာကိုကူညီနိုင်ပြီးလှုံ့ဆော်ပေးနိုင်လိမ့်မည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။