当前位置: 首页 > news >正文

platform设备注册驱动模块的测试

一.  简介

上一篇文章编写了 platform设备注册代码,文章地址如下:

无设备树platform驱动实验:platform设备注册代码实现-CSDN博客

本文继续无设备树platform驱动实验,本文对编译好的 设备注册程序进行测试,测试所实现的platform设备注册代码是否存在问题。

二.  platform设备注册模块的测试

1.  拷贝驱动模块

将上一篇文章(platform设备注册)编译生成的驱动模块 platform_devic.ko拷贝到 开发板系统中:

wangtian@wangtian-virtual-machine:~/zhengdian_Linux/Linux_Drivers/16_platform$ sudo cp platform_device.ko /home/wangtian/linux/nfs_File/rootfs/lib/modules/4.1.15/ -f

2. 加载模块并测试

(1)  开发板上电

开发板上电后,进入 系统 /lib/modules/4.1.15/目录下,确认 驱动文件是否已经存在:

可以看出,platform_device.ko文件已经存在。

(2)  加载模块

注意:如果选择使用 "modprobe" 命令加载驱动模块,则在驱动程序第一次加载时首先运行 "depmod" 命令!

这里platform_device.ko模块是第一次加载。

首先,执行 "depmod"命令:

使用 "modprobe" 命令加载驱动模块:

(3)  查看设备是否注册成功

进入系统 "/sys/bus/platform/devices/" 目录下查看是否存在 "imx6ull_led" 命名的设备。

注意:因为 前面代码中在platform设备注册时,结构体 struct platform_device的 name设置为了 "imx6ull_led"!!

串口操作如下:

/lib/modules/4.1.15 # cd /sys/bus/platform/devices/

可以看到如下信息:

可以看到,存在了 imx6ull_led设备。说明platform设备注册已经成功。

(4) 卸载设备

使用 "rmmod platform_device.ko"命令卸载模块:

这时候可以查看 "/sys/bus/platform/devices/" 目录下是否还存在 "imx6ull_led" 命名的设备。

这里开发板上的这个目录已经不存在 "imx6ull_led"这个设备了。说明卸载模块也正常。

相关文章:

platform设备注册驱动模块的测试

一. 简介 上一篇文章编写了 platform设备注册代码,文章地址如下: 无设备树platform驱动实验:platform设备注册代码实现-CSDN博客 本文继续无设备树platform驱动实验,本文对编译好的 设备注册程序进行测试,测试所实…...

鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:ListItemGroup)

该组件用来展示列表item分组,宽度默认充满List组件,必须配合List组件来使用。 说明: 该组件从API Version 9开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。该组件的父组件只能是List。 使用说明 当List…...

Docker:常用命令

文章目录 docker作用常用指令 docker 作用 Docker 是一种容器化平台,可以让开发者打包应用程序及其依赖项,并以容器的形式进行发布、交付和运行。 Docker 的一些主要作用: 应用程序隔离:Docker 使用容器技术,将应用程…...

如何搭建“Docker Registry私有仓库,在CentOS7”?

1、下载镜像Docker Registry docker pull registry:2.7.1 2、运行私有库Registry docker run -d -p 5000:5000 -v ${PWD}/registry:/var/lib/registry --restartalways --name registry registry:2.7.1 3、拉取镜像 docker pull busybox 4、打标签,修改IP&#x…...

DBA面试题:MySQL缓存池LRU算法做了哪些改进?

下图是MySQL(MySQL5.7版本)体系架构图 MySQL的InnoDb Buffer Pool 缓冲池是主内存中的一个区域,用来缓存InnoDB在访问表和索引时的数据。对于频繁使用的数据可以直接从内存中访问,从而加快处理速度。如果一台服务器专用作MySQL数据…...

idea+vim+pycharm的块选择快捷键

平时开发的时候,有的时候我们想用矩形框住代码,或者想在某列上插入相同字符 例如下图所示,我想在22-24行的前面插入0000 1. Idea的快捷键:option 鼠标 2. Pycharm的快捷键:shift option 鼠标 2. Vim 块选择 v/V/c…...

ansible 部署FATE集群单边场景

