自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 Linux 嵌入式驱动开发 INPUT 子系统:gpio、platform、input字符设备驱动开发框架

文章目录1. 实验2. 概念3. INPUT 驱动框架3.1 驱动3.2 APP4. 框架总流程5. 实验源码5.1 驱动5.2 APP1. 实验基于 gpio 子系统框架,使用 platform 加 input 子系统驱动框架来编写 key 中断输入驱动程序。2. 概念input 核心层会向 Linux 内核注册一个字符设备在系统启动以后就会在 /sys/class 目录下有一个生成一个 input 类input 子系统的所有设备主设备号都为 13input_dev 结构体表示 input

2022-04-14 17:21:18 382 1

原创 Linux 嵌入式驱动 INPUT 子系统:应用程序读取上报事件CPU占用率0%及read()出错

文章目录1. 应用程序读取上报事件CPU占用率0%1.1 问题描述1.2 现象分析1.3上报流程分析2. 应用程序接收上报事件read()出错2.1 问题描述2.2 操作背景2.3 解放方法2.4 问题分析1. 应用程序读取上报事件CPU占用率0%1.1 问题描述考虑到应用程序使用 while(1) 循环 read() 上报事件,类似于普通按键实验,cpu 占用率拉满并且在正点原子关于 input 子系统实验讲解中,有较多朋友提到 cpu 占用率高加载驱动程序,后台运行测试程序,top 查看应用

2022-04-13 21:22:48 1237 2

原创 Linux 有/无设备树下 platform_driver 驱动框架

platform 驱动框架首先,定义一个 platform_driver 结构体变量/* platform_driver */static struct platform_driver xxx_driver = { .driver = { /* name: 无设备树匹配方式 */ /* of_match_table:有设备树匹配方式 */ }, .probe = xxx_probe, .remo

2022-04-13 17:04:33 1072

原创 Linux 嵌入式驱动开发外部中断

文章目录1. 外部中断框架2. container_of() 函数3. 命令4. 上半部与下半部1. 外部中断框架中断号:通过中断号即可区分不同的中断申请中断号 step 3request_irq 函数,申请中断并使能,可能导致睡眠,不能在中断上下文或者其他禁止睡眠的代码段中使用。/* 函数原型 *//* * irq: 申请的中断号 * handler: 中断处理函数 * flags: 中断标志 * name: 中断名 * dev: 一般情况下将 dev 设置为设备结构

2022-04-13 16:31:46 1201

原创 Linux 嵌入式驱动开发内核定时器

1. 概念系统频率:节拍率 tick rate系统节拍数:jiffies 系统运行以来的节拍数绕回:jiffies 溢出后置零,32 位的系统需考虑使用几个 API 处理绕回time_after(unkown, known);time_before(unkown, known);...jiffies 和 ms us ns 之间的转换 API 函数/* 将 jiffies 转换为 时间 */int jiffies_to_msecs(const unsigned long j

2022-04-11 20:45:39 697

原创 Linux 下应用程序 open() 函数打开设备文件失败和解决方法

1. 问题描述在 Linux 下使用 ./generalioAPP /dev/miscbeep 打开设备文件时报错如下:错误代码:-12. 操作背景MISC & platform_driver 驱动程序自定义次设备号:330测试 APP 源码:general_ioAPP.c#include "stdio.h"#include "unistd.h"#include "sys/types.h"#include "sys/stat.h"#include "fcntl.

2022-04-10 22:19:35 6388 2

原创 Linux 系统镜像打包流程

uImage & dtb将 uImage 和 stm32mp157d-tao.dtb 拷贝至:/home/tao/linux/bootfs新建 ext4 格式磁盘首先新建一个 ext4 格式的磁盘,然后挂载这个 ext4 格式的磁盘,将 stm32mp157d-tao.dtb 和 uImage 拷贝到这个 ext4 磁盘即可cd bootfsdd if=/dev/zero of=bootfs.ext4 bs=1M count=10mkfs.ext4 -L bootfs b

2022-04-10 16:29:04 4051

原创 无法实现 SD 卡挂载至 Ubuntu 实现镜像文件、设备树拖动拷贝

1.问题描述用 STM32CubeProgrammer 烧写系统镜像至 SD 卡(MMC0),即格式化 SD 卡为 ext4 格式,并创建了5个分区u-boot 下挂载板载 SD 卡至电脑,Win10 弹出 SD 卡分区,Ubuntu 不弹出 SD 卡u-boot 命令:ums 0 mmc 0用读卡器将 SD 卡插上 USB 口,连接至 Ubuntu 系统蓝屏崩溃2.当前配置**Win10版本:**19043.1586**Ubuntu版本:**18.04.5**虚拟机版

2022-04-10 12:59:05 913

原创 Linux 嵌入式驱动开发异步通知

嵌入式小白学习正点原子 STM32MP1 嵌入式 Linux 驱动开发的日常总结记录和分享,同一起初学嵌入式驱动开发的朋友讨论,还望各位大佬解答疑惑,并指正可能出现的错误,/抱拳。

2022-04-08 22:22:22 420 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除