0

0

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

絕刀狂花

絕刀狂花

发布时间:2025-04-27 19:40:31

|

1087人浏览过

|

来源于php中文网

原创

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

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

小时候画在手腕上的表,我用全志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

墨刀AIPPT
墨刀AIPPT

排版/配图/美化一键优化,3分钟产出专业级PPT

下载

红外接收

IR DATA

PA10

DHT11

DHT11 DATA

PA6

软件系统

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

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

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

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

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

打开以下文件进行修改:

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

IIC引脚配置:

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

PWM配置:

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

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

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

打开文件进行编辑

代码语言:javascript代码运行次数:0运行复制
<code class="javascript">R128-S2-SDK/lichee/rtos-components/thirdparty/Makefile</code>

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

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

打开文件进行编辑

代码语言:javascript代码运行次数:0运行复制
<code class="javascript">R128-S2-SDK/lichee/rtos-components/thirdparty/Kconfig</code>

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

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

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

Gitee源码获取链接:

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

GitHub源码获取链接:

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

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

Gitee处Releases获取:

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

GitHub处Releases获取:

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

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

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

代码语言:javascript代码运行次数:0运行复制
<code class="javascript">https://aw-r128.100ask.net/zh/rtos/demo/part2/chapter1.html</code>

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
github中文官网入口 github中文版官网网页进入
github中文官网入口 github中文版官网网页进入

github中文官网入口https://docs.github.com/zh/get-started,GitHub 是一种基于云的平台,可在其中存储、共享并与他人一起编写代码。 通过将代码存储在GitHub 上的“存储库”中,你可以: “展示或共享”你的工作。 持续“跟踪和管理”对代码的更改。

3687

2026.01.21

android开发三大框架
android开发三大框架

android开发三大框架是XUtil框架、volley框架、ImageLoader框架。本专题为大家提供android开发三大框架相关的各种文章、以及下载和课程。

334

2023.08.14

android是什么系统
android是什么系统

Android是一种功能强大、灵活可定制、应用丰富、多任务处理能力强、兼容性好、网络连接能力强的操作系统。本专题为大家提供android相关的文章、下载、课程内容,供大家免费下载体验。

1819

2023.08.22

android权限限制怎么解开
android权限限制怎么解开

android权限限制可以使用Root权限、第三方权限管理应用程序、ADB命令和Xposed框架解开。详细介绍:1、Root权限,通过获取Root权限,用户可以解锁所有权限,并对系统进行自定义和修改;2、第三方权限管理应用程序,用户可以轻松地控制和管理应用程序的权限;3、ADB命令,用户可以在设备上执行各种操作,包括解锁权限;4、Xposed框架,用户可以在不修改系统文件的情况下修改应用程序的行为和权限。

2126

2023.09.19

android重启应用的方法有哪些
android重启应用的方法有哪些

android重启应用有通过Intent、PendingIntent、系统服务、Runtime等方法。本专题为大家提供Android相关的文章、下载、课程内容,供大家免费下载体验。

284

2023.10.18

Android语音播放功能实现方法
Android语音播放功能实现方法

实现方法有使用MediaPlayer实现、使用SoundPool实现两种。可以根据具体的需求选择适合的方法进行实现。想了解更多语音播放的相关内容,可以阅读本专题下面的文章。

379

2024.03.01

传感器故障解决方法
传感器故障解决方法

传感器故障排除指南:识别故障症状(如误读或错误代码)。检查电源和连接(确保连接牢固,无损坏)。校准传感器(遵循制造商说明)。诊断内部故障(目视检查、信号测试、环境影响评估)。更换传感器(选择相同规格,遵循安装说明)。验证修复(检查信号准确性,监测异常行为)。

495

2024.06.04

JavaScript浏览器渲染机制与前端性能优化实践
JavaScript浏览器渲染机制与前端性能优化实践

本专题围绕 JavaScript 在浏览器中的执行与渲染机制展开,系统讲解 DOM 构建、CSSOM 解析、重排与重绘原理,以及关键渲染路径优化方法。内容涵盖事件循环机制、异步任务调度、资源加载优化、代码拆分与懒加载等性能优化策略。通过真实前端项目案例,帮助开发者理解浏览器底层工作原理,并掌握提升网页加载速度与交互体验的实用技巧。

23

2026.03.06

Rust内存安全机制与所有权模型深度实践
Rust内存安全机制与所有权模型深度实践

本专题围绕 Rust 语言核心特性展开,深入讲解所有权机制、借用规则、生命周期管理以及智能指针等关键概念。通过系统级开发案例,分析内存安全保障原理与零成本抽象优势,并结合并发场景讲解 Send 与 Sync 特性实现机制。帮助开发者真正理解 Rust 的设计哲学,掌握在高性能与安全性并重场景中的工程实践能力。

68

2026.03.05

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 10.2万人学习

Git 教程
Git 教程

共21课时 | 4万人学习

MySQL 教程
MySQL 教程

共48课时 | 2.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号