官方文档: https://github.com/FederatedAI/AnsibleFATE/blob/main/docs/ansible_deploy_FATE_manual.md https://github.com/FederatedAI/AnsibleFATE/blob/main/docs/ansible_deploy_two_sides.md gitee详细文档: docs/ansible_deploy_one_side.md…...

融入Facebook的世界:探索数字化社交的魅力

融入Facebook的世界,是一场数字化社交的奇妙之旅。在这个广袤的虚拟社交空间中,人们可以尽情展现自己、分享生活,与全球朋友、家人和同事保持紧密联系,共同探索社交互动的乐趣与魅力。让我们深入了解这个世界的魅力所在&#xff1…...

stm32-定时器输出比较PWM

目录 一、输出比较简介 二、PWM简介 三、输出比较模式实现 1.输出比较框图(以通用定时器为例) 2.PWM基本结构 四、固件库实现 1.程序1:PWM呼吸灯 2.程序2:PWM驱动直流电机 3.程序3:控制舵机 一、输出比较简介 死区生成和互补输出一般…...

Redis对过期key的删除策略

假设设置了一批 key 只能存活 1 个小时,那么 1 小时后,redis 是怎么对这批 key 进行删除的? 定期删除 惰性删除 定期删除: redis是默认每隔100ms就随机抽取一些设置了过期时间的key,检查是否过期,如果过期就删除。…...

http的body格式

body数据都通常放在 HTTP 请求的 body 部分。 在 HTTP 请求中,Content-Type 头用于指示 body 中的数据格式。例如,对于 x-www-form-urlencoded 格式的数据,通常会设置 Content-Type: application/x-www-form-urlencoded,而对于 fo…...

Java Web开发从0到1

文章目录 总纲第1章 Java Web应用开发概述1.1 程序开发体系结构1.1.1 C/S体系结构介绍1.1.2 B/S体系结构介绍1.1.3 两种体系结构的比较1.2 Web应用程序的工作原理1.3 Web应用技术1.3.1 客服端应用技术1.3.2 服务端应用技术1.4 Java Web应用的开发环境变量1.5 Tomcat的安装与配置…...

002——编译鸿蒙(Liteos -a)

目录 一、鸿蒙是什么 二、Kconfig 2.1 概述 2.2 编译器 2.3 make使用 本文章引用了很多韦东山老师的教程内容,算是我学习过程中的笔记吧。如果侵权请联系我。 一、鸿蒙是什么 这里我补充一下对鸿蒙的描述 这张图片是鸿蒙发布时使用的,鸿蒙是一个很…...

Ansible--详解

目录 一、Ansible核心组件 二、Ansible配置 1.配置案例 (1)管理安装ansible (2)管理机分发公匙 (3)配置管理 (4)测试连接 2.命令说明 三、playbook剧本编写 1.playbook模板…...

Django和Mysql数据库

