• 发帖子
  • 发文章
韦东山嵌入式开发者社区
技术问答AI助手(内测)视频中心文档中心下载中心官方店铺旧版官网
登录
  • 最新
  • 全志开发
  • 行业资讯
  • 活动专栏
  • RTOS学习
  • 单片机学习
  • 综合
  • 匠芯创
  • 嵌入式Linux
  • 最新
  • 推荐
  • 热榜
  • 关注
SG90舵机驱动
SG90 伺服电机驱动 舵机是通俗的叫法,它的本质是一个伺服电机,也可以叫做位置(角度)伺服驱动器。一般被应用在那些需要控制角度变化的系统中,可以方便的实现转动任意的角度,实现控制角度的变化。 工作原理 sg90 舵机模块内有控制电路,控制信号通过信号线输入到内部的控制电路中,调制芯片将输入的信号进行调制,获得直流偏置电压。然后再由内部的基准电路产生周期为 20ms,宽度为 1.5ms 的基准信号,将直流偏置电压和电位器电压进行比较,从而获得输出的电压差。由电压差控制舵机的转动,这个电压差的正负控制舵机正...
philo9100发布于2025-03-27 11:56
libmodbus 源码分析_1
unit-test-server.c 我们接着从源码的单元测试服务器(从机)libmodbus-3.1.10\tests\unit-test-server.c 的 main 函数开始分析源码执行流和所用的数据结构。推进学习百问网提供的全场景工业互联设备管理系统解决方案,其中有对 libmodbus 源码详细的视频课程讲解。 可以看到对于从机,初始化时的操作是类似的 use_backend = RTU; /* 设置传输模式为 RTU */ ip_or_devi...
philo9100发布于2025-02-18 15:59
libmodbus 源码分析_0
libmodbus源码分析 libmodbus 是一个免费的跨平台支持 RTU 和 TCP 的 Modbus 库,遵循 LGPL V2.1+ 协议。libmodbus 支持 Linux、Mac Os X、FreeBSD、QNX 和 Windows 等操作系统。libmodbus 可以向符合 Modbus 协议的设备发送和接收数据,并支持通过串口或者 TCP 网络进行连接。 如何下载、使用和移植libmodbus请参考百问网提供的全场景工业互联设备管理系统解决方案。 各文件作用如下: win32: 定义在W...
philo9100发布于2025-02-18 10:19
Modbus 协议_1
6 功能码描述 本篇简要解读几个 MODBUS 应用协议规范 中的功能码和作用,更多详细内容参考协议手册。 百问网提供的全场景工业互联设备管理系统解决方案,其中有对 Modbus 详细的视频课程讲解和功能案例测试。 6.1 01 (0x01) 读取线圈 (Read Coils) 此功能码用于从远程设备读取 1 到 2000 个连续的线圈状态。请求 PDU(协议数据单元)指定起始地址,即第一个指定线圈的地址,以及线圈的数量。在 PDU 中,线圈从零开始寻址。因此,编号为 1 到 16 的线圈在 PDU 中的寻...
philo9100发布于2025-02-12 19:36
Modbus 协议_0
MODBUS 应用协议规范 本篇详解 Modbus 组织 提供的 MODBUS 应用协议规范-V1.1b3,感兴趣的朋友可以移步 Modbus 组织官网 详细了解。 推荐学习由百问网提供的全场景工业互联设备管理系统解决方案,其中有对 Modbus 详细的视频课程讲解和案例测试。 1. 引言 1.1 本文档的范围 MODBUS 是一种应用层消息协议,位于 OSI 模型的第七层[参考],提供在不同类型的总线或网络上连接的设备之间的客户端/服务器通信。 自 1979 年以来,MODBUS 已成为工业界的串行事实...
philo9100发布于2025-02-12 09:54
USB 设备编程_2
USB 设备类型之 CDC (Communication Device Class) CDC 概述 CDC(Communication Device Class,通信设备类)是 USB 设备类规范中专门用于 USB 通信设备的一类。其主要目的是为各种需要通信功能的设备(如调制解调器、网络适配器、虚拟串口设备等)提供一个统一、标准化的接口,使得主机能够识别并正确地与这些设备进行数据交换和控制。CDC 类中不仅定义了数据传输的基本机制,还包括一些特定的控制和管理命令,确保设备能按照既定的协议工作。 根据 CDC...
philo9100发布于2025-02-10 11:33
USB 设备编程_1
描述符相关源码分析 本章分析百问网提供的全场景工业互联设备管理系统解决方案中有关 USB 设备编程,应用层中关于 USB 设备描述符相关源码进行分析。 ux_device_descriptors.h 源文件分析 重点分析头文件中,关于 USB 中各种设备描述符的定义。 USB 复合设备类型枚举 typedef enum { CLASS_TYPE_NONE = 0, CLASS_TYPE_HID = 1, CLASS_TYPE_CDC_ACM = 2, CLASS_TYPE...
philo9100发布于2025-02-08 15:54
USB 设备编程_0
USB 设备编程 本篇将详细描述如何通过在嵌入式设备上(以百问网提供的全场景工业互联设备管理系统解决方案中所使用的 STM32H5 系列开发板为例)实现一个 USB 虚拟串口(Virtual COM Port,VCP),从而让嵌入式系统能够通过 USB 接口与计算机或其他主机设备进行串行通信。 本篇的目标是在大概理解 USB 体系结构和协议的基础上通过移植 USBX 并编写驱动程序来实现 虚拟串口 来进一步学习和理解 USB 在实际开发中的应用。 USBX 组件 推荐学习由百问网提供的全场景工业互联设备管理...
philo9100发布于2025-02-05 12:46
MAX13487E 半双工 RS-485/RS-422 收发器详解
MAX13487E 半双工 RS-485/RS-422 收发器详解 RS-485 是一种电气标准(物理层的通信协议)详解参阅RS-485标准详解 本篇以百问网提供的全场景工业互联设备管理系统解决方案所使用的 RS-485 收发器(MAX13487EESA+)为例详解实际的 RS-485 收发器使用案例。 RS-485 收发器 RS-485 收发器的主要功能是实现对 RS-485 总线的发送和接收操作,负责信号的转换和传输。 将数据从微控制器、计算机等设备的 TTL 电平(低电平和高电平)转换为 RS-485...
philo9100发布于2025-01-18 18:14
裸机/FreeRTOS 环境下使用面向对象的方式实现 UART 的通用接口功能
重要的事情说在前边 编写程序时,特别是C程序,应该也只有C程序。一定要 仔细 仔细 仔细 调用宏函数时传递的实参类型是否是被定义函数实际的参数类型。 比如传递指针,up 因为调用 API 时自以为是的传入指针导致程序跑不通,关键是既然可以成功编译,这就很无语。。。 这要 “得益于” 宏函数在预处理阶段只是简单的文本替换,并没有类型检查,这种问题连编译期都不会被检查到。 虽然不是像常规函数一样进行调用,无函数调用开销(如入栈、出栈等操作)。这使得宏函数在某些性能要求较高的情况下比普通函数更有效率。 但是这...
philo9100发布于2025-01-16 15:59
USB 2.0 详解(五)—— USB设备框架
USB 设备框架 一个 USB设备 可以划分为三层: 底层(Bottom Layer): 是一个总线接口,用于传输和接收数据包。 中间层(Middle Layer): 负责在总线接口和设备上不同端点(Endpoints)之间传输数据。 端点是数据的最终消费者或提供者。 它可以被看作是数据的源头(Source)或汇点(Sink)。 顶层(Top Layer): 提供USB设备的具体功能,例如鼠标或ISDN接口。 本章描述了USB设备中间层的常见属性和操作。中间层的这些属性和操作被设备功能特...
philo9100发布于2025-01-10 16:51
USB 2.0 详解(四)—— 协议层(下)
8.6 数据切换同步和重试 USB 提供了一种机制,确保在多次传输中的数据发送方和接收方之间的数据序列同步。该机制可以确保数据传输的握手阶段被发送方和接收方正确地解释。同步是通过使用 DATA0 和 DATA1 的包标识符 (PID) 以及数据发送方和接收方的独立数据切换序列位来实现的。接收方的序列位仅在接收方能够接收数据并且接收了无错误的、带有正确数据 PID 的数据包时切换。发送方的序列位仅在数据发送方接收到有效的 ACK 握手时切换。数据发送方和接收方必须在事务开始时同步它们的序列位。同步机制根据事务...
philo9100发布于2025-01-10 14:58
USB 2.0 详解(四)—— 协议层(中)
USB 协议层 8.5 事务的包序列(Packet Sequences of Transaction) 8.5.2 Bulk事务 Bulk事务类型的特点是能够通过错误检测和重试机制保证主机与设备之间的数据可靠传输。Bulk事务采用三相事务,包括Token包、数据包和握手包,如图8-30所示。在某些流控制和停止条件下,数据阶段可能被握手替代,从而形成一个两相事务,此时不会传输数据。PING和NYET包只能在高速设备中使用。 当主机准备接收bulk数据时,它发送一个IN Token包。设备端点响应返回数据包,...
philo9100发布于2025-01-10 14:30
USB 2.0 详解(四)—— 协议层(上)
USB 协议层 这一章从底层视角介绍 USB 协议,首先讲解字段和数据包的定义。接下来,描述不同事务类型的数据包的事务格式。然后介绍链路层的流控制和事务级别的故障恢复。最后讨论重试同步、数据总线混乱、总线活动丢失的恢复以及高速PING协议。本章作为USB软件开发的重要一章会对重要内容详细注解,其余内容提供说明详解请参阅手册。 8.1 USB 的字节/位顺序 数据位在总线上按照从最低位(LSb)开始依次发送,接着是下一个LSb,直到最高位(MSb)最后发送。在后面的图示中,数据包的显示方式使得每个独立的位和字...
philo9100发布于2025-01-09 17:32
USB 2.0 详解(三)—— 电气特性
电气特性 这里我们略过USB的机械特性 (mechanical properties) 部分,有兴趣的朋友可以参阅 USB 2.0 Specification 中的第六章 Chapter 6 Mechanical 的内容。 本篇介绍 USB 2.0 的电气特性,不打算对 USB 2.0 Specification 中的第七章 Chapter 7 Electrical 进行详细的电气特性解读,会参考 USB 中文网 进行笼统地概念描述。有兴趣的朋友可以自行参阅第七章中的内容。 推荐学习由百问网提供的全场景工业...
philo9100发布于2025-01-08 17:43
USB 2.0 详解(二)—— 数据流模型(下)
数据流模型 5.4 传输类型 USB在主机的客户端软件(USB设备的驱动程序)与USB设备的端点之间通过管道传输数据。由消息管道传输的数据以USB定义的结构进行传输,但USB也允许设备特定的结构化数据在USB定义的消息数据载荷中进行传输。USB还定义了所有管道(无论是流式传输管道还是消息传输管道)传输的数据都必须以数据包的形式传输,但最终数据载荷的格式和解释由使用该管道的客户端软件和功能来负责。 然而,USB提供了不同的传输类型,这些类型优化了与客户端软件和功能的服务需求匹配的特性。一个IRP(I/O请求包...
philo9100发布于2025-01-07 16:17
USB 2.0 详解(二)—— 数据流模型(上)
USB 数据流模型 本章介绍如何通过 USB 传输数据的信息。本章中的内容影响所有实现者。所呈现的内容处于系统的信令和协议定义之上的级别。 有关 USB 系统各自部分的更多详细信息,请参阅第 7 章和第 8 章。本章提供了第 9 章至第 11 章中进一步扩展的框架信息。 所有实现者都应阅读本章,以便了解 USB 的关键概念。 5.1 实现者视角 USB 提供主机与连接的 USB 设备之间的通信服务。然而,终端用户看到的将一个或多个 USB 设备连接到主机的简单操作(如图 5-1 所示)实际上比图中显示的实现...
philo9100发布于2025-01-07 10:27
NUTTX移植到STM32
STM32移植NUTTX 官方开发文档:安装 — NuttX latest 文档 参考文档:Nuttx学习笔记(一)-CSDN博客 1. Ubuntu下搭建开发环境 1.1 先决条件 环境: ubuntu 20.04 ,首先进行基础环境安装; 执行以下命令安装软件包: sudo apt install \ bison flex gettext texinfo libncurses5-dev libncursesw5-dev xxd \ git gperf automake libtool pkg-confi...
May.11ᰔᩚ发布于2025-01-06 17:47
Zephy移植到STM32
Zephy如何移植到单片机 官方开发文档:入门指南 — Zephyr Project Documentation 1. Window下搭建开发环境 1.1 安装Choncolatey 在 powershell 管理员下执行如下命令: Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::Se...
May.11ᰔᩚ发布于2025-01-06 17:43
韦东山 单片机调试专题课程
世玉轩发布于2025-01-06 15:45
签到
0
立即签到
积分排行
  • 用户0680
    用户0680

    2 帖子 • 2 评论

    259
  • philo9100
    philo9100

    0 帖子 • 1 评论

    229
  • qyoooo
    qyoooo

    26 帖子 • 2 评论

    173
  • Kolin
    Kolin

    4 帖子 • 0 评论

    163
  • 世玉轩
    世玉轩

    12 帖子 • 24 评论

    123
  • 二极脑
    二极脑

    4 帖子 • 4 评论

    52
  • ღmeihao
    ღmeihao

    1 帖子 • 0 评论

    43
  • May.11ᰔᩚ
    May.11ᰔᩚ

    1 帖子 • 2 评论

    41
  • 用户0493
    用户0493

    3 帖子 • 4 评论

    23
  • 乐安
    乐安

    4 帖子 • 0 评论

    20
联系我们:0755-86200561广东省深圳市龙岗区布吉南湾街道平吉大道建异大厦B1508
© 深圳百问科技有限公司 All Rights Resolved 粤ICP备13035650号