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

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

3天内不再提示

第二章:RLM 适配 HZHY AI300G 的固件开发

杨永胜 来源:iysheng 作者:iysheng 2024-07-30 16:41 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前言

搁了这么久,目前我设计的 USBLoRa 模块(起名叫:Red LoRa Module,后续简称 RLM)的固件开发的差不多了,基本实现了双向的 USB 到 LoRa 之间的转换,今天就发文总结以下,因为后面就要到光照度算法部分开发了,期待哦。

概述

首先看下 RLM 的,结构框图:

led-Page-3.drawio.png

再看一下3D图和实物图:

RLM_Lite_top.png
RLM_Lite_bottom.png

IMG_20240526_155517.jpg

这部分驱动是运行在 STM32F103 上面,通过 CDC ACM 配置,实现在 PC 端枚举出来对应的节点。另一方面通过 SPI 和 LoRa 通信,最终实现 USB 和 LoRa 之间的透传。这部分代码是开源的,我是在 [https://github.com/blackmagic-debug/blackmagic.git]开源项目的基础上修改实现的。这部分固件代码我放在我的 gitee 仓库 [rlm_hsi],感兴趣的小伙伴可以去看看。

经验总结

经过这几天的 USB 转 LoRa 固件功能的开发,总结出来比较深刻的经验有如下几点:

  1. 使用 STM32F103CBT6 的 USB,USB 的时钟要固定在48MHZ,并且官方不建议使用内部晶振提供这个时钟,在选择使用 cubeMX 软件的时候,如果选择 HSI 提供这个始终,也会提示你有冲突,但是不要紧,想用 HSI 还是可以的,不过不建议哦,因为我这个板子的图画的比较早了,当时没有考虑到,所以就硬着头皮往下开发了,好在成功了。
  2. 使用 STM32F103CBT6 的 USB 的时候,为了让 PC 可以枚举设备,在电路上需要在 D+ 上设计一个上拉电阻,如果想实现动态热插拔,这个电阻另一端需要连接到一个可以控制的 GPIO 管脚,通过拉高这个 GPIO,实现动态热插拔,如果不需要这个功能,就直接上拉到 VCC(我这里是直接接到了 3V3) 就行了。
  3. 在使用 SPI 的时候,因为我想用软件控制 NSS,发现必须要同时配置 SPI 的 CR1 的 SSM 和 SSI 为 1。否则是不能配置到主机模式软件NSS的。
  4. 在调试 LoRa 模块的时候,发现 spi 速率太低也会导致通信异常,最后我设定在 SPI 时钟 2 分频可以正常工作。

效果演示

说了这么多,我们看下实际的效果,首先是设备枚举:

[349794.851655] usb 3-4.2: new full-speed USB device number 49 using xhci_hcd
[349795.044759] usb 3-4.2: New USB device found, idVendor=1d51, idProduct=6118, bcdDevice= 0.09
[349795.044777] usb 3-4.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[349795.044783] usb 3-4.2: Product: Red Lora Module v1.10.0-926-g8f2291e7-dirty
[349795.044787] usb 3-4.2: Manufacturer: Red Studio
[349795.044791] usb 3-4.2: SerialNumber: E1C3A7D0
[349795.054870] cdc_acm 3-4.2:1.0: ttyACM2: USB ACM device

然后,视频演示部分可以参看 [具有 Local AI 功能的工业用照明控制器] 的评论区哦。

审核编辑 黄宇

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

    关注

    60

    文章

    8474

    浏览量

    285766
  • AI
    AI
    +关注

    关注

    91

    文章

    40982

    浏览量

    302534
  • LoRa
    +关注

    关注

    355

    文章

    1916

    浏览量

    238398
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    嵌入式AI开发必看:杜绝幻觉,才是工业级IDE的核心底气

    的合规性,导致企业“不敢用、不愿用”AI技术。 ▌开发效率与安全矛盾加剧:开发者既要借助AI提升编码效率,又要承担AI幻觉带来的风险,陷入“
    发表于 03-18 13:49

    VIAVI PCI Express5.0 Xgig协议训练器主机测试台专为 PCIe 5.0 适配器卡及控制器/固件开发的一体化测试方案

    PCIE5.0协议训练器主机测试台专为适配器卡及其控制器/固件开发设计的一体化测试解决方案。设计用于开发、协调和性能调谐PCIe适配卡及其控
    的头像 发表于 12-24 16:09 277次阅读
    VIAVI PCI Express5.0 Xgig协议训练器主机测试台专为 PCIe 5.0 <b class='flag-5'>适配</b>器卡及控制器/<b class='flag-5'>固件</b><b class='flag-5'>开发</b>的一体化测试方案

    基于RK3568开发板显示屏调试适配方法(1)-如何在Uboot界面切换显示屏

    、MIPI同显为例)第二章:帮助用户如何适配自己的显示屏(DM7寸显示屏为例)由于TQ3568支持在uboot阶段选择显示屏,具体如何操作如第一所示。第一如何在Ubo
    的头像 发表于 11-07 16:19 554次阅读
    基于RK3568<b class='flag-5'>开发</b>板显示屏调试<b class='flag-5'>适配</b>方法(1)-如何在Uboot界面切换显示屏

    效率翻倍!量产烧录工具使用技巧大公开~

    ,支持最新固件获取、固件打包、trace打印、单机烧录等等功能。 注意:如果已经有量产文件,可直接跳过本章进入第二章。 1.1 LuaToo
    的头像 发表于 10-09 18:50 528次阅读
    效率翻倍!量产烧录工具使用技巧大公开~

    【「AI芯片:科技探索与AGI愿景」阅读体验】+第二章 实现深度学习AI芯片的创新方法与架构

    、Transformer 模型的后继者 、用创新方法实现深度学习AI芯片 1、基于开源RISC-V的AI加速器 RISC-V是一种开源、模块化的指令集架构(ISA)。优势如下: ①模块化特性②标准接口③开源
    发表于 09-12 17:30

    【「AI芯片:科技探索与AGI愿景」阅读体验】+内容总览

    ,其中第一是概论,主要介绍大模型浪潮下AI芯片的需求与挑战。第二章和第三分别介绍实现深度学习AI芯片的创新方法和架构。以及一些新型的算法
    发表于 09-05 15:10

    【「开关电源控制环路设计:Christophe Basso 的实战秘籍」阅读体验】+第二章开环系统

    很荣幸有机会拜读《开关电源控制环路设计》这本书,最近粗略的看完了本书,受益匪浅,今天再此与诸位共同欣赏下此书。聊一聊第二章开环系统。 什么是开环系统呢? 开环系统是根据两个信号直接的特定关系,将控制
    发表于 08-16 17:54

    龙芯中科亮相第二届算力之都开发者大会

    近日,以“开源·开放 融合·服务”为主题的第二届算力之都开发者大会暨天翼云AI生态合作大会在银川召开。大会由中国电信宁夏公司携手龙芯中科等业界领军企业与顶尖科研院所共同主办,旨在深度激活算力交易潜能,全景展示大模型赋能千行百业的
    的头像 发表于 08-16 13:52 1883次阅读

    第二章 W55MH32 DHCP示例

    本文介绍 DHCP 协议,包括其在 IP 网络自动分配参数的功能、便捷配置等特点、工作原理、报文格式和应用场景。通过 W55MH32 实战例程展示动态获取网络地址信息过程,含注册定时器中断、启用模式和获取信息等步骤,烧录后可完成检测与信息打印,PC 端能 PING 通设备。
    的头像 发表于 07-24 09:02 1034次阅读
    <b class='flag-5'>第二章</b> W55MH32 DHCP示例

    初级工程师PCB设计技巧(PPT版)

    目录第一:PCB 概述第二章:PCB 设计流程及PCB Layout 设计第三: PROTEL 常用操作第四: PCB Layout 技巧 获取完整文档资料可下载附件哦!!!!
    发表于 06-26 15:50

    在IDE中运行固件内自带的AI程序,约2分钟左右就死机了,为什么?

    1、在IDE中运行固件内自带的AI程序,约2分钟左右就死机,点击停止报 繁忙,点连接也报 忙碌中。从资源管理器中点击CanMV可以访问下一级文件夹。 2、过几分钟后在IDE中点击“连接”,报“获取
    发表于 06-06 07:28

    恩智浦推出第二代OrangeBox车规级开发平台

    第二代OrangeBox开发平台集成AI功能、后量子加密技术及内置软件定义网络的能力,应对快速演变的信息安全威胁。
    的头像 发表于 05-27 14:25 1599次阅读

    第二章 开发板与芯片介绍 详解W55MH32芯片及开发

    本章介绍了W55MH32芯片及开发板。该芯片采用Cortex-M3内核,主频216MHz,集成以太网功能,有L和Q两种型号。配套开发板L-EVB功能丰富、Q-EVB为最小系统板,均含仿真器。
    的头像 发表于 05-26 09:19 1693次阅读
    <b class='flag-5'>第二章</b> <b class='flag-5'>开发</b>板与芯片介绍  详解W55MH32芯片及<b class='flag-5'>开发</b>板

    第二固件技术峰会盛大召开,共探行业创新发展之路

    (OpenSystemFirmwareFoundation)共同参与的第二固件技术峰会,在长沙顺利举行。此次峰会以“创新、协作、发展”为核心理念,坚持纯技术、非商业原则,吸引了全球50多家企业、近200位
    的头像 发表于 05-23 11:22 1172次阅读
    <b class='flag-5'>第二</b>届<b class='flag-5'>固件</b>技术峰会盛大召开,共探行业创新发展之路

    《ESP32S3 Arduino开发指南》第二章 Arduino基础知识

    第二章 Arduino基础知识 本章,我们将向大家介绍Arduino是一个什么东西?让大家对Arduino有一个大概了解。本章将分为如下几个小节:2.1什么是Arduino2.2 Arduino
    发表于 05-13 09:28