Django学习笔记 Django和Mysql数据库 Django开发操作数据库更简单,内部提供了ORM框架。 1)安装mysqlclient pip3 install mysqlclient2)ORM ORM可以帮助我们做两件事: 1.创建、修改、修改数据库中的表(不用写sql语句)[不能创…...

[蓝桥杯]-最大的通过数-CPP-二分查找、前缀和

目录 一、题目描述: 二、整体思路: 三、代码: 一、题目描述: 二、整体思路: 首先要知道不是他们同时选择序号一样的关卡通关,而是两人同时进行两个入口闯关。就是说两条通道存在相同关卡编号的的关卡被通…...

安卓UI面试题 26-30

26. Window和DecorView是什么?DecorView又是如何和Window建立联系的?Window是 WindowManager 最顶层的视图,它负责背景(窗口背景)、Title之类的标准的UI元素, Window是一个抽 象类,整个Android系统中, PhoneWindow是 Window的唯一实现类。 至于 DecorView,它是一个顶级 …...

CPU、GPU、IPU、NPU、TPU、LPU、MCU、MPU、SOC、DSP、FPGA、ASIC、GPP、ECU、

CPU: 中央处理器(Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。 它的功能主要是解释计算机指令以及处理计算机软件…...

鸿蒙车载原生开发,拓展新版图

一天内连发“五弹”、HiCar 4.0首次上车 华为鸿蒙狂扩“汽车朋友圈”-上游新闻 汇聚向上的力量 3月15日,在“华为云&华为终端云服务创新峰会2024”上,华为首批汽车行业伙伴广汽传祺、岚图汽车、零跑汽车、凯翼汽车加入鸿蒙生态合作,华为…...

15届蓝桥杯第二期模拟赛题单详细解析

文章目录 🧡🧡t1_求余🧡🧡思路代码 🧡🧡t2_灌水🧡🧡思路代码 🧡🧡t3_字符显示🧡🧡思路代码 🧡🧡t4_区间最大和…...

从 @Tool 装饰器到 MCP,浅析大模型工具生态与 Function Calling 的底层逻辑

从 Tool 装饰器到 MCP,浅析大模型工具生态与 Function Calling 的底层逻辑 在开发 LLM Agent(大模型智能体)时,我们经常会遇到各种层出不穷的技术名词:Function Calling(函数调用)、JSON Schema…...

昇腾CANN ops-blas 仓:GEMM 算子的高性能实现

前言 矩阵乘法是深度学习里最核心的操作,没有之一。Transformer 的 Attention 要做 QK.T 和 PV,FFN 要做两 个 MatMul。GEMM(General Matrix Multiply)就是专门优化矩阵乘的算子。ops-blas 仓是 CANN 的线性代数基础算子库&#x…...

牛客周赛 Round 142 C题及D题题解

首先是C题: 咱们先看题目: 链接:https://ac.nowcoder.com/acm/contest/133790/C 来源:牛客网。 这道题其实特别简单,我们只需要按顺序遍历数组,统计能依次被 1、2、3... 整除的元素数量,即…...

电子供应链服务转型:从元器件分销到技术赋能与韧性构建

1. 项目概述:从“卖货”到“赋能”的供应链服务转型在电子元器件分销这个看似传统的行业里,我从业十几年,亲眼见证了从“电话传真报价”到“线上实时库存”的变迁。最近和一位行业老友,也是某知名分销商的资深销售总监聊天&#x…...

别再手动拖拽了!用CodeWave自由布局5分钟搞定一个高还原度后台管理页

5分钟高保真还原设计稿:CodeWave自由布局实战指南 每次拿到设计师发来的Figma稿子,你是不是也经历过这样的痛苦?在传统开发工具里手动调整像素级间距,反复比对色值,调试响应式效果到深夜…上周我接手一个电商后台改版项…...

实时反欺诈Agent部署失败率高达68%?金融IT总监亲述4类典型故障链及容灾切换黄金12分钟法则

更多请点击: https://codechina.net 第一章:实时反欺诈Agent部署失败率高达68%?金融IT总监亲述4类典型故障链及容灾切换黄金12分钟法则 某头部城商行在2023年Q3上线新一代实时反欺诈Agent集群后,监控平台显示首次部署成功率仅32…...

基于RL78/G13的电位器ADC采集与串口通信上位机显示系统设计

1. 项目概述与核心思路最近在整理工作室的旧零件,翻出来一块瑞萨电子的RL78/G13开发板,还有几个吃灰的电位器。想着不能浪费,就琢磨着做个简单但能体现MCU基本功的小项目:用这块开发板实时采集电位器的电压,并把数据上…...

2026央国企求职哪家强?TOP机构帮你稳住铁饭碗!

引言综述随着 2026 届超 1200 万毕业生涌入就业市场,央国企岗位竞争愈发激烈,岗位竞争比持续攀升。在这样的大环境下,求职者的核心需求集中在系统备考规划、精准岗位匹配以及高保障面试辅导上。本次测评旨在为求职者提供客观、专业的机构对比…...

今天农巡车项目的摄像头云台问题及解决

今天在农巡车双舵机云台项目开发过程中,主要遇到了舵机不转、舵机只动一下就停止、运动过程中抖动严重、实际转动角度不足、扫描逻辑加入后上下舵机失效、左右舵机最后一次不转、程序下载后长时间无响应等问题。首先,在PWM输出阶段发现PB6和PB7的TIM4通道…...

基于taotoken多模型能力在ubuntu构建智能客服路由系统

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 基于taotoken多模型能力在ubuntu构建智能客服路由系统 在构建智能客服系统时,一个常见的挑战是如何平衡响应质量与成本…...