0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于DShanMCU-R128s2-DevKit开发智能手表

百问科技 来源:百问科技 2023-11-01 15:32 次阅读

NWatch(DIY智能手表)

本项目基于DShanMCU-R128s2-DevKit开发,用意是提供一个综合的示例进行学习参考。

本项目基于ZakKemble的开源项目-NWatch,GitHub仓库地址:https://github.com/ZakKemble/NWatch

与原作者的NWatch不一样的是,将其移植到DShanMCU-R128s2-DevKit开发板新窗口打开上,同时相比于原作者添加了一些功能,比如恢复出厂设置功能,后续有时间会慢慢增加更多的功能。

#运行效果

a59be052-787d-11ee-939d-92fbcf53809c.jpg

#硬件准备

DShanMCU-R128s2-DevKit开发板

0.96寸OLED(SSD1306)

EC11旋转编码器模块

红外接收模块+红外遥控器

无源蜂鸣器模块

DHT11温湿度模块

#源码获取

仓库源码:

Gitee:https://gitee.com/weidongshan/100ask_r128_demos/tree/master/nwatch

GitHub:https://github.com/100askTeam/100ask_r128_demos/tree/master/nwatch

#固件获取

如果你不想自己编译或者不需要二次开发,那么可以从这里获取固件,烧写固件到DShanMCU-R128s2-DevKit后开机会自动启动NWatch任务,如果没有自动启动在串口终端输入命令然后按回车即可:nwatch_100ask 3。模块接线请阅读模块接线小节。

Releases获取:

Gitee:https://gitee.com/weidongshan/100ask_r128_demos/releases/tag/v0.0.1

GitHub:https://github.com/100askTeam/100ask_r128_demos/releases/tag/v0.0.1

#二次开发

#修改 sys_config.fex

打开R128-S2-SDK/board/r128s2/pro/configs/sys_config.fex,进行如下的修改:

IIC引脚配置:

[twi1]
twi1_sck        = port:PB00<3><1>
twi1_sda        = port:PB01<3><1>

PWM配置:

[pwm6]
pwm_used        = 1
pwm_positive    = port:PA26<4><0><2>

#添加100ask_r128_demos

从git仓库获取源码:

Gitee:https://gitee.com/weidongshan/100ask_r128_demos/tree/master/nwatch

GitHub:https://github.com/100askTeam/100ask_r128_demos/tree/master/nwatch

clone仓库或者下载仓库压缩包到本地,并将仓库目录放在sdk的这个目录下面:

R128-S2-SDK/lichee/rtos-components/thirdparty/100ask_r128_demos

一定要确保文件夹名称是100ask_r128_demos

打开文件R128-S2-SDK/lichee/rtos-components/thirdparty/Makefile进行编辑,在文件的最后面或最前一行加入下面的内容:

obj-$(CONFIG_COMPONENTS_100ASK_R128_DEMOS) += 100ask_r128_demos/

打开文件R128-S2-SDK/lichee/rtos-components/thirdparty/Kconfig进行编辑,在文件的最后或最前一行加入下面的内容:

source components/common/thirdparty/100ask_r128_demos/Kconfig

#配置menuconfig

执行mrtos_menuconfig进入到下面所示的位置进行配置:

选择载入 r128s2_module_c906 方案,并进入 menuconfig:

$ source envsetup.sh 
$ lunch_rtos 1
$ mrtos_menuconfig

打开IIC:

System components  --->
    Drivers Options  --->
        soc related device drivers  --->
        TWI Devices  --->
                -*- enable twi driver
                [ ]   enable twi hal APIs test command

打开PWM:

System components  --->
    Drivers Options  --->
        soc related device drivers  --->
            PWM devices --->
                [*] enable pwm driver
                [ ]   enable pwm hal APIs test command

打开GPIO及其中断:

System components  --->
    Drivers Options  --->
        soc related device drivers  --->
            GPIO devices --->
                [*] enable GPIO driver
                [ ]   enable gpio hal APIs test command
                [ ] enable gpio chip aw9523
                [*] enable amp gpio irq

