設為首頁收藏本站

圓創力科技.MakeBlock TW

 找回密碼
 立即註冊

QQ登錄

只需一步,快速開始

掃一掃,訪問微社區

查看: 133|回復: 0

程小奔 Python API

[複製鏈接]
magiccar 發表於 2018-5-17 08:35 | 顯示全部樓層 |閱讀模式
小程

當小程啟動時

import codey

當接收到(message)

def callback():    passcodey.on_message(msgstr, callback)

廣播 'hello'

codey.message('hello')

示例1

import codeycodey.show('hello world')

示例2

import codeydef on_start_callback():codey.message('hello')
codey.on_start(on_start_callback)
def on_message_callback():
codey.show('hello world')
codey.on_message('hello', on_message_callback)

小奔

小奔是底盤,帶有兩個輪子,帶有紅外發射器、紅外接收器、RGB 顏色感測器、感光感測器 和白燈發射器。

函數

以 50 的動力前進,持續 1 秒

rocky.forward(50, 1)

以 50 的動力後退,持續 1 秒

rocky.backward(50, 1)

以 50 的動力左轉,持續 1 秒

rocky.left(50, 1)

以 50 的動力右轉,持續 1 秒

rocky.right(50, 1)

示例

import rocky
    rocky.forward(50, 1)
    rocky.back(50, 1)
    rocky.left(50, 1)
    rocky.right(50, 1)

表情面板

表情面板是一個 8*16 的 led 矩陣。每一個 led 燈都可以通過 api 來控制

函數

顯示圖案【^_^】持續(1)秒

   codey.face(        '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'  
      '0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0'  
      '0 0 0 1 0 1 0 0 0 0 1 0 1 0 0 0'  
      '0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0'  
      '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'   
    '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'
      '0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0'  
      '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0', 1)


顯示圖案【^_^】

codey.face(
    '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'  
    '0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0'
    '0 0 0 1 0 1 0 0 0 0 1 0 1 0 0 0'        
    '0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0'   
    '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'
      '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'
      '0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0'  
      '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0')


顯示圖案【^_^】在座標 x [0], y[0]

codey.face_at(
    '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'  
      '0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0'
      '0 0 0 1 0 1 0 0 0 0 1 0 1 0 0 0'
      '0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0'
      '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'
      '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'  
      '0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0'
      '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0', 0, 0)


顯示 "hello world"

codey.show('hello world')


熄滅螢幕

codey.clear()


點亮x0) y0)

codey.pixel(x, y)


熄滅x0) y0)

codey.pixel_off(0,0)

示例

    import codey    import time    codey.face(  
      '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'
        '0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0'
        '0 0 0 1 0 1 0 0 0 0 1 0 1 0 0 0'
        '0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0'
        '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'
        '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0'
        '0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0'
        '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0', 1)
    codey.show('hello')
    time.sleep(1)
    codey.clear()
    time.sleep(1)
    codey.pixel(3, 3)


RGB LED 燈

在小奔的中間有一個 rgb led 燈,支持設置不同的顏色

函數

LED 亮起【紅】,持續(1)秒

codey.color('#334455', 1)

LED 亮起【紅】

codey.color('#334455')

熄滅 LED

codey.color('#000')

設置LED的RGB值為紅(255)綠(0)藍 (0)

codey.rgb(255, 0, 0)

示例

import codeycodey.color('#ff0000', 1)codey.color('#00ff15', 1)codey.color('#0021ff', 1)

揚聲器

函數

可選的聲音參數如下:

  • hello.wav : 哈嘍
  • hi.wav : 嗨
  • bye.wav : 拜
  • yeah.wav : 耶
  • wow.wav : 哇哦
  • laugh.wav : 笑聲
  • hum.wav : 哼唱
  • sad.wav : 難過
  • sigh.wav : 歎氣
  • annoyed.wav : 哼!
  • angry.wav : 生氣
  • surprised.wav : 驚嚇
  • yummy.wav : 撒嬌
  • curious.wav : 好奇
  • embarrassed.wav : 尷尬
  • ready.wav : 準備
  • sprint.wav : 衝刺
  • sleepy.wav : 打呼
  • meow.wav : 喵
  • start.wav : 啟動
  • switch.wav : 開關
  • beeps.wav : 嗶嗶
  • buzzing.wav : 蜂鳴
  • exhaust.wav : 排氣
  • explosion.wav : 爆炸
  • gotcha.wav : 獲取
  • hurt.wav : 痛苦
  • jump.wav : 跳動
  • laser.wav : 鐳射
  • level up.wav : 升級
  • low energy.wav : 低能量
  • metal clash.wav : 金屬音
  • prompt tone.wav : 提示
  • right.wav : 正確
  • wrong.wav : 錯誤
  • ring.wav : 鈴聲
  • score.wav : 得分
  • shot.wav : 發射
  • step_1.wav : 腳步聲1
  • step_2.wav : 腳步聲2
  • wake.wav : 啟動
  • warning.wav : 警告

播放聲音【哈嘍】。該次播放可被打斷。

codey.say('hello.wav')

播放聲音【哈嘍】直到結束。該次播放,不會被打斷

codey.say('hello.wav', True)

停止聲音

codey.mute()

播放音符(60)以(0.25)拍。參照表待定。

codey.play(435, 500)

停止(0.25)拍

todo

播放聲音以頻率 (700) 赫茲持續 (1) 秒

todo

調整音量(-10)

codey.change_volume(-10)

將音量設定為(100)

codey.set_volume(100)

音量

codey.get_volume()

示例

import codeycodey.set_volume(100)codey.say('hello.wav', True)codey.say('hi.wav', True)

陀螺儀

函數

當小程搖晃

def callback():    passcodey.on_shake(callback)

當小程【向前,向後,向左,向右】傾斜。第一個參數可選項為:forward,backward,left,right。

def callback():    passcodey.on_tilt('forward',callback)

示例

import codeydef on_shake_callback():    codey.color('#ff0000')codey.on_shake(on_shake_callback)

按鈕

小程有三個按鈕,分別為 A, B, C。

函數

當按下按鈕【A, B, C】

def callback():
   passcodey.on_button('A', callback)

第一個參數可以為:A,B,C。

示例

import codeydef on_button_callback():  
  codey.color('#ff0000')
  codey.on_button('A', on_button_callback)

齒輪電位器

函數

示例



光線感測器

函數

當光線強度<(10)

def callback():
   passcodey.on_light_under(50, callback)

示例

import codeydef on_light_under_callback():
   codey.color('#ff0000')
  codey.on_light_under(10, on_light_under_callback)

聲音感測器

函數

當【響度】>(10)

    def callback():
    passcodey.on_sound_over(10, callback)

示例

import codeydef on_sound_over_callback():   
codey.color('#ff0000')
codey.on_sound_over(10, on_sound_over_callback)

通用語法-控制函數

等待 1 秒

import timetime.sleep(1)


重複 10 次

for count in range(10):   
pass


重複執行

while True:   
pass


如果,那麼

if False:   
pass


如果,那麼,否則

if False:    passelse:   
pass


等待直到

while not False:   
pass


重複執行,直到

while not False:   
pass

通用語法-運算函數

1 加 1

1 + 1

1 減 1

1 - 1

1 乘 1

1 * 1

1 除以 1

1 / 1

在 1 到 10 之間隨機取一個數

import randomrandom.randint(1, 10)

1 小於 2

1 < 2

1 等於 1

1 == 1

2 大於 1

2 < 1

False and False

False or False

not True

連接字串 hello 與 world

str('hello') + str('world')

字串 word 中的第一個字元

'world'[0]

字串 word 的長度

len('world')

字串 hello 是否包含字串 world?

str('hello').find(str('world')) > -1

1 除以 3 的餘數

1 % 3

將 3.4 四捨五入

round(3.4)

-1 的絕對值

import math
math.fabs(-1)

將 3.4 向上取整

import math
math.ceil(3.4)

4 平方根

import math
math.sqrt(4)

2 的正弦

import math
math.sin(2 / 180.0 * math.pi)

2 的余弦

import math
math.cos(2 / 180.0 * math.pi)

2 的正切

import math
math.tan(2 / 180.0 * math.pi)

2 的反正弦

import math
math.asin(2) / math.pi * 180

2 的反余弦

import math
math.acos(2) / math.pi * 180

2 的反正切

import math
math.atan(2) / math.pi * 180

ln2

import math
math.log(2)

log2

import math
math.log10(2)

e^2

import math
math.exp(2)

10^2

import math
math.pow(10,2)

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

QQ|Archiver|手機版|小黑屋|圓創力科技有限公司 IOP Robotic Technology Co.,Ltd Tel: 07-3924582   

GMT+8, 2018-7-20 10:44 , Processed in 0.059303 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表