Micro:bit 是英国广播公司(BBC)联合很多企业推出的一个微型可编程计算机,设计的初衷是为了让每个孩子都能零基础的接触计算机编程,不需要任何编程语言学习就可以直接上手,通过USB和电脑连接就行了。
一般我们是进入 https://makecode.microbit.org 这个网址,在这里进行网页编程。写好指令后下载到micro:bit盘符,或者把hex文件拷贝到盘符里。
这次我们用micro:bit来做一个小发报机。
摩尔斯电码(英语:Morse code)是一种时通时断的信号码,通过排列顺序来表达不同的英文字母、数字和符号,1836年发明。目前还在使用的是国际摩尔斯电码。
材料和工具清单
写程序
我们用的代码主要参考了 microbit-micropython.readthedocs.io 网上的现成例子,略作了调整,语言是python,可以显示a-z 26个字母以及数字。基本编程思路是,220毫秒内的按键计为短信号 •(点),220-440毫秒的按键计为长信号- (划)。
按 •(点)和 - (划)时屏幕会显示不同的图案,并判断间隔时间,如果等待时间大于440毫秒还没有输入信号,则认为当前输入已经完成。在输入完成后显示当前输入的字母或数字。
屏幕上会始终显示最后输入的字母或数字,如果输入信号组合不是程序能识别的字母或数字则在屏幕上显示一个点。所有输入字母和数字会被存在一个缓存区里。
在连续输入一些信息后,按A键显示所有已经输入的字母和数字,并重新开始缓存。
点信号在屏幕上显示竖线,划信号显示横线
后续完善
这个网站给出的stl文件模型略小了一点,按原始尺寸打印,micro:bit板子会放不进去,我们在使用3D打印软件时,把模型放大到108%就比较合适了。由于只用了左喷头,所以我们打出来的是纯色发报机盒子,这里用的是黄色。另外共享的这个发报机把手模型有个弯折部分,3D打印起来有可能会断,最好是改一下,把这部分拉直。
|