配置 100ask_r128_demos:

System components  --->
    thirdparty components  --->
        USE 100ask_r128_demos  --->
            --- USE 100ask_r128_demos
            [*]   USE USE_100ASK_MODULE_DRIVER  --->
            [*]   USE USE_100ASK_MODULE_DRIVER_IIC_OLED  --->
            [ ]   USE USE_100ASK_MODULE_DRIVER_SPI_LCD  ----
            [*]   USE USE_100ASK_MODULE_DRIVER_PASSIVE_BUZZER  --->
            [*]   USE USE_100ASK_MODULE_DRIVER_ROTARY_ENCODER  ----
            [*]   USE USE_100ASK_MODULE_DRIVER_IR_RECEIVER  --->
            [*]   USE USE_100ASK_MODULE_DRIVER_SPI_FLASH  ---> 
            [*]   USE USE_100ASK_MODULE_DRIVER_DHT11  ----
            [ ]   100ask lvgl desktop
            [*]   NWatch demo
            ......

#开机启动

如果省略这一步,那么在开机之后,在串口终端输入命令然后按回车运行 NWatch 任务:nwatch_100ask 3

如果需要开机自启动 NWatch 任务,按照如下步骤操作:

打开R128-S2-SDK/lichee/rtos/projects/r128s2/pro_c906/src/main.c,文件

在main函数中如下位置添加如下代码:

void cpu0_app_entry(void *param)
{
    ......
#ifdef CONFIG_NWATCH_100ASK
    int argc = 2;
char *argv[] = {
"nwatch_100ask",
"3",
};
    nwatch_100ask_main(argc, argv);
#endif
    vTaskDelete(NULL);
}

最后,编译、打包:mrtos && pack

编译出来的镜像存放位置:R128-S2-SDK/out/r128s2/pro/rtos_freertos_r128s2_pro_uart0_16Mnor.img

通过烧写工具将其烧写到开发板上,下一步,对各个模块进行接线。

#模块接线

IIC OLED模块接线:

SCK ------- PB00
SDA ------- PB01

EC11旋转编码器接线:

S1   -------  PA24
S2   -------  PA25
KEY  -------  PA29

蜂鸣器模块接线:

BEEP DATA PIN ------- PA26

红外接收模块接线:

IR DATA PIN   -------   PA10

DHT11模块:

DHT11 DATA PIN   -------   PA6

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开源
    +关注

    关注

    3

    文章

    3243

    浏览量

    42378
  • 开发板
    +关注

    关注

    25

    文章

    4933

    浏览量

    97157
  • 智能手表
    +关注

    关注

    36

    文章

    3273

    浏览量

    113745
  • GitHub
    +关注

    关注

    3

    文章

    466

    浏览量

    16380

原文标题:NWatch(DIY智能手表)

