Operácie

Micro:bit krúžok: Rozdiel medzi revíziami

Z SensorWiki

Riadok 46: Riadok 46:
 
})
 
})
  
 +
</source>
 +
<source lang="javascript">
 +
input.onButtonPressed(Button.A, () => {
 +
    motobit.setMotorSpeed(Motor.Right, MotorDirection.Forward, 100)
 +
    basic.showLeds(`
 +
        . . . . .
 +
        . . # . .
 +
        . . # . .
 +
        . . . . .
 +
        . . . . .
 +
        `)
 +
})
 +
input.onButtonPressed(Button.B, () => {
 +
    motobit.enable(MotorPower.On)
 +
    basic.showLeds(`
 +
        # . . . .
 +
        . # . . .
 +
        . . # . .
 +
        . . . # .
 +
        . . . . #
 +
        `)
 +
})
 +
function ON()  {
 +
    motobit.enable(MotorPower.On)
 +
}
 +
function OFF()  {
 +
    motobit.enable(MotorPower.Off)
 +
}
 +
function 前進()  {
 +
    motobit.setMotorSpeed(Motor.Right, MotorDirection.Forward, 30)
 +
    motobit.setMotorSpeed(Motor.Left, MotorDirection.Forward, 30)
 +
}
 +
radio.onDataPacketReceived( ({ receivedString }) =>  {
 +
    if (receivedString == "ON") {
 +
        ON()
 +
    } else if (receivedString == "OFF") {
 +
        OFF()
 +
    } else if (receivedString == "FORWARD") {
 +
        前進()
 +
    } else if (receivedString == "BACK") {
 +
        後進()
 +
    } else if (receivedString == "RIGHT") {
 +
        右折()
 +
    } else if (receivedString == "LEFT") {
 +
        左折()
 +
    } else {
 +
        OFF()
 +
    }
 +
})
 +
function 左折()  {
 +
    motobit.setMotorSpeed(Motor.Right, MotorDirection.Forward, 30)
 +
    motobit.setMotorSpeed(Motor.Left, MotorDirection.Reverse, 30)
 +
}
 +
function 右折()  {
 +
    motobit.setMotorSpeed(Motor.Right, MotorDirection.Reverse, 30)
 +
    motobit.setMotorSpeed(Motor.Left, MotorDirection.Forward, 30)
 +
}
 +
function 後進()  {
 +
    motobit.setMotorSpeed(Motor.Right, MotorDirection.Reverse, 30)
 +
    motobit.setMotorSpeed(Motor.Left, MotorDirection.Reverse, 30)
 +
}
 +
radio.setGroup(1)
 +
basic.showLeds(`
 +
    . . # . .
 +
    . . . . .
 +
    # # # # #
 +
    . . . . .
 +
    . . # . .
 +
    `)
 
</source>
 
</source>

Verzia zo dňa a času 13:59, 7. marec 2018

7. marca 2018

  • Robili sme toto..

Ovládač na Moto:bit

radio.setGroup(1)
basic.forever(() => {
    if (input.buttonIsPressed(Button.AB)) {
        radio.sendString("FORWARD")
        basic.showLeds(`
            . . # . .
            . # # # .
            # . # . #
            . . # . .
            . . # . .
            `)
    } else if (input.buttonIsPressed(Button.B)) {
        radio.sendString("LEFT")
        basic.showLeds(`
            . . # . .
            . # . . .
            # # # # #
            . # . . .
            . . # . .
            `)
    } else if (input.buttonIsPressed(Button.A)) {
        radio.sendString("RIGHT")
        basic.showLeds(`
            . . # . .
            . . . # .
            . # # # #
            . . . # .
            . . # . .
            `)
    } else {
        radio.sendString("OFF")
        basic.showLeds(`
            . # # # .
            # # . # #
            # . # . #
            # # . # #
            . # # # .
            `)
    }
})
input.onButtonPressed(Button.A, () => {
    motobit.setMotorSpeed(Motor.Right, MotorDirection.Forward, 100)
    basic.showLeds(`
        . . . . .
        . . # . .
        . . # . .
        . . . . .
        . . . . .
        `)
})
input.onButtonPressed(Button.B, () => {
    motobit.enable(MotorPower.On)
    basic.showLeds(`
        # . . . .
        . # . . .
        . . # . .
        . . . # .
        . . . . #
        `)
})
function ON()  {
    motobit.enable(MotorPower.On)
}
function OFF()  {
    motobit.enable(MotorPower.Off)
}
function 前進()  {
    motobit.setMotorSpeed(Motor.Right, MotorDirection.Forward, 30)
    motobit.setMotorSpeed(Motor.Left, MotorDirection.Forward, 30)
}
radio.onDataPacketReceived( ({ receivedString }) =>  {
    if (receivedString == "ON") {
        ON()
    } else if (receivedString == "OFF") {
        OFF()
    } else if (receivedString == "FORWARD") {
        前進()
    } else if (receivedString == "BACK") {
        後進()
    } else if (receivedString == "RIGHT") {
        右折()
    } else if (receivedString == "LEFT") {
        左折()
    } else {
        OFF()
    }
})
function 左折()  {
    motobit.setMotorSpeed(Motor.Right, MotorDirection.Forward, 30)
    motobit.setMotorSpeed(Motor.Left, MotorDirection.Reverse, 30)
}
function 右折()  {
    motobit.setMotorSpeed(Motor.Right, MotorDirection.Reverse, 30)
    motobit.setMotorSpeed(Motor.Left, MotorDirection.Forward, 30)
}
function 後進()  {
    motobit.setMotorSpeed(Motor.Right, MotorDirection.Reverse, 30)
    motobit.setMotorSpeed(Motor.Left, MotorDirection.Reverse, 30)
}
radio.setGroup(1)
basic.showLeds(`
    . . # . .
    . . . . .
    # # # # #
    . . . . .
    . . # . .
    `)