当前位置:

首页 > 硬件相关 > 小时候手腕上的表,用全志R128让它动起来

小时候手腕上的表,用全志R128让它动起来

小时候,我们总是充满想象力和创造力。在那个年龄,我们没有真正的手表,但我们总是喜欢在纸上画出自己的手表,仿佛它真的能告诉我们时间。为了弥补童年的遗憾,作者找到了一个智能手表的开源项目——NWatch,并把他移植到了R128开发板上。项目简介本项目基于ZakKemble的开源项目NWatch,与原作者的NWatch不一样的是,作者将其移植到DShanMCU-R128s2-DevKit开发板的同时相比于原作者添加了一些功能,比如优化屏幕刷新,使显示更流畅,以及添加蜂鸣器、旋转编码器、DHT11温湿度传感器。硬

小时候,我们总是充满想象力和创造力。

在那个年龄,我们没有真正的手表,但我们总是喜欢在纸上画出自己的手表,仿佛它真的能告诉我们时间。

小时候画在手腕上的表,我用全志R128让他真正动了起来

为了弥补童年的遗憾,作者找到了一个智能手表的开源项目——NWatch,并把他移植到了R128开发板上。

小时候画在手腕上的表,我用全志R128让他真正动了起来
项目简介

本项目基于ZakKemble的开源项目NWatch,与原作者的NWatch不一样的是,作者将其移植到DShanMCU-R128s2-DevKit开发板的同时相比于原作者添加了一些功能,比如优化屏幕刷新,使显示更流畅,以及添加蜂鸣器、旋转编码器、DHT11温湿度传感器。

小时候画在手腕上的表,我用全志R128让他真正动了起来
小时候画在手腕上的表,我用全志R128让他真正动了起来
硬件准备

本项目的基础用意是提供一个综合的示例进行学习参考,所以没有将所有硬件集成到一小块开发板上,而是采用面包板来实现手表功能效果,所需要用到的硬件有以下几个:

DShanMCU-R128s2-DevKit开发板0.96寸OLED(SSD1306)EC11旋转编码器模块红外接收模块+红外遥控器无源蜂鸣器模块DHT11温湿度模块
小时候画在手腕上的表,我用全志R128让他真正动了起来在这里插入图片描述

模块

接线

对应引脚

IIC OLED

SCK

PB00

SDA

PB01

EC11

S1

PA24

S2

PA25

KEY

PA29

蜂鸣器

BEEP DATA

PA26

红外接收

IR DATA

PA10

DHT11

DHT11 DATA

PA6

软件系统

手表上的所有功能都伴有动画效果。

原作者对软件系统的代码花费了大量时间进行优化渲染,优化的内容就包括了将位图图像从闪存复制到RAM中的帧缓冲区,并通过 SPI 将帧缓冲区发送到 OLED,最终使得手表能够在几乎所有区域的显示中可以保持100+FPS。

小时候画在手腕上的表,我用全志R128让他真正动了起来在这里插入图片描述

一些主要的动画内容: 1.进入和退出睡眠模式时的 CRT 动画(类似于某些 Android 智能手机具有的 CRT 动画)。 2.主要时间数字切换时具有动画效果。 3.菜单有一个向左/向右滚动的动画,选择一个选项将会有当前菜单从屏幕上掉下来的动画效果。

小时候画在手腕上的表,我用全志R128让他真正动了起来在这里插入图片描述
小时候画在手腕上的表,我用全志R128让他真正动了起来在这里插入图片描述
二次开发

打开以下文件进行修改:

代码语言:javascript代码运行次数:0运行复制
R128-S2-SDK/board/r128s2/pro/configs/sys_config.fex

IIC引脚配置:

代码语言:javascript代码运行次数:0运行复制
[twi1]twi1_sck        = port:PB00<3><1>twi1_sda        = port:PB01<3><1>

PWM配置:

代码语言:javascript代码运行次数:0运行复制
[pwm6]pwm_used        = 1pwm_positive    = port:PA26<4><0><2>

接下来添加100ask_r128_demos,首先clone仓库或者下载仓库压缩包到本地,并将仓库目录放在sdk的这个目录下面:

代码语言:javascript代码运行次数:0运行复制
R128-S2-SDK/lichee/rtos-components/thirdparty/100ask_r128_demos
小时候画在手腕上的表,我用全志R128让他真正动了起来在这里插入图片描述

打开文件进行编辑

代码语言:javascript代码运行次数:0运行复制
R128-S2-SDK/lichee/rtos-components/thirdparty/Makefile

在文件的最后面或最前一行加入下面的内容:

代码语言:javascript代码运行次数:0运行复制
obj-$(CONFIG_COMPONENTS_100ASK_R128_DEMOS) += 100ask_r128_demos/

打开文件进行编辑

代码语言:javascript代码运行次数:0运行复制
R128-S2-SDK/lichee/rtos-components/thirdparty/Kconfig

在文件的最后或最前一行加入下面的内容:

代码语言:javascript代码运行次数:0运行复制
source components/common/thirdparty/100ask_r128_demos/Kconfig
源码获取

基于R128-S2设计的全套开发板已上线淘宝百问网韦东山老师个人店进行售卖,包含黑色的DshanMCU-R128s2-R16N16模组和全套的DshanMCU-R128s2-DEVKIT。

Gitee源码获取链接:

代码语言:javascript代码运行次数:0运行复制
https://gitee.com/weidongshan/100ask_r128_demos/tree/master/nwatch

GitHub源码获取链接:

代码语言:javascript代码运行次数:0运行复制
https://github.com/100askTeam/100ask_r128_demos/tree/master/nwatch

如果你不想自己编译或者不需要二次开发,那么可以从下方获取固件:

Gitee处Releases获取:

代码语言:javascript代码运行次数:0运行复制
https://gitee.com/weidongshan/100ask_r128_demos/releases/tag/v0.0.1

GitHub处Releases获取:

代码语言:javascript代码运行次数:0运行复制
https://github.com/100askTeam/100ask_r128_demos/releases/tag/v0.0.1

烧写固件到DShanMCU-R128s2-DevKit在新窗口打开后开机会自动启动NWatch任务,如果没有自动启动在串口终端输入命令然后按回车即可nwatch_100ask 3。

更多关于项目的详情可以前往百问网R128综合项目开发案例界面了解。

代码语言:javascript代码运行次数:0运行复制
https://aw-r128.100ask.net/zh/rtos/demo/part2/chapter1.html
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
作者最新文章
硬件相关
相关文章 更多
显示器色温怎么调不刺眼?色温调多少看着最舒服
显示器色温怎么调不刺眼?色温调多少看着最舒服

详解显示器色温的舒适调节区间、刺眼的核心诱因,以及在不同使用场景与环境光下的具体调节步骤与校准方法。

显卡风扇不转怎么回事判断是否正常及解决方法
显卡风扇不转怎么回事判断是否正常及解决方法

发现显卡风扇不转先别慌,这很可能是正常的智能启停功能。本文详解如何区分待机静音与硬件故障,提供从软件检测到物理清理的完整解决思路。

笔记本加内存条后无法开机怎么办及解决方法
笔记本加内存条后无法开机怎么办及解决方法

笔记本加装新内存后遇到黑屏或无法开机?不要慌张,本文通过重新插拔、清洁金手指、单根测试等具体操作步骤,帮你快速判断是安装失误还是硬件不兼容,并给出相应解决办法。

电脑主机前置usb不能用怎么解决排查修复教程
电脑主机前置usb不能用怎么解决排查修复教程

针对电脑主机前置USB接口无法识别设备的问题,本文提供一套基于因果逻辑的排查流程。涵盖检查机箱内部USB针脚连接、验证BIOS中USB控制器状态、更新芯片组驱动以及排除供电不足等常见原因,帮助用户快速恢复接口功能。

无线鼠标充不进电解决办法及故障排查步骤
无线鼠标充不进电解决办法及故障排查步骤

遇到无线鼠标充不进电的问题,不要急于更换设备。本文详解从清理接口氧化层、更换数据线到检测电池电压的完整排查流程,帮助你判断是临时故障还是硬件损坏。

蓝牙游戏手柄连接教程吃鸡
蓝牙游戏手柄连接教程吃鸡

想知道如何用蓝牙手柄玩吃鸡游戏?本文详细讲解手机蓝牙手柄的连接步骤、主流映射软件的使用方法以及实战中的键位布局技巧,助你提升射击手感,同时解析外设玩家的匹配机制与注意事项。

游戏手柄蓝牙连接为何每次都要重连原因排查与解决方法
游戏手柄蓝牙连接为何每次都要重连原因排查与解决方法

本文深入分析游戏手柄蓝牙频繁断开且需重连的根本原因,涵盖电池电压检测、操作系统电源管理策略及驱动冲突。通过具体的系统设置调整和固件更新步骤,解决蓝牙握手失败问题,恢复手柄的稳定连接状态。

显示器画面模糊抖动怎么解决及排查方法教程
显示器画面模糊抖动怎么解决及排查方法教程

遇到显示器画面模糊或抖动时,可通过检查视频连接线、调整系统分辨率与刷新率、更新显卡驱动等步骤进行排查和修复。

小米智能门锁换电池后怎么开机
小米智能门锁换电池后怎么开机

小米智能门锁更换新电池后无法开机或屏幕不亮?本文详解电池极性检查、金属触点清洁及强制重启方法,帮你快速解决供电问题,让门锁恢复正常使用。

电视机声音怎么连接到外置音响
电视机声音怎么连接到外置音响

想让电视声音更震撼?本文详解如何通过HDMI ARC、光纤、蓝牙和3.5mm接口将电视连接至外置音响,包含具体设置步骤与常见问题排查,助你轻松打造家庭影院。

查看更多
精品专题 更多
装机必备
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows
Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

macOS软件
macOS软件

正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

Mac软件 更多
photoshop
photoshop
Windows、macOS 、 iPad

Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。

Blender
Blender
Windows、macOS 和 Linux

Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。

灵活计算器
灵活计算器
macOS/iOS/Android

灵活计算器是一款笔记式算数应用,支持实时计算、动态关联和云端同步功能。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

WINDOWS 更多
3dmax(3ds max)
3dmax(3ds max)
Windows

Autodesk 3ds Max 是一款专业的三维建模、动画与渲染软件,广泛应用于建筑可视化、游戏开发、影视动画、广告设计和产品展示等领域。

photoshop
photoshop
Windows、macOS 、 iPad

Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。

Blender
Blender
Windows、macOS 和 Linux

Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。