beep蜂鸣器驱动实验-蜂鸣器驱动代码框架测试

一.  简介

上一篇文章学习了编译蜂鸣器驱动框架代码,并进行了编译。文章地址如下:

beep蜂鸣器驱动实验-蜂鸣器驱动框架代码实现-CSDN博客

本文对上一篇所实现的蜂鸣器框架代码进行测试。

二. 蜂鸣器驱动代码框架测试

1.  拷贝驱动程序

注意:开发板的系统是通过 nfs服务挂载方式访问 ubuntu系统的。即 系统文件存放在 ubuntu系统所设置的 nfs目录下!而开发板通过 nfs服务加载系统文件。

将 7_beep工程下编译生成的驱动文件beep.ko,拷贝到 开发板系统 /lib/modules/4.1.15/目录下,这里系统存放在 /home/wangtian/linux/nfs_File/ 目录下,命名是 rootfs:

wangtian@wangtian-virtual-machine:~/zhengdian_Linux/Linux_Drivers/7_beep$ sudo cp beep.ko /home/wangtian/linux/nfs_File/rootfs/lib/modules/4.1.15/ -f[sudo] wangtian 的密码: 
wangtian@wangtian-virtual-machine:~/zhengdian_Linux/Linux_Drivers/7_beep$ 

2.   开发板上电测试

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

可以看出, beep.ko驱动文件已经存在。

加载驱动模块

(1)  加载之前,首先运行 "depmod" 命令,进入开发板系统 /lib/module/4.1.15/目录下:

/lib/modules/4.1.15 # depmod

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

(2) 其次,运行 "modprobe dtsled.ko" 命令加载驱动模块:

(3) 确认驱动模块是否加载成功

查看 驱动模块是否加载成功:运行 "lsmod" 命令或运行 "cat /proc/devices" 命令进行查看。

运行 "lsmod" 命令查看:

或 输入 "cat /proc/devices" 命令查看:

(4) 确认是否自动创建设备节点。

进入 "/dev/" 目录进行查看

卸载驱动模块
测试完成后,应该卸载驱动模块,操作如下:

/lib/modules/4.1.15 # rmmod beep.ko 

执行 "lsmod" 命令。可以查看是否成功卸载驱动模块:

/lib/modules/4.1.15 # lsmod 
Module                  Size  Used by    Tainted: G  
/lib/modules/4.1.15 # 

可以看出,已经成功卸载驱动模块。

注意:驱动程序可以进行反复的加载与卸载,这样可以确保驱动模块是否存在问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/459239.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MongoDB部署策略

内 容 简 介 本文介绍了MongoDB数据库的优点的数据存储模式的安装部署过程。 利用MongoDB在存储海量数据上的优势,部署存储空间大数据。 欢迎批评指正补充 由于编者水平有限,所搜集资料也很有限,制定的规范肯定有考虑不周全、甚至完全错误…

Pymysql之Connection中常用API

Connection中常用API 1、open() :检测数据库是否连接。 connect.open:如果数据库连接返回Trhe,否则返回False。 2、ping(reconnectTrue) connect.ping(reconnectTrue):如果reconnectTrue表示连接断开后,重新进行连接。 import…

C++重新入门-C++变量作用域

目录 1.C变量定义 2.C作用域 3.局部变量 4.全局变量 5.块作用域变量 6.初始化局部变量和全局变量 1.C变量定义 一般来说有三个地方可以定义变量: 在函数或一个代码块内部声明的变量,称为局部变量。 在函数参数的定义中声明的变量,称为…

Mysql进阶(sql优化和explain关键字)

一、为什么要对SQL进行优化? 由于业务数据量的增多,SQL的执行效率对程序的运行效率影响增大,此时就需要对SQL进行优化。 二、SQL优化的方法 1.查询sql尽量不要使用select * ,而是具体字段。 节省资源,减少开销。 …

1572.矩阵对角线元素的和(Java)

题目描述: 给你一个正方形矩阵 mat,请你返回矩阵对角线元素的和。 请你返回在矩阵主对角线上的元素和副对角线上且不在主对角线上元素的和。 输入: mat [[1,2,3], [4,5,6], [7,8,9]] 输出: 25 解释:对角线的和为&…

1978-2022年地级市全要素生产率数据

1978-2022年地级市全要素生产率数据 1、时间:1978-2022年 2、来源:城市统计年鉴以及各省市的统计年鉴 3、指标:省份、地区、年份、OLS、FE、RE、DGMM、SGMM、SFA1、SFA2、SFA3、SFA3D、TFE、非参数法 4、范围:421地区 5、参考…

前端架构: 从vue-cli探究脚手架原理

从使用角度理解什么是脚手架 脚手架本质是一个操作系统的客户端 在终端中去执行一个命令,这个命令本身它就是一个客户端我们其实可以把脚手架理解为操作系统的一个客户端通过命令去执行它的时候,这个命令往往是这样的一个构造,如下 比如&…

图像处理入门:OpenCV的基础用法解析

图像处理入门:OpenCV的基础用法解析 引言OpenCV的初步了解深入理解OpenCV:计算机视觉的开源解决方案什么是OpenCV?OpenCV的主要功能1. 图像处理2. 图像分析3. 结构分析和形状描述4. 动态分析5. 三维重建6. 机器学习7. 目标检测 OpenCV的应用场…

车载测试Vector工具CANape——常见问题汇总(下)

车载测试Vector工具CANape——常见问题汇总(下) 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师(Wechat:gongkenan2013)。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何 消耗你的人和事,多看…

路由器如何映射端口映射?

在现代互联网中,随着网络应用的不断发展,很多用户需要进行远程访问或搭建服务器来满足自己的需求。由于网络安全的原因,直接将内网设备暴露在公网中是非常危险的。为了解决这个问题,路由器映射端口映射技术应运而生。本文将介绍什…

FPGA_ip_pll

常使用插件管理器进行ip核的配置,ip核分为计算,存储,输入输出,视频图像处理,接口,调试等。 一 pll ip核简介 pll 即锁相环,可以对输入到fpga的时钟信号,进行分频,倍频&…

Asp .Net Core 系列:Asp .Net Core 集成 NLog

简介 NLog是一个基于.NET平台编写的日志记录类库,它可以在应用程序中添加跟踪调试代码,以便在开发、测试和生产环境中对程序进行监控和故障排除。NLog具有简单、灵活和易于配置的特点,支持在任何一种.NET语言中输出带有上下文的调试诊断信息…