Linux下USB CDC ACM 驱动简析

2023-05-16

一、硬件平台:TI AM335X 芯片


二、软件平台:Ubuntu 10.04


三、USB CDC ACM 驱动简介

        USB的CDC类是USB通信设备类 (Communication Device Class)的简称。CDC类是USB组织定义的一类专门给各种通信设备(电信通信设备和中速网络通信设备)使用的USB子类。

        Linux 内核本省自带USB CDC ACM类驱动模块功能,用户可以采用内核下的图形化编译工具menconfig 添加该驱动至内核模块。

        步骤一:进入到自己下载的内核目录,运行命令 make menuconfig,出现如图1所示的 menu 菜单主界面。

                                         

                                                                                                           图1  menuconfig菜单主界面


    步骤二:在图1中,选择“Device Driver”选项,通过“Select”确定,进入到设备驱动界面,如图2所示。

                           

                                                    图2 设备驱动界面


    步骤三:在图2所示的设备驱动界面中,选择“USB support”选项,选择“Select”选项,确定后进入图3所示的USB驱动界面。

                           

                                                     图3 USB驱动界面

    步骤四:选择“USB Modem(CDC ACM support)”选项,该选项左端的“<>”中,默认为空,按下“空格键”可以切换选择项,选择为“*”号。

    对于尖括号里面的选项,如果为空,表示没有选择;

    如果为“*”,表示对应的选项编译到内核里;

    如果为“M”,表示对应的选项编译成模块。

        

    步骤五:USB设置完成之后,选择图3中的“Exit”选项,依次退出。退出之后,将会进入图2选项,继续选择“Exit”。然后进入图1界面,继续选择“Exit”。此时,将会出现确定是否保存修改界面,如图4所示。选择“Yes”选项即可。

                           

                                         图4 是否保存配置界面


    步骤六:重新编译内核,此时会将USB CDC ACM驱动添加至驱动程序中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux下USB CDC ACM 驱动简析 的相关文章

  • ioctl 命令的用户权限检查

    我正在实现 char 驱动程序 Linux 并且我的驱动程序中有某些 IOCTL 命令仅需要由 ADMIN 执行 我的问题是如何在 ioctl 命令实现下检查用户权限并限制非特权用户访问 IOCTL 您可以使用bool capable in
  • 仅使用containerd(不使用Docker)修剪容器镜像

    如果我刚刚containerd安装在 Linux 系统上 即 Docker 是not安装 如何删除未使用的容器映像以节省磁盘空间 Docker 就是这么方便docker system prune https docs docker com
  • 执行命令而不将其保留在历史记录中[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 在进行软件开发时 经常需要在命令行命令中包含机密信息 典型示例是将项目部署到服务器的凭据设置为环境变量 当我不想将某些命令存储在命令历史记
  • linux下无法创建僵尸进程

    嗯 我有一个奇怪的问题 我无法在我的项目中创建僵尸进程 但我可以在其他文件中创建僵尸进程 有简单的说明 int main if fork 0 printf Some instructions n else sleep 10 wait 0 r
  • Google BQ:运行参数化查询,其中参数变量是 BQ 表目标

    我正在尝试从 Linux 命令行为 BQ 表目标运行 SQL 此 SQL 脚本将用于多个日期 客户端和 BQ 表目标 因此这需要在我的 BQ API 命令行调用中使用参数 标志 parameter 现在 我已经点击此链接来了解参数化查询 h
  • 就分页分段内存而言的程序寿命

    我对 x86 Linux 机器中的分段和分页过程有一个令人困惑的概念 如果有人能澄清从开始到结束所涉及的所有步骤 我们将很高兴 x86 使用分页分段内存技术进行内存管理 任何人都可以解释一下从可执行的 elf 格式文件从硬盘加载到主内存到它
  • Linux 上的 Pervasive ODBC 错误 [01000][unixODBC][驱动程序管理器]无法打开 lib '/usr/local/psql/lib/odbcci.so':找不到文件

    我正在尝试让 Pervasive v10 客户端 ODBC 在 Centos 6 上运行 据我所知 没有 64 位 ODBC 客户端 因此我必须使用 32 位客户端 我终于成功安装了它 但尝试使用时出现以下错误 isql v mydsn 0
  • 从 ttyUSB0 写入和读取,无法得到响应

    我对 Linux tty 不太有经验 我的环境是带有丰富 USB 串行的 Raspbian 什么有效 stty F dev ttyUSB0 38400 cu l dev ttyUSB0 s 38400 cu to dev ttyUSB0作品
  • .net-core:ILDASM / ILASM 的等效项

    net core 是否有相当于 ILDASM ILASM 的功能 具体来说 我正在寻找在 Linux 上运行的东西 因此为什么是 net core ildasm 和 ilasm 工具都是使用此存储库中的 CoreCLR 构建的 https
  • 从 Xlib 转换为 xcb

    我目前正在将我的一个应用程序从 Xlib 移植到 libxcb 但在查找有关我有时使用的 XInput2 扩展的信息时遇到了一些麻烦 libxcb 中有 XInput2 实现吗 如果是的话 在哪里可以找到文档 目前我在使用此功能时遇到问题
  • 如何在 Linux 中使用 C 语言使用共享内存

    我的一个项目有点问题 我一直在试图找到一个有据可查的使用共享内存的例子fork 但没有成功 基本上情况是 当用户启动程序时 我需要在共享内存中存储两个值 当前路径这是一个char and a 文件名这也是char 根据命令参数 启动一个新进
  • Intel 上的 gcc 中的 _mm_pause 用法

    我参考过这个网页 https software intel com en us articles benefitting power and performance sleep loops https software intel com
  • linux下如何从文本文件中获取值

    我有一些文本格式的文件 xxx conf 我在这个文件中有一些文本 disablelog 1 当我使用 grep r disablelog oscam conf 输出是 disablelog 1 但我只需要值1 请问你有什么想法吗 一种方法
  • 我什么时候应该编写 Linux 内核模块?

    有些人出于某种原因想要将 Linux 中的代码从用户空间移动到内核空间 很多时候 原因似乎是代码应该具有特别高的优先级 或者只是 内核空间更快 这对我来说似乎很奇怪 我什么时候应该考虑编写内核模块 有一套标准吗 我怎样才能激励将代码保存在
  • cdc_acm:无法设置 dtr/rts - 无法与 USB cdc 设备通信

    我试图使用 pic24fj128gb206 枚举 usb cdc 设备 设备似乎已正确枚举 但是当我将设备连接到 Linux PC 时 我从内核收到以下警告消息 cdc acm 1 8 1 6 7 1 0 failed to set dtr
  • 检查已安装的软件包,如果没有找到则安装

    我需要检查已安装的软件包 如果未安装则安装它们 RHEL CentOS Fedora 示例 rpm qa grep glibc static glibc static 2 12 1 80 el6 3 5 i686 如何在 BASH 中进行检
  • 为什么同一个curl命令在windows和linux下输出不同的东西?

    为什么同样的curl o file https www link com 命令输出不同的东西 例如 如果我运行命令curl o source txt https www youtube com playlist list PLIx6Fwnp
  • x86-64 AMD 上 CALL 指令的操作数生成

    以下是示例程序 objdump 的输出 080483b4
  • 使用自定义堆的类似 malloc 的函数

    如果我希望使用自定义预分配堆构造类似 malloc 的功能 那么 C 中最好的方法是什么 我的具体问题是 我有一个可映射 类似内存 的设备 已将其放入我的地址空间中 但我需要获得一种更灵活的方式来使用该内存来存储将随着时间的推移分配和释放的
  • ansible unarchive 模块如何查找 tar 二进制文件?

    我正在尝试执行一个 ansible 剧本 该剧本的任务是利用unarchive模块 因为我是在 OSX 上执行此操作 所以我需要使用它gnu tar 而不是bsd tar通常与 OSX 一起提供 因为BSD tar 不受官方支持 https

随机推荐

  • 串口调试助手-QT

    串口调试助手 该程序使用Qt框架 xff0c C 43 43 语言编译而成 项目文件介绍 xff1a main cpp 该文件为该程序的入口程序 mainwindow h 该文件为该程序的主要声明部分 mainwindow cpp 该文件为
  • 基于STM32的电机--电机概述

    文章目录 电机直流有刷电机步进电机伺服电机直流无刷电机舵机 电机 电机 xff1a 俗称 马达 xff0c 依据电磁感应定律实现 电能转换或传递 的一种电磁装置 包括 xff1a 电动机和发电机 电动机在电路中是用M表示 xff0c 它的主
  • 免费公测 标贝声音理解,检测声音性别和年龄

    古有听声辨位 xff0c 今有听声 识 人 说到声音 xff0c 其本质是不同频率声音的集合 xff0c 以波的形式振动 xff08 震动 xff09 传播 由于每个人的发声器官 xff08 口腔 鼻腔 声带 xff09 各不相同 xff0
  • 前后端分离Token验证流程

    1 根据header获取token request getHeader Authorization 2 判断token 是否存在 3 token 不存在 过滤器放行 存在 根据token 获取用户名 根据用户名查询用户记录 UserDeta
  • 车载毫米波雷达MIMO阵列的天线发射问题

    说明 关于MIMO Multiple Input Multiple Output xff0c 多发多收 就不做过多介绍了 xff0c MIMO技术用于车载毫米波雷达主要的目的是增加虚拟通道 xff0c 以期使用较少的收发天线数量来达到较大的
  • 毫米波雷达的硬件架构与射频前端

    说明 本篇博文梳理 车载 毫米波雷达的系统构成 xff0c 特别地 xff0c 对其射频前端各部件做细节性的原理说明 本篇博文会基于对这方面知识理解的加深以及读者的反馈长期更新内容和所附资料 xff0c 有不当之处或有其它有益的参考资料可以
  • 串口+DMA 数据收发编程实践

    更多交流欢迎关注作者抖音号 xff1a 81849645041 目标 了解DMA 的工作原理 xff0c 通过配置 STM32F407 芯片的DMA xff0c 实现串口 43 DMA数据收发 原理 基于USART的数据通讯中采用中断方式可
  • W25Q128读写实验

    更多交流欢迎关注作者抖音号 xff1a 81849645041 目的 熟悉W25Q128串行FLASH的特性和操作指令 掌握通过SPI通讯读写W25Q128数据 原理 本章是结合SPI通讯对串行FLASH的读写 xff0c 通过SPI发送指
  • TFTLCD屏幕实验

    更多交流欢迎关注作者抖音号 xff1a 81849645041 目的 了解TFTLCD屏幕和FSMC的驱动原理 xff0c 通过STM32F4的FSMC接口来控制TFTLCD的显示 原理 1 液晶显示器 显示器属于计算机的I O设备 xff
  • STM32F4主板硬件设计与接口

    更多交流欢迎关注作者抖音号 xff1a 81849645041 本专栏的所有程序都在飞航科技 STM32 F407 开发板上测试通过 xff0c 本文介绍一下STM32 F407 开发板硬件设计与接口 xff0c 便于读者学习交流 STM3
  • 基于STM32F0实现人体红外传感器

    目的 了解人体红外传感器 HC SR501 的驱动原理和STM32F030的中断机制 xff0c 通过配置 STM32F030 芯片 GPIO 相关寄存器和外部触发中断实现人体红外传感器检测人体 原理 中断是指当CPU执行程序时 xff0c
  • STM32F0底板硬件架构设计与原理

    STM32F0底板接口明细 xff1a STM32F0底板作为整块节点的核心 xff08 如下图所示 xff09 xff0c 因此其接口相对应来说较多 xff0c 具体的接口有 xff1a 1 xff1a 5V电源输入口 xff0c STM
  • 基于STM32F030驱动SHT10温湿度传感器

    目的 了解温湿度传感器SHT10的驱动原理 xff0c 通过配置 STM32F030 的GPIO来采集温湿度传感器的温度 湿度和露点的 值 原理 SHT1x 包括 SHT10 SHT11 和 SHT15 属于Sensirion温湿度传感器家
  • Mysql整体介绍(适用于5.X版本)(下)(标贝科技)

    标贝科技 https ai data baker com source 61 qwer12 填写邀请码fwwqgs xff0c 每日免费调用量还可以翻倍 Mysql整体介绍 xff08 适用于5 X版本 xff09 下 xff09 xff0
  • 基于STM32F030实现RFID射频识别

    目的 了解MFRC522读写卡芯片和S50非接触IC卡的驱动原理 xff0c 通过配置 STM32F030 的GPIO和外设SPI xff0c 完成MFRC522传感器与卡的数据读写以及扣款充值实验 原理 MFRC522是高度集成的非接触式
  • MCS-51单片机学习之路(1)

    简介 单片机即单片机微型单片机 xff0c 是将单片机主机 CPU 内存和I O接口 集成在一小块硅片上的微型机 单片机又称微控制器 MCU 单片机具有三高优势 集成度高 可靠性高 性价比高 单片机的历史 第一阶段 xff0c 初级单片 机
  • 【Linux C语言查看SD卡大小】

    1 说明 在linux 环境下 xff0c 使用C预言获取SD卡容量信息 2 环境说明 硬件环境 xff1a ARM或者其他任意开发板 软件环境 xff1a Linux 任意版本 3 原理 statfs 函数 xff0c 可以获取磁盘的容量
  • shell 脚本实现的 deamon 守护进程

    1 说明 在linux 环境下 xff0c 使用 shell 脚本编写一个守护进程 xff0c 在后台一直运行 xff0c 监听需要守护的进程名称 xff0c 如app xff08 1 xff09 当检测到app进程停止 xff0c 则将其
  • mips uclibc 交叉编译ffmpeg,支持 G711A 编解码

    1 说明 使用 ffmpeg 源码 xff0c 进行交叉编译 xff0c 支持 H264 和 G711A 编码支持 2 环境说明 硬件环境 xff1a mips 架构芯片 软件环境 xff1a Linux 任意版本 3 原理 xff08 1
  • Linux下USB CDC ACM 驱动简析

    一 硬件平台 xff1a TI AM335X 芯片 二 软件平台 xff1a Ubuntu 10 04 三 USB CDC ACM 驱动简介 USB的CDC类是USB通信设备类 xff08 Communication Device Clas