目录:

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指南的更多相关文章

  1. 基于uFUN开发板和扩展板的联网校准时钟

    项目概述 上周在uFUN试用群里看到管理员说试用活动快结束了,要抓紧完成评测总结,看大家的评测总结也都写了,我也不能落后啊!正好最近做的扩展板到手了,于是赶紧进行调试,做了一个不用校准的时钟,时钟这种 ...

  2. 基于uFUN开发板的心率计(三)Qt上位机的实现

    前言 上两周利用周末的时间,分别写了基于uFUN开发板的心率计(一)DMA方式获取传感器数据和基于uFUN开发板的心率计(二)动态阈值算法获取心率值,介绍了AD采集传感器数据和数据的滤波处理获取心率值 ...

  3. 基于uFUN开发板的RGB调色板

    前言 使用uFUN开发板配合Qt上位机,实现任意颜色的混合,Qt上位机下发RGB数值,范围0-255,uFUN开发板进行解析,然后输出不同占空比的PWM,从而实现通过RGB三原色调制出任意颜色. Qt ...

  4. 基于uFUN开发板的心率计(二)动态阈值算法获取心率值

    前言 上一篇文章:基于uFUN开发板的心率计(一)DMA方式获取传感器数据,介绍了如何获取PulseSensor心率传感器的电压值,并对硬件电路进行了计算分析.心率计,重要的是要获取到心率值,本篇文章 ...

  5. 基于 Arduino 开发板,这款插座是可编程且开源的

    基于 Arduino 开发板,这款插座是可编程且开源的 https://www.oschina.net/news/74861/open-source-socket https://github.com ...

  6. 【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 ...

  7. 基于TQ2440开发板的WiFi模块的使用经验总结

    一.软.硬件资源准备: 内核版本:linux-2.6.30.4 交叉编译器版本:4.3.3 wpa_supplicant工具:wpa_supplicant-0.7.3.tar ; openssl-0. ...

  8. KL25开发板利用串口蓝牙与PC通信

    KL25开发板芯片本身支持三个串口,uart0,uart1,uart2.其中uart0不太一样,在数据手册里面单独一章介绍:而uart1和uart2则是一样的. 我所使用的串口蓝牙模块是BC04,支持 ...

  9. 基于Basys2开发板的简易电子琴和音乐播放器设计

    背景:华中科技大学 电测综合实验 主要功能:Basys2开发板外接一个扬声器(或无源蜂鸣器也可)实现电子琴和音乐播放器的功能.其中由于开发板上只有4个按键,所以电子琴功能只做了4个音调,分别对应于4个 ...

随机推荐

  1. window 10 下 --excel | power query 通过 ODBC链接 mysql 数据库

    excel链接到mysql的方法有几种,今天主要介绍如何通过ODBC链接 odbc是 "开放数据库连接",你可以通过下载插件使得自己的excel可以连接到不同的数据库. 关于版本的 ...

  2. CF533F Encoding 题解

    题目链接CF533F Encoding 提示1:   \(\mathcal O(26^2*n)\) 的算法可通过.常用的几种字符串匹配算法kmp,AC自动机,哈希都可以解决该问题 (后两者可以优化到 ...

  3. Raft共识算法详解

    Raft共识算法 一.背景 拜占庭将军问题是分布式领域最复杂.最严格的容错模型.但在日常工作中使用的分布式系统面对的问题不会那么复杂,更多的是计算机故障挂掉了,或者网络通信问题而没法传递信息,这种情况 ...

  4. React实用技巧

    取消请求 React 中当前正在发出请求的组件从页面上卸载了,理想情况下这个请求也应该取消掉,那么如何把请求的取消和页面的卸载关联在一起呢? 这里要考虑利用 useEffect 传入函数的返回值: u ...

  5. 得分(JAVA语言)

    package 第三章习题; /*  * 给出一个由O和X组成的串(长度为1~80),统计得分.  * 每个O得分为目前连续出现的O的个数,X得分为0.  * 例如,OOXXOXXOOO的得分为  * ...

  6. Git本地操作2

    code[class*="language-"], pre[class*="language-"] { color: rgba(51, 51, 51, 1); ...

  7. thinkphp各版本常用漏洞总结

    0x01 漏洞分析及复现 1.漏洞分析 漏洞影响范围: Thinkphp 5.1.0 - 5.1.31Thinkphp 5.0.5 - 5.0.23 漏洞产生原因: Thinkphp5.x版本(5.0 ...

  8. 2021年春软件工程"助教团队"成员介绍

    2021年春软件工程 助教团队 成员介绍 项目 内容 这个作业属于那个课程 2021春季学期软件工程(罗杰.任健) 这个作业的要求在哪里 团队介绍 姓名 照片 个人介绍 分工 刘Q 本团队的PM,和助 ...

  9. ES系列(二):基于多播的集群发现实现原理解析

    ES作用超强悍的搜索引擎,除了需要具有齐全的功能支持,超高的性能,还必须要有任意扩展的能力.一定程度上,它是一个大数据产品.而要做扩展性,集群自然少不了.然而单独的集群又是不够的,能够做的事情太少,所 ...

  10. java面试一日一题:请讲下对mysql的理解

    问题:请讲下对mysql的理解 分析:该问题主要考察对mysql的理解,基本概念及sql的执行流程 回答要点: 主要从以下几点去考虑, 1.mysql的整体架构? 2.mysql中每一个组件的作用? ...