基于Neptune开发板的键盘蓝牙模块DIY指南
目录:
1.下载开发板程序
2.安装USB串口(CH340)驱动
3.安装烧写工具
4.烧写开发板程序
本期我们带来基于润和Neptune开发板(以下简称Neptune开发板)的键盘蓝牙模块DIY指南,利用Neptune开发板支持串口和蓝牙功能等特性,将有线键盘改造成蓝牙键盘,实现一个键盘被多操作系统/终端设备识别使用的功能,达到提高工作效率的目的。
该项目具有耗时少、花费低、兼容4种OS等特点,让你告别手机屏幕的桎梏,直接用实体键盘敲出一串串精彩文字。
具体信息可以到Gitee的OpenHarmony开源社区中了解,点击【阅读原文】,一键直达。
让我们通过视频来看一下效果吧~
▼
看完视频,我们从原理入手,一步步来深入了解吧。
如下图所示,有线键盘连接到CH9350工具(该工具用于识别键盘USB输入信号,并转串口输出给开发板)。同时, CH9350输出的串口信号(5V、GND、TXD、RXD)分别与Neptune对应的串口(5V、GND、PB7、PB6)连接。
举个例子,当有线键盘输入“你好”时,CH9350工具识别有线键盘USB口输出的信号,并将它转化成串口信号,这些串口信号通过串口(TXD → PB7和RXD → PB6)传输给Neptune开发板。Neptune开发板再通过蓝牙将信号传输给终端设备。
当我们对开发板进行烧录时,我们需要将装载烧录工具的电脑通过Type-C电源线连接到Neptune开发板,通过烧录工具将开发板程序烧录到开发板中。本项目是基于OpenHarmony
V1.0版本进行开发的,后续版本将基于OpenHarmony V1.1版本进行升级。
该项目支持:
●有线USB键盘升级蓝牙键盘(改造后键盘有线/蓝牙模式只能二选一)
●BLE 4.2协议,可向下兼容旧BLE版本,如: BLE 4.0
●HID协议(Human Interface Device),理论上支持键盘、鼠标、控制杆、游戏手柄等USB设备
●一个设备,4种OS(HarmonyOS、Windows、 Linux、 Android)
▼
那么Neptune开发板到底如何让键盘从有线变为无线,让我们来DIY吧~
在正式开始连接之前,我们需要先准备以下材料:
●Neptune开发板
●CH9350 HID转UART板(以下简称CH9350板)
●杜邦线4根
●Type-C电源线一根
●有线键盘
●装有Windows系统的电脑,该电脑用于烧录开发板程序
准备完成后,我们开始搭建硬件环境,也就是把所有硬件连接起来。
用4根杜邦线按图示将Neptune开发板(单板②)和CH9350板(单板①)连接起来,同时用Type-c接口的电源线连接Neptune开发板和电脑,将有线键盘连接到CH9350板上。
连接上电后,如下图所示,两个灯常亮,按键盘任意键,①号灯闪烁,即表示连接正确:
接下来我们进入蓝牙连接环节。本次我们选择的终端是手机,手机和键盘通过蓝牙连接,键盘将以“OpenHarmony_HID-***”名称被识别到:
打开手机上任意一个文本编辑器(任何文本输入框皆可),通过键盘输入任意文字信息,该文本编辑器顺利显示输入的文本,即表示连接成功。
至此,我们已经完成了有线变无线的蓝牙键盘改造操作。
除了手机,大家还能单独连接PC、平板等设备,本次开发板添加蓝牙模块程序仅支持单设备连接,后续OpenHarmony社区将发布支持多设备连接的升级版本,敬请期待~
▼
下面为大家简单介绍一下Neptune开发板升级烧录步骤:
1.下载开发板程序
2.安装USB串口(CH340)驱动
3.安装烧写工具
4.烧写开发板程序
【请注意】本次烧录所使用的系统为Windows系统
01
下载开发板程序
1.1 打开如下链接,可进入Gitee源码仓:
● 链接:
https://gitee.com/openharmony-sig/vendor_oh_fun/tree/master/hihope_neptune-oh_hid
1.2 克隆/下载处,点击下载ZIP,如图:
我们对“openharmony-sig-vendor_oh_fun-master.zip”文件进行解压,进入“hihope_neptune-oh_hid”文件夹,获得以下文件:
02
安装USB串口(CH340)驱动
使用USB串口装置可以很方便我们对于开发板进行调试,使用的前提就是需要安装这个装置的驱动,所以下面我们就来看看怎么安装驱动。本次使用到的是TTL-USB串口(CH340)驱动,大家可以自行下载安装使用。
电脑下载好之后,双击.EXE安装即可。驱动安装成功将如下图所示:
【请注意】若提示“安装失败”,请点击“卸载”,再点击“安装”
同时,搜索电脑上的设备管理器->点击端口->查看USB-SERIAL CH340(COM*),确认已安装成功,牢记端口中的COM*。
【请注意】假如端口没显示,请尝试拔掉usb口再插上,每台设备的COM*可能不一样。
03
安装烧写工具
烧写工具用于为可编程的集成电路写上数据,要实现开发板程序烧写,需要先安装烧写工具。本次给Neptune开发板烧写二进制镜像文件和打印日志的烧写工具是 SecureCRT,大家可以自行下载安装使用。
【请注意】第一次安装请选择 “使用兼容性设置安装”
04
烧写开发板程序
安装完烧写工具后,下面我们开始来进行烧录工作,大概烧写步骤如下:
4.1 打开烧录工具SecureCRT:
4.2 配置烧录工具:
【注意事项】
●在Protocal选择Serial(选Serial表示串口烧录)
●Flow Control不要勾选(勾选了不能显示烧录过程)
●确保左侧“设备管理器”的USB-SERIAL和右侧“SecureCRT”的Port保持一致。(不一致就无法打开指定的串口)
●另外,Baud rate选115200(代表该串口的烧录速率)
看图配置更清晰。配置完成后,点击Connect,如图:
4.3 确认烧录工具与开发板连接:
4.4 测试开发板连接情况:鼠标点击SecureCRT窗口,后续“ESC + 开发板复位键RST”才能被捕获。
4.5 开始烧录:先按住电脑上的“ESC”键不放。单击Neptune开发板的复位(RST)键。
当如下图所示 “cccccccccc”时,表示进入烧录状态,可松开电脑键盘的“ESC”键。
选择“Transfer ->Send Xmodem”,进入烧录界面,如图:
选择之前下载的压缩包中的“\04_烧写固件\OpenHarmony_HID_V0.1.img”,点击“Send”,如图:
烧录过程中,如下图所示,会显示烧录进度。
【请注意】过程中不要随便点击该页面以免过程中断
烧录完成后,如图所示,进度100%,表示烧录成功:
单击Neptune开发板的复位(RST)键,退出烧录模式:
至此,我们已经完成了所有烧录操作,大家是不是对于如何用Neptune开发板让键盘从有线变无线有了更进一步的了解,理论上Neptune开发板可支持键盘、鼠标、控制杆、游戏手柄等USB设备,期待开发者们能玩出新玩法~
在不久的将来,我们将持续升级,带来更多好玩有趣的内容,让开发者以更少的时间和成本玩转开发板,敬请期待啦
作者:润和HiHope
想了解更多内容,请访问51CTO和华为合作共建的鸿蒙社区:https://harmonyos.51cto.com
基于Neptune开发板的键盘蓝牙模块DIY指南的更多相关文章
- 基于uFUN开发板和扩展板的联网校准时钟
项目概述 上周在uFUN试用群里看到管理员说试用活动快结束了,要抓紧完成评测总结,看大家的评测总结也都写了,我也不能落后啊!正好最近做的扩展板到手了,于是赶紧进行调试,做了一个不用校准的时钟,时钟这种 ...
- 基于uFUN开发板的心率计(三)Qt上位机的实现
前言 上两周利用周末的时间,分别写了基于uFUN开发板的心率计(一)DMA方式获取传感器数据和基于uFUN开发板的心率计(二)动态阈值算法获取心率值,介绍了AD采集传感器数据和数据的滤波处理获取心率值 ...
- 基于uFUN开发板的RGB调色板
前言 使用uFUN开发板配合Qt上位机,实现任意颜色的混合,Qt上位机下发RGB数值,范围0-255,uFUN开发板进行解析,然后输出不同占空比的PWM,从而实现通过RGB三原色调制出任意颜色. Qt ...
- 基于uFUN开发板的心率计(二)动态阈值算法获取心率值
前言 上一篇文章:基于uFUN开发板的心率计(一)DMA方式获取传感器数据,介绍了如何获取PulseSensor心率传感器的电压值,并对硬件电路进行了计算分析.心率计,重要的是要获取到心率值,本篇文章 ...
- 基于 Arduino 开发板,这款插座是可编程且开源的
基于 Arduino 开发板,这款插座是可编程且开源的 https://www.oschina.net/news/74861/open-source-socket https://github.com ...
- 【RTOS】基于V7开发板的uCOS-III,uCOS-II,RTX4,RTX5,FreeRTOS原版和带CMSIS-RTOS V2封装层版全部集齐
RTOS模板制作好后,后面堆各种中间件就方便了. 1.基于V7开发板的最新版uCOS-II V2.92.16程序模板,含MDK和IAR,支持uC/Probe https://www.cnblogs.c ...
- 基于TQ2440开发板的WiFi模块的使用经验总结
一.软.硬件资源准备: 内核版本:linux-2.6.30.4 交叉编译器版本:4.3.3 wpa_supplicant工具:wpa_supplicant-0.7.3.tar ; openssl-0. ...
- KL25开发板利用串口蓝牙与PC通信
KL25开发板芯片本身支持三个串口,uart0,uart1,uart2.其中uart0不太一样,在数据手册里面单独一章介绍:而uart1和uart2则是一样的. 我所使用的串口蓝牙模块是BC04,支持 ...
- 基于Basys2开发板的简易电子琴和音乐播放器设计
背景:华中科技大学 电测综合实验 主要功能:Basys2开发板外接一个扬声器(或无源蜂鸣器也可)实现电子琴和音乐播放器的功能.其中由于开发板上只有4个按键,所以电子琴功能只做了4个音调,分别对应于4个 ...
随机推荐
- JAVA-标识符、变量、数据类型
标识符和关键字 所有的标识符否应该以字母a ~ z和 A ~Z ,美元符($).下划线(_)开始. 首字符之后可以是字母a ~ z和 A ~Z ,美元符($).下划线(_)的任意字符组合. 注 ...
- 非对称加密--密钥交换算法DHCoder
/* * 密钥交换算法,即非对称加密算法 * */ public class DHCoder { //非对称加密算法 public static final Str ...
- 前端生成分享海报兼容H5和小程序
### 移动端分享海报生成 最近做项目需求是生成商品分享海报,并且保存到手机中要兼容H5和小程序<br> 与后端同学沟通后,海报在前端生成最省性能和有较好的交互体验,先看做好的效果
- P1604_B进制星球(JAVA语言)
思路:BigInteger 五杀!利用BigInteger自带的进制转换. //第一次提交WA了几组数据,下载测试数据发现带字母的答案要转换为大写. 题目背景 进制题目,而且还是个计算器~~ 题目描述 ...
- 从源码剖析Go语言基于信号抢占式调度
转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com/archives/485 本文使用的go的源码15.7 这一次来讲讲基于信号式抢占式调度 ...
- 【Makefile】2-Makefile的介绍及原理
目录 前言 概念 Chapter 2:介绍 2.1 makefile的规则 2.3 make 是如何工作的 ** 2.5 让 make 自动推导 2.8 Makefile 里面有什么 2.9 Make ...
- C语言之通讯录的模拟实现
C语言之通讯录的模拟实现 在C语言学习结束之际,谨以此篇文章来对C语言的学习告一段落. 纲要: 通讯录的静态版本 通讯录的动态版本 通讯录的带文件版本 因为三种实现方法除了储存形式不同,其他都基本相同 ...
- 翻译:《实用的Python编程》08_02_Logging
目录 | 上一节 (8.1 测试) | 下一节 (8.3 调试) 8.2 日志 本节对日志模块(logging module)进行简单的介绍. logging 模块 logging 模块是用于记录诊断 ...
- jd的艺术
我看最近的狗东的ldz很火哈.所以我也来凑个热闹发个教程. 准备工作 1.一台openwrt系统设备 2.一个脑子 3.一双手 话不多说,开始吧! 步骤 一.链接N1(你的设备) 这里需要一款ssh工 ...
- Linux(六):系统运维常用命令
实际的生产环境下,不论是研发还是运维,或多或少的得面对在linux上定位问题这个关卡,这里介绍一下linux环境下一些状态查看常用的命令. 系统资源监控 总体资源占用情况查看 命令:top 像wind ...