49| 0
|
[K10教程] 【行空板K10基础入门教程】第03课:K10随身听 |
本帖最后由 zoey不种土豆 于 2024-12-3 10:22 编辑 Hi,欢迎各位来到行空板K10的第三课!相信大家都有过随身听的回忆。随身听,这个曾经风靡一时的便携式音乐播放器,因其随时随地享受音乐的魅力而深受人们喜爱。在行空板K10的第三课中,我们将会学习如何用我们的行空板K10,模拟那个时代的经典——随身听!让我们一起穿越回那个音乐随身而行的黄金时代,体验科技与怀旧的完美融合。 任务目标 在行空板K10上显示文字和图片模拟随身听的界面,利用板载喇叭和麦克风实现播放音乐和录音。实现功能:短按A移动方框,选择歌曲;短按B键播放选中的歌曲;长按A键录音并保存录音文件。屏幕显示效果如图。 1、掌握识别短按、长按的实现逻辑。 2、掌握音频录放指令的使用方式。 3、掌握函数的使用方式。 4、掌握更多运算符指令的使用方式。 材料清单 硬件清单:行空板K10 数据线 软件使用: Mind+编程软件 1.软件压缩包下载: * 网页下载:https://download3.dfrobot.com.cn ... 0_test_20241012.zip * 百度网盘下载:https://pan.baidu.com 提取码: 17d6 * 夸克网盘下载 2.将压缩包解压,注意解压过程中关闭杀毒软件,解压后文件夹路径不含中文,解压后文件夹路径不宜过长 3.打开解压后的文件夹,找到 Mind+.exe,双击打开 4.若编译任何代码都报错,建议在解压时将所有后台的杀毒软件退出,将解压出的文件夹放到 C 盘根目录,文件夹的名字改为"win-ia32-unpacked20241012"。文件夹中的 exe 文件,不可直接拖到桌面,要右键-发送到桌面快捷方式。 软件基础使用 1、打开 Mind+,切换到上传模式 2、加载行空板 K10 点击“扩展库”,找到“官方库”下的“行空板”模块点击完成添加,点击返回后,就可以在“指令区”找到行空板K10,完成行空板K10加载。 3、连接行空板K10 首先,你需要通过 USB 连接线将行空板 K10 连接到计算机, 然后,点击连接设备后,点击 COM7-UNIHIKER K10 进行连接。 注:不同行空板K10的设备名称可能不同,但都是以“K10”结尾。 动手实践 接下来一起动手完成今天的课程任务吧。我们将从简单的按键操作开始,逐步学习如何在行空板K10上实现录音和播放,最终利用函数模块实现随身听的功能。 任务一:按键的运用——长按与短按 这一部分我们将学习按键使用的方法,通过长按和短按两种控制方式,在行空板K10屏幕上显示文字和图片。 任务二:音频录放操作 这一部分我们将学习音频录放的方法,通过按键控制实现简单的录音和播放操作。 任务三:多个音频文件播放 这一部分我们将学习多个音频文件的播放切换逻辑,从而实现多个音乐的播放。同时,简单学习函数模块,帮助代码变得更加整洁。 任务四:实现随身听 这一部分我们将结合任务二和任务三的内容,实现录音后添加文件到列表并播放,从而实现随身听的完整功能。 任务一:按键的运用——长按与短按 为了实现随身听中短按A键移动红色方框、长按A键录音的功能,我们先来了解一下行空板K10的板载按键以及两种按键控制方式——短按和长按的编程实现方式。 1、了解按键 如图,行空板板载两个按键,在行空板正面的右侧,上侧的命名为A,下侧为B。 接下来,我们先来完成一个简单的小任务,来掌握按键控制的方式。我们需要实现的效果是,短按按键A出现文本图标和红色方框,长按按键出现图片。 2、 编写程序:按钮控制——短按 STEP1:我们可以先在行空板K10分类下找到 板载传感器 标签下的 当按键A按下 指令(如下图),然后将它拖拽到代码区。该指令是一个中断指令,当按键A被按下后,程序会先跳转到该指令处,执行该指令下方的指令。 注:关于板载传感器指令的相关详细介绍,详见知识园地。 STEP2:在行空板K10分类下找到屏幕显示标签下的缓存画矩形、缓存显示TF卡图片指令,将他们拖拽至当按键A按下指令的下方(如下图)。 然后,按照图上的信息修改对应的坐标(X、Y)以及文件名。 注:关于TF卡的相关详细介绍,详见知识园地。 3、编写程序:按钮控制——长按 STEP1:同样在行空板K10分类下找到板载传感器标签下的按键A按下指令(如下图),然后将它拖拽到代码区。该指令是一个判断指令,需要配合条件语句如果.. 等控制指令使用。 在实现按键长按操作时,如果按键被按下,我们需要先用一个变量记录按下按键的初始时刻。 STEP2:创建变量 “初始时刻”,然后拖拽 系统运行时间 指令为变量赋值。 注:系统运行时间指令中的ms是毫秒,1秒等于1000毫秒。 然后,我们需要重复用当前时刻减去变量“初始时刻”得到等待时间,判断等待时间是否达到预设值(比如等待2秒),直到按键被松开。如果达到了预设值(等待了2秒),就执行对应的操作(显示图片)。 STEP3:添加重复执行语句。 STEP4:组合判断指令,添加进重复执行语句下。 注:系统运行时间 的单位是毫秒,>2000表示大于2000ms也就是2秒。 STEP5:添加显示图片指令,将组装好的语句块放到主程序的循环执行下。 至此,我们已经编写好了按键长按和短按的逻辑,完整程序如下: 4、程序执行 STEP1:检查并保证行空板K10已连接Mind+,将编辑好的程序上传到设备。 STEP2:短按A键,观察到屏幕显示歌曲文本;长按A键观察到屏幕显示歌曲图片。 任务二:音频录放操作 在任务二,我们将学习音频录放的操作,实现长按按键A录制音频,短按按键B开始或停止播放音频。 1、编写程序 在任务一中,我们已经学习了如何实现按键长按。要实现长按按键A录制音频,只需把录制音频语句与长按按键执行操作语句块组合即可。 STEP1:在K10分类下找到 录音保存到TF卡 指令,然后将它拖拽,放在长按语句块的下面。 STEP2:添加文本显示。 接下来学习短按按键B播放的操作。这里的短按实现跟任务一有所区别,两种方式都是可行的。为了实现同一个按钮控制开始播放和停止播放,我们用一个变量记录当前的播放状态,变量为0表示未播放,变量为1表示正在播放,点按按钮修改变量,然后根据变量的值控制播放状态。 STEP3:将按下A指令修改为按下B,然后添加到如果语句中。 STEP5:创建字符类型变量,用来记录录音文件的名字sound.wav。 STEP6:将播放、停止播放操作的语句添加进脚本区,并将播放音频的名称修改为字符变量“音乐”。 STEP7:补充相关操作,变量为0时播放音乐文件,并将变量改为1;变量为1时停止播放,并将变量改为0。 STEP8:组合程序,要注意控制两个按钮A、B是并列关系,两个如果语句块相连而不是包含。 至此,程序编写完成,完整程序如下图: 2、程序运行 STEP1:连接行空板K10并上传程序。 STEP2:长按A键,观察到右上角绿灯亮开始录音,绿灯灭录音结束;短按B键播放录音。 任务三:多个音频文件播放 在这一任务,我们需要实现多个音频文件轮流播放。如下图,如果我们按照数字顺序依次命名三个音频文件和对应的图片,那么我们应该如何实现它们的循环播放切换呢?思考一下,实现按下A键切换歌曲,按下B键播放歌曲。 解决的方法是,用一个变量记录当前选中歌曲的序号,每当需要切换时让序号+1,序号到3时又改变回1,就能循环选择对应的音频和文件了。 1、编写程序 STEP1:创建变量“ID”,用变量“ID”记录当前序号,实现按下A键,序号增加1,序号到3时又改变回1。 SETP2:修改文件名,确保每次切换都能播放对应的音乐文件。 播放音乐的程序已经完成,接下来还需要添加显示,让我们看得舒服,操作方便。在这里,我们用一个会移动的红色方框(矩形)表示当前选中的歌曲。 SETP3:编写文字以及图标显示,添加红色方框。 SETP4:在按下A键处补充逻辑,实现红色方框的移动。 SETP5:创建文本显示刷新函数,放置SETP3中编辑的显示代码,方便多次刷新。 SETP6:拖拽创建的函数到脚本区,实现文本刷新。 至此,我们已经完成程序编写,完整程序如下: 2、运行程序 点击上传到设备,尝试按A键切换歌曲按B键播放,体验自己实现的初版随身听吧! 任务四:实现随身听 作为一个完整的随身听,除了能播放歌曲,应该也能录音才对呀!在这最后一个任务,我们将添加录音功能,实现更真实的随身听。 我们想要添加录音功能,需要考虑一个问题,那就是录音前和录音后的区别。录音前是没有录音文件的,录音后才有文件,我们需要把文件加入播放列表并播放。那么,应该如何实现这一点呢? 1、编写程序 STEP1:将任务二中的A键录音部分和任务三的主程序进行连接,两个按键的控制还是并列关系,请注意连接位置。 SETP2:不同的是,在长按A键录音时,我们要给录音的文件按照数字命名,并给录音文件在目录中添加一个位置。 SETP3:修改显示函数,当文件数量增加时,显示录音文件,同时,往TF卡中添加一张名为4.png的图片,作为录音文件的对应图片。 至此,我们完成了程序的连接,完整的程序参考以下代码: 2、运行程序 点击上传到设备,试玩完整的随身听吧! 知识园地 1、板载传感器指令 2、TF卡介绍 TF卡即是T-Flash卡,又叫micro SD卡,即微型SD卡。TF卡一般也是用于手机、mp4等小型数码电子产品的外存储器用。 目前行空板K10可使用的TF卡推荐如下: 3、音频录放指令 本文程序和相关素材下载:第三课 随身听.rar |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed