
linux
Rice嵌入式开发技术分享
我是一名嵌入式软件工程师,经营公众号:Rice嵌入式开发技术分享。分享嵌入式知识,开源项目,欢迎关注。
展开
-
Linux 什么是内核模块《Rice linux 学习开发》
Linux内核是整体性结构,各个子系统紧密联系,上接用户控件,下接硬件,作为一个大程序在内核控件运行。如果将所有的设备驱动和内核功能都集成在内核中,则内核会不断的庞大,对我们的内核裁剪也会带来更大的挑战,为了解决这个问题,Linux内核引入内核模块机制,通过动态加载内核模块,从而实现在运行过程中扩展内核的功能。内核模块是什么?①内核模块是一种没有经过链接,不能独立运行的目标文件...原创 2020-03-30 13:26:15 · 433 阅读 · 0 评论 -
linux uart应用开发(ttyS*设备)
写这篇文章的原因:因为在linux开发串口应用的时候,遇到了问题,让遇到相同问题的人少走点弯路: ①读串口数据的时,需要接受换行符才能返回。 ②接受数据时,一个字节一个字节的返回。无法接受完多个字节在返回。对于 linux的开发板来说,串口的驱动是不需要我们去开发,我目前是在内核4.9上开发,只需要修改一下设备树就可以了。所以直接对设备文件进访问就可以了。lin...原创 2019-06-08 14:43:08 · 2103 阅读 · 0 评论 -
linux 设备树与驱动的关系
一开接触设备树,我就不知道设备树与驱动的关系,设备树是在内核3.0以后才有的。不过3.0以前的和3.0以后的驱动其实变化不大。 驱动的开发方法可以分为三种:传统方法,总线方法,设备树方法。 这篇文章围绕点亮一颗LED来说明这三种方法。 驱动流程分为5个部分:1、分配 2、设置 3、注册file_operation 4、入口 5、出口一、传统方法...原创 2019-07-07 16:54:53 · 9683 阅读 · 3 评论