// Инициализация радиосвязи (общая группа для обоих устройств)
radio.setGroup(1)
// ==========================================
// ЧАСТЬ 1: УПРАВЛЕНИЕ С ПЕРЕДАТЧИКА (Micro:bit A)
// ==========================================
// Требование ①: Управление кнопками (Кнопка А и Кнопка Б)
input.onButtonPressed(Button.A, function () {
radio.sendString("BTN_A")
basic.showString("A")
})
input.onButtonPressed(Button.B, function () {
radio.sendString("BTN_B")
basic.showString("B")
})
// Требование ②: Управление логотипом (сенсорная кнопка / "пятачок")
input.onLogoEvent(TouchButtonEvent.Pressed, function () {
radio.sendString("LOGO_TOUCH")
basic.showIcon(IconNames.Heart)
})
// Требование ③: Управление с помощью акселерометра (встряхивание или наклон)
input.onGesture(Gesture.Shake, function () {
radio.sendString("SHAKE")
basic.showIcon(IconNames.Skull)
})
// ==========================================
// ЧАСТЬ 2: ПРИЕМ И ДЕЙСТВИЯ (Micro:bit B)
// ==========================================
radio.onReceivedString(function (receivedString) {
if (receivedString == "BTN_A") {
// Реакция на кнопку А: вывод текста и звука
basic.showString("Hello!")
music.playTone(Note.C5, music.beat(BeatFraction.Quarter))
} else if (receivedString == "BTN_B") {
// Реакция на кнопку Б: вывод текста и звука
basic.showString("Go!")
music.playTone(Note.E5, music.beat(BeatFraction.Quarter))
} else if (receivedString == "LOGO_TOUCH") {
// Реакция на касание логотипа: вывод текста и звука
basic.showString("Touch!")
music.playTone(Note.G5, music.beat(BeatFraction.Quarter))
} else if (receivedString == "SHAKE") {
// Реакция на встряхивание (акселерометр): вывод текста и звука
basic.showString("Alert!")
music.playTone(Note.B4, music.beat(BeatFraction.Half))
}
})