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

2023-10-27

本期我们带来基于润和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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

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

  • 达梦DCA认证培训和考试

    本人有幸参加了达梦DCA认证培训并参加了认证考试 培训内容包括 第一天 国产数据库现状及未来 DM8企业版安装 创建数据库及数据库实例管理 DM8体系结构 第二天 表空间管理 用户管理 DMSQL 第三天 模式对象管理 备份还原 配置作业
  • 数据库课程设计------书店管理系统

    书店会员管理系统 具体的效果图看博客 书店管理系统2 https blog csdn net qq 45981397 article details 124062654 spm 1001 2014 3001 5502 需求分析 1 信息需求
  • 基于Neptune开发板的键盘蓝牙模块DIY指南

    本期我们带来基于润和Neptune开发板 以下简称Neptune开发板 的键盘蓝牙模块DIY指南 利用Neptune开发板支持串口和蓝牙功能等特性 将有线键盘改造成蓝牙键盘 实现一个键盘被多操作系统 终端设备识别使用的功能 达到提高工作效率
  • 【数据库内核】01——从0到1数据库内核实战,挑战数据库领域最强大脑

    前 言 作者简介 半旧518 长跑型选手 立志坚持写10年博客 专注于java后端 数据库内核及生态开发 专栏简介 相当硬核 讲解数据库内核开发的理论 实战 带你深入解读数据库源码 剖析内核原理 实战手撸数据库内核 文章简介 一篇文章快速上
  • 润和软件推出HarmonyOS物联网系列模组Neptune,助力Harmony生态

    在2020 第十七届 中国物联网产业大会上 HarmonyOS首批官方合作伙伴润和软件宣布推出HarmonyOS智能硬件新品 支持HarmonyOS的物联网系列模组Neptune HH SLNPT10x 该系列模组使用的芯片由润和软件HiH
  • 医疗知识中台白皮书 PDF

    链接 https pan baidu com s 1IFi NE3oWTE82 q DVUuug 提取码 3jf7
  • Tomcat线程模型及调优

    一 Tomcat线程模型 1 BIO 同步阻塞式I O操作 表示Tomcat使用的是传统Java I O操作 即Java io包及其子包 Tomcat7以下版本默认情况下是以bio模式运行的 由于每个请求都要创建一个线程来处理 线程开销较大
  • MySQL 删除表中的数据记录

    文章目录 前言 一 删除表中的数据记录 1 删除特定数据记录 2 删除所有数据记录 总结 前言 删除数据记录是数据操作中常见的操作 可以删除表中已经存在的数据记录 在MySQL中可以通过DELETE语句来删除数据记录 该SQL语句可以通过以
  • mysql的分页查询

    开发工具与关键技术 mysql 撰写时间 2022 6 7 mysql分页查询 语法 SELECT 字段列表 FROM 表名 LIMIT 起始索引 查询条目数 注意 分页查询limit是mySQL数据库的方言 Oracle分页查询使用row
  • MySQL下载步骤详解

    对于不同的操作系统 MySQL 提供了相应的版本 在 Windows 操作系统下 MySQL 数据库的安装包分为图形化界面安装和免安装这两种安装包 这两种安装包的安装方式不同 配置方式也不同 图形化界面安装包有完整的安装向导 安装和配置很方
  • NoSQL数据库简介

    假如必须支持数量极为庞大的Web用户 而不是像原来那样只需要支持一小部分商户 开发者要求数据库必须能够提供下列几个方面的支持 对大批量读写操作的处理能力 较低的延迟时间和较短的响应时间 较高的数据可用性 关系型数据库很难满足上述需求 对于大
  • MySQL 核心知识点

    数据库基础知识 什么是SQL 结构化查询语言 Structured Query Language 简称SQL 是一种数据库查询语言 作用 用于存取数据 查询 更新和管理关系数据库系统 什么是MySQL MySQL是一个关系型数据库管理系统
  • MySQL必知必会——第二十章更新和删除数据

    更新和删除数据 本章介绍如何利用UPDATE和DELETE语句进一步操纵表数据 更新数据 为了更新 修改 表中的数据 可以使用UPDATE语句 UPDATE的两种用法 更新表中特定行 更新表中所有行 不要省略WHERE子句 缺少WHERE子
  • mysql order by和group,where的执行顺序

    Mysql ORDER BY详解 0 索引 1 概述 2 索引扫描排序和文件排序简介 3 索引扫描排序执行过程分析 4 文件排序 5 补充说明 6 参考资料 1 概述 MySQL有两种方式可以实现ORDER BY 1 通过索引扫描生成有序的
  • 【MYSQL】第一篇 Mysql如何处理百万级别的数据

    1 应尽量避免在 where子句中使用 或 lt gt 操作符 否则将引擎放弃使用索引而进行全表扫描 2 应尽量避免在 where子句中对字段进行 null值判断 否则将导致引擎放弃使用索引而进行全表扫描 3 尽量避免在 where子句中使
  • 【数据库】基础知识扫盲

    一 基础知识 关系型数据库 多张表 各表之间的关系 关系 元祖 属性 元组是关系数据库中的基本概念 关系是一张表 表中的一行 即数据库中的每条记录 就是一个元组 表中的一列就是一个属性 关系 表 元祖 表中的一行 属性 表中的一列 码 由一
  • 北京五棵松:你记忆中的后备箱夜市,来了!

    每个人 可能都有这么一段记忆 到了晚上的时候 我们约好了 来到了老地方 逛夜市 这是我们一贯的小爱好 同样是逛 但不同于逛商场 这里的人 这里的物 这里的景 都是生活的一部分 这里有熟悉的脸 也有陌生的脸 他们有的坐在小凳上 有的倚在墙上或
  • 关系型数据库特点分析

    1970年E F Codd发表的那篇阐述新型数据库设计方式的论文 数据管理技术才开始发生了巨大变化 特点分析 形式化的数学模型 使用关系代数来描述数据及数据间的关系 数据结构的逻辑排布方式同它们的物理存储方式相分离 消除数据异常 保证数据一
  • 关系数据库标准语言SQL

    一 1 SQL语言 的语言 易学习 A 过程化 B 非过程化 C 格式化 D 导航式 答案 B 解析 非过程化就是不需要用户了解具体的数据存放方式 直接拿来用就行 2 SQL语言具有 的功能 A 关系规范化 数据操纵 数据控制 B 数据定义
  • 数据库选型粗略对比,欢迎补充!!!

    关系型数据库 Oracle SQL Server MySQL PostgreSQL SQLite Oracle 甲骨文开发的商业数据库 不开源 支持所有主流平台 性能好 功能强 稳定性好 安全性好 支持大数据量 比较复杂 收费昂贵 SQL

