摘要: 目录 一、在工程中单独设置预编译宏 二、将变量存放到指定RAM地址 三、串口打印浮点数 四、添加64位数据处理 五、使用math数学库 六、关闭仿真时自动清dataflash功能 七、配置printf待打印数据不加\n换行 八、修改编译器输出hex文件的位置 RISC-V单片机集成开发环境(IDE) 阅读全文
posted @ 2022-07-21 17:53 JayWell 阅读(3796) 评论(0) 推荐(0) 编辑
摘要: 目录 笔者在接触以太网之前,先了解的是蓝牙mesh的各类信息。现翻看一本介绍TCP/IP协议的资料,发现应用层数据在以太网协议栈内的封装过程与蓝牙mesh协议栈内的封装过程异曲同工。下图左侧是手头这本TCP/IP协议中的分层图示,下图右侧是我能找到的蓝牙mesh协议中分层相关的结构表示得比较清晰的图 阅读全文
posted @ 2022-07-06 20:11 JayWell 阅读(560) 评论(0) 推荐(0) 编辑
摘要: 目录 参考调试MPU6050与EEPROM的经验,整合了目标内存/寄存器地址是否为16位的情况,合并了单字节与多字节间的操作,添加了返回值与读写超时功能:硬件IIC的7位从机地址查询方式读写参考代码 - JayWell - 博客园 (cnblogs.com) 根据手上这片EEPROM的型号,24LC 阅读全文
posted @ 2022-06-22 10:09 JayWell 阅读(839) 评论(0) 推荐(1) 编辑
摘要: 目录 参考调试MPU6050与EEPROM的经验,整合了目标内存/寄存器地址是否为16位的情况,合并了单字节与多字节间的操作,添加了返回值与读写超时功能:硬件IIC的7位从机地址查询方式读写参考代码 - JayWell - 博客园 (cnblogs.com) 很久以前听说过硬件IIC的“难用”,也在 阅读全文
posted @ 2022-06-03 15:09 JayWell 阅读(1538) 评论(0) 推荐(1) 编辑
摘要: 目录 使用配网器配网方式: 在之前的文章中介绍了CH582单片机在蓝牙mesh组网中的两种配网方式,有介绍到:未配网设备不能选择被哪个配网器配网,配网器可以选择给哪个未配网设备配网。接下来介绍在哪里可以有选择配网。 BLE中有相对完善的黑白名单机制,可惜蓝牙mesh并没有沿用或是发展黑白名单,只能在 阅读全文
posted @ 2022-05-20 15:30 JayWell 阅读(1987) 评论(0) 推荐(0) 编辑
摘要: 目录 CH582的官方EVT中,除了代理节点例程和天猫精灵例程外都提供了厂商定义的透传模型。 模型位于蓝牙mesh网络协议中的最上层,负责标准化用户应用场景的实例,比如说开关模型、亮度模型、风速模型。由于蓝牙mesh网络中所有数据都经由广播承载层传输,根据网络地址来区分节点,判断数据来源,也就缺少了 阅读全文
posted @ 2022-05-19 10:46 JayWell 阅读(2202) 评论(0) 推荐(0) 编辑
摘要: 目录 1.12版本规范的GamePad参考报表描述符,报表格式如下图。 用CH582模拟GamePad,在电脑上显示的HID接口↓ 报表描述符↓,其他描述符可以直接参考JoyStick相关一文,改一下HID类描述符中的一个长度值即可,见文章最后。 const uint8_t GamePadRepDe 阅读全文
posted @ 2022-05-18 11:16 JayWell 阅读(1205) 评论(4) 推荐(0) 编辑
摘要: 目录 未配网设备在配好网,被纳入网络后,可称之为节点。 蓝牙mesh网络中,节点可以有选择地支持四大功能——朋友、低功耗、转发、代理功能,可以复用多个功能(由于单片机硬件限制,ch582除了复用转发功能外不建议复用其他功能),或者作为边缘节点或者说普通节点——不启用任何一个功能,做好用户自定义的工作 阅读全文
posted @ 2022-05-16 14:17 JayWell 阅读(2248) 评论(0) 推荐(0) 编辑
摘要: 目录 本测试基于CH582m单片机,尝试进行简单的组网。 沁恒官方EVT中提供了两种配网方式——配网器配网和自配网。 ①配网器配网:用一个设备(一块582开发板)作为配网器,也就是沁恒蓝牙mesh软件开发参考手册中的“中心节点”。配网器可以管理网络,进行配网、设置订阅地址、删除节点等操作。 ②自配网 阅读全文
posted @ 2022-05-13 17:05 JayWell 阅读(4642) 评论(0) 推荐(2) 编辑
摘要: 目录 51单片机的串口并没有配置FIFO硬件,故收发数据时只能一字节一字节地收发。最近接触了FIFO(先进先出)的硬件缓存,这样串口的配置就更多了一个维度。 以CH58x系列单片机为例,在CH583的手册中(笔者手头的是CH582m的板子,与CH583用法一致,只有部分硬件不同),有关于串口和FIF 阅读全文
posted @ 2022-03-02 15:32 JayWell 阅读(1121) 评论(0) 推荐(0) 编辑
摘要: 目录 本程序改编自沁恒官网2022年1月更新的CH583EVT中的CompoundDev例程。这里只贴了main.c中的程序。能够实现:①直接接电脑,在设备管理器中能够查到被电脑识别为HID-compliant game contorller;②在CH582m单片机中自定义了回包内容,通过USB抓包 阅读全文
posted @ 2022-03-02 15:05 JayWell 阅读(1080) 评论(0) 推荐(1) 编辑
摘要: 目录 应用程序改自沁恒官网的CH583EVT包中的CompoundDev工程,配合下方的描述符能够实现①直接接电脑,在设备管理器中能够查到被电脑识别为HID- compliant game contorller;②在CH582m单片机中自定义了回包内容,通过USB抓包工具可以抓到单片机模拟的JoyS 阅读全文
posted @ 2022-03-01 21:31 JayWell 阅读(2022) 评论(0) 推荐(2) 编辑
摘要: 目录 先前在582上实现了“上位机通过串口1发送指令规定串口2和3的波特率,实现串口2和3之间的数据透传”的功能,其实更普遍的用法就是串口间的透传,没有前提条件,故笔者在573上又用结构体封了一下相关变量,看上去更规整些,并加上了查询发送与中断发送切换的宏。接收方向上,都是中断接收的没有区别。 复制 阅读全文
posted @ 2022-03-01 15:54 JayWell 阅读(1853) 评论(0) 推荐(0) 编辑