logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

嵌入式Linux开发29——platform设备驱动实验

文章目录Linux 驱动的分离与分层1、驱动的分隔与分离2、驱动的分层platform 平台驱动模型简介1.platform总线2.platform驱动3.platform设备实验程序编写编译测试  我们在前面的博客编写的设备驱动都非常的简单,都是对IO进行最简单的读写操作。像I2C、SPI、 LCD 等这些复杂外设的驱动就不能这么去写了, Linux 系统要考虑到驱动的可重用性,因此提出了驱动的

文章图片
#linux#驱动开发#运维
想做好嵌入式Linux驱动开发?先掌握基本的ARM汇编吧

前言  我们在进行嵌入式 Linux 开发的时候是绝对要掌握基本的 ARM 汇编,因为 Cortex-A 芯片一上电 SP 指针还没初始化, C 环境还没准备好,所以肯定不能运行 C 代码,必须先用汇编语言设置好 C 环境,比如初始化 DDR、设置 SP指针等等,当汇编把 C 环境设置好了以后才可以运行 C 代码。   C 语言中的函数调用涉及到出栈入栈,出栈入栈就要对堆栈进行操作,所谓的堆栈其实

#arm#linux
嵌入式Linux开发9——RGBLCD显示

背景知识1.分辨率  提起 LCD 显示器,我们都会听到 720P、 1080P、 2K 或 4K 这样的字眼,这个就是 LCD 显示器分辨率。 LCD 显示器都是由一个一个的像素点组成,像素点就类似一个灯(在 OLED 显示器中,像素点就是一个小灯),这个小灯是 RGB 灯,也就是由 R(红色)、 G(绿色)和 B(蓝色)这三种颜色组成的,而 RGB 就是光的三原色。 1080P 的意思就是一个

文章图片
#linux#嵌入式
嵌入式Linux开发14——ADC实验

程序编写  ADC大家非常熟悉了,具体内容不再赘述,接下来只讨论和I.MX6ULL板子相关的ADC内容。首先要初始化ADC1_CH1相关的寄存器CFG寄存器、GC寄存器,初始化的过程中需要对初始化结果进行校准,我们单独编写一个校准函数,即需要关注GS寄存器的CALF位和HS寄存器的COCO0位,最后就是读取ADC寄存器R的值得到结果。ADC.h#include "imx6ul.h"int adc1

文章图片
#嵌入式#单片机#linux
嵌入式Linux开发24——Linux 按键输入实验

文章目录Linux 下按键驱动原理程序编写1.修改设备树文件1.1 添加 pinctrl 节点1.2 添加 KEY 设备节点1.3 检查 PIN 是否被其他外设使用2.按键驱动程序编写3.编写测试 APP运行测试  之前章我们都是使用的 GPIO 输出功能,还没有用过 GPIO 输入功能,本章我们就来学习一下如果在 Linux 下编写 GPIO 输入驱动程序,我们使用上一篇博客讲述的原子操作来对按

文章图片
#linux#stm32#嵌入式
嵌入式Linux开发19——Linux设备树(万字总结)

  提示:本文参考《 Devicetree SpecificationV0.2.pdf 》、《Power_ePAPR_APPROVED_v1.12.pdf》、《IMX6UL参考手册》以及正点原子的相关教程总结的学习笔记,万字总结,水平有限,仅供参考。  笔者偏嵌入式方向,故本文更多是关于实际开发中涉及的内容。文章目录设备树的概念DTS、 DTB 和 DTCDTS语法1.dtsi头文件2.设备节点3

文章图片
#嵌入式#linux#arm
嵌入式Linux开发26——Linux 中断(万字总结)

文章目录Linux中断简介:1. Linux 中断 API 函数1.1 中断号1.2 request_irq 函数1.3 free_irq 函数1.4 中断处理函数1.5 中断使能与禁止函数2.上半部与下半部2.1 软中断  不管是裸机实验还是 Linux 下的驱动实验,中断都是频繁使用的功能,在裸机中使用中断我们需要做一大堆的工作,比如配置寄存器,使能 IRQ 等等。 Linux 内核提供了完善

文章图片
#linux#stm32#c语言 +2
AI大模型在未来如何与体育运动结合

AI大模型与体育运动的结合预示着未来体育领域将迎来革命性的变化。这种结合不仅能提升运动员的训练和比赛表现,还能改善观众的观赛体验,优化体育管理和运营。

文章图片
#人工智能
嵌入式Linux开发20——设备树下的 LED 驱动实验

文章目录设备树LED驱动原理程序编写1.修改设备树文件2.LED驱动程序编写设备树LED驱动原理  在嵌入式Linux开发18——字符设备驱动开发2中,我们直接在驱动文件 newchrled.c 中定义有关寄存器物理地址,然后使用 io_remap 函数进行内存映射,得到对应的虚拟地址,最后操作寄存器对应的虚拟地址完成对 GPIO 的初始化。本章我们在第四十二章实验基础上完成,接下来我们使用设备树

#嵌入式#linux
嵌入式Linux开发12——触摸屏实验

背景知识  关于电容屏的物理原理我们就不去研究了,毕竟我们不是开发电容屏的,而是电容屏的使用者,我们只需要关注如何使用电容屏,如何得到其多点触摸坐标值即可。  我们以触摸控制IC FT5426为例,FT5426 这款驱动 IC 采用 15*28 的驱动结构,也就是 15 个感应通道, 28 个驱动通道,最多支持 5 点电容触摸。笔者所用的电容触摸屏部分有 4 个 IO 用于连接主控制器: SCL、

文章图片
#嵌入式#linux
    共 23 条
  • 1
  • 2
  • 3
  • 请选择