文章出处:【微信号:baiwenkeji,微信公众号:百问科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    使用全志R128实现LVGL的移植

    我们使用的开发板是 R128-Devkit,需要开发 C906 核心的应用程序,所以载入方案选择 r128s2_module_c906
    的头像 发表于 11-13 10:14 1506次阅读
    使用全志<b class='flag-5'>R128</b>实现LVGL的移植

    开源项目!教你如何复刻自平衡赛车机器人、智能家居中控、竞技机器人先进模糊控制器等

    板来实现手表功能效果,所需要用到的硬件有以下几个: DShanMCU-R128s2-DevKit开发板 0.96寸OLED(SSD1306) EC11旋转编码器模块 红外接收模块+红外遥控器 无源蜂鸣器模块 DHT11温湿度模块
    发表于 12-26 09:17

    全志R128 Devkit开发板原理图模块介绍及使用说明

    针对 R128 模组,百问科技推出了 R128 DevKit 开发板作为快速开发评估工具。 板载 R
    发表于 01-17 09:45

    蓝牙技术|传统手表品牌加入智能手表竞争,智能手表市场持续火热

    现有的大部分手机、平板和电脑兼容。蓝牙在智能手表上的应用1、应用通知蓝牙智能手表APP开发中的应用通知功能是指手表可以提醒电话、短信以及三方的应用通知。防止用户错过任意一则重要的信息。
    发表于 02-17 11:04

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

    所有硬件集成到一小块开发板上,而是采用面包板来实现手表功能效果,所需要用到的硬件有以下几个: DShanMCU-R128s2-DevKit开发板 0.96寸OLED(SSD1306)
    发表于 11-09 17:03

    DshanMCU-R128s2-DEVKIT应用开发案例

    本文章为DshanMCU-R128s2-DEVKIT应用开发案例,本文案例(点亮一颗 LED 灯)代码可以到全志在线-在线文档或者复制链接前往下载。
    的头像 发表于 09-28 16:26 823次阅读
    <b class='flag-5'>DshanMCU-R128s2-DEVKIT</b>应用<b class='flag-5'>开发</b>案例

    全志R128应用开发案例—点亮一颗LED灯

    我们使用的开发板是 R128-Devkit,需要开发 C906 核心的应用程序,所以载入方案选择`r128s2_module_c906`
    发表于 10-09 16:46 419次阅读
    全志<b class='flag-5'>R128</b>应用<b class='flag-5'>开发</b>案例—点亮一颗LED灯

    DshanMCU-R128s2全志R128视频教程

    基于DShanMCU-R128S2_DevKit的入门教程
    的头像 发表于 12-26 14:05 561次阅读

    DshanMCU-R128s2芯片简介

    DshanMCU-R128s2芯片简介
    的头像 发表于 12-22 09:55 812次阅读
    <b class='flag-5'>DshanMCU-R128s2</b>芯片简介

    DshanMCU-R128s2 R128 模组

    R128-S2-N16R16 R128-S2 Arm Cortex-M33 C906 RISC-V HIFI5 DSP 1MByte 8Mbyte 8Mbyte 16M NOR Flash 2 Audio
    的头像 发表于 12-26 11:11 984次阅读
    <b class='flag-5'>DshanMCU-R128s2</b> <b class='flag-5'>R128</b> 模组

    DshanMCU-R128s2 R128 DevKit 开发

    针对 R128 模组,百问科技推出了 R128 DevKit 开发板作为快速开发评估工具。 特性: 板载
    的头像 发表于 12-22 12:02 582次阅读
    <b class='flag-5'>DshanMCU-R128s2</b> <b class='flag-5'>R128</b> <b class='flag-5'>DevKit</b> <b class='flag-5'>开发</b>板

    DshanMCU-R128s2 R128 EVT 开发套件

    针对 R128 模组,百问科技推出了 R128 EVT 开发套件作为快速开发评估工具。
    的头像 发表于 12-22 15:16 736次阅读
    <b class='flag-5'>DshanMCU-R128s2</b> <b class='flag-5'>R128</b> EVT <b class='flag-5'>开发</b>套件

    DshanMCU-R128s2 SDK 架构与目录结构

    R128 S2 是全志提供的一款 M33(ARM)+C906(RISCV-64)+HIFI5(Xtensa) 三核异构 SoC,同时芯片内部 SIP 有 1M SRAM、8M LSPSRAM、8M
    的头像 发表于 12-22 15:57 687次阅读
    <b class='flag-5'>DshanMCU-R128s2</b> SDK 架构与目录结构

    DshanMCU-R128s2 Hello World!

    本文将介绍使用 R128 开发板从串口输出 Hello World 的方式介绍 SDK 软件开发流程。 载入方案 我们使用的开发板是 R128-De
    的头像 发表于 12-22 17:24 565次阅读
    <b class='flag-5'>DshanMCU-R128s2</b> Hello World!

    DshanMCU-R128s2硬件设计参考

    R128 DevKit 开发板 硬件工程开源地址:https://oshwhub.com/gloomyghost/r128-module 电路图
    的头像 发表于 12-26 09:46 930次阅读