




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用计算机来控制
micro:bit必修2信息系统与社会关于micro:bitMicro:bit全称为BBCMicro:bit,是一款英国广播公司(BBC)推出的,用于青少年编程教育的ARM开发版。它主要由加速度传感器,磁力传感器,两个可编程按钮,5x5LED点阵组成,蓝牙等常用传感器设备集成,主要用于青少年的编程教育。按键A按键B5*5LED点阵microUSB接口复位按键地磁传感器加速度传感器操作步骤选择micro:bit开发板作为采集传感器数据的终端,通过编程获取micro:bit内置传感器的信息,并向串口输出。具体操作步骤①
通过USB连接线将micro:bit接到计算机,安装串口驱动程序;②
编写程序(BXY编程软件),读取传感器数据,并向串口输出;③
通过串口调试工具,查看串口数据。导
入
模
块frommicrobitimport*say“Hello,World!”frommicrobitimport*Python程序代码display.scroll(“Hello,World!”,delay=200)对象设备的物理显示方法在显示器上滚动显示字符串滚动的速度,单位:msmicro:bit大艺术家frommicrobitimport*Python程序代码display.show(Image.HAPPY)方法在显示器上展示类图像5×5的红色LED点阵,可以通过控制生成各种有趣的效果。如图所示,在显示屏上显示“高兴”,代码该如何书写呢?方法具体图片micro:bit大艺术家常用表情图像函数Image.HAPPY高兴Image.SAD伤心Image.ANGRY生气Image.ASLEEP困Image.HEART心Image.HEART_SMALL心(小)Image.ARROW_W朝西箭头←Image.ARROW_E朝东箭头→请编写代码,在内置LED阵列上显示红心。frommicrobitimport*display.show(Image.HEART)如何在micro:bit上显示自己创建的图像呢?每个LED像素可以设置为十个值的其中一个。如果像素设置为0,表示处于关闭状态,即为0亮度。而设置为9,表示亮度最强。1到8代表关闭状态和最强亮度之间的亮度级别。micro:bit大艺术家frommicrobitimport*display.show(
需要显示自定义图像
)0090009990999990090009900请编写代码,在内置LED阵列上显示如图所示的自定义图像。san=Image(“00900:09990:99999:00900:09900”)sanmicro:bit大艺术家每个LED像素可以设置为十个值的其中一个。如果像素设置为0,表示处于关闭状态,即为0亮度。而设置为9,表示亮度最强。1到8代表关闭状态和最强亮度之间的亮度级别。将像素(x,y)的亮度设置为val(在0到9之间)display.get_pixel(x,y)display.set_pixel(x,y,val)得到像素的亮度(x,y),亮度可以是0(熄灭)到9(像素处于最大亮度)。display.clear()清除显示micro:bit大艺术家通过将图片向左移动n次,返回一个新图像image.shift_left(n)image.shift_right(n)通过将图片向右移动n次,返回一个新图像image.shift_up(n)image.shift_down(n)通过将图片向上移动n次,返回一个新图像通过将图片向下移动n次,返回一个新图像display.show(Image.HEART.shift_left(1))micro:bit大艺术家frommicrobitimport*a="00900:09000:99999:09000:00900"whileTrue:
foriinrange(0,6):
display.show(Image(a).shift_left(i))
sleep(200);
sleep(1000)frommicrobitimport*pic=Image("00900:09000:99999:09000:00900")whileTrue:
foriinrange(0,6):
display.show(pic.shift_left(i))
sleep(200);
sleep(1000)micro:bit按钮在LED阵列的两侧包含了两个按键,分别是button_a和button_b。注意:用户不可以创建新的按钮,micro中的按钮仅为内置,且仅能使用它们。按钮的相关函数is_pressed()如果指定的按钮被按下返回
True
,否则返回
False
。was_pressed()get_presses()如果指定的按钮在开机或复位之后被按下过,则返回True,否则返回False。返回开机或复位后,button被按下的次数,并且调用此方法后,会将计数置0。根据如下程序,说说其功能。frommicrobitimport*sleep
(
10000
)
display.scroll
(
str
(
button_a.get_presses()
)
)
程序分析sleep()函数使micro:bit睡眠一定量的毫秒数display.scroll
(
str
(
button_a.get_presses()
)
)
按钮A开机后被按下的次数将数值转换为字符型通过显示器应滚动显示的内容功能睡眠1万毫秒(10秒),接着滚动显示按钮A10秒内被按下的次数。程序设计请编写MicroPython程序,完成如下功能:在LED阵列上先显示字符”A”,2秒后显示字符”B”。frommicrobitimport*sleep(2000)display.show(“A”)display.show(“B”)请编写MicroPython程序,完成如下功能:“心情探测器”,当你感觉“开心”的时候,请按下开发板上的按钮A,LED面板将显示“笑脸”;当你觉得难过的时候请按下开发板上的按钮B,LED面板将显示“哭脸”;系统会每隔20秒,检测一次,周而复始。frommicrobitimport*if:else:display.show(Image.HAPPY)sleep(20000)display.show(Image.SAD)sleep(20000)button_a.is_pressed()whileTrue:elifbutton_b.is_pressed():micro:bit大作曲家在BBCmicro:bit设备中MicroPython配有强大的音乐和声音模块。一旦连接扬声器,很容易发出哔哔声和杂音。你需要做的是用鳄鱼夹将引脚0和GND连接到扬声器的正负极输入端(连接扬声器的方式没有要求)。导
入
模
块importmusicmicro:bit大作曲家importmusicPython程序代码whileTrue: forfreqinrange(880,1760,16): music.pitch(freq,6)方法后面紧跟频率值频率值持续的时长单位:ms小试牛刀importmusicwhileTrue:forfreqinrange(
880,1760,16
):music.pitch(
freq,6
)forfreqinrange(
1760,880,-16
):music.pitch(
freq,6
)下载并运行该代码,下列关于代码执行效果描述正确的是(
)A.声音频率升高一次,降低一次B.声音频率不变C.声音频率降低一次,升高一次D.声音频率呈周期性变化Dmicro:bit加速计一个加速度传感器可以测量micro:bit的加速度;这个传感器可以检测micro:bit的移动。它也可以检测其他的动作,例如:摇动,倾斜以及自由落体。acceleromete加速计类加速计相关函数accelerometer.get_x()测量加速度X轴的值accelerometer.get_y()测量加速度y轴的值accelerometer.get_z()测量加速度z轴的值accelerometer.current_gesture()返回当前检测到的动作MicroPython可识别以下手势名称:"up","down","left","right","faceup","facedown","freefall","shake"。手势通常表示为字符串。micro:bit加速计程序设计:利用micro:bit中的加速计制定水平仪。通过检测其在x轴的值,判定其方向,由于加速度计非常敏感,所以我设置了水平方向+/-20的范围。若值大于20,则在LED阵列上显示字符“R”,反之则显示字符“L”,处于水平状态时显示字符“-”。frommicrobitimport*whileTrue:reading=
.ifreading>20:
.elif
:display.show("L")else:display.show("-")accelerometer.get_x()display.show("R")reading<-20micro:bit引脚Micro:bit拥有边缘连接端子引出引脚,其引出的引脚如图所示:在Micro:bit中,可将引脚配置为输入与输出,当配置为输出的时候,可输出高低电平,当配置为输入的时候,可读取引脚输入电平。micro:bit引脚-输出电亮外部LED指示灯用彩色线将LED指示灯连接在pin2口,并在BXY中输入如下代码:frommicrobitimport*whileTrue: ifbutton_a.is_pressed():#如果按钮a被按下 pin2.write_digital(1)#向pin口2写入高电平,从而开启外接设备 else: pin2.write_digital(0)#向pin口2写入低电平,从而关闭外接设备程序分析pinx.write_digital(value):
向pinx口写入数字值value可以设置为{1,0}或{True,False}表示为高电平或低电平
micro:bit引脚用彩色线将LED指示灯连接在pin2口,请制作实例“闪烁的星星”——通过代码,使得LED灯每一秒闪烁一次。frommicrobitimport*whileTrue: pin2.write_digital(1) sleep(1000)
pin2.write_digital(0) sleep(1000)micro:bit引脚-输入读取传感器的状态数值用内置传感器按钮B来模拟数字输入,其实就是按钮B就是连接在引脚11上,按下时返回0,反之,返回1.frommicrobitimport*whileTrue: ifpin11.read_digital():#如果pin口11从设备上读到了高电平 display.show(Image.HAPPY) else:
display.show(Image.SAD)程序分析pinx.read_digital():读取引脚x的数字值,其值为{1,0}或{True,False}micro:bit引脚-输入读取光线传感器的数值用彩色线将光线传感器连接在pin2口,并在BXY中输入如下代码:frommicrobitimport*whileTrue: ifbutton_a.is_pressed(): light=pin2.read_analog()#将pin2从光线传感器上获得的模拟值赋值给light display.scroll(light)#Led屏幕上滚动显示light的值程序分析pinx.read_analog():读取pinx口的传感器的模拟值,返回值在0到1023之间。micro:bit引脚-输出
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业自动化中的机器人技术探讨
- 工业自动化技术与应用领域探讨
- 工业自动化技术的未来趋势分析
- 工业设计与品牌建设的策略
- 工业设计与产品设计思路分享
- 工作中的沟通技巧与效率关系
- 工作中的创新方法与实践案例分享
- 工作与生活平衡的实践方法
- 工程机械设备行业发展现状与趋势
- 工厂节能减排技术推广
- 网络空间安全概论智慧树知到期末考试答案2024年
- MOOC 管理学原理-东北财经大学 中国大学慕课答案
- 政务新闻摄影技巧培训课件
- 2024年山东公务员考试行测真题及解析【完美打印版】
- 中国十大名画
- 岗位胜任力评估表
- 夏季企业安全知识培训
- 立式机组轴线调整及瓦间隙计算
- 23秋国家开放大学《素质与思想品德教育》形考任务1-3参考答案
- 2023秋期国开本科《国际经济法》形考任务1-4试题及答案
- 幼儿园好习惯好性格养成绘本:坏脾气的蛋糕
评论
0/150
提交评论