
嵌入式驱动开发
GH-HOME
凡走过,必留下善意的痕迹;选择做,便尽力做到最好!
展开
-
linux驱动程序开发-第二节:uboot添加自定义控制命令+uboot中运行裸机C语言程序
2-搭建linux内核编译环境+uboot操作设备+烧写编译好的linux内核3-在uboot中添加自己的命令语句调用4-基于uboot添加命令控制外围设备-led+bmp5-基于uboot模式下内存运行裸机程序6-修改开发板logo通过制作新的kernel视频教程及资料链接:链接:https://pan.baidu.com/s/1qXZ1Fyg2HJwvkrZgc-zFvQ 提...原创 2019-01-04 20:12:24 · 5162 阅读 · 0 评论 -
linux驱动程序开发-第九节:应用层阻塞归功于底层驱动采用中断机制
驱动采用:中断+等待队列实现阻塞。 设置一个等待的条件,条件满足,进程就继续向下执行;条件不满足,进程就阻塞在等待队列上。当条件满足后,中断会唤醒等待队列中的进程,进程再继续向下执行。视频讲解及详细资料链接:链接:https://pan.baidu.com/s/13xxNzgLur468qeivBw8FUg 提取码:osb1 程序案列:一个按键对...原创 2019-01-15 19:55:16 · 1828 阅读 · 1 评论 -
linux驱动程序开发-第六节:驱动自动创建设备节点
知识理论:1. 创建设备节点有两种方法:(1)手动:mknod (2)class_create() device_create()2. 手动创建:mknod 设备文件 设备类型 主设备号 次设备号 获取设备号两种方法:(1)驱动printk打印 (2)/sys/class/xxx/uevent 3. 自动创建: insmod led_drv.ko 时候,...原创 2019-01-09 20:12:56 · 979 阅读 · 0 评论 -
linux驱动程序开发-第五节:用户空间与内核空间数据交换
资料链接: ============================================================================================1. 驱动设计#include <linux/init.h>#include <linux/kernel.h>#include <lin...原创 2019-01-09 20:08:21 · 997 阅读 · 1 评论 -
linux驱动程序开发-第八节:ADC设备驱动(模数转换)
S5P6818 ADC 的使用(三星芯片6818型号)视频讲解及资料链接:链接:https://pan.baidu.com/s/1rPjq2goHFZf2ArBuo99Ehg 提取码:fdqk #include <linux/init.h>#include <linux/kernel.h>#include <linux/module....原创 2019-01-14 20:47:43 · 3528 阅读 · 1 评论 -
linux驱动程序开发-第七节:把自定义的设备驱动编译进内核
本节知识点:如何把自定义的设备驱动编译到内核中。实际开发作用:以往测试驱动或者加载驱动通过insmod xxx.ko 我们一般会修改脚本使得上电自动加载驱动,但是我们一旦不小心删除了指定路径下的驱动文件后就无法加载,存在漏洞。我们可以把它编译到内核,再把内核烧写到设备中。资料链接(视频讲解及详细文档):链接:https://pan.baidu.com/s/1Hd5zGk0c5ib_f...原创 2019-01-14 20:05:40 · 960 阅读 · 0 评论 -
linux驱动程序开发-第四节:内核模块+字符设备
资料链接:链接:https://pan.baidu.com/s/1n2JdnqBZmXOGfjd4I5wuWA 提取码:bxat原创 2019-01-08 19:56:09 · 589 阅读 · 5 评论 -
linux驱动程序开发-第三节:linux设备驱动程序设计流程
视频及资料链接地址:(上传中)链接:https://pan.baidu.com/s/1avZjYyQGr2ljfPhEZjPumA 提取码:qgox 一、linux驱动的分类1、字符设备驱动1)设备:LED、KEY、BEEP、声卡、显卡、摄像头、鼠标、键盘、触摸屏、手写板、USB、.....[root@GEC6818 /]#ls /dev -lcrw-rw---- 1...原创 2019-01-07 20:13:03 · 2234 阅读 · 0 评论 -
linux驱动程序开发第一节:驱动程序开发框架了解及相关信息认知
1.源码包及资料下载:1-开发板所用的linux系统源码包链接:https://pan.baidu.com/s/1CXLbg5TqVjcCMyajFK_HKw 提取码:i7w0 2-系统恢复源码链接:https://pan.baidu.com/s/1tj9FfNkb_yaqaf57YSZS7A 提取码:5lew 3-开发板原理图及手册链接:https://pan.baidu...原创 2019-01-04 20:08:25 · 479 阅读 · 0 评论 -
linux驱动程序开发-第十节:动态定时器实现底层硬件工作状态
linux 内核动态定时器是依赖于 linux 内核时钟的,动态定时器的周期只能是内核时钟周期的整数倍。动态定时器不是硬件定时器的驱动,而是利用内核动态定时器产生的时钟周期。 在项目当中常见于表示硬件工作的繁忙状态,不需要应用层控制参与。例如硬盘在频繁读写数据的时候,会发现硬盘灯快速闪烁,空闲的时候慢速闪烁,这种实现方法就可以使用内核的动态定时器实现。资料链接:...原创 2019-01-16 19:57:19 · 848 阅读 · 0 评论