随机推荐

  • 初学react(七):if 判断

    思路 先定义一个state里的一个状态 因为如果状态改变都会重新执行render 所以在render写上判断动态的赋值 也可以使用三目运算 import React from react import App css import Pers
  • jeesite框架介绍

    1 jeesite框架介绍 http wenku baidu com view 7e543c24e45c3b3567ec8baf html 2 jeesite开发环境搭建及部署 http wenku baidu com link url L
  • python3 题解(34 棋盘放麦子)

    棋盘放麦子 问题 国际象棋的棋盘有共有64格 传说国王为奖励它的发明人 答应了他的一个 小 要求 在棋盘的第1格放1粒小麦 第2格放2粒 第3格放4粒 第4格放8粒 每一格是前一格数目的2倍 这一共是多少小麦呢 是个天文数字 请你利用计算机
  • 【Linux篇】父子进程间的数据共享

    include
  • unity期末:从AR的角度观察与实现粒子系统效果

    一 前言 本次项目为本学期unity游戏编程的最后一次制作内容 同时也是期末大作业的考查内容 本次大作业的要求如下 内容 请参考以下技术主题 但不限于这些主题 运用手机拍若干全景图 贴到天空盒或球型天空 做一个简单校园漫游功能 粒子系统效果
  • C++STL库神器:nth_element() 详解

    nth element nth element 函数头文件 algorithm h 功能介绍 arr n 默认求第m大的元素 std nth element arr arr m arr n 定义cmp可求第m小的元素 bool cmp in
  • 单台服务器docker如何搭建rabbitmq集群

    文章目录 一 创建多个RabbitMQ容器 二 将RabbitMQ节点加入到集群中 三 测试 四 在多台服务器上部署RabbitMQ集群 五 通过nginx实现负载均衡 六 如何给RabbitMQ容器添加用户 七 碰到的问题 1 本文是在同
  • Altium AD20过孔盖油,通过设计规则实现过孔盖油,简便实用不会造成遗漏出错

    如果是将PCB源文件发给加工厂 只需说明过孔盖油 板厂就会帮你完成对应的操作 但为了避免源文件泄露 会选择Gerber文件 这时候过孔盖油就要自己来做了 如果没有对规则进行设置 那么切换到Solder层 默认的视图应该是这样的 过孔的周围多
  • Nginx 概述 如何正规安装 静态网页配置 反向代理配置 负载均衡配置

    目录 1 基本概念 1 1 Nginx初步认识 1 2 正向 反向代理 1 3 域名和IP 2 Nginx安装和配置 2 1 安装Nginx 2 2 配置 3 Nginx的使用 3 1 部署静态网页 3 2 反向代理和负载均衡 1 反向代理
  • Python基础知识

    目录 前言 一 Python虚拟环境 1 Python虚拟环境的意义 2 Python构造虚拟环境的方法 3 Python虚拟环境问题处理 二 Python其他知识点 1 pip忽略缓存安装 2 镜像源 3 python查找项目依赖 4 p
  • 谷歌翻译API-python接口-Googletrans

    Googletrans是一个免费且无限制的python库 可实现Google Translate API Google Translate交互式API可以用来调用诸如自动侦测语言种类和翻译之类的用途 英文网址 https py google
  • 用python画星空的代码简单,python星空浪漫表白源码

    大家好 给大家分享一下用python画星空的代码简单 很多人还不知道这一点 下面详细解释一下 现在让我们来看看 用python画星空源代码是什么 用python画星空源代码是from turtle import from random im
  • 计算机主机采用的电子器件发展顺序,计算机采用的主机电子器件的发展顺序是什么?...

    计算机采用的主机电子器件的发展顺序是 电子管 晶体管 中小规模集成电路 大规模和超大规模集成电路 按照计算机采用的电子器件不同将计算机划分为电子管 晶体管 中小规模集成电路 大规模和超大规模集成电路四代 计算机采用的主机电子器件的发展顺序是
  • 海神祭司被机器人拉出来_那一抹勾魂的蓝色,卡西欧海神Oceanus 系列介绍

    本内容来源于 什么值得买APP 观点仅代表作者本人 作者 木木滚滚 先前写的卡西欧G shock系列介绍的文章下面 有挺多老哥说想要看卡西欧海神的介绍文章 于是说写就写 也开启一个新的专栏系列文章 希望能坚持写下去 一 卡西欧手表的分类 我
  • 使用lightdm启动dwm或桌面

    简介 LightDM 是一个跨桌面环境的显示管理器 它的特点有 跨桌面 支持不同的桌面环境 支持多种显示技术 X Wayland 轻量级 低内存使用 高性能 支持定制会话 支持远程登录 XDMCP VNC XDMCP 可插拔 完善的测试组件
  • Unity中的一些问题

    Unity代码编写标准流程 1 建议按照执行流程写代码 这样减少忘记写功能的可能性 2 复杂的类型的初始化赋值 不要在初始化中赋值 应该设为private 因为不用在窗口中赋值 所以在start 中初始化 常规问题 一些Unit bug 脚
  • 《Code_Complete_2》持续更新中......

    如何阅读这本书 这本书有意设计成使你既可以从头到尾阅读 也可以按主题阅读 1 如果你想从头到尾阅读 那么你可以直接从第2章 用隐喻来更充分地理解软件开发 开始钻研 2 如果你想学习特定的编程技巧 那么你可以从第6章 可以工作的类 开始 然后
  • 为什么美国程序员工作比中国程序员工作轻松、加班少?

    作者 LJ说 责编 伍杏玲 本文经授权转载自LJ说 ID LjNotes 先问是不是 再问为什么 难道美国的程序员就不加班吗 他们就一天八小时工作 还想来就来 想走就走 非工作时间完全找不到人 还有什么食物饮料都免费提供 让我来告诉你真实的
  • webpack

    看一下完整报错 asset static js index js 4 04 KiB compared for emit name main src main js 39 bytes not cacheable built code gene
  • 基于Neptune开发板的键盘蓝牙模块DIY指南

    本期我们带来基于润和Neptune开发板 以下简称Neptune开发板 的键盘蓝牙模块DIY指南 利用Neptune开发板支持串口和蓝牙功能等特性 将有线键盘改造成蓝牙键盘 实现一个键盘被多操作系统 终端设备识别使用的功能 达到提高工作效率