基于Neptune开发板的键盘蓝牙模块DIY指南

2023-11-03 16:20

本文主要是介绍基于Neptune开发板的键盘蓝牙模块DIY指南,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本期我们带来基于润和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设备,期待开发者们能玩出新玩法~
在不久的将来,我们将持续升级,带来更多好玩有趣的内容,让开发者以更少的时间和成本玩转开发板,敬请期待啦~

原文链接:https://mp.weixin.qq.com/s?__biz=MzkwNDE0MzQ0Nw%3D%3D&mid=2247490804&idx=1&sn=3342d7e058f94df43ecb0f74e88b0978&scene=45#wechat_redirect

这篇关于基于Neptune开发板的键盘蓝牙模块DIY指南的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/339392

相关文章

springboot集成Lucene的详细指南

《springboot集成Lucene的详细指南》这篇文章主要为大家详细介绍了springboot集成Lucene的详细指南,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起... 目录添加依赖创建配置类创建实体类创建索引服务类创建搜索服务类创建控制器类使用示例以下是 Spring

Python如何调用指定路径的模块

《Python如何调用指定路径的模块》要在Python中调用指定路径的模块,可以使用sys.path.append,importlib.util.spec_from_file_location和exe... 目录一、sys.path.append() 方法1. 方法简介2. 使用示例3. 注意事项二、imp

Android开发环境配置避坑指南

《Android开发环境配置避坑指南》本文主要介绍了Android开发环境配置过程中遇到的问题及解决方案,包括VPN注意事项、工具版本统一、Gerrit邮箱配置、Git拉取和提交代码、MergevsR... 目录网络环境:VPN 注意事项工具版本统一:android Studio & JDKGerrit的邮

Python中模块graphviz使用入门

《Python中模块graphviz使用入门》graphviz是一个用于创建和操作图形的Python库,本文主要介绍了Python中模块graphviz使用入门,具有一定的参考价值,感兴趣的可以了解一... 目录1.安装2. 基本用法2.1 输出图像格式2.2 图像style设置2.3 属性2.4 子图和聚

SpringBoot整合OpenFeign的完整指南

《SpringBoot整合OpenFeign的完整指南》OpenFeign是由Netflix开发的一个声明式Web服务客户端,它使得编写HTTP客户端变得更加简单,本文为大家介绍了SpringBoot... 目录什么是OpenFeign环境准备创建 Spring Boot 项目添加依赖启用 OpenFeig

SpringBoot请求参数接收控制指南分享

《SpringBoot请求参数接收控制指南分享》:本文主要介绍SpringBoot请求参数接收控制指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring Boot 请求参数接收控制指南1. 概述2. 有注解时参数接收方式对比3. 无注解时接收参数默认位置

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

Python正则表达式语法及re模块中的常用函数详解

《Python正则表达式语法及re模块中的常用函数详解》这篇文章主要给大家介绍了关于Python正则表达式语法及re模块中常用函数的相关资料,正则表达式是一种强大的字符串处理工具,可以用于匹配、切分、... 目录概念、作用和步骤语法re模块中的常用函数总结 概念、作用和步骤概念: 本身也是一个字符串,其中

Python中的getopt模块用法小结

《Python中的getopt模块用法小结》getopt.getopt()函数是Python中用于解析命令行参数的标准库函数,该函数可以从命令行中提取选项和参数,并对它们进行处理,本文详细介绍了Pyt... 目录getopt模块介绍getopt.getopt函数的介绍getopt模块的常用用法getopt模

CentOS7更改默认SSH端口与配置指南

《CentOS7更改默认SSH端口与配置指南》SSH是Linux服务器远程管理的核心工具,其默认监听端口为22,由于端口22众所周知,这也使得服务器容易受到自动化扫描和暴力破解攻击,本文将系统性地介绍... 目录引言为什么要更改 SSH 默认端口?步骤详解:如何更改 Centos 7 的 SSH 默认端口1