文章目录1.查询方式的按键驱动程序_编写框架1.1LED驱动回顾1.2按键驱动编写思路1.3编程:先写框架1.3.1把按键的操作抽象出一个button_operations结构体1.3.2驱动程序的上层:file_operations结构体1.4测试1.5课后怎业1.查询方式的按键驱动程序_编写框架1.1LED驱动回顾对于LED,APP调用open函数导致驱动程序的led_open函数被调用。在里面,把GPIO配置为输出引脚。安装驱动程序后并不意味着会使用对应的硬件,而APP要使用对应的硬件,必须先调用open函数。所以建议在驱动程序的open函数中去设置引脚。APP继续调用write函数传入
文章目录1.烧写整个系统或更新部分系统1.1100ASK_IMX6ULL启动开关1.2在Windows使用USB烧写工具1.2.1烧写工具目录详解1.2.2连接USBOTG线1.2.3安装IMX6ULL的USB驱动程序1.2.3.1VMWARE可能会截取USB设备导致烧写失败1.2.3.2USB驱动没有自动安装1.2.4基础版烧写方法1.2.5专业版烧写方法1.3老方法:使用win32diskimage通过读卡器烧写SD/TF卡1.烧写整个系统或更新部分系统百问网开发了一款烧写软件:100ask_imx6ull_flashing_tool,它的界面如下:使用这软件,只需要一条USB线连接电脑和
sudo/opt/nvidia/jetson-io/jetson-io.pyDISPLAY=:0.0gst-launch-1.0nvarguscamerasrc!'video/x-raw(memory:NVMM),width=1920,height=1080,format=(string)NV12,framerate=(fraction)20/1'!nvoverlaysink-eSENSOR_ID=0#0forCAM0and1forCAM1portsFRAMERATE=30#Frameratecangofrom2to30for4032x3040modegst-launch-1.0nvargu
文章目录1.1怎么写LED驱动程序?1.2百问网IMX6ULL的LED驱动程序1.2.1led原理图1.2.2所涉及的寄存器操作1.2.3写程序1.2.4上机实验1.2.5课后作业以下板子选用的内核都是4.x版本,操作都是类似的:rk3399linux4.4.154rk3288linux4.4.154imx6ullinux4.9.88am3358linux4.9.1681.1怎么写LED驱动程序?详细步骤如下:①看原理图确定引脚,确定引脚输出什么电平才能点亮/熄灭LED②看主芯片手册,确定寄存器操作方法:哪些寄存器?哪些位?地址是?③编写驱动:先写框架,再写硬件操作的代码(上下层)注意:在芯片
文章目录1.输入系统应用编程1.1什么是输入系统1.2输入系统框架及调试1.2.1框架概述1.2.2编写APP需要掌握的知识1.2.3调试技巧**1.确定设备信息****2.使用命令读取数据**1.3不使用库的应用程序示例1.3.1输入系统支持完整的API操作1.3.2APP访问硬件的4种方式:妈妈怎么知道孩子醒了1.3.3获取设备信息(看视频学会简单代码编写的编写过程)1.3.4查询方式1.3.5休眠-唤醒方式1.3.6POLL/SELECT方式1.功能介绍1.3.7异步通知方式1.4电阻屏和电容屏1.4.1电阻屏1.复习一下欧姆定律2.电阻屏原理3.电阻屏数据1.4.2电容屏1.原理2.电
文章目录1.嵌入式Linux驱动开发基础知识的引导与说明1.1打算讲什么、怎么讲?1.2需要做什么准备工作1.嵌入式Linux驱动开发基础知识的引导与说明1.1打算讲什么、怎么讲?以几个简单的驱动程序,讲解嵌入式Linux驱动的框架,了解驱动开发的流程、方法,掌握从APP到驱动的调用流程。会涉及很多种开发板,让你明白“Linux驱动=软件框架+硬件操作”,让你“一通百通”,掌握了普适性的原理之后,在工作中很容易在其他板子使用这些知识。以LED驱动为例,会如下讲解:1.2需要做什么准备工作驱动程序依赖于Linux内核,你为开发板A开发驱动,那就先在Ubuntu中得到、配置、编译开发板A所使用的L
文章目录1.存储设备驱动程序分析1.1字符设备和块设备1.1.1APP与驱动程序的交互1.字符设备驱动程序2.块设备驱动程序教1.1.2驱动程序结构体1.1.3注册函数1.字符设备驱动程序注册函数2.块设备驱动程序注册函数1.2MTD设备1.3块设备驱动程序为MTD开了一个后门1.4怎么用内存模拟Flash1.4.1指定要使用的内存地址、大小1.4.2实现MtdDev结构体1.4.3怎么使用块设备2.使用内存模拟Flash2.1最终结果2.2原来的内存映射2.3在内存里挖出一块用来模拟FlashPs:这个鸿蒙系列是韦东山老师录制的视频和开发手册为基础,请大家支持韦老师。这个专栏是:1.学习的笔
文章目录1.PC和开发板之间传输文件1.1传输文件的多种方法1.2通过USB给开发板传文件1.3安装网络服务1.3.1在Ubuntu中安装、配置NFS1.3.2Ubuntu安装TFTP服务1.3.3在Windows安装TFTP服务1.4使用网络服务传输文件1.4.1开发板挂载Ubuntu的NFS目录1.4.2开发板通过tftp传输Ubuntu文件1.4.2.1在开发板上使用tftp命令下载文件1.4.2.2在开发板上使用tftp命令上传文件1.4.3在Windows上通过FileZilla和开发板传输文件1.4.3.1确保Windows和开发板之间网络联通1.4.3.2启动FileZilla连
文章目录1.I2C应用编程1.1I2C视频介绍1.1.1I2C硬件框架1.1.2I2C软件框架1.1.3我们讲什么1.2I2C协议1.2.1硬件连接1.2.2传输数据类比1.2.3IIC传输数据的格式==1写操作====2读操作====3.I2C信号====4.协议细节==1.3SMBus协议1.3.1SMBus是I2C协议的一个子集1.3.2SMBus协议分析SMBusQuickCommandSMBusReceiveByteSMBusSendByteSMBusReadByteSMBusReadWordSMBusWriteByteSMBusWriteWordSMBusBlockReadSMBu
文章目录1.ARM架构内存映射简介1.1.1页表项1.1.2一级页表映射过程1.1.3二级页表映射过程1.1.4cache和buffer2.内存映射代码分析3.内存映射编程_IMX6ULL3.1最终结果3.2现场编程3.2.1内存地址范围3.2.2设备地址范围Ps:这个鸿蒙系列是韦东山老师录制的视频和开发手册为基础,请大家支持韦老师。这个专栏是:1.学习的笔记记录。2.整理和知识点汇总。3.个人做的项目经验汇总。1.ARM架构内存映射简介参考资料:DEN0013D_cortex_a_series_PG.pdf。1.1.1页表项ARM架构支持一级页表映射,也就是说MMU根据CPU发来的虚